From 1c38849eebe0179b7ebad1db30b3335a41cc47e9 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期六, 16 八月 2025 12:30:22 +0800
Subject: [PATCH] art: WebService服务端相关代码修改

---
 src/main/java/org/jeecg/modules/mes/job/ProductionOrderSyncCreationJob.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/mes/job/ProductionOrderSyncCreationJob.java b/src/main/java/org/jeecg/modules/mes/job/ProductionOrderSyncCreationJob.java
index 086a7b1..42bd30d 100644
--- a/src/main/java/org/jeecg/modules/mes/job/ProductionOrderSyncCreationJob.java
+++ b/src/main/java/org/jeecg/modules/mes/job/ProductionOrderSyncCreationJob.java
@@ -1,6 +1,7 @@
 package org.jeecg.modules.mes.job;
 
 import lombok.extern.slf4j.Slf4j;
+import org.jeecg.modules.lsw.service.ILswMaterialService;
 import org.jeecg.modules.mdc.util.DateUtils;
 import org.jeecg.modules.mdc.util.ThrowableUtil;
 import org.jeecg.modules.mes.entity.MesProductionOrder;
@@ -14,6 +15,7 @@
 import org.jeecg.modules.sap.dto.OrderBomDTO;
 import org.jeecg.modules.sap.dto.OrderProcessDTO;
 import org.jeecg.modules.sap.dto.ProductionOrderDTO;
+import org.jeecg.modules.sap.request.ProductionOrderSyncRequest;
 import org.jeecg.modules.sap.service.OrderBomSync;
 import org.jeecg.modules.sap.service.OrderProcessSync;
 import org.jeecg.modules.sap.service.ProductionOrderSync;
@@ -86,6 +88,8 @@
     private ISysQuartzLogService sysQuartzLogService;
     @Autowired
     private IQuartzJobService quartzJobService;
+    @Autowired
+    private ILswMaterialService lswMaterialService;
 
     @Override
     public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
@@ -100,15 +104,22 @@
         //鑾峰彇涓婃鍚屾鏃堕棿
         String lastSyncDateLow = productionOrderService.getLastSyncCreateDate();
         String lastSyncDateHigh = null;
-        if(lastSyncDateLow != null) {
+        if (lastSyncDateLow != null) {
             lastSyncDateHigh = DateUtils.format(new Date(), "yyyyMMdd");
-            if(lastSyncDateLow.equals(lastSyncDateHigh)) {
+            if (lastSyncDateLow.equals(lastSyncDateHigh)) {
                 lastSyncDateHigh = null;
             }
         }
+        ProductionOrderSyncRequest request = new ProductionOrderSyncRequest();
+        request.setFactoryCode(FACTORY_CODE);
+        request.setOrderTypeCode(ORDER_TYPE_CODE);
+        request.setProductionManager(PRODUCTION_MANAGER);
+        request.setOrderStatus(ORDER_STATUS);
+        request.setCreateTimeLow(lastSyncDateLow);
+        request.setCreateTimeHigh(lastSyncDateHigh);
         try {
             //璋冪敤SAP鎺ュ彛鑾峰彇鐢熶骇璁㈠崟
-            Map<String, Object> productionOrderMap = productionOrderSync.syncProductionOrder(FACTORY_CODE, ORDER_TYPE_CODE, PRODUCTION_MANAGER, ORDER_STATUS, lastSyncDateLow, lastSyncDateHigh, null, null);
+            Map<String, Object> productionOrderMap = productionOrderSync.syncProductionOrder(request);
             if (productionOrderMap == null || !SUCCESS_CODE.equals(productionOrderMap.get("ztype"))) {
                 log.error("鏈悓姝ュ埌璁㈠崟淇℃伅锛佹棩鏈燂細{}", LocalDateTime.now());
                 return;
@@ -116,7 +127,7 @@
             //璋冪敤鎴愬姛锛岃幏鍙栬繑鍥炴暟鎹�
             Object result = productionOrderMap.get("result");
             boolean b = result instanceof List;
-            if(!b) {
+            if (!b) {
                 log.error("杩斿洖绫诲瀷閿欒锛� class:{}", result == null ? null : result.getClass());
                 return;
             }
@@ -132,14 +143,21 @@
             //璋冪敤鎴愬姛锛岃幏鍙栬繑鍥炴暟鎹�
             result = orderBomMap.get("result");
             b = result instanceof List;
-            if(!b) {
+            if (!b) {
                 log.error("杩斿洖绫诲瀷閿欒锛� class:{}", result == null ? null : result.getClass());
                 return;
             }
+            //璁㈠崟BOM鏁版嵁澶勭悊
             List<OrderBomDTO> orderBomDTOList = (List<OrderBomDTO>) result;
             b = processBillMaterialsService.saveOrUpdateOrderBom(orderMap, orderBomDTOList);
-            if(!b) {
+            if (!b) {
                 log.error("淇濆瓨璁㈠崟BOM澶辫触锛屾棩鏈燂細{}", LocalDateTime.now());
+                return;
+            }
+            //鐗╂枡鏁版嵁澶勭悊
+            b = lswMaterialService.saveOrUpdateMaterial(orderMap, orderBomDTOList);
+            if (!b) {
+                log.error("淇濆瓨鐗╂枡澶辫触锛屾棩鏈燂細{}", LocalDateTime.now());
                 return;
             }
             //璁㈠崟宸ュ簭鍚屾
@@ -151,13 +169,13 @@
             //璋冪敤鎴愬姛锛岃幏鍙栬繑鍥炴暟鎹�
             result = orderProcessMap.get("result");
             b = result instanceof List;
-            if(!b) {
+            if (!b) {
                 log.error("杩斿洖绫诲瀷閿欒锛� class:{}", result == null ? null : result.getClass());
                 return;
             }
             List<OrderProcessDTO> orderProcessDTOList = (List<OrderProcessDTO>) result;
             b = materialProcessService.saveOrUpdateOrderProcess(orderMap, orderProcessDTOList);
-            if(!b) {
+            if (!b) {
                 log.error("淇濆瓨璁㈠崟宸ュ簭澶辫触锛屾棩鏈燂細{}", LocalDateTime.now());
             }
             quartzLog.setIsSuccess(0);

--
Gitblit v1.9.3