From c039b42920df96629bc570883cd498e58276e643 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期一, 05 一月 2026 14:59:43 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/kingdee/handler/SaveOrderSyncHandler.java |   87 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 86 insertions(+), 1 deletions(-)

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 c979317..2e2b852 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
@@ -45,7 +45,8 @@
     private String imProductinbillReport;
     @Value("${erp.address.imSaloutbillSave}")
     private String imSaloutbillSave;
-
+    @Value("${erp.address.imMdcOmprdinbillSave}")
+    private String imMdcOmprdinbillSave;
     @Autowired
     private OrderService orderService;
     @Autowired
@@ -238,6 +239,87 @@
 
                                         .fluentPut("billentry", billentryArray1)  // 灏� billentry 鏁扮粍娣诲姞鍒拌姹傚弬鏁�
                         )));
+            case "OUI_RECEIVEBIll":
+                JSONArray billentryLkArray2 = new JSONArray();
+                JSONArray billentryArray2 = new JSONArray();  // 鐢ㄤ簬瀛樺偍 billentry 瀵硅薄
+                String suppCode2 = null;  // 渚涘簲鍟�
+                String boxType22 = null;  // 璐т富/璐ф簮
+                Date now2 = new Date();
+                path = imMdcOmprdinbillSave;
+                for (OrderDetl orderDetl : orderDetlList) {
+                    suppCode2 = orderDetl.getSuppCode();
+                    boxType22 = orderDetl.getBoxType2();
+                    if (orderDetl.getQty() == 0) {
+                        continue;
+                    }
+                    Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
+                    Double qty = orderDetl.getQty()*mat.getSafeQty();
+//                    Double qtytotal = orderDetl.getAnfme()*mat.getSafeQty();
+//                    JSONArray idArr = new JSONArray();
+//                    idArr.add(0L);
+                    // 鍒涘缓 billentry_lk 瀵硅薄
+                    JSONObject billentryLk = new JSONObject()
+                            .fluentPut("id", 0L)
+                            .fluentPut("seq", orderDetl.getLineNumber())
+                            .fluentPut("billentry_lk_stableid", 1014628189722381313L)
+                            .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鏁伴噺
+//                            .fluentPut("billentry_lk_baseqty", qty);  // 浣滀笟鏁伴噺
+                    billentryLkArray2.add(billentryLk);
+                    // 鍒涘缓 billentry 瀵硅薄锛屽~鍏呯己澶辩殑瀛楁
+                    JSONObject billentry = new JSONObject()
+                            .fluentPut("id", 0L)
+                            .fluentPut("warehouse_number", orderDetl.getManu())  // 浠撳簱缂栧彿
+                            .fluentPut("qty", qty)  // 鏁伴噺
+                            .fluentPut("baseqty", orderDetl.getErpAnfme())
+                            .fluentPut("ownertype", "bos_org")
+                            .fluentPut("keepertype", "bos_org")
+                            .fluentPut("outownertype", "bos_org")
+                            .fluentPut("outkeepertype", "bos_org")
+                            .fluentPut("keeper_number", "BU-00001")
+                            .fluentPut("owner_number", "BU-00001")
+                            .fluentPut("manuentry", orderDetl.getSpecs())
+                            .fluentPut("manubill", orderDetl.getColor())
+                            .fluentPut("manubillid", orderDetl.getModel())
+                            .fluentPut("manuentryid", orderDetl.getBrand())
+                            .fluentPut("producttype", "C")
+                            .fluentPut("eap7_textfield", orderDetl.getBoxType3())
+
+                            .fluentPut("unit_number", "pcs")
+                            .fluentPut("baseunit_number", "pcs")
+                            .fluentPut("warehouse_number", "CK-002")
+                            .fluentPut("owner_number", "BU-00001")
+                            .fluentPut("keeper_number", "BU-00001")
+                            .fluentPut("invtype_number", "110")
+                            .fluentPut("outowner_number", "BU-00001")
+                            .fluentPut("outkeeper_number", "BU-00001")
+                            .fluentPut("shipper_number", "BU-00001")
+                            .fluentPut("entrysettleorg_number", "BU-00001")
+                            .fluentPut("material_number", orderDetl.getMatnr())
+
+                            .fluentPut("billentry_lk", billentryLkArray2);
+
+                    billentryArray2.add(billentry);
+                }
+                return new JSONObject()
+                        .fluentPut("data", new JSONArray(Arrays.asList(
+                                new JSONObject()
+                                        .fluentPut("billno", UUID.randomUUID().toString().replace("-", "").substring(0, 16))
+                                        .fluentPut("billstatus", "C")
+                                        .fluentPut("id", 0L)
+                                        .fluentPut("biztime", sdf1.format(now2))
+                                        .fluentPut("org_number", "BU-00001")
+                                        .fluentPut("billtype_number", "im_mdc_omprdinbill_BT_S")
+                                        .fluentPut("bizorg_number", "BU-00001")
+                                        .fluentPut("bizdept_number", "Org-00001")
+                                        .fluentPut("dept_number", "Org-00001")
+                                        .fluentPut("biztype_number", "605")
+                                        .fluentPut("invscheme_number", "601")
+                                        .fluentPut("purorg_number", "BU-00001")
+                                        .fluentPut("productionorg_number", "BU-00001")
+                                        .fluentPut("billentry", billentryArray2)  // 灏� billentry 鏁扮粍娣诲姞鍒拌姹傚弬鏁�
+                        )));
             case "STK_imSaloutbill":
                 path = imSaloutbillSave;
                 billentryArray = new JSONArray();
@@ -280,6 +362,9 @@
                                         .fluentPut("bizdept_number", "Org-00002")
                                         .fluentPut("org_number", "BU-00001")
                                         .fluentPut("invscheme_number", "210")
+                                        .fluentPut("settlecurrency_number", "CNY")
+                                        .fluentPut("exchangerate", 1L)
+
                                         .fluentPut("billentry", billentryArray)
                         )));
 //            case "STK_MISCELLANEOUS": // 鍏朵粬鍏ュ簱鍗�

--
Gitblit v1.9.1