diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybill.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybill.java index 70e73cd10..490a5317a 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybill.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisWaybill.java @@ -410,6 +410,10 @@ public class EmisWaybill extends BaseEntity private String salesmenName; private String payeeName; + // 最后一条跟踪记录 + private String lastTraceInfo; + + // 最近一条扫描记录 private EmisTmsScanRecord lastScanRecord; diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java index 0c6ef5b5b..27c07225e 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/EmisBaseService.java @@ -156,6 +156,128 @@ public class EmisBaseService { } + /** + * 获取跟踪信息 + * @param scanRecord + * @return + */ + public String cvtScanRecordToTraceStr(EmisTmsScanRecord scanRecord,boolean isInner){ + String content = null; + + if(scanRecord==null) + { + return null; + } + + String scanType=scanRecord.getScanType(); + + +// content = scanSite ; +// if(opCode.contains("收件")) { +// content=content+" 快件已揽收 ,业务员:"+scanMan; +// } +// else if(opCode.contains("到达") || opCode.contains("到件")) { +// content=content+"快件已到达"+scanSite; +// } +// else if(opCode.contains("发件") ) { +// content=content+"快件已离开"+scanSite +" 发往 "+preOrNextStation; +// } +// else if(opCode.contains("派件扫描") ) { +// content=content+"派件扫描,派件员:"+scanMan; +// } +// else if(opCode.contains("派件") ) { +// content=content+"派件中,派件员:"+scanMan; +// } +// else if(opCode.contains("签收") ) { +// content=content+"已签收,签收人:"+scanMan; +// } +// else { +// content=content+""+opCode; +// } + + + // 揽收扫描 + if(ScanType.GOT.opCode.equals(scanType)){ + content="已揽收 快件在【"+scanRecord.getScanSite()+"】已收件,取件员【"+scanRecord.getDispatchOrSendMan()+"】"; + + if(isInner){ +// 南通,丁诗涵,收件,2024-05-23 13:08:15,快件在[南通]已做收件扫描,收件员是[薛明聪] + content=scanRecord.getScanSite()+","+scanRecord.getScanMan()+",收件,"+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())+","+content; + } + + } + // 发件扫描 + else if(ScanType.DEPARTURE.opCode.equals(scanType)){ + content="发件 快件已离开【"+scanRecord.getScanSite() +"】 下站发往【"+scanRecord.getPreOrNextStation()+"】"; + + if(isInner){ + content=scanRecord.getScanSite()+","+scanRecord.getScanMan()+",发件,"+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())+","+content; + } + + } + // 到件扫描 + else if(ScanType.ARRIVAL.opCode.equals(scanType)){ + content="到件 快件已到达【"+scanRecord.getScanSite()+"】"; + + if(isInner){ + content=scanRecord.getScanSite()+","+scanRecord.getScanMan()+",到件,"+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())+","+content; + } + } + // 派送扫描 + else if(ScanType.SENT.opCode.equals(scanType)){ + content="派件 快件在【"+scanRecord.getScanSite()+"】开始派送,已分配派件员【"+scanRecord.getDispatchOrSendMan()+"】"; + + if(isInner){ + content=scanRecord.getScanSite()+","+scanRecord.getScanMan()+",派件,"+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())+","+content; + } + } + // 签收扫描 + else if(ScanType.SIGNED.opCode.equals(scanType)){ + content="签收 快件在【"+scanRecord.getScanSite()+"】,签收人["+scanRecord.getSignMan()+"]"; + if(isInner){ + content=scanRecord.getScanSite()+","+scanRecord.getScanMan()+",签收,"+DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())+","+content; + } + } + // 留仓 + else if(ScanType.HOLD.opCode.equals(scanType)){ + content=" 已留仓,网点:"+scanRecord.getScanSite() ; + } + // 转单扫描 + else if(ScanType.TRANSFER.opCode.equals(scanType)){ + content=" 已转单:"; + // 查询转单轨迹 + } + // 问题件 + else if(ScanType.ISSUE.opCode.equals(scanType)){ + + content=" 问题件:"; + } + // 合包 + else if(ScanType.CO_PACKING.opCode.equals(scanType)){ + + } + else if(ScanType.UN_PACKING.opCode.equals(scanType)){ + } + // 装车 + else if(ScanType.LOADING.opCode.equals(scanType)){ + + } + // 卸车 + else if(ScanType.UN_LOADING.opCode.equals(scanType)){ + + } + // 报关扫描 + else if(ScanType.DECLEARE.opCode.equals(scanType)){ + content=" 报关扫描"; + } + // 清关扫描 + else if(ScanType.CLEARANCE.opCode.equals(scanType)){ + content=" 清关扫描"; + } + + return content; + } + /** * 转件登记 * @param billCode 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 5bd93f797..01fcae242 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 @@ -604,7 +604,7 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm List listTraceList= getTraceListByBillCode(billCode); for(EmisTmsScanRecord scanRecord:listTraceList){ - String content=cvtRecordToStr(scanRecord); + String content=cvtScanRecordToTraceStr(scanRecord,false); if(content!=null) { Map step = new HashMap<>(); step.put("time", DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS,scanRecord.getScanDate())); @@ -617,96 +617,6 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm return stepList; } - private String cvtRecordToStr(EmisTmsScanRecord scanRecord){ - String content = null; - - String scanType=scanRecord.getScanType(); - - -// content = scanSite ; -// if(opCode.contains("收件")) { -// content=content+" 快件已揽收 ,业务员:"+scanMan; -// } -// else if(opCode.contains("到达") || opCode.contains("到件")) { -// content=content+"快件已到达"+scanSite; -// } -// else if(opCode.contains("发件") ) { -// content=content+"快件已离开"+scanSite +" 发往 "+preOrNextStation; -// } -// else if(opCode.contains("派件扫描") ) { -// content=content+"派件扫描,派件员:"+scanMan; -// } -// else if(opCode.contains("派件") ) { -// content=content+"派件中,派件员:"+scanMan; -// } -// else if(opCode.contains("签收") ) { -// content=content+"已签收,签收人:"+scanMan; -// } -// else { -// content=content+""+opCode; -// } - - - // 揽收扫描 - if(ScanType.GOT.opCode.equals(scanType)){ - content=" 已揽收,业务员:"+scanRecord.getDispatchOrSendMan(); -// +" 电话:" +scanRecord.getDispatchOrSendManPhone(); - } - // 发件扫描 - else if(ScanType.DEPARTURE.opCode.equals(scanType)){ - content="快件已离开 "+scanRecord.getScanSite() +" 发往 "+scanRecord.getPreOrNextStation(); - } - // 到件扫描 - else if(ScanType.ARRIVAL.opCode.equals(scanType)){ - content="快件已到达 "+scanRecord.getScanSite(); - } - // 派送扫描 - else if(ScanType.SENT.opCode.equals(scanType)){ - content="派件扫描,派件员:"+scanRecord.getDispatchOrSendMan(); - } - // 签收扫描 - else if(ScanType.SIGNED.opCode.equals(scanType)){ - content="已签收,签收人:"+scanRecord.getSignMan(); - } - // 留仓 - else if(ScanType.HOLD.opCode.equals(scanType)){ - content=" 已留仓,网点:"+scanRecord.getScanSite() ; - } - // 转单扫描 - else if(ScanType.TRANSFER.opCode.equals(scanType)){ - content=" 已转单:"; - // 查询转单轨迹 - } - // 问题件 - else if(ScanType.ISSUE.opCode.equals(scanType)){ - - content=" 问题件:"; - } - // 合包 - else if(ScanType.CO_PACKING.opCode.equals(scanType)){ - - } - else if(ScanType.UN_PACKING.opCode.equals(scanType)){ - } - // 装车 - else if(ScanType.LOADING.opCode.equals(scanType)){ - - } - // 卸车 - else if(ScanType.UN_LOADING.opCode.equals(scanType)){ - - } - // 报关扫描 - else if(ScanType.DECLEARE.opCode.equals(scanType)){ - content=" 报关扫描"; - } - // 清关扫描 - else if(ScanType.CLEARANCE.opCode.equals(scanType)){ - content=" 清关扫描"; - } - - return content; - } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java index d57b94d22..d7c0394a0 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillServiceImpl.java @@ -105,7 +105,16 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb @Override public List selectEmisWaybillList(EmisWaybill emisWaybill) { - return emisWaybillMapper.selectEmisWaybillList(emisWaybill); + // lastTraceInfo + List list=emisWaybillMapper.selectEmisWaybillList(emisWaybill); + + // 转换轨迹信息 + for (EmisWaybill item:list) { + String traceStr=cvtScanRecordToTraceStr(item.getLastScanRecord(),true); + item.setLastTraceInfo(traceStr); + } + + return list; } /**