From 9acc6fa9abd283d9db0e1d4a9ebea3bbb737a45d Mon Sep 17 00:00:00 2001 From: linfso Date: Mon, 20 May 2024 15:38:06 +0800 Subject: [PATCH] md --- .../emis/mapper/EmisTmsScanRecordMapper.java | 3 ++ .../impl/EmisTmsScanRecordServiceImpl.java | 54 +++++++++++++++++-- .../mapper/EmisTmsScanRecordMapper.xml | 22 +++++--- 3 files changed, 68 insertions(+), 11 deletions(-) diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java index 4f677f47b..8e791950c 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsScanRecordMapper.java @@ -67,4 +67,7 @@ public interface EmisTmsScanRecordMapper extends BaseMapper * @return 结果 */ public int deleteEmisTmsScanRecordByIds(Long[] ids); + + + public int checkSiteScanUnique(EmisTmsScanRecord emisTmsScanRecord); } 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 27caf5bb8..afe97e91a 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 @@ -131,6 +131,13 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm return itemList; } + // 开始检查数据 + String scanDateStr = (String)scanDataItem.get("scanDate"); + Date scanDate = DateUtils.parseDate(scanDateStr);; + if(scanDate ==null){ + scanDate = new Date(); + } + // 开始检查数据 String[] billCodeArr = billCodeInStr.split(","); for (String billCode:billCodeArr) { @@ -147,6 +154,36 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm } + EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord(); + + // 公共部分 + emisTmsScanRecord.setBillCode(billCode); + emisTmsScanRecord.setOrderSn(emisWaybill.getOrderSn()); + emisTmsScanRecord.setWeight(emisWaybill.getBillWeight()); + + emisTmsScanRecord.setScanType(scanType); + emisTmsScanRecord.setScanDate(scanDate); + emisTmsScanRecord.setScanManCode(getCurrentUser().getEmpCode()); + emisTmsScanRecord.setScanManPhone(getCurrentUser().getPhonenumber()); + emisTmsScanRecord.setScanMan(getCurrentUser().getEmpName()); + emisTmsScanRecord.setScanSite(getCurrentUser().getOwnerSiteName()); + emisTmsScanRecord.setScanSiteCode(getCurrentUser().getOwnerSiteCode()); + + EmisSite scanSite=getSiteByCode(emisTmsScanRecord.getScanSiteCode()); + if(scanSite!=null){ + emisTmsScanRecord.setScanSitePhone(scanSite.getPhone()); + } + + // 重复扫描 + int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(emisTmsScanRecord); + if(scanCnt>0){ + scanResultItem.setResult("fail"); + scanResultItem.setMessage("重复扫描"); + itemList.add(scanResultItem); + continue; + } + + scanResultItem.setResult("success"); scanResultItem.setMessage("允许操作"); @@ -157,8 +194,6 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm return itemList; } - - /** * 扫描操作 * @param scanType @@ -202,16 +237,15 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm continue; } + scanResultItem.getData().put("billWeight",emisWaybill.getBillWeight()); scanResultItem.getData().put("parcelQty",emisWaybill.getParcelQty()); - EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord(); - // 公共部分 + EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord(); emisTmsScanRecord.setBillCode(billCode); emisTmsScanRecord.setOrderSn(emisWaybill.getOrderSn()); emisTmsScanRecord.setWeight(emisWaybill.getBillWeight()); - emisTmsScanRecord.setScanType(scanType); emisTmsScanRecord.setScanDate(scanDate); emisTmsScanRecord.setScanManCode(getCurrentUser().getEmpCode()); @@ -225,6 +259,16 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm emisTmsScanRecord.setScanSitePhone(scanSite.getPhone()); } + // 重复扫描 + // 同站点,同动作,同一天不允许重复扫描 + int scanCnt=emisTmsScanRecordMapper.checkSiteScanUnique(emisTmsScanRecord); + if(scanCnt>0){ + scanResultItem.setResult("fail"); + scanResultItem.setMessage("重复扫描"); + itemList.add(scanResultItem); + continue; + } + // 原始数据返回 scanResultItem.getData().putAll(scanDataItem); diff --git a/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml index 0d7628b15..5194ecc56 100644 --- a/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml @@ -58,14 +58,24 @@ select id, bill_code, order_sn, scan_type, pre_or_next_station, pre_or_next_station_code, pre_or_next_station_phone, pre_or_next_man_code, pre_or_next_man_phone, scan_date, scan_man_code, scan_man_phone, scan_man, pre_or_next_man, scan_site, scan_site_code, scan_site_phone, scan_weight, weight, dest_site_code, dest_code, dispatch_or_send_man, dispatch_or_send_man_code, dispatch_or_send_man_phone, sign_date, sign_man, sign_site, sign_site_code, record_man, record_man_code, record_man_phone, record_site_code, car_no, bag_no, truck_man, truck_code, data_from, pic_url, status, del_flag, create_by, create_time, update_by, update_time, remark, update_site, create_site from emis_tms_scan_record + + + + +