From b4d9cf3a9974d9abac40ecd228820e5e854b080a Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期三, 07 一月 2026 17:43:38 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/OrderDetlMapper.xml                            |    5 +++++
 src/main/java/com/zy/asrs/service/impl/OrderDetlPakinServiceImpl.java    |    8 ++++++--
 src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java |   10 ++++++----
 src/main/java/com/zy/asrs/service/OrderDetlService.java                  |    1 +
 src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java                    |    2 ++
 src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java         |   28 +++++++++++++++++++++++++++-
 src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java  |    2 +-
 7 files changed, 48 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
index d3f865d..b3aa7c0 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
@@ -63,4 +63,6 @@
     int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("brand")String brand, @Param("standby1")String standby1, @Param("standby2")String standby2, @Param("standby3")String standby3, @Param("workQty")Double workQty);
 
     List<OrderDetl> selectByOrderNo(@Param("orderNo") String orderNo);
+    boolean morpt(@Param("orderNo")String orderNo,@Param("matnr")String matnr);
+
 }
diff --git a/src/main/java/com/zy/asrs/service/OrderDetlService.java b/src/main/java/com/zy/asrs/service/OrderDetlService.java
index 4c701b7..98e2fff 100644
--- a/src/main/java/com/zy/asrs/service/OrderDetlService.java
+++ b/src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -37,6 +37,7 @@
      * @return
      */
     boolean increaseWorkQty(Long orderId, String matnr, String batch, String brand, String standby1, String standby2, String standby3, String boxType1, String boxType2, String boxType3, Double workQty);
+    boolean morpt(String orderNo,String orderNo1);
 
     List<OrderDetl> selectByOrderNo(String orderNo);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakinServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakinServiceImpl.java
index 5d1f218..289907f 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlPakinServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlPakinServiceImpl.java
@@ -5,10 +5,12 @@
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.core.common.Cools;
 import com.core.exception.CoolException;
+import com.zy.asrs.entity.OrderDetl;
 import com.zy.asrs.entity.OrderDetlPakin;
 import com.zy.asrs.entity.param.OrderDetlByCode;
 import com.zy.asrs.mapper.OrderDetlPakinMapper;
 import com.zy.asrs.service.OrderDetlPakinService;
+import com.zy.asrs.service.OrderDetlService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -18,6 +20,8 @@
 public class OrderDetlPakinServiceImpl extends ServiceImpl<OrderDetlPakinMapper, OrderDetlPakin> implements OrderDetlPakinService {
     @Autowired
     private OrderDetlPakinService orderDetlPakinService;
+    @Autowired
+    private OrderDetlService orderDetlService;
     @Override
     public List<OrderDetlPakin> selectByOrderId(Long orderId) {
         return this.selectList(new EntityWrapper<OrderDetlPakin>().eq("order_id", orderId));
@@ -118,9 +122,9 @@
     
     @Override
     public boolean morpt(String orderNo,String orderNo1){
-        List<OrderDetlPakin> list1 = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>().eq("order_no",orderNo1));
+        List<OrderDetl> list1 = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no",orderNo1));
         try{
-            for (OrderDetlPakin item : list1) {
+            for (OrderDetl item : list1) {
                 Double anfme = item.getAnfme();
                 Double qty = item.getQty();
                 String matnr = item.getMatnr();
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
index bee5018..5f14153 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -3,17 +3,22 @@
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.plugins.Page;
 import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.OrderDetlPakin;
 import com.zy.asrs.mapper.OrderDetlMapper;
 import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.OrderDetlPakinService;
 import com.zy.asrs.service.OrderDetlService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
 
 @Service("orderDetlService")
 public class OrderDetlServiceImpl extends ServiceImpl<OrderDetlMapper, OrderDetl> implements OrderDetlService {
-
+    @Autowired
+    private OrderDetlService orderDetlService;
     @Override
     public List<OrderDetl> selectByOrderId(Long orderId) {
         return this.selectList(new EntityWrapper<OrderDetl>().eq("order_id", orderId));
@@ -99,4 +104,25 @@
     public List<OrderDetl> selectByOrderNo(String orderNo) {
         return this.baseMapper.selectByOrderNo(orderNo);
     }
+    @Override
+    public boolean morpt(String orderNo,String orderNo1){
+        List<OrderDetl> list1 = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no",orderNo1));
+        try{
+            for (OrderDetl item : list1) {
+                Double anfme = item.getAnfme();
+                Double qty = item.getQty();
+                String matnr = item.getMatnr();
+                if(anfme.equals(qty)){
+                    OrderDetl orderDetl = orderDetlService.selectOne(
+                            new EntityWrapper<OrderDetl>().eq("matnr", matnr).eq("order_no", orderNo)
+                    );
+                    this.baseMapper.morpt(orderNo,matnr);
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new CoolException("姹囨姤鍗曡浆鎹㈠け璐�:" + e.getMessage());
+        }
+        return true;
+    }
 }
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 f537323..2ba70a1 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
@@ -1590,7 +1590,7 @@
                                 String detlId = entry.getString("id"); //鏄庣粏id
                                 Long seq = entry.getLong("seq"); //鍒嗗綍琛屽彿
                                 String manubill = entry.getString("manufacturenun");
-                                String manubillid = entry.getString("orderid_id");
+                                String manubillid = entry.getString("orderfid_id");
                                 String manuentryid = null;
                                 String manuentry = null;
                                 if(kingDeeUtilType.formId.equals("PRD_MORPT")){
diff --git a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
index 2e2b852..32e427d 100644
--- a/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
+++ b/src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java
@@ -261,7 +261,7 @@
                     JSONObject billentryLk = new JSONObject()
                             .fluentPut("id", 0L)
                             .fluentPut("seq", orderDetl.getLineNumber())
-                            .fluentPut("billentry_lk_stableid", 1014628189722381313L)
+                            .fluentPut("billentry_lk_stableid", 1828884569948973056L)
                             .fluentPut("billentry_lk_sbillid", Long.parseLong(order.getItemName()))  // 涓诲崟ID
                             .fluentPut("billentry_lk_sid", Long.parseLong(orderDetl.getThreeCode())); // 鏄庣粏ID
 //                            .fluentPut("billentry_lk_baseqty_old", orderDetl.getErpAnfme())  // ERP鏁伴噺
@@ -281,7 +281,7 @@
                             .fluentPut("owner_number", "BU-00001")
                             .fluentPut("manuentry", orderDetl.getSpecs())
                             .fluentPut("manubill", orderDetl.getColor())
-                            .fluentPut("manubillid", orderDetl.getModel())
+                            .fluentPut("manubillid", Long.parseLong(orderDetl.getModel()))
                             .fluentPut("manuentryid", orderDetl.getBrand())
                             .fluentPut("producttype", "C")
                             .fluentPut("eap7_textfield", orderDetl.getBoxType3())
@@ -296,7 +296,7 @@
                             .fluentPut("outkeeper_number", "BU-00001")
                             .fluentPut("shipper_number", "BU-00001")
                             .fluentPut("entrysettleorg_number", "BU-00001")
-                            .fluentPut("material_number", orderDetl.getMatnr())
+                            .fluentPut("material_masterid_number", orderDetl.getMatnr())
 
                             .fluentPut("billentry_lk", billentryLkArray2);
 
@@ -306,7 +306,7 @@
                         .fluentPut("data", new JSONArray(Arrays.asList(
                                 new JSONObject()
                                         .fluentPut("billno", UUID.randomUUID().toString().replace("-", "").substring(0, 16))
-                                        .fluentPut("billstatus", "C")
+                                        .fluentPut("billstatus", "A")
                                         .fluentPut("id", 0L)
                                         .fluentPut("biztime", sdf1.format(now2))
                                         .fluentPut("org_number", "BU-00001")
@@ -318,6 +318,8 @@
                                         .fluentPut("invscheme_number", "601")
                                         .fluentPut("purorg_number", "BU-00001")
                                         .fluentPut("productionorg_number", "BU-00001")
+                                        .fluentPut("supplier_number", "272")
+
                                         .fluentPut("billentry", billentryArray2)  // 灏� billentry 鏁扮粍娣诲姞鍒拌姹傚弬鏁�
                         )));
             case "STK_imSaloutbill":
diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index 06758c9..237a398 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -210,5 +210,10 @@
         from man_order_detl
         where order_no = #{orderNo}
     </select>
+    <update id="morpt" parameterType="String">
+        UPDATE man_order_detl
+        SET qty = anfme, work_qty = anfme
+        WHERE order_no = #{orderNo} and matnr = #{matnr}
+    </update>
 
 </mapper>

--
Gitblit v1.9.1