From c4e489878e01a41debab8a1d954199d7b831177d Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期一, 11 八月 2025 16:58:09 +0800
Subject: [PATCH] art: SAP 报工接口调试修改、投料接口修改、订单关闭接口修改

---
 src/main/java/org/jeecg/modules/sap/service/impl/ProductionOrderSyncImpl.java |   88 +++++++++++++++----------------------------
 1 files changed, 31 insertions(+), 57 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/sap/service/impl/ProductionOrderSyncImpl.java b/src/main/java/org/jeecg/modules/sap/service/impl/ProductionOrderSyncImpl.java
index 960a8c4..2f39fda 100644
--- a/src/main/java/org/jeecg/modules/sap/service/impl/ProductionOrderSyncImpl.java
+++ b/src/main/java/org/jeecg/modules/sap/service/impl/ProductionOrderSyncImpl.java
@@ -1,6 +1,5 @@
 package org.jeecg.modules.sap.service.impl;
 
-import com.alibaba.fastjson.JSONObject;
 import com.sap.conn.jco.JCoDestination;
 import com.sap.conn.jco.JCoFunction;
 import com.sap.conn.jco.JCoRepository;
@@ -12,6 +11,7 @@
 import org.jeecg.config.sap.SapRfcConnectionManager;
 import org.jeecg.modules.sap.FunctionConst;
 import org.jeecg.modules.sap.dto.ProductionOrderDTO;
+import org.jeecg.modules.sap.request.ProductionOrderSyncRequest;
 import org.jeecg.modules.sap.service.ProductionOrderSync;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -33,7 +33,7 @@
 
     @Override
     @ApiLog(apiName = "鐢熶骇璁㈠崟鍚屾(ZPPF_033_1)", apiCategory = ApiLogCategoryEnum.SAP)
-    public Map<String, Object> syncProductionOrder(String factoryCode, String orderTypeCode, String productionManager, String orderStatus, String createTimeLow, String createTimeHigh, String updateTimeLow, String updateTimeHigh) throws Exception {
+    public Map<String, Object> syncProductionOrder(ProductionOrderSyncRequest request) throws Exception {
         Map<String, Object> resultMap = new HashMap<>();
         JCoDestination destination = connectionManager.getDestination();
         JCoRepository repository = destination.getRepository();
@@ -43,94 +43,68 @@
         }
         // 璁剧疆杈撳叆鍙傛暟
         //璁㈠崟鍙锋煡璇㈡潯浠�
-//            JCoTable AUFNRTable = function.getTableParameterList().getTable("ZTAB_AUFNR");
-        List<JSONObject> items = new ArrayList<>();
+        if (StringUtils.isNotBlank(request.getOrderCode())) {
+            JCoTable AUFNRTable = function.getTableParameterList().getTable("ZTAB_AUFNR");
+            String[] split = request.getOrderCode().split(",");
+            for (String code : split) {
+                AUFNRTable.appendRow();
+                AUFNRTable.setValue("AUFNR", code);
+            }
+        }
         //璁㈠崟绫诲瀷 鏍囧噯鐢熶骇璁㈠崟
-        if(StringUtils.isNotBlank(orderTypeCode)){
+        if (StringUtils.isNotBlank(request.getOrderTypeCode())) {
             JCoTable AUARTTable = function.getTableParameterList().getTable("ZTAB_AUART");
-            String[] split = orderTypeCode.split(",");
-            for(String code : split){
+            String[] split = request.getOrderTypeCode().split(",");
+            for (String code : split) {
                 AUARTTable.appendRow();
                 AUARTTable.setValue("AUART", code);
             }
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("AUART", orderTypeCode);
-            items.add(item);
         }
-        if(StringUtils.isNotBlank(productionManager)){
+        if (StringUtils.isNotBlank(request.getProductionManager())) {
             JCoTable FEVORTable = function.getTableParameterList().getTable("ZTAB_FEVOR");
-            String[] split = productionManager.split(",");
-            for(String code : split){
+            String[] split = request.getProductionManager().split(",");
+            for (String code : split) {
                 FEVORTable.appendRow();
                 FEVORTable.setValue("FEVOR", code);
             }
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("FEVOR", productionManager);
-            items.add(item);
         }
-        if(StringUtils.isNotBlank(factoryCode)){
+        if (StringUtils.isNotBlank(request.getFactoryCode())) {
             //鏂扮伀鐐�
             JCoTable WERKSTable = function.getTableParameterList().getTable("ZTAB_WERKS");
-            String[] split = factoryCode.split(",");
-            for(String code : split){
+            String[] split = request.getFactoryCode().split(",");
+            for (String code : split) {
                 WERKSTable.appendRow();
                 WERKSTable.setValue("WERKS", code);
             }
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("WERKS", factoryCode);
-            items.add(item);
         }
-        if(StringUtils.isNotBlank(orderStatus)) {
+        if (StringUtils.isNotBlank(request.getOrderStatus())) {
             //鏂扮伀鐐�
             JCoTable TXT04Table = function.getTableParameterList().getTable("ZTAB_TXT04");
-            String[] split = orderStatus.split(",");
-            for(String code : split){
+            String[] split = request.getOrderStatus().split(",");
+            for (String code : split) {
                 TXT04Table.appendRow();
                 TXT04Table.setValue("TXT04", code);
             }
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("TXT04", orderStatus);
-            items.add(item);
         }
-        if(StringUtils.isNotBlank(createTimeLow)){
+        if (StringUtils.isNotBlank(request.getCreateTimeLow())) {
             JCoTable UDATETable = function.getTableParameterList().getTable("ZTAB_UDATE");
             UDATETable.appendRow();
-            UDATETable.setValue("LOW", createTimeLow);
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("ZTAB_UDATE_LOW", createTimeLow);
-            items.add(item);
+            UDATETable.setValue("LOW", request.getCreateTimeLow());
         }
-        if(StringUtils.isNotBlank(createTimeHigh)){
+        if (StringUtils.isNotBlank(request.getCreateTimeHigh())) {
             JCoTable UDATETable = function.getTableParameterList().getTable("ZTAB_UDATE");
             UDATETable.appendRow();
-            UDATETable.setValue("HIGH", createTimeHigh);
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("ZTAB_UDATE_HIGH", createTimeHigh);
-            items.add(item);
+            UDATETable.setValue("HIGH", request.getCreateTimeHigh());
         }
-        if(StringUtils.isNotBlank(updateTimeLow)){
+        if (StringUtils.isNotBlank(request.getUpdateTimeLow())) {
             JCoTable LAEDATable = function.getTableParameterList().getTable("ZTAB_LAEDA");
             LAEDATable.appendRow();
-            LAEDATable.setValue("LOW", updateTimeLow);
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("ZTAB_LAEDA_LOW", updateTimeLow);
-            items.add(item);
+            LAEDATable.setValue("LOW", request.getUpdateTimeLow());
         }
-        if(StringUtils.isNotBlank(updateTimeHigh)){
+        if (StringUtils.isNotBlank(request.getUpdateTimeHigh())) {
             JCoTable LAEDATable = function.getTableParameterList().getTable("ZTAB_LAEDA");
             LAEDATable.appendRow();
-            LAEDATable.setValue("HIGH", updateTimeLow);
-            //缁勮璇锋眰鍙傛暟
-            JSONObject item = new JSONObject();
-            item.put("ZTAB_LAEDA_HIGH", updateTimeLow);
-            items.add(item);
+            LAEDATable.setValue("HIGH", request.getUpdateTimeHigh());
         }
         // 鎵ц璋冪敤
         function.execute(destination);
@@ -176,7 +150,7 @@
         }
         resultMap.put("zmess", zmess);
         resultMap.put("ztype", ztype);
-        resultMap.put("importParameters", items);
+        resultMap.put("importParameters", request);
         resultMap.put("result", resultList);
         return resultMap;
     }

--
Gitblit v1.9.3