From 10c441b49c936ff93a549112b31330042605b857 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期三, 26 十一月 2025 14:11:25 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/BasArmRulesMapper.xml                         |   10 +++++
 src/main/java/com/zy/asrs/mapper/BasArmRulesMapper.java                 |    1 
 src/main/java/com/zy/asrs/service/impl/BasArmRulesServiceImpl.java      |    5 ++
 src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java            |    8 +++
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java           |    2 
 src/main/java/com/zy/asrs/task/ArmRulesScheduler.java                   |    2 +
 src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java             |    2 
 src/main/java/com/zy/asrs/service/BasArmRulesService.java               |    1 
 src/main/resources/application.yml                                      |    6 +-
 src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java |   31 ++++++++++-----
 10 files changed, 51 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/BasArmRulesMapper.java b/src/main/java/com/zy/asrs/mapper/BasArmRulesMapper.java
index c83d4c3..44ff0f1 100644
--- a/src/main/java/com/zy/asrs/mapper/BasArmRulesMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/BasArmRulesMapper.java
@@ -24,6 +24,7 @@
                          @Param("status") int status);
 
     Integer getNumber(@Param("weight")Double weight,@Param("volume")Double volume,@Param("length")Double length,@Param("width")Double width,@Param("height")Double height);
+    Integer getStatus(@Param("weight")Double weight,@Param("volume")Double volume,@Param("length")Double length,@Param("width")Double width,@Param("height")Double height);
 
 
 }
diff --git a/src/main/java/com/zy/asrs/service/BasArmRulesService.java b/src/main/java/com/zy/asrs/service/BasArmRulesService.java
index 87ba06c..b72a4df 100644
--- a/src/main/java/com/zy/asrs/service/BasArmRulesService.java
+++ b/src/main/java/com/zy/asrs/service/BasArmRulesService.java
@@ -14,4 +14,5 @@
     boolean updateStatus(ArmPrecomputeParam.CombMat combMat);
 
     Integer getNumber(Double weight,Double volume,Double length,Double width,Double height);
+    Integer getStatus(Double weight,Double volume,Double length,Double width,Double height);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/BasArmRulesServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasArmRulesServiceImpl.java
index 700d2eb..4cbcaaa 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasArmRulesServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasArmRulesServiceImpl.java
@@ -38,4 +38,9 @@
     public Integer getNumber(Double weight,Double volume,Double length,Double width,Double height){
         return this.baseMapper.getNumber(weight,volume,length,width,height);
     }
+
+    @Override
+    public Integer getStatus(Double weight,Double volume,Double length,Double width,Double height){
+        return this.baseMapper.getStatus(weight,volume,length,width,height);
+    }
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index a3f05dd..992c847 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -716,7 +716,7 @@
         String orderNo = null;
         for (CombParam.CombMat combMat : param.getCombMats()) {
             List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
-                    .eq("matnr", combMat.getMatnr()).eq("boxType3", combMat.getOrderNo())
+                    .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
                     .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
                     .eq("standby3", combMat.getStandby3()));
             if (orderDetlPakins.size() > 0) {
diff --git a/src/main/java/com/zy/asrs/task/ArmRulesScheduler.java b/src/main/java/com/zy/asrs/task/ArmRulesScheduler.java
index 52cef5b..4ea6a9d 100644
--- a/src/main/java/com/zy/asrs/task/ArmRulesScheduler.java
+++ b/src/main/java/com/zy/asrs/task/ArmRulesScheduler.java
@@ -41,6 +41,8 @@
                     ArmPrecomputeParam armPrecomputeParam = new ArmPrecomputeParam(basArmRule);
                     ReturnT<String> returnT = armRulesHandler.start(armPrecomputeParam);
                     if (!returnT.isSuccess()) {
+                        basArmRule.setStatus(2);
+                        basArmRulesService.updateById(basArmRule);
                         log.error("鑾峰彇鐮佸灈鏁伴噺澶辫触===>"+JSON.toJSON(basArmRule));
                     }
                 } else {
diff --git a/src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java b/src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java
index 21c424b..d7a607c 100644
--- a/src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java
+++ b/src/main/java/com/zy/asrs/task/OrderToSortLineScheduler.java
@@ -2,6 +2,7 @@
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.OrderToLine;
 import com.zy.asrs.service.*;
@@ -72,7 +73,12 @@
                             basArmRulesService.insert(basArmRules);
                             return;
                         } else if (number == 0){
-                            return;
+                            Integer status =  basArmRulesService.getStatus(orderDetl.getWeight(),orderDetl.getVolume(),orderDetl.getManLength(),orderDetl.getWidth(),orderDetl.getHeight());
+                            if (!Cools.isEmpty(status) && status == 2){
+                                continue;
+                            } else {
+                                return;
+                            }
                         }
                         String name = ToSortLineUtils.MergerParameter(orderDetl.getMatnr(),orderDetl.getStandby3(),orderDetl.getStandby1(),orderDetl.getStandby2());
                         int maxCapacity = number;
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
index c7c2ed1..f14f8e0 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -115,7 +115,7 @@
                     jsonObject.put("end_modifytime", sdf1.format(now));//鏇存柊鎴
                     jsonObject.put("start_approvedate", "2025-01-01");//瀹℃牳璧峰
                     jsonObject.put("end_approvedate", sdf2.format(now));//瀹℃牳鎴
-                    jsonObject.put("status", Arrays.asList("B", "C"));//鏁版嵁鐘舵�� [A:鏆傚瓨, B:宸叉彁浜�, C:宸插鏍竇
+                    jsonObject.put("status", Arrays.asList("C"));//鏁版嵁鐘舵�� [A:鏆傚瓨, B:宸叉彁浜�, C:宸插鏍竇
                     path = matAddress;
                     break;
                 case "BD_RRGANIZATION": //渚涘簲鍟嗗悓姝�
@@ -131,10 +131,10 @@
 //                    jsonObject.put("start_biztime", latestUpdateTime);//涓氬姟璧峰鏃ユ湡
                     jsonObject.put("start_biztime",  "2025-01-01 00:00:00");//涓氬姟璧峰鏃ユ湡
                     jsonObject.put("end_biztime", sdf1.format(now));//涓氬姟缁撴潫鏃ユ湡
-                    jsonObject.put("billno", Arrays.asList("CGSL-251125-000003"));
-                    jsonObject.put("billstatus", Arrays.asList("A","B","C"));//鏁版嵁鐘舵�� [A:鏆傚瓨, B:宸叉彁浜�, C:宸插鏍竇
-                    jsonObject.put("start_auditdate", null);//id
-                    jsonObject.put("end_auditdate", null);
+                    jsonObject.put("billno", null);
+                    jsonObject.put("billstatus", Arrays.asList("C"));//鏁版嵁鐘舵�� [A:鏆傚瓨, B:宸叉彁浜�, C:宸插鏍竇
+                    jsonObject.put("start_auditdate", "2025-11-25 00:00:00");
+                    jsonObject.put("end_auditdate", sdf1.format(now));
                     jsonObject.put("org_number", null);
                     jsonObject.put("supplier_number", null);
                     path = imPurreceiveBillAddress;
@@ -205,9 +205,9 @@
                             // ---- 鎺掑簭閫昏緫 ----
                             List<Double> dims = Arrays.asList(height, width, length);
                             dims.sort(Double::compareTo); // 鍗囧簭鎺掑垪锛氭渶灏忋�佷腑闂淬�佹渶澶�
-                            Double min = dims.get(0);
-                            Double mid = dims.get(1);
-                            Double max = dims.get(2);
+                            Double min = dims.get(0)*10;
+                            Double mid = dims.get(1)*10;
+                            Double max = dims.get(2)*10;
                             // 鐢熸垚鍟嗗搧妗f
                             Mat mat = matService.selectByMatnr(matnr);
                             if (mat == null) {
@@ -381,10 +381,10 @@
                                     if (ownerUuid != null) {
                                         locOwner = locOwnerService.selectByUuid(ownerUuid);
                                         if (locOwner == null) {
-                                            callApiLogSaveOrder(order,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝璇峰厛娣诲姞瀵瑰簲璐т富缂栧彿锛�"+ownerUuid, false);continue;
+                                            callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝璇峰厛娣诲姞瀵瑰簲璐т富缂栧彿锛�"+ownerUuid+"鍚嶇О"+owner, false);continue;
                                         }
                                     } else{
-                                        callApiLogSaveOrder(order,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝鏈煡璇㈠埌璐т富缂栧彿锛�", false);continue;
+                                        callApiLogSaveOwner(locOwner,kingDeeUtilType, "璐т富妫�绱㈠け璐ワ紝鏈煡璇㈠埌璐т富缂栧彿锛�", false);continue;
                                     }
                                     if (Cools.isEmpty(order)) {
                                         // 鍗曟嵁涓绘。
@@ -443,6 +443,10 @@
                                         String memo = entry.getString("eap7_textfield6"); //澶囨敞锛堣嫳鏂囨弿杩帮級
                                         String s1 = entry.getString("eap7_textfield7"); //瀹㈡埛PO
                                         String suppCode = entry.getString("supplier_number"); //渚涘簲鍟�
+                                        if(anfme == 0){
+                                            callApiLogSaveOrder(order,kingDeeUtilType, "鍗曟嵁鏁伴噺寮傚父"+matnr, false);
+                                            continue;
+                                        }
                                         //鐗╂枡缂栫爜
                                         Mat mat = matService.selectByMatnr(matnr);
                                         if (Cools.isEmpty(mat)) {
@@ -532,10 +536,15 @@
                 "璐т富缂栧彿锛�" + locSupp.getOwnerUuid() + "銆佽揣涓诲悕绉帮細" + locSupp.getOwner(),
                 response, bool);
     }
+    public void callApiLogSaveOwner(LocOwner locOwner, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
+        apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
+                "璐т富缂栧彿锛�" + locOwner.getOwnerUuid() + "銆佽揣涓诲悕绉帮細" + locOwner.getOwner(),
+                response, bool);
+    }
 
     public void callApiLogSaveOrder(Order order, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
         apiLogService.save("鑾峰彇"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
-                "鍗曟嵁缂栧彿锛�" + order.getId() +  "銆佺姸鎬侊細" + order.getStatus$(),
+                "鍗曟嵁缂栧彿锛�" + order.getOrderNo() +  "銆佺姸鎬侊細" + order.getStatus$(),
                 response, bool);
     }
 
diff --git a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
index 1f2a6f4..51e0322 100644
--- a/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
+++ b/src/main/java/com/zy/erp/kingdee/enums/KingDeeUtilType.java
@@ -3,7 +3,7 @@
 public enum KingDeeUtilType {
     BD_MATERIAL(0, "鐗╂枡妗f","BD_MATERIAL","","","",1),
     BD_RRGANIZATION(2, "渚涘簲鍟�","BD_RRGANIZATION","","","",1),
-//    PUR_RECEIVEBIll(3, "鏀舵枡鍗�","PUR_RECEIVEBIll","","","",1),
+    PUR_RECEIVEBIll(3, "鏀舵枡鍗�","PUR_RECEIVEBIll","","","",1),
 
     //    STK_InStock(1, "閲囪喘鍏ュ簱鍗�","STK_InStock","FRealQty","","",1),
 //    PUR_MRB(2, "閲囪喘閫�鏂欏崟","PUR_MRB","FRMREALQTY","","",1),
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index a78fc18..4da0f78 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -94,9 +94,9 @@
     #璁℃椂鍣ㄤ笂鎶ュ紑鍏�
     ErpReportOld: true
     #鑾峰彇鍗曟嵁寮�鍏�
-    InboundOrderSwitch: false
+    InboundOrderSwitch: true
     #鐧诲綍鎺ュ彛寮�鍏�
-    LoginAuthenticationSwitch: false
+    LoginAuthenticationSwitch: true
     #涓婃姤銆佸鏍稿崟鎹紑鍏�
     ReviewOrderSwitch: false
   #  鍦板潃
@@ -105,7 +105,7 @@
     #鐧诲綍鍦板潃
     loginaddress: /kapi/oauth2/getToken
     #鍟嗗搧妗f鍦板潃
-    mataddress: /kapi/v2/basedata/bd_material/batchQuery
+    mataddress: /kapi/v2/eap7/basedata/bd_material/batchQuery
     #璐т富妗f鍦板潃
     orgaddress: /kapi/v2/basedata/bd_supplier/query
     #鏀舵枡鍗�-鏌ヨ
diff --git a/src/main/resources/mapper/BasArmRulesMapper.xml b/src/main/resources/mapper/BasArmRulesMapper.xml
index 466c927..df06193 100644
--- a/src/main/resources/mapper/BasArmRulesMapper.xml
+++ b/src/main/resources/mapper/BasArmRulesMapper.xml
@@ -41,4 +41,14 @@
         and material_weight = #{weight}
     </select>
 
+    <select id="getStatus" resultType="Integer">
+        select status
+        from asr_bas_arm_rules
+        where 1=1
+        and material_length = #{length}
+        and material_width = #{width}
+        and material_height = #{height}
+        and material_weight = #{weight}
+    </select>
+
 </mapper>

--
Gitblit v1.9.1