自动化立体仓库 - WMS系统
#
1
12 小时以前 955fef9ba80fda70582d926a2c6f2af527447bb5
src/main/java/com/zy/asrs/task/kingdee/handler/InboundOrderHandler.java
@@ -74,6 +74,8 @@
    @Autowired
    private LocOwnerService locOwnerService;
    @Autowired
    private LocSuppService locSuppService;
    @Autowired
    private ErpSecretServiceImpl erpSecretService;
    @Value("${erp.login.accountId}")
    private String accountId;
@@ -113,7 +115,7 @@
                    jsonObject.put("status", Arrays.asList("B", "C"));//数据状态 [A:暂存, B:已提交, C:已审核]
                    path = matAddress;
                    break;
                case "BD_RRGANIZATION": //货主同步
                case "BD_RRGANIZATION": //供应商同步
                    jsonObject.put("start_createtime", "2025-01-01 00:00:00");//id
                    jsonObject.put("end_createtime", sdf1.format(now));
                    jsonObject.put("id", null);
@@ -250,7 +252,7 @@
                        docTypeService.updateById(docType);
                    }
                }
                else if(kingDeeUtilType.formId.equals("BD_RRGANIZATION")){//货主同步
                else if(kingDeeUtilType.formId.equals("BD_RRGANIZATION")){//供应商同步
                    int pageSize = jsonResponse.getJSONObject("data").getIntValue("pageSize");
                    int totalCount = jsonResponse.getJSONObject("data").getIntValue("totalCount");
                    int totalPages = (int) Math.ceil((double) totalCount / pageSize);
@@ -276,42 +278,40 @@
                            String owner = jsonObjectNew.get("name").toString();
                            Date createTime =  sdf1.parse(jsonObjectNew.get("createtime").toString());
                            // 生成商品档案
                            LocOwner locOwner = locOwnerService.selectByUuid(ownerUuid);
                            if (locOwner == null) {
                                locOwner = new LocOwner();
                                locOwner.setOwner(owner);
                                locOwner.setOwnerUuid(ownerUuid);
                                locOwner.setCreateTime(createTime);
                                locOwner.setUpdateTime(updateTime);
                                locOwner.setStatus(1);
                                if (!locOwnerService.insert(locOwner)) {
                                    callApiLogSaveOwner(locOwner, kingDeeUtilType, "同步新货主出错!" + locOwner, false);
                                    log.info("同步新货主出错!参数:[{}]、[{}]", locOwner, jsonObjectNew);
                            LocSupp locSupp = locSuppService.selectByUuid(ownerUuid);
                            if (locSupp == null) {
                                locSupp = new LocSupp();
                                locSupp.setOwner(owner);
                                locSupp.setOwnerUuid(ownerUuid);
                                locSupp.setCreateTime(createTime);
                                locSupp.setUpdateTime(updateTime);
                                locSupp.setStatus(1);
                                if (!locSuppService.insert(locSupp)) {
                                    callApiLogSaveSupp(locSupp, kingDeeUtilType, "同步新供应商出错!" + locSupp, false);
                                    log.info("同步新供应商出错!参数:[{}]、[{}]", locSupp, jsonObjectNew);
                                } else {
                                    callApiLogSaveOwner(locOwner, kingDeeUtilType, "同步新货主成功!", true);
                                    success = true;
                                    callApiLogSaveSupp(locSupp, kingDeeUtilType, "同步新供应商成功!", true);
                                }
                            } else {
                                boolean isUpdated = false;
                                if (locOwner.getUpdateTime().compareTo(updateTime) != 0) {
                                if (locSupp.getUpdateTime().compareTo(updateTime) != 0) {
                                    // 更新字段
                                    if (!locOwner.getOwner().equals(owner)) locOwner.setOwner(owner);
                                    if (!locOwner.getOwnerUuid().equals(ownerUuid)) locOwner.setOwnerUuid(ownerUuid);
                                    if (!locSupp.getOwner().equals(owner)) locSupp.setOwner(owner);
                                    if (!locSupp.getOwnerUuid().equals(ownerUuid)) locSupp.setOwnerUuid(ownerUuid);
                                    if (locOwner.getCreateTime().compareTo(createTime) != 0)
                                        locOwner.setCreateTime(createTime);
                                    locOwner.setUpdateTime(updateTime);
                                    if (locSupp.getCreateTime().compareTo(createTime) != 0)
                                        locSupp.setCreateTime(createTime);
                                    locSupp.setUpdateTime(updateTime);
                                    isUpdated = true;
                                }
                                // 执行更新操作
                                if (isUpdated) {
                                    if (!locOwnerService.updateById(locOwner)) {
                                        callApiLogSaveOwner(locOwner, kingDeeUtilType, "更新物料出错!" + locOwner, false);
                                        log.info("更新货主[货主编号:{}], 更新失败!", locOwner.getOwnerUuid());
                                    if (!locSuppService.updateById(locSupp)) {
                                        callApiLogSaveSupp(locSupp, kingDeeUtilType, "更新供应商出错!" + locSupp, false);
                                        log.info("更新供应商[供应商编号:{}], 更新失败!", locSupp.getOwnerUuid());
                                    } else {
                                        callApiLogSaveOwner(locOwner, kingDeeUtilType, "更新物料成功!", true);
                                        success = true;
                                        log.info("更新货主[货主编号:{}]", locOwner.getOwnerUuid());
                                        callApiLogSaveSupp(locSupp, kingDeeUtilType, "更新供应商成功!", true);
                                        log.info("更新供应商[供应商编号:{}]", locSupp.getOwnerUuid());
                                    }
                                }
                            }
@@ -456,9 +456,9 @@
                response, bool);
    }
    public void callApiLogSaveOwner(LocOwner locOwner, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
    public void callApiLogSaveSupp(LocSupp locSupp, KingDeeUtilType kingDeeUtilType, String response, Boolean bool) {
        apiLogService.save("获取"+kingDeeUtilType.desc, kingDeeUtilType.formId, "null", URL,
                "货主编号:" + locOwner.getOwnerUuid() + "、货主名称:" + locOwner.getOwner(),
                "货主编号:" + locSupp.getOwnerUuid() + "、货主名称:" + locSupp.getOwner(),
                response, bool);
    }