From 19af7352b7ef6497f7bbb66d7ae5a248f905c072 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期二, 03 十一月 2026 09:29:23 +0800
Subject: [PATCH] Revert "feat(erp): 生产车间可从销售订单直接生成生产计划(结合库存判断)"

---
 yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java |   25 ----
 /dev/null                                                                                                    |   64 ----------
 yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java         |  196 --------------------------------
 yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java             |   19 ---
 4 files changed, 0 insertions(+), 304 deletions(-)

diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java
index a7dc1b9..d08ac09 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/ErpSaleOrderController.java
@@ -334,29 +334,4 @@
         item.setTotalPrice(productAmount.add(tax));
     }
 
-    /**
-     * 鑾峰緱寰呭畨鎺掔敓浜х殑閿�鍞鍗曟槑缁�
-     *
-     * 渚涚敓浜ц溅闂淬�屼粠閿�鍞鍗曠敓鎴愮敓浜ц鍒掋�嶄娇鐢細
-     * 杩斿洖宸插鏍镐笖灏氭湭瀹夋帓鏈夋晥 MPS 鐨勬槑缁嗭紝甯﹀綋鍓嶅彲鐢ㄥ簱瀛樹笌寤鸿鐢熶骇鏁伴噺
-     */
-    @GetMapping("/pending-production-list")
-    @Operation(summary = "鑾峰緱寰呭畨鎺掔敓浜х殑閿�鍞鍗曟槑缁�")
-    @PreAuthorize("@ss.hasPermission('erp:sale-order:query')")
-    public CommonResult<List<cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO>>
-            getPendingProductionList() {
-        return success(saleOrderService.getPendingProductionList());
-    }
-
-    /**
-     * 浠庨攢鍞鍗曟壒閲忕敓鎴愮敓浜ц鍒掞紙MPS锛�
-     */
-    @PostMapping("/generate-mps")
-    @Operation(summary = "浠庨攢鍞鍗曟壒閲忕敓鎴愮敓浜ц鍒�")
-    @PreAuthorize("@ss.hasPermission('erp:sale-order:update')")
-    public CommonResult<Integer> generateMpsFromSaleOrder(
-            @Valid @RequestBody cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderGenerateMpsReqVO reqVO) {
-        return success(saleOrderService.generateMpsFromSaleOrder(reqVO));
-    }
-
 }
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderGenerateMpsReqVO.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderGenerateMpsReqVO.java
deleted file mode 100644
index 2b7f83b..0000000
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderGenerateMpsReqVO.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.DecimalMin;
-import jakarta.validation.constraints.NotEmpty;
-import jakarta.validation.constraints.NotNull;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.util.List;
-
-@Schema(description = "绠$悊鍚庡彴 - 浠庨攢鍞鍗曟壒閲忕敓鎴愮敓浜ц鍒� Request VO")
-@Data
-public class ErpSaleOrderGenerateMpsReqVO {
-
-    @Schema(description = "寰呯敓鎴愮殑鏄庣粏鍒楄〃", requiredMode = Schema.RequiredMode.REQUIRED)
-    @NotEmpty(message = "璇疯嚦灏戦�夋嫨涓�鏉¢攢鍞鍗曟槑缁�")
-    @Valid
-    private List<Item> items;
-
-    @Schema(description = "鐢熸垚鏂瑰紡锛歵rue=鎸夐�夋嫨鐨勬槑缁嗛�愭潯寤� MPS锛沠alse 鎴栦笉浼犲悓 true锛堥鐣欏悎骞朵笅鍙戯級",
-            example = "true")
-    private Boolean merge;
-
-    @Schema(description = "鏄庣粏椤�")
-    @Data
-    public static class Item {
-
-        @Schema(description = "閿�鍞鍗曟槑缁嗙紪鍙�", requiredMode = Schema.RequiredMode.REQUIRED, example = "11")
-        @NotNull(message = "閿�鍞鍗曟槑缁嗙紪鍙蜂笉鑳戒负绌�")
-        private Long saleOrderItemId;
-
-        @Schema(description = "璁″垝鐢熶骇鏁伴噺", requiredMode = Schema.RequiredMode.REQUIRED, example = "380")
-        @NotNull(message = "璁″垝鐢熶骇鏁伴噺涓嶈兘涓虹┖")
-        @DecimalMin(value = "0", inclusive = false, message = "璁″垝鐢熶骇鏁伴噺蹇呴』澶т簬 0")
-        private BigDecimal quantity;
-
-    }
-
-}
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderPendingProductionRespVO.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderPendingProductionRespVO.java
deleted file mode 100644
index 70f5762..0000000
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/controller/admin/sale/vo/order/ErpSaleOrderPendingProductionRespVO.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order;
-
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-
-/**
- * 寰呭畨鎺掔敓浜х殑閿�鍞鍗曟槑缁� Response VO
- *
- * 渚涚敓浜ц溅闂淬�屼粠閿�鍞鍗曠敓鎴愮敓浜ц鍒掋�嶄娇鐢細
- * 灞曠ず宸插鏍搞�佷笖灏氭湭瀹夋帓 MPS 鐨勯攢鍞鍗曟槑缁嗭紝骞跺甫涓婂綋鍓嶅彲鐢ㄥ簱瀛橈紝
- * 鐢辫溅闂存嵁姝ゅ垽鏂槸鍚﹂渶瑕佺敓浜с�佺敓浜у灏戙��
- *
- * @author 瓒呯骇绠$悊鍛�
- */
-@Schema(description = "绠$悊鍚庡彴 - 寰呭畨鎺掔敓浜х殑閿�鍞鍗曟槑缁� Response VO")
-@Data
-public class ErpSaleOrderPendingProductionRespVO {
-
-    @Schema(description = "閿�鍞鍗曠紪鍙�", example = "1300")
-    private Long saleOrderId;
-
-    @Schema(description = "閿�鍞鍗曞彿", example = "XSDD20261102001")
-    private String saleOrderNo;
-
-    @Schema(description = "閿�鍞鍗曟槑缁嗙紪鍙�", example = "11")
-    private Long saleOrderItemId;
-
-    @Schema(description = "瀹㈡埛缂栧彿", example = "1001")
-    private Long customerId;
-
-    @Schema(description = "瀹㈡埛鍚嶇О", example = "XX 绾镐笟")
-    private String customerName;
-
-    @Schema(description = "浜у搧缂栧彿", example = "201")
-    private Long productId;
-
-    @Schema(description = "浜у搧缂栫爜", example = "YL-001")
-    private String productCode;
-
-    @Schema(description = "浜у搧鍚嶇О", example = "鍘熺焊")
-    private String productName;
-
-    @Schema(description = "瑙勬牸鍨嬪彿", example = "A4")
-    private String productSpecification;
-
-    @Schema(description = "鍗曚綅", example = "鍚�")
-    private String productUnitName;
-
-    @Schema(description = "璁㈣喘鏁伴噺", example = "500")
-    private BigDecimal orderCount;
-
-    @Schema(description = "璁㈠崟鏃ユ湡", example = "2026-11-02 10:00:00")
-    private LocalDateTime orderTime;
-
-    @Schema(description = "褰撳墠鍙敤搴撳瓨", example = "120")
-    private BigDecimal stockQuantity;
-
-    @Schema(description = "寤鸿鐢熶骇鏁伴噺 = 璁㈣喘鏁伴噺 - 鍙敤搴撳瓨锛堝皬浜� 0 鏃朵负 0锛�", example = "380")
-    private BigDecimal suggestQuantity;
-
-}
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
index f6db65e..9d0fe8e 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderService.java
@@ -5,8 +5,6 @@
 import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderSaveReqVO;
 import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderImportExcelVO;
 import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderImportRespVO;
-import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO;
-import cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderGenerateMpsReqVO;
 import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderDO;
 import cn.iocoder.yudao.module.erp.dal.dataobject.sale.ErpSaleOrderItemDO;
 import jakarta.validation.Valid;
@@ -154,22 +152,5 @@
      * @param orderId 璁㈠崟缂栧彿
      */
     void updateSaleOrderOutStatus(Long orderId);
-
-    /**
-     * 鑾峰緱寰呭畨鎺掔敓浜х殑閿�鍞鍗曟槑缁�
-     *
-     * 渚涚敓浜ц溅闂淬�屼粠閿�鍞鍗曠敓鎴愮敓浜ц鍒掋�嶄娇鐢細
-     * 杩斿洖宸插鏍革紙status=20锛夈�佷笖灏氭湭瀹夋帓鏈夋晥 MPS 鐨勯攢鍞鍗曟槑缁嗭紝
-     * 骞跺甫涓婂綋鍓嶅彲鐢ㄥ簱瀛樹笌寤鸿鐢熶骇鏁伴噺
-     */
-    List<ErpSaleOrderPendingProductionRespVO> getPendingProductionList();
-
-    /**
-     * 浠庨攢鍞鍗曟壒閲忕敓鎴愮敓浜ц鍒掞紙MPS锛�
-     *
-     * @param reqVO 鏄庣粏涓庤鍒掓暟閲�
-     * @return 鎴愬姛鐢熸垚鏉℃暟
-     */
-    int generateMpsFromSaleOrder(ErpSaleOrderGenerateMpsReqVO reqVO);
 
 }
\ No newline at end of file
diff --git a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
index cdb54f5..18985aa 100644
--- a/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
+++ b/yudao-module-erp/src/main/java/cn/iocoder/yudao/module/erp/service/sale/ErpSaleOrderServiceImpl.java
@@ -52,13 +52,9 @@
 import java.util.Collection;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
-import java.util.Objects;
-import java.util.Set;
-import java.util.stream.Collectors;
 
 import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
 import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.*;
@@ -102,9 +98,6 @@
     private CrmContractApi contractApi;
     @Resource
     private ErpAccountService accountService;
-
-    @Resource
-    private cn.iocoder.yudao.module.mes.api.wms.MesWmStockApi mesWmStockApi;
 
     @Resource
     private AdminUserApi adminUserApi;
@@ -566,195 +559,6 @@
         Long mpsId = mpsApi.createMps(createReqDTO);
         log.info("[createMpsForSaleOrderItem] MPS 鍒涘缓鎴愬姛锛宮psId={}, saleOrderItemId={}", mpsId, item.getId());
         return mpsId;
-    }
-
-    // ==================== 浠庨攢鍞鍗曠敓鎴愮敓浜ц鍒掞紙鐢熶骇杞﹂棿瑙嗚锛� ====================
-
-    @Override
-    public List<cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO>
-            getPendingProductionList() {
-        // 1. 鍙栧叏閮ㄥ凡瀹℃牳鐨勯攢鍞鍗�
-        List<ErpSaleOrderDO> orders = saleOrderMapper.selectList(
-                new cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX<ErpSaleOrderDO>()
-                        .eq(ErpSaleOrderDO::getStatus, ErpAuditStatus.APPROVE.getStatus())
-                        .orderByDesc(ErpSaleOrderDO::getId));
-        if (CollUtil.isEmpty(orders)) {
-            return Collections.emptyList();
-        }
-        Map<Long, ErpSaleOrderDO> orderMap = orders.stream()
-                .collect(Collectors.toMap(ErpSaleOrderDO::getId, o -> o, (a, b) -> a));
-
-        // 2. 鍙栬鍗曟槑缁�
-        List<ErpSaleOrderItemDO> items = saleOrderItemMapper.selectListByOrderIds(orderMap.keySet());
-        if (CollUtil.isEmpty(items)) {
-            return Collections.emptyList();
-        }
-
-        // 3. 宸叉湁鏈夋晥 MPS 鐨勬槑缁嗚鎺掗櫎锛岄伩鍏嶉噸澶嶅畨鎺掔敓浜�
-        Set<Long> plannedItemIds = new HashSet<>();
-        List<Long> allItemIds = items.stream().map(ErpSaleOrderItemDO::getId).collect(Collectors.toList());
-        try {
-            // 娉ㄦ剰锛氳 API 鐩存帴杩斿洖 List锛屼笉鏄� CommonResult
-            List<cn.iocoder.yudao.module.mes.api.mps.dto.MesProMpsRespDTO> existMps =
-                    mpsApi.getMpsListBySaleOrderItemIds(allItemIds);
-            if (CollUtil.isNotEmpty(existMps)) {
-                existMps.stream()
-                        .filter(m -> ObjectUtil.notEqual(m.getStatus(), MPS_STATUS_CANCELED))
-                        .map(cn.iocoder.yudao.module.mes.api.mps.dto.MesProMpsRespDTO::getSaleOrderItemId)
-                        .filter(Objects::nonNull)
-                        .forEach(plannedItemIds::add);
-            }
-        } catch (Exception e) {
-            log.warn("[getPendingProductionList] 鏌ヨ宸叉湁 MPS 澶辫触锛屾寜鍏ㄩ儴鍙畨鎺掑鐞�", e);
-        }
-
-        // 4. 缁勮锛氬甫鍑哄彲鐢ㄥ簱瀛樹笌寤鸿鐢熶骇鏁伴噺
-        List<cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO> result
-                = new ArrayList<>();
-        for (ErpSaleOrderItemDO item : items) {
-            if (plannedItemIds.contains(item.getId())) {
-                continue;
-            }
-            ErpSaleOrderDO order = orderMap.get(item.getOrderId());
-            if (order == null) {
-                continue;
-            }
-            cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO vo
-                    = new cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderPendingProductionRespVO();
-            vo.setSaleOrderId(order.getId());
-            vo.setSaleOrderNo(order.getNo());
-            vo.setSaleOrderItemId(item.getId());
-            vo.setCustomerId(order.getCustomerId());
-            vo.setCustomerName(getCustomerName(order.getCustomerId()));
-            vo.setProductId(item.getProductId());
-            // 鏄庣粏琛ㄥ彧瀛� productId锛屼骇鍝佺紪鐮�/鍚嶇О/瑙勬牸浠� MDM 鍙�
-            try {
-                MdmItemRespDTO mdmItem = mdmItemApi.getItem(item.getProductId()).getCheckedData();
-                if (mdmItem != null) {
-                    vo.setProductCode(mdmItem.getCode());
-                    vo.setProductName(mdmItem.getName());
-                    vo.setProductSpecification(mdmItem.getSpecification());
-                }
-            } catch (Exception e) {
-                log.warn("[getPendingProductionList] 鑾峰彇鐗╂枡淇℃伅澶辫触锛宲roductId={}", item.getProductId(), e);
-            }
-            vo.setOrderCount(item.getCount());
-            vo.setOrderTime(order.getOrderTime());
-
-            // 褰撳墠鍙敤搴撳瓨
-            BigDecimal stock = BigDecimal.ZERO;
-            try {
-                BigDecimal qty = mesWmStockApi.getStockQuantity(item.getProductId());
-                if (qty != null) {
-                    stock = qty;
-                }
-            } catch (Exception e) {
-                log.warn("[getPendingProductionList] 鏌ヨ搴撳瓨澶辫触锛宲roductId={}", item.getProductId(), e);
-            }
-            vo.setStockQuantity(stock);
-
-            // 寤鸿鐢熶骇鏁伴噺 = 璁㈣喘鏁伴噺 - 鍙敤搴撳瓨锛屼笉瓒� 0 鍒欏彇 0
-            BigDecimal count = item.getCount() == null ? BigDecimal.ZERO : item.getCount();
-            BigDecimal suggest = count.subtract(stock);
-            vo.setSuggestQuantity(suggest.compareTo(BigDecimal.ZERO) > 0 ? suggest : BigDecimal.ZERO);
-
-            result.add(vo);
-        }
-        // 鎸夊缓璁敓浜ф暟閲忛檷搴忥紝鎬ラ渶鐢熶骇鐨勬帓鍓嶉潰
-        result.sort((a, b) -> b.getSuggestQuantity().compareTo(a.getSuggestQuantity()));
-        return result;
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public int generateMpsFromSaleOrder(
-            cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderGenerateMpsReqVO reqVO) {
-        if (reqVO.getItems() == null || reqVO.getItems().isEmpty()) {
-            return 0;
-        }
-        int success = 0;
-        for (cn.iocoder.yudao.module.erp.controller.admin.sale.vo.order.ErpSaleOrderGenerateMpsReqVO.Item reqItem
-                : reqVO.getItems()) {
-            ErpSaleOrderItemDO item = saleOrderItemMapper.selectById(reqItem.getSaleOrderItemId());
-            if (item == null) {
-                log.warn("[generateMpsFromSaleOrder] 閿�鍞鍗曟槑缁嗕笉瀛樺湪锛宨d={}", reqItem.getSaleOrderItemId());
-                continue;
-            }
-            ErpSaleOrderDO order = saleOrderMapper.selectById(item.getOrderId());
-            if (order == null || !ErpAuditStatus.APPROVE.getStatus().equals(order.getStatus())) {
-                log.warn("[generateMpsFromSaleOrder] 閿�鍞鍗曟湭瀹℃牳锛岃烦杩囷紝itemId={}", item.getId());
-                continue;
-            }
-            // 骞傜瓑淇濇姢锛氬凡鏈夋湁鏁� MPS 鍒欒烦杩囷紝閬垮厤閲嶅瀹夋帓
-            try {
-                List<cn.iocoder.yudao.module.mes.api.mps.dto.MesProMpsRespDTO> existMps =
-                        mpsApi.getMpsListBySaleOrderItemIds(Collections.singletonList(item.getId()));
-                if (CollUtil.isNotEmpty(existMps)
-                        && existMps.stream().anyMatch(m -> ObjectUtil.notEqual(m.getStatus(), MPS_STATUS_CANCELED))) {
-                    log.info("[generateMpsFromSaleOrder] 鏄庣粏({}) 宸插瓨鍦ㄦ湁鏁� MPS锛岃烦杩�", item.getId());
-                    continue;
-                }
-            } catch (Exception e) {
-                log.warn("[generateMpsFromSaleOrder] 骞傜瓑鏍¢獙澶辫触锛岀户缁敓鎴愶紝itemId={}", item.getId(), e);
-            }
-            try {
-                createMpsForSaleOrderItemWithQuantity(order, item, reqItem.getQuantity());
-                success++;
-            } catch (Exception e) {
-                log.error("[generateMpsFromSaleOrder] 鐢熸垚 MPS 澶辫触锛宨temId={}", item.getId(), e);
-            }
-        }
-        log.info("[generateMpsFromSaleOrder] 鍏辩敓鎴� MPS {} 鏉�", success);
-        return success;
-    }
-
-    /**
-     * 鎸夋寚瀹氭暟閲忎负閿�鍞鍗曟槑缁嗗垱寤� MPS
-     *
-     * 涓� createMpsForSaleOrderItem 鐨勫樊鍒細鏁伴噺鐢辫溅闂磋嚜琛屾寚瀹氾紙閫氬父鏄� 璁㈣喘鏁伴噺 - 鍙敤搴撳瓨锛夛紝
-     * 鑰屼笉鏄洿鎺ョ敤璁㈠崟鏁伴噺
-     */
-    private Long createMpsForSaleOrderItemWithQuantity(ErpSaleOrderDO saleOrder, ErpSaleOrderItemDO item,
-                                                       BigDecimal quantity) {
-        String productName = null;
-        try {
-            MdmItemRespDTO mdmItem = mdmItemApi.getItem(item.getProductId()).getCheckedData();
-            if (mdmItem != null) {
-                productName = mdmItem.getName();
-            }
-        } catch (Exception e) {
-            log.warn("[createMpsForSaleOrderItemWithQuantity] 鑾峰彇鐗╂枡淇℃伅澶辫触锛宲roductId={}", item.getProductId(), e);
-        }
-
-        MesProMpsCreateReqDTO createReqDTO = new MesProMpsCreateReqDTO();
-        createReqDTO.setSaleOrderId(saleOrder.getId());
-        createReqDTO.setSaleOrderNo(saleOrder.getNo());
-        createReqDTO.setSaleOrderItemId(item.getId());
-        createReqDTO.setMdmItemId(item.getProductId());
-        createReqDTO.setProductName(productName);
-        createReqDTO.setQuantity(quantity);
-        createReqDTO.setClientId(saleOrder.getCustomerId());
-        createReqDTO.setRequestDate(formatRequestDate(saleOrder.getOrderTime()));
-        createReqDTO.setRemark("鐢辩敓浜ц溅闂翠粠閿�鍞鍗曠敓鎴愶細" + saleOrder.getNo());
-        return mpsApi.createMps(createReqDTO);
-    }
-
-    /**
-     * 鍙栧鎴峰悕绉帮紝澶辫触鏃惰繑鍥� null 涓嶅奖鍝嶄富娴佺▼
-     */
-    private String getCustomerName(Long customerId) {
-        if (customerId == null) {
-            return null;
-        }
-        try {
-            // 璇� API 鐩存帴杩斿洖 DTO锛屼笉鏄� CommonResult
-            cn.iocoder.yudao.module.crm.api.customer.dto.CrmCustomerRespDTO customer =
-                    customerApi.getCustomer(customerId);
-            return customer == null ? null : customer.getName();
-        } catch (Exception e) {
-            log.warn("[getCustomerName] 鑾峰彇瀹㈡埛澶辫触锛宑ustomerId={}", customerId, e);
-            return null;
-        }
     }
 
     /**

--
Gitblit v1.9.3