diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsSiteBatchDtlMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsSiteBatchDtlMapper.java index 7c69d9f7c..ad23d1eef 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsSiteBatchDtlMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsSiteBatchDtlMapper.java @@ -112,4 +112,14 @@ public interface EmisTmsSiteBatchDtlMapper extends BaseMapper batchNos, @Param("billCode") String billCode); + + /** + * 根据批次号和运单号查询批次明细 + * + * @param batchNo 批次号 + * @param billCode 运单号 + * @return 批次明细 + */ + EmisTmsSiteBatchDtl selectEmisTmsSiteBatchDtlByBatchNoAndBillCode(@Param("batchNo") String batchNo, + @Param("billCode") String billCode); } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsSiteBatchDtlServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsSiteBatchDtlServiceImpl.java index 57dbfe8ef..c10be6ab0 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsSiteBatchDtlServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsSiteBatchDtlServiceImpl.java @@ -132,6 +132,7 @@ public class EmisTmsSiteBatchDtlServiceImpl implements IEmisTmsSiteBatchDtlServi } String billCode = emisTmsSiteBatchDtl.getBillCode(); + String batchNo = emisTmsSiteBatchDtl.getBatchNo(); String startSiteCode = (String) emisTmsSiteBatchDtl.getParams().get("startSiteCode"); String nextSiteCode = (String) emisTmsSiteBatchDtl.getParams().get("nextSiteCode"); String supplierCode = (String) emisTmsSiteBatchDtl.getParams().get("supplierCode"); @@ -140,6 +141,9 @@ public class EmisTmsSiteBatchDtlServiceImpl implements IEmisTmsSiteBatchDtlServi if (StringUtils.isBlank(billCode)) { throw new EmisBizError(EmisBizErrorType.FAIL, "运单号不能为空"); } + if (StringUtils.isBlank(batchNo)) { + throw new EmisBizError(EmisBizErrorType.FAIL, "批次号不能为空"); + } if (StringUtils.isBlank(startSiteCode)) { throw new EmisBizError(EmisBizErrorType.FAIL, "起始网点编码不能为空"); } @@ -157,11 +161,21 @@ public class EmisTmsSiteBatchDtlServiceImpl implements IEmisTmsSiteBatchDtlServi EmisTmsSiteBatchDtl result = new EmisTmsSiteBatchDtl(); result.setWaybillDetail(emisWaybill); + // 根据批次号、运单号查询emis_tms_site_batch_dtl,如果存在,直接返回数据 + EmisTmsSiteBatchDtl existingBatchDtl = emisTmsSiteBatchDtlMapper + .selectEmisTmsSiteBatchDtlByBatchNoAndBillCode(batchNo, billCode); + if (existingBatchDtl != null) { + result.setBatchParcelQty(existingBatchDtl.getBatchParcelQty()); + result.setBatchWeight(existingBatchDtl.getBatchWeight()); + result.setBatchVolume(existingBatchDtl.getBatchVolume()); + return result; + } + // 查询运输计划规则 EmisTransPlanRule emisTransPlanRule = new EmisTransPlanRule(); emisTransPlanRule.setStartSiteCode(startSiteCode); emisTransPlanRule.setNextSiteCode(nextSiteCode); -// emisTransPlanRule.setSupplierCode(supplierCode); + // emisTransPlanRule.setSupplierCode(supplierCode); emisTransPlanRule.setLineCode(emisWaybill.getTransLineType()); emisTransPlanRule.setProductType(emisWaybill.getProductType()); diff --git a/emis-biz/src/main/resources/mapper/EmisTmsSiteBatchDtlMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsSiteBatchDtlMapper.xml index ee0aa1474..8284aa5e9 100644 --- a/emis-biz/src/main/resources/mapper/EmisTmsSiteBatchDtlMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisTmsSiteBatchDtlMapper.xml @@ -256,4 +256,14 @@ and bill_code = #{billCode} and del_flag = '0' + + + \ No newline at end of file