自动化立体仓库 - WMS系统
#
lty
6 天以前 b302f1da85a18ae264b638398224b0ccf492164a
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();