From 1294ecde8f73dc278a8e5b5ff444badb16b94d93 Mon Sep 17 00:00:00 2001 From: linfso Date: Tue, 30 Apr 2024 23:36:01 +0800 Subject: [PATCH] md --- emis-biz/emis-biz.iml | 1 + emis-biz/pom.xml | 6 + .../erp/emis/domain/EmisTmsScanRecord.java | 17 ++- .../erp/emis/service/EmisBaseService.java | 130 +++++++++++++++++- .../impl/EmisTmsScanRecordServiceImpl.java | 8 +- .../mapper/EmisTmsScanRecordMapper.xml | 43 ++++-- 6 files changed, 181 insertions(+), 24 deletions(-) diff --git a/emis-biz/emis-biz.iml b/emis-biz/emis-biz.iml index d2900522d..bf01fc5c1 100644 --- a/emis-biz/emis-biz.iml +++ b/emis-biz/emis-biz.iml @@ -202,5 +202,6 @@ + \ No newline at end of file diff --git a/emis-biz/pom.xml b/emis-biz/pom.xml index 2c0ef935d..772225e7e 100644 --- a/emis-biz/pom.xml +++ b/emis-biz/pom.xml @@ -31,6 +31,12 @@ aviator 5.2.4 + + com.xdadan + emis-system + 1.0.1 + compile + diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsScanRecord.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsScanRecord.java index 97cf973d1..c290a230d 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsScanRecord.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsScanRecord.java @@ -2,7 +2,7 @@ * @Project: emis * @Title: EmisTmsScanRecord.java * @author linfso - * @date 2024-04-30 14:46:25 + * @date 2024-04-30 15:10:40 * @Copyright: ShangHai Duta 2022 All rights reserved. * @version v1.0 * @Description:

TMS扫描记录 实体类

@@ -26,7 +26,7 @@ import lombok.Data; * @ClassName EmisTmsScanRecord * @Description TMS扫描记录 * @author linfso - * @date 2024-04-30 14:46:25 + * @date 2024-04-30 15:10:40 */ @Data public class EmisTmsScanRecord extends BaseEntity @@ -50,11 +50,16 @@ public class EmisTmsScanRecord extends BaseEntity /* 上下一站点人员电话 */ private String preOrNextManPhone; /* 扫描时间 */ - private String scanDate; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date scanDate; /* 扫描员代码 */ private String scanManCode; /* 扫描员电话 */ private String scanManPhone; + /* 扫描员 */ + private String scanMan; + /* 上下一站点人员 */ + private String preOrNextMan; /* 扫描站点 */ private String scanSite; /* 扫描站点代码 */ @@ -62,9 +67,9 @@ public class EmisTmsScanRecord extends BaseEntity /* 扫描网点代码 */ private String scanSitePhone; /* 扫描重量 */ - private String scanWeight; + private BigDecimal scanWeight; /* 重量 */ - private String weight; + private BigDecimal weight; /* 派件或取件人 */ private String dispatchOrSendMan; /* 派件或取件人代码 */ @@ -81,6 +86,8 @@ public class EmisTmsScanRecord extends BaseEntity /* 签收站点代码 */ private String signSiteCode; /* 录入人代码 */ + private String recordMan; + /* 录入人代码 */ private String recordManCode; /* 录入人电话 */ private String recordManPhone; 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 72220d710..c340acd25 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 @@ -26,6 +26,7 @@ package com.xdadan.erp.emis.service; import com.xdadan.erp.emis.service.IEmisWaybillFeeitemService; import com.xdadan.erp.emis.service.IEmisWaybillService; import com.xdadan.erp.emis.utils.WaybillHelper; + import com.xdadan.erp.system.mapper.SysUserMapper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -33,6 +34,7 @@ package com.xdadan.erp.emis.service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; + import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; @@ -64,16 +66,25 @@ public class EmisBaseService { protected EmisTransProductMapper emisTransProductMapper; @Autowired - private EmisNotCalcAgingMapper emisNotCalcAgingMapper; + protected EmisNotCalcAgingMapper emisNotCalcAgingMapper; @Autowired - private EmisQuotePriceMapper emisQuotePriceMapper; + protected EmisQuotePriceMapper emisQuotePriceMapper; @Autowired - private EmisCustomerUserMapper emisCustomerUserMapper; + protected EmisCustomerUserMapper emisCustomerUserMapper; @Autowired - EmisCustomerAddressMapper emisCustomerAddressMapper; + protected EmisCustomerAddressMapper emisCustomerAddressMapper; + + @Autowired + protected EmisTmsScanRecordMapper emisTmsScanRecordMapper; + + @Autowired + private EmisSiteMapper emisSiteMapper; + + @Autowired + private SysUserMapper sysUserMapper; /** @@ -84,6 +95,20 @@ public class EmisBaseService { return SecurityUtils.getLoginUser().getUser(); } + public EmisSite getSiteByCode(String siteCode){ + EmisSite querySite = new EmisSite(); + querySite.setSiteCode(siteCode); + List siteList=emisSiteMapper.selectEmisSiteList(querySite); + if(!CollectionUtils.isEmpty(siteList)){ + return siteList.get(0); + } + + return null; + } + + public SysUser getEmisStaffByCode(String empCode){ + return sysUserMapper.selectUserByUserName(empCode); + } public List checkCanScan(String scanType,Map scanDataItem){ @@ -119,6 +144,103 @@ public class EmisBaseService { return itemList; } + /** + * 扫描操作 + * @param scanType + * @param scanDataItem + * @return + */ + public List doScan(String scanType,Map scanDataItem){ + + List itemList = new ArrayList<>(); + String billCode = (String)scanDataItem.get("billCode"); + if(StringUtils.isEmpty(billCode)){ + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCode); + scanResultItem.setResult("fail"); + scanResultItem.setMessage("billCode为空"); + itemList.add(scanResultItem); + return itemList; + } + + // 开始检查数据 + String[] billCodeArr = billCode.split(","); + String scanDateStr = (String)scanDataItem.get("scanDate"); + String scanWeightStr = (String)scanDataItem.get("scanWeight"); + String dispatchOrSendManCode = (String)scanDataItem.get("dispatchOrSendManCode"); + + Date scanDate = DateUtils.parseDate(scanDateStr);; + if(scanDate ==null){ + scanDate = new Date(); + } + + double scanWeight = 0.0D; + if(!StringUtils.isEmpty(scanWeightStr)){ + scanWeight= Double.valueOf(scanWeightStr); + } + + for (String billCodeItem:billCodeArr) { + ScanResultItem scanResultItem = new ScanResultItem(); + scanResultItem.setBillCode(billCode); + // 检查区间 + scanResultItem.setResult("success"); + scanResultItem.setMessage("允许操作"); + + // 检查操作员 + if(ScanType.ACCEPT.name().equals(scanType)){ + + EmisTmsScanRecord emisTmsScanRecord=new EmisTmsScanRecord(); + + emisTmsScanRecord.setBillCode(billCode); + 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()); + } + + emisTmsScanRecord.setWeight(BigDecimal.valueOf(scanWeight)); + + emisTmsScanRecord.setDispatchOrSendManCode(dispatchOrSendManCode); + SysUser emUser=getEmisStaffByCode(dispatchOrSendManCode); + if(emUser!=null){ + emisTmsScanRecord.setDispatchOrSendMan(emUser.getEmpName()); + emisTmsScanRecord.setDispatchOrSendManPhone(emUser.getPhonenumber()); + } + +// emisTmsScanRecord.setSignDate(ObjectB.getSignDate()); +// emisTmsScanRecord.setSignMan(ObjectB.getSignMan()); +// emisTmsScanRecord.setSignSite(ObjectB.getSignSite()); +// emisTmsScanRecord.setSignSiteCode(ObjectB.getSignSiteCode()); + emisTmsScanRecord.setRecordMan(getCurrentUser().getEmpName()); + emisTmsScanRecord.setRecordManCode(getCurrentUser().getEmpCode()); + emisTmsScanRecord.setRecordManPhone(getCurrentUser().getPhonenumber()); + emisTmsScanRecord.setRecordSiteCode(getCurrentUser().getOwnerSiteCode()); +// emisTmsScanRecord.setTruckMan(ObjectB.getTruckMan()); +// emisTmsScanRecord.setTruckCode(ObjectB.getTruckCode()); + emisTmsScanRecord.setDataFrom("pc"); +// emisTmsScanRecord.setPicUrl(ObjectB.getPicUrl()); + emisTmsScanRecord.setStatus("1"); + + emisTmsScanRecord.preInsert(); + + emisTmsScanRecordMapper.insertEmisTmsScanRecord(emisTmsScanRecord); + + } + + itemList.add(scanResultItem); + + } + + return itemList; + } + /** * 产生客户编码 规则: siteCode+ 000000 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 16689e006..16956e2d3 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 @@ -117,7 +117,13 @@ public class EmisTmsScanRecordServiceImpl extends EmisBaseService implements IEm scanResult.setScanType(scanInfo.getScanType()); scanResult.setOpType(scanInfo.getOpType()); List resultList = new ArrayList<>(); - if(scanInfo.getOpType()==1){ + if(scanInfo.getOpType()==2){ + for (Map item: scanInfo.getScanData()) { + List itemCheckList=doScan(scanInfo.getScanType(),item); + resultList.addAll(itemCheckList); + } + } + else{ for (Map item: scanInfo.getScanData()) { List itemCheckList=checkCanScan(scanInfo.getScanType(),item); resultList.addAll(itemCheckList); diff --git a/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml index 9aef7b602..a973b8dfa 100644 --- a/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisTmsScanRecordMapper.xml @@ -16,6 +16,8 @@ + + @@ -28,6 +30,7 @@ + @@ -47,7 +50,7 @@ - select id, bill_code, 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_site, scan_site_code, scan_site_phone, scan_weight, weight, 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_code, record_man_phone, record_site_code, 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 + select id, bill_code, 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, 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, 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 @@ -113,14 +119,16 @@ pre_or_next_station_phone, pre_or_next_man_code, pre_or_next_man_phone, - scan_date, + 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, + scan_weight, + weight, dispatch_or_send_man, dispatch_or_send_man_code, dispatch_or_send_man_phone, @@ -128,6 +136,7 @@ sign_man, sign_site, sign_site_code, + record_man, record_man_code, record_man_phone, record_site_code, @@ -154,14 +163,16 @@ #{preOrNextStationPhone}, #{preOrNextManCode}, #{preOrNextManPhone}, - #{scanDate}, + #{scanDate}, #{scanManCode}, #{scanManPhone}, + #{scanMan}, + #{preOrNextMan}, #{scanSite}, #{scanSiteCode}, #{scanSitePhone}, - #{scanWeight}, - #{weight}, + #{scanWeight}, + #{weight}, #{dispatchOrSendMan}, #{dispatchOrSendManCode}, #{dispatchOrSendManPhone}, @@ -169,6 +180,7 @@ #{signMan}, #{signSite}, #{signSiteCode}, + #{recordMan}, #{recordManCode}, #{recordManPhone}, #{recordSiteCode}, @@ -198,14 +210,16 @@ pre_or_next_station_phone = #{preOrNextStationPhone}, pre_or_next_man_code = #{preOrNextManCode}, pre_or_next_man_phone = #{preOrNextManPhone}, - scan_date = #{scanDate}, + scan_date = #{scanDate}, scan_man_code = #{scanManCode}, scan_man_phone = #{scanManPhone}, + scan_man = #{scanMan}, + pre_or_next_man = #{preOrNextMan}, scan_site = #{scanSite}, scan_site_code = #{scanSiteCode}, scan_site_phone = #{scanSitePhone}, - scan_weight = #{scanWeight}, - weight = #{weight}, + scan_weight = #{scanWeight}, + weight = #{weight}, dispatch_or_send_man = #{dispatchOrSendMan}, dispatch_or_send_man_code = #{dispatchOrSendManCode}, dispatch_or_send_man_phone = #{dispatchOrSendManPhone}, @@ -213,6 +227,7 @@ sign_man = #{signMan}, sign_site = #{signSite}, sign_site_code = #{signSiteCode}, + record_man = #{recordMan}, record_man_code = #{recordManCode}, record_man_phone = #{recordManPhone}, record_site_code = #{recordSiteCode},