cl
6 天以前 e23efd75ca74df6b35a0c03b8e8fc0712c9d4544
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/CloudWmsReportServiceImpl.java
@@ -58,10 +58,6 @@
            log.warn("ErpApi(云仓WMS) 未配置 host/base-url,跳过 9.1 入/出库结果上报,订单:{}", param.getOrderNo());
            return stubWithoutUpstream("云仓地址未配置,未实际上报");
        }
        String err = validateDapBaseForInOut(param);
        if (err != null) {
            return resultMap(400, err, null);
        }
        boolean inbound = param.getInbound() == null || Boolean.TRUE.equals(param.getInbound());
        DapIlcwmsCompletionRequest req = new DapIlcwmsCompletionRequest()
                .setData(Collections.singletonList(buildInOutLine(param, inbound)));
@@ -84,10 +80,6 @@
        InOutResultReportParam first = lines.get(0);
        boolean inbound = first.getInbound() == null || Boolean.TRUE.equals(first.getInbound());
        for (InOutResultReportParam param : lines) {
            String err = validateDapBaseForInOut(param);
            if (err != null) {
                return resultMap(400, err, null);
            }
            boolean rowIn = param.getInbound() == null || Boolean.TRUE.equals(param.getInbound());
            if (rowIn != inbound) {
                return resultMap(400, "合并上报须同为入库或同为出库", null);
@@ -141,19 +133,12 @@
                : DapIlcwmsResponseNormalizer.toNotifyFormatFlexible(raw);
    }
    private String validateDapBaseForInOut(InOutResultReportParam param) {
        if (param != null && StringUtils.isBlank(param.getUnitNo())) {
            return "unitNo 不能为空";
        }
        return null;
    }
    private DapIlcwmsCompletionLine buildInOutLine(InOutResultReportParam param, boolean inbound) {
        CloudMatnrParts matnrParts = parseCloudMatnr(param.getMatNr());
        String docType = StringUtils.isNotBlank(param.getWkType())
                ? param.getWkType()
                : (inbound ? "IN" : "OUT");
        String unitNo = StringUtils.trimToEmpty(param.getUnitNo());
        String unitNo = StringUtils.isNotBlank(param.getUnitNo()) ? param.getUnitNo().trim() : "PCS";
        String orgNoLine = StringUtils.isNotBlank(param.getOrgNo()) ? param.getOrgNo().trim() : DEFAULT_CLOUD_ORG_NO;
        String docWh = StringUtils.trimToNull(param.getDocWarehouseNo());
        String inWhLine = StringUtils.isNotBlank(param.getInWarehouseNo()) ? param.getInWarehouseNo().trim() : DEFAULT_CLOUD_WH_NO;
@@ -171,9 +156,11 @@
                .setCombinationLotNo(matnrParts.getCombinationLotNo())
                .setBarcode(matnrParts.getBarcode());
        if (inbound) {
            line.setInWarehouseNo(inWhLine).setInCellNo(param.getLocId());
            line.setInWarehouseNo(inWhLine).setInCellNo(inWhLine);
            // line.setInWarehouseNo(inWhLine).setInCellNo(param.getLocId());
        } else {
            line.setOutWarehouseNo(outWhLine).setOutCellNo(param.getLocId());
            line.setOutWarehouseNo(outWhLine).setOutCellNo(outWhLine);
            // line.setOutWarehouseNo(outWhLine).setOutCellNo(param.getLocId());
        }
        return line;
    }