From d50784fb8dfc07c0e4d9a337292eb21d74f1b2b8 Mon Sep 17 00:00:00 2001 From: linfso Date: Fri, 21 Jun 2024 19:00:05 +0800 Subject: [PATCH] md --- .../domain/enumtype/EmisBizErrorType.java | 33 ++- .../emis/domain/vo/scan/ScanResultItem.java | 3 + .../impl/EmisTmsScanRecordServiceImpl.java | 199 ++++++++++++++---- 3 files changed, 185 insertions(+), 50 deletions(-) diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/enumtype/EmisBizErrorType.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/enumtype/EmisBizErrorType.java index 63ad540fc..3d054d820 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/enumtype/EmisBizErrorType.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/enumtype/EmisBizErrorType.java @@ -5,6 +5,19 @@ import lombok.Getter; @Getter public enum EmisBizErrorType { + /* + 0000:业务成功 + 9999:业务失败 + + 扫描错误错误对照: + ------------------ + E601:参数错误 + E602:运单不存在 + E603:已签收 + E604:重复扫描 + + */ + SUCCESS("0000", "成功"), FAIL("9999", "失败"), @@ -13,6 +26,18 @@ public enum EmisBizErrorType { CALC_WEIGHT_ERROR("E003", "重量计算错误"), CALC_QUOTE_ERROR("E004", "报价未配置"), + + // 面单 Not enough + NOT_ENOUGH_PAG("E501","面单不足"), + + // 扫描错误码 + SCAN_PARAM_ERROR("E601","参数错误"), + SCAN_NO_EXISTS("E602","运单不存在"), + SCAN_REPEAT("E603","重复扫描"), + SCAN_NO_ALLOW("E604","不允许操作"), + SCAN_HAS_SIGN("E605","已签收"), + SCAN_HAS_PACK("E606","已组包"), + BILL_LOCK("E901", "已锁定"), NOT_EXISTS("E902","不存在"), EXISTS("E903","已存在"), @@ -20,14 +45,14 @@ public enum EmisBizErrorType { PARSE_ADDRESS_ERROR("E980","地址解析错误"), - // 面单 Not enough - NOT_ENOUGH_PAG("E501","面单不足"), + + SYS_EXCEPTION("9998", "系统异常"), ; - private String errorCode; - private String errorMessage; + public String errorCode; + public String errorMessage; EmisBizErrorType(String errorCode, String errorMessage) { this.errorCode = errorCode; diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/scan/ScanResultItem.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/scan/ScanResultItem.java index 987ad522f..08e2ae728 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/scan/ScanResultItem.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/vo/scan/ScanResultItem.java @@ -22,6 +22,7 @@ import java.util.Map; { "billCode": "T123", "result": "fail", + "errorCode":"E903", "message": "不允许扫描:已签收" } ] @@ -34,6 +35,8 @@ public class ScanResultItem implements Serializable { private String billCode; private String result; + // 业务返回代码 + private String errorCode; private String message; private Map data; diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java index 4f3f479c5..5e40d6749 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsScanRecordServiceImpl.java @@ -147,7 +147,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm } - public List doScanCheck(String scanType,Map scanDataItem) throws EmisBizError { + public List doScanCheck(String scanType,Map scanDataItem) { List itemList = new ArrayList<>(); @@ -158,9 +158,11 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm ScanResultItem scanResultItem = new ScanResultItem(); scanResultItem.setBillCode(billCodeInStr); scanResultItem.setResult("fail"); - scanResultItem.setMessage("billCode为空"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_PARAM_ERROR.errorCode); + scanResultItem.setMessage("扫描单号必填"); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"扫描单号必填"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"扫描单号必填"); } billCodeInStr=WaybillHelper.formatQueryValue(billCodeInStr); @@ -170,11 +172,35 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm // 合包和拆包需单独处理 if(ScanType.CO_PACKING.opCode.equals(scanType)){ // 合包扫描 - return doPackScanCheck(itemList,billCodeArr,scanDataItem); + try { + return doPackScanCheck(itemList,billCodeArr,scanDataItem); + }catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + // 返回原始数据返回 + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCodeInStr); + scanResultItem.getData().putAll(scanDataItem); + scanResultItem.setMessage(emisBizError.getMessage()); + scanResultItem.setErrorCode(emisBizError.getErrorCode()); + itemList.add(scanResultItem); + return itemList; + } } // 拆包 else if(ScanType.UN_PACKING.opCode.equals(scanType)){ - return doUnPackScanCheck(itemList,billCodeArr,scanDataItem); + try { + return doUnPackScanCheck(itemList,billCodeArr,scanDataItem); + } catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + // 返回原始数据返回 + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCodeInStr); + scanResultItem.getData().putAll(scanDataItem); + scanResultItem.setMessage(emisBizError.getMessage()); + scanResultItem.setErrorCode(emisBizError.getErrorCode()); + itemList.add(scanResultItem); + return itemList; + } } else { for (String scanBillCode : billCodeArr) { @@ -197,8 +223,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (!isExists) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单号不存在"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_EXISTS.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单号不存在"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单号不存在"); } // 已签收不允许扫描 @@ -206,8 +234,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (isSign) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单已签收"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_HAS_SIGN.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "运单已签收"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.EXISTS, "运单已签收"); } @@ -218,8 +248,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String scanTypeLabel = DictUtils.getDictLabel("emis_scan_type", scanType); scanResultItem.setResult("fail"); scanResultItem.setMessage(scanBillCode + "重复扫描["+scanTypeLabel+"]"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_REPEAT.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, scanBillCode + "重复扫描["+scanTypeLabel+"]"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.EXISTS, scanBillCode + "重复扫描["+scanTypeLabel+"]"); } EmisWaybill emisWaybill = getWaybillByBillCode(mainBillCode); @@ -229,7 +261,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm scanResultItem.getData().put("totalVolume", emisWaybill.getTotalVolume()); scanResultItem.getData().put("parcelQty", emisWaybill.getParcelQty()); - + scanResultItem.setErrorCode(EmisBizErrorType.SUCCESS.errorCode); scanResultItem.setResult("success"); scanResultItem.setMessage("允许操作"); @@ -248,7 +280,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm * @param scanDataItem * @return */ - public List doScan(String scanType,Map scanDataItem,String dataFrom) throws EmisBizError { + public List doScan(String scanType,Map scanDataItem) { List itemList = new ArrayList<>(); @@ -262,17 +294,19 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm scanResultItem.setBillCode(billCodeInStr); scanResultItem.setResult("fail"); scanResultItem.setMessage("scanDate为空"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_PARAM_ERROR.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS,"扫描时间必填"); + return itemList; } if(StringUtils.isEmpty(billCodeInStr)){ ScanResultItem scanResultItem = new ScanResultItem(); scanResultItem.setBillCode(billCodeInStr); scanResultItem.setResult("fail"); - scanResultItem.setMessage("billCode为空"); + scanResultItem.setMessage("扫描单号为空"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_PARAM_ERROR.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"扫描单号必填"); + return itemList; } billCodeInStr=WaybillHelper.formatQueryValue(billCodeInStr); @@ -288,15 +322,44 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm // 合包和拆包需单独处理 if(ScanType.CO_PACKING.opCode.equals(scanType)){ // 合包扫描 - return doPackScan(itemList,billCodeArr,scanDataItem,scanDate,dataFrom); + try { + return doPackScan(itemList,billCodeArr,scanDataItem,scanDate); + } catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + // 返回原始数据返回 + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCodeInStr); + scanResultItem.getData().putAll(scanDataItem); + scanResultItem.setMessage(emisBizError.getMessage()); + scanResultItem.setErrorCode(emisBizError.getErrorCode()); + itemList.add(scanResultItem); + return itemList; + } } // 拆包 else if(ScanType.UN_PACKING.opCode.equals(scanType)){ - return doUnPackScan(itemList,billCodeArr,scanDataItem,scanDate,dataFrom); + try { + return doUnPackScan(itemList,billCodeArr,scanDataItem,scanDate); + } catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + // 返回原始数据返回 + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCodeInStr); + scanResultItem.getData().putAll(scanDataItem); + scanResultItem.setMessage(emisBizError.getMessage()); + scanResultItem.setErrorCode(emisBizError.getErrorCode()); + itemList.add(scanResultItem); + return itemList; + } } else { // 其他扫描方式 for (String scanBillCode : billCodeArr) { + + if(StringUtils.isEmpty(scanBillCode)){ + continue; + } + // 返回原始数据返回 ScanResultItem scanResultItem = new ScanResultItem(); scanResultItem.setBillCode(scanBillCode); @@ -309,8 +372,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (!isExists) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单号不存在"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_EXISTS.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单号不存在"); + return itemList; } // 已签收不允许扫描 @@ -318,8 +382,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (isSign) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单已签收"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_HAS_SIGN.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "运单已签收"); + return itemList; } // 重复扫描 @@ -328,8 +393,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (scanCnt > 0) { scanResultItem.setResult("fail"); scanResultItem.setMessage("重复扫描"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_REPEAT.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "重复扫描"); + return itemList; } @@ -355,7 +421,15 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm emisTmsScanRecord.setScanDate(scanDate); // 填充特殊数据 - this.fillScanDataByScanType(emisTmsScanRecord, emisWaybill, scanDataItem); + try { + this.fillScanDataByScanType(emisTmsScanRecord, emisWaybill, scanDataItem); + } catch (EmisBizError emisBizError) { + emisBizError.printStackTrace(); + scanResultItem.setMessage(emisBizError.getMessage()); + scanResultItem.setErrorCode(emisBizError.getErrorCode()); + itemList.add(scanResultItem); + return itemList; + } // 返回数据 scanResultItem.getData().put("billWeight", emisWaybill.getBillWeight()); @@ -366,6 +440,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm // 修改主运单状态 this.changeWaybillStatus(mainBillCode, scanType); scanResultItem.setResult("success"); + scanResultItem.setErrorCode(EmisBizErrorType.SUCCESS.errorCode); scanResultItem.setMessage("操作成功"); itemList.add(scanResultItem); } @@ -391,8 +466,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (!isExists) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单不存在"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_EXISTS.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单不存在"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单不存在"); } // 已签收不允许扫描 @@ -400,8 +477,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (isSign) { scanResultItem.setResult("fail"); scanResultItem.setMessage("已签收"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_HAS_SIGN.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "已签收"); + return itemList; } // 已组包,不允许再组包 @@ -409,8 +487,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (scanCnt > 0) { scanResultItem.setResult("fail"); scanResultItem.setMessage("[" + scanBillCode + "]已组包"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_HAS_PACK.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "[" + scanBillCode + "]已组包"); + return itemList; } // 获取订单数据 @@ -419,11 +498,19 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if("0095".equals(emisWaybill.getReceiveCountry()) ){ // 缅甸只允许主单 if ( !mainBillCode.equals(scanBillCode) ) { - throw new EmisBizError(EmisBizErrorType.EXISTS, "缅甸只允许主单"); + scanResultItem.setResult("fail"); + scanResultItem.setMessage("缅甸只允许主单"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); + itemList.add(scanResultItem); + return itemList; } }else{ if ( mainBillCode.equals(scanBillCode) ) { - throw new EmisBizError(EmisBizErrorType.EXISTS, "主单不能组包"); + scanResultItem.setResult("fail"); + scanResultItem.setMessage("非缅甸主单不能组包"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); + itemList.add(scanResultItem); + return itemList; } } @@ -432,6 +519,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm scanResultItem.getData().put("totalVolume", emisWaybill.getTotalVolume()); scanResultItem.getData().put("parcelQty", emisWaybill.getParcelQty()); scanResultItem.setResult("success"); + scanResultItem.setErrorCode(EmisBizErrorType.SUCCESS.errorCode); scanResultItem.setMessage("允许操作"); itemList.add(scanResultItem); } @@ -451,8 +539,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (scanCnt == 0) { scanResultItem.setResult("fail"); scanResultItem.setMessage("未组包"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "未组包"); + return itemList; } scanResultItem.getData().put("billWeight", 0f); @@ -465,7 +554,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm return itemList; } - public List doPackScan(List itemList,String[] billCodeArr,Map scanDataItem,Date scanDate,String dataFrom) throws EmisBizError { + public List doPackScan(List itemList,String[] billCodeArr,Map scanDataItem,Date scanDate) throws EmisBizError { // 检查数据 合包号,重量 String packNo = MapUtils.getString(scanDataItem,"bagNo",null); @@ -473,17 +562,17 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm Map mainBillMap = new HashMap<>(); if(StringUtils.isAnyEmpty(packNo,scanWeightStr)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"合包号,合包重量不能为空"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"合包号,合包重量不能为空"); } BigDecimal scanWeight= BigDecimal.valueOf(Double.valueOf(scanWeightStr)); if(scanWeight.compareTo(BigDecimal.ZERO)==0){ - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"合包重量不能为0"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"合包重量不能为0"); } String preOrNextStationCode = MapUtils.getString(scanDataItem,"preOrNextStationCode",null); if(StringUtils.isEmpty(preOrNextStationCode)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"下一站必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"下一站必填"); } // 判断是否必拆,不同国家必拆 @@ -503,8 +592,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (!isExists) { scanResultItem.setResult("fail"); scanResultItem.setMessage("运单不存在"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_EXISTS.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "运单不存在"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.SCAN_NO_EXISTS, "运单不存在"); } // 获取主单号 @@ -514,8 +605,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (isSign) { scanResultItem.setResult("fail"); scanResultItem.setMessage("已签收"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_HAS_SIGN.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "已签收"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.SCAN_HAS_SIGN, "已签收"); } // 已组包,不允许再组包 @@ -523,8 +616,10 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (scanCnt > 0) { scanResultItem.setResult("fail"); scanResultItem.setMessage("[" + scanBillCode + "]已组包"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.EXISTS, "[" + scanBillCode + "]已组包"); + return itemList; +// throw new EmisBizError(EmisBizErrorType.SCAN_NO_ALLOW, "[" + scanBillCode + "]已组包"); } // 获取订单数据 @@ -533,11 +628,21 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if("0095".equals(emisWaybill.getReceiveCountry()) ){ // 缅甸只允许主单 if (!mainBillCode.equals(scanBillCode)) { - throw new EmisBizError(EmisBizErrorType.EXISTS, "缅甸只允许主单"); + scanResultItem.setResult("fail"); + scanResultItem.setMessage("缅甸只允许主单"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); + itemList.add(scanResultItem); + return itemList; +// throw new EmisBizError(EmisBizErrorType.SCAN_NO_ALLOW, "缅甸只允许主单"); } }else{ if (mainBillCode.equals(scanBillCode)) { - throw new EmisBizError(EmisBizErrorType.EXISTS, "非缅甸只允许子单组包"); + scanResultItem.setResult("fail"); + scanResultItem.setMessage("非缅甸只允许子单组包"); + scanResultItem.setErrorCode(EmisBizErrorType.SCAN_NO_ALLOW.errorCode); + itemList.add(scanResultItem); + return itemList; +// throw new EmisBizError(EmisBizErrorType.SCAN_NO_ALLOW, "非缅甸只允许子单组包"); } } @@ -582,6 +687,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm scanResultItem.getData().put("totalVolume", emisWaybill.getTotalVolume()); scanResultItem.getData().put("parcelQty", emisWaybill.getParcelQty()); scanResultItem.setResult("success"); + scanResultItem.setErrorCode(EmisBizErrorType.SUCCESS.errorCode); scanResultItem.setMessage("操作成功"); itemList.add(scanResultItem); if(!countryMap.containsKey(emisWaybill.getReceiveCountry())) { @@ -617,7 +723,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm return itemList; } - public List doUnPackScan(List itemList,String[] billCodeArr,Map scanDataItem,Date scanDate,String dataFrom) throws EmisBizError { + public List doUnPackScan(List itemList,String[] billCodeArr,Map scanDataItem,Date scanDate) throws EmisBizError { String packNo=null; // 子单号处理 @@ -633,8 +739,9 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm if (emisTmsPackDtl == null) { scanResultItem.setResult("fail"); scanResultItem.setMessage("未组包"); + scanResultItem.setErrorCode(EmisBizErrorType.NOT_EXISTS.errorCode); itemList.add(scanResultItem); - throw new EmisBizError(EmisBizErrorType.NOT_EXISTS, "未组包"); + return itemList; } packNo=emisTmsPackDtl.getPackNo(); @@ -757,7 +864,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String preOrNextStationCode = MapUtils.getString(scanDataItem,"preOrNextStationCode",null); if(StringUtils.isEmpty(preOrNextStationCode)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"下一站必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"下一站必填"); } @@ -816,7 +923,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm // 派送员 String dispatchOrSendManCode = MapUtils.getString(scanDataItem,"dispatchOrSendManCode",null); if(StringUtils.isEmpty(dispatchOrSendManCode)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"派送员必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"派送员必填"); } emisTmsScanRecord.setDispatchOrSendManCode(dispatchOrSendManCode); @@ -853,7 +960,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String remark = MapUtils.getString(scanDataItem,"remark",null) ; if(StringUtils.isEmpty(signMan)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"签收人必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"签收人必填"); } @@ -980,7 +1087,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm Float transferFee =MapUtils.getFloat(scanDataItem,"transferFee",null) ; if(StringUtils.isAnyEmpty(transferCode,transferBillcode,destCity,transferDateStr)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"转件公司,转件单号,转件日期,目标城市必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"转件公司,转件单号,转件日期,目标城市必填"); } Date transferDate = null; @@ -1048,7 +1155,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String remark = MapUtils.getString(scanDataItem,"remark",null); if(StringUtils.isAnyEmpty(problemType,notifySite,remark)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"问题类型,通知网点,问题原因必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"问题类型,通知网点,问题原因必填"); } // 需要记录大类及原因 @@ -1093,14 +1200,14 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm // "scanWeight": "0.2" if(scanDataItem.get("carNo")==null) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"车牌号不能为空"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"车牌号不能为空"); } String carNo = (String)scanDataItem.get("carNo"); String remark = (String)scanDataItem.get("remark"); if(scanDataItem.get("preOrNextStationCode")==null) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"下一站不能为空"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"下一站必填"); } String preOrNextStationCode = (String)scanDataItem.get("preOrNextStationCode"); @@ -1138,7 +1245,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String preOrNextStationCode = (String)scanDataItem.get("preOrNextStationCode"); if(StringUtils.isEmpty(preOrNextStationCode)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"下一站必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"下一站必填"); } EmisSite site=getSiteByCode(preOrNextStationCode); @@ -1159,7 +1266,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm String preOrNextStationCode = (String)scanDataItem.get("preOrNextStationCode"); if(StringUtils.isEmpty(preOrNextStationCode)) { - throw new EmisBizError(EmisBizErrorType.PARAM_ERROR1,"下一站必填"); + throw new EmisBizError(EmisBizErrorType.SCAN_PARAM_ERROR,"下一站必填"); } EmisSite site=getSiteByCode(preOrNextStationCode); @@ -1188,7 +1295,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm List resultList = new ArrayList<>(); if(scanInfo.getOpType()==2){ for (Map item: scanInfo.getScanData()) { - List itemCheckList=doScan(scanInfo.getScanType(),item,scanInfo.getDataFrom()); + List itemCheckList=doScan(scanInfo.getScanType(),item); resultList.addAll(itemCheckList); } }