自动化立体仓库 - WMS系统
lty
3 天以前 c6e32e5da5d30ce2f74f0e32c3290d421c0951f2
src/main/java/com/zy/asrs/task/kingdee/handler/ReviewOrderSyncHandler.java
@@ -40,7 +40,31 @@
    @Value("${erp.address.imPurinbillBatchAudit}")
    //审核地址
    private String imPurinbillBatchAudit;
    @Value("${erp.address.imSaloutbillReport}")
    //销售出库单审核地址
    private String imSaloutbillReport;
    @Value("${erp.address.scpSalreturnReport}")
    //销售退货单审核地址
    private String scpSalreturnReport;
    @Value("${erp.address.imMdcMftproorderReport}")
    //生产领料单上报
    private String imMdcMftproorderReport;
    @Value("${erp.address.imMdcMftreturnorderReport}")
    //生产退料单上报
    private String imMdcMftreturnorderReport;
    @Value("${erp.address.imMdcMftfeedorderReport}")
    //生产补料单上报
    private String imMdcMftfeedorderReport;
    @Value("${erp.address.imProductinbillReport}")
    //生产汇报单上报
    private String imProductinbillReport;
    @Value("${erp.address.imOtheroutbillAudi}")
    //其他出库审核上报
    private String imOtheroutbillAudi;
    @Value("${erp.address.imOtherinbillAudit}")
    //其他入库审核上报
    private String imOtherinbillAudit;
    @Autowired
    private OrderService orderService;
    @Autowired
@@ -81,15 +105,56 @@
    private JSONObject buildRequestParams(Order order, KingDeeUtilType kingDeeUtilType,
                                          SimpleDateFormat sdf1, SimpleDateFormat sdf2) {
        switch (kingDeeUtilType.formId) {
        JSONArray idArray = new JSONArray();
        JSONObject dataObj = new JSONObject();
        if(kingDeeUtilType == null){
            return null;
        }
        switch(kingDeeUtilType.formId) {
            case "PUR_RECEIVEBIll": // 进仓通知单提交
                path = imPurinbillBatchAudit;
                JSONArray idArray = new JSONArray();
                idArray.add(order.getNumber());
                JSONObject dataObj = new JSONObject();
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "SAL_OUTSTOCK"://销售出库上报
                path = imSaloutbillReport;
                idArray.add(order.getOrderNo());
                dataObj.fluentPut("billno", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "SAL_RETURNSTOCK"://销售退料单
                path = scpSalreturnReport;
                dataObj.fluentPut("billno", order.getOrderNo());
                return new JSONObject().fluentPut("data", dataObj);
            case "PRD_PickMtrl"://生产领料单上报
                path = imMdcMftproorderReport;
                idArray.add(order.getNumber());
                dataObj.fluentPut("ids", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "PRD_ReturnMtrl"://生产退料单上报
                path = imMdcMftreturnorderReport;
                idArray.add(order.getNumber());
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "PRD_FeedMtrl": //生产补料单
                path = imMdcMftfeedorderReport;
                idArray.add(order.getNumber());
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "PRD_MORPT"://生产汇报单
                path = imProductinbillReport;
                idArray.add(order.getNumber());
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "STK_MISCELLANEOUS"://其他入库单
                path = imOtheroutbillAudi;
                idArray.add(order.getId());
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            case "STK_MisDelivery"://其他出库单
                path = imOtherinbillAudit;
                idArray.add(order.getId());
                dataObj.fluentPut("id", idArray);
                return new JSONObject().fluentPut("data", dataObj);
            default:
                throw new IllegalArgumentException("Unsupported formId: " + kingDeeUtilType.formId);
        }
@@ -133,9 +198,8 @@
            }
            // 解析返回的响应
            JSONObject data = jsonResponse.getJSONObject("data");
            String errorCode = jsonResponse.getString("errorCode");
            boolean status = jsonResponse.getBooleanValue("status");
            if ("0".equals(errorCode) && status) {
            if (status) {
                // 获取成功与失败的数量
                int successCount = data.getInteger("successCount");
                int failCount = data.getInteger("failCount");