md
This commit is contained in:
parent
294f08a924
commit
63f29cc881
@ -208,8 +208,9 @@ public class EmisBaseService {
|
|||||||
customerCode = emisCustomerUser.getCustomerCode();
|
customerCode = emisCustomerUser.getCustomerCode();
|
||||||
addresItem.setCustomerCode(customerCode);
|
addresItem.setCustomerCode(customerCode);
|
||||||
emisCustomerAddressMapper.updateEmisCustomerAddress(addresItem);
|
emisCustomerAddressMapper.updateEmisCustomerAddress(addresItem);
|
||||||
|
}else{
|
||||||
|
customerCode=addresItem.getCustomerCode();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
emisCustomerAddressNew.setCustomerCode(customerCode);
|
emisCustomerAddressNew.setCustomerCode(customerCode);
|
||||||
|
|||||||
@ -229,159 +229,178 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
|
|||||||
|
|
||||||
// 新增
|
// 新增
|
||||||
if(isNew){
|
if(isNew){
|
||||||
|
addWayBill(emisWaybillSave);
|
||||||
//补齐数据
|
|
||||||
emisWaybillSave.preInsert();
|
|
||||||
|
|
||||||
String orderSn = WaybillHelper.genOrderSn();
|
|
||||||
|
|
||||||
// 订单号
|
|
||||||
emisWaybillSave.setOrderSn(orderSn);
|
|
||||||
|
|
||||||
// 登记网点
|
|
||||||
emisWaybillSave.setRegisterSiteCode(getCurrentUser().getOwnerSiteCode());
|
|
||||||
emisWaybillSave.setRegisterManCode(getCurrentUser().getEmpCode());
|
|
||||||
emisWaybillSave.setRegisterDate(new Date());
|
|
||||||
|
|
||||||
// 发件网点
|
|
||||||
emisWaybillSave.setSendSiteCode(getCurrentUser().getOwnerSiteCode());
|
|
||||||
emisWaybillSave.setSendSiteName(getCurrentUser().getOwnerSiteName());
|
|
||||||
|
|
||||||
// 派件网点
|
|
||||||
emisWaybillSave.setDispatchSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
|
|
||||||
|
|
||||||
|
|
||||||
// 订单运单初始状态
|
|
||||||
emisWaybillSave.setOrderStatus("0");
|
|
||||||
emisWaybillSave.setWaybillStatus("0");
|
|
||||||
|
|
||||||
// 下单时间
|
|
||||||
emisWaybillSave.setOrderDate(new Date());
|
|
||||||
|
|
||||||
// 订单类型为正式单
|
|
||||||
emisWaybillSave.setOrderType("1");
|
|
||||||
|
|
||||||
// 保存收件地址,并产生客户编号
|
|
||||||
String recieveCustomerCode="";
|
|
||||||
EmisCustomerAddress recieveAddress = new EmisCustomerAddress();
|
|
||||||
recieveAddress.setCountry(emisWaybillSave.getReceiveCountry());
|
|
||||||
recieveAddress.setName(emisWaybillSave.getReceiveName());
|
|
||||||
recieveAddress.setPhone(emisWaybillSave.getReceiveMobile());
|
|
||||||
recieveAddress.setProvince(emisWaybillSave.getReceiveProvince());
|
|
||||||
recieveAddress.setCity(emisWaybillSave.getReceiveCity());
|
|
||||||
recieveAddress.setCounty(emisWaybillSave.getReceiveCounty());
|
|
||||||
recieveAddress.setTown(emisWaybillSave.getReceiveTown());
|
|
||||||
// recieveAddress.setEmail(emisWaybillSave);
|
|
||||||
recieveAddress.setAddress(emisWaybillSave.getReceiveAddress());
|
|
||||||
recieveAddress.setCompany(emisWaybillSave.getReceiveCompany());
|
|
||||||
recieveAddress.setUseSiteCode(getCurrentUser().getOwnerSiteCode());
|
|
||||||
recieveAddress.setAddressType("2");
|
|
||||||
EmisCustomerAddress recieveAddressNew=createCustomerAddress(recieveAddress);
|
|
||||||
recieveCustomerCode = recieveAddressNew.getCustomerCode();
|
|
||||||
emisWaybillSave.setReceiveCustomerCode(recieveCustomerCode);
|
|
||||||
|
|
||||||
// 保存寄件地址并产生寄件客户编号
|
|
||||||
String sendCustomerCode="";
|
|
||||||
EmisCustomerAddress sendAddress = new EmisCustomerAddress();
|
|
||||||
sendAddress.setCountry(emisWaybillSave.getSendCountry());
|
|
||||||
sendAddress.setName(emisWaybillSave.getSendName());
|
|
||||||
sendAddress.setPhone(emisWaybillSave.getSendMobile());
|
|
||||||
sendAddress.setProvince(emisWaybillSave.getSendProvince());
|
|
||||||
sendAddress.setCity(emisWaybillSave.getSendCity());
|
|
||||||
sendAddress.setCounty(emisWaybillSave.getSendCounty());
|
|
||||||
sendAddress.setTown(emisWaybillSave.getSendTown());
|
|
||||||
// recieveAddress.setEmail(emisWaybillSave);
|
|
||||||
sendAddress.setAddress(emisWaybillSave.getSendAddress());
|
|
||||||
sendAddress.setCompany(emisWaybillSave.getSendCompany());
|
|
||||||
sendAddress.setUseSiteCode(getCurrentUser().getOwnerSiteCode());
|
|
||||||
sendAddress.setAddressType("1");
|
|
||||||
EmisCustomerAddress sendAddressNew=createCustomerAddress(sendAddress);
|
|
||||||
sendCustomerCode = sendAddressNew.getCustomerCode();
|
|
||||||
emisWaybillSave.setCustomerCode(sendCustomerCode);
|
|
||||||
|
|
||||||
// 获取泡重比
|
|
||||||
EmisTransLine emisTransLine = getTransLineByCode(emisWaybillSave.getTransLineType());
|
|
||||||
emisWaybillSave.setMeterType(emisTransLine.getMeterRate());
|
|
||||||
|
|
||||||
// 时效
|
|
||||||
EmisTransProduct emisTransProduct = getTransProductByCode(emisWaybillSave.getProductType());
|
|
||||||
emisWaybillSave.setTimeType(emisTransProduct.getAgingDesc());
|
|
||||||
|
|
||||||
if(emisWaybillSave.getSendDate()==null){
|
|
||||||
emisWaybillSave.setSendDate(new Date());
|
|
||||||
}
|
|
||||||
Date estDate = getEstimateDate(
|
|
||||||
emisWaybillSave.getSendDate(),emisWaybillSave.getProductType(),
|
|
||||||
emisWaybillSave.getSendCountry(),
|
|
||||||
emisWaybillSave.getReceiveCountry());
|
|
||||||
|
|
||||||
// 预计到达时间
|
|
||||||
log.info("预估到达时间==>"+ DateUtils.dateTime(estDate));
|
|
||||||
emisWaybillSave.setEstimateDate(estDate);
|
|
||||||
|
|
||||||
// 子单号
|
|
||||||
if("1".equals(emisWaybillSave.getBlGenSubbill()) ){
|
|
||||||
// 子单号拼接
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
for(int i=0;i<emisWaybillSave.getParcelQty().intValue();i++){
|
|
||||||
sb.append(emisWaybillSave.getBillCode()+ StringUtils.leftPad(String.valueOf(i),4,"0")+",");
|
|
||||||
}
|
|
||||||
emisWaybillSave.setBillCodeSub(sb.toString());
|
|
||||||
}
|
|
||||||
|
|
||||||
// 物品名称
|
|
||||||
if(StringUtils.isEmpty(emisWaybillSave.getGoodsInfo())){
|
|
||||||
if(!CollectionUtils.isEmpty(emisWaybillSave.getCargoList()) ){
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
for(EmisWaybillCargo cargo:emisWaybillSave.getCargoList()){
|
|
||||||
sb.append(cargo.getGoodsName()+",");
|
|
||||||
}
|
|
||||||
emisWaybillSave.setGoodsInfo(sb.toString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
emisWaybillMapper.insertEmisWaybill(emisWaybillSave);
|
|
||||||
|
|
||||||
// 产生主键插入其他数据
|
|
||||||
// 插入费用
|
|
||||||
List<EmisWaybillFeeitem> feeitemList=emisWaybillSave.getFeeitemList();
|
|
||||||
if(!CollectionUtils.isEmpty(feeitemList)){
|
|
||||||
for (EmisWaybillFeeitem feeItem:feeitemList) {
|
|
||||||
feeItem.setWaybillId(emisWaybillSave.getId());
|
|
||||||
emisWaybillFeeitemMapper.insertEmisWaybillFeeitem(feeItem);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 插入商品信息
|
|
||||||
if(!CollectionUtil.isEmpty(emisWaybillSave.getCargoList() )){
|
|
||||||
List<EmisWaybillCargo> cargoList=emisWaybillSave.getCargoList();
|
|
||||||
for (EmisWaybillCargo cargoItem:cargoList) {
|
|
||||||
cargoItem.setWaybillId(emisWaybillSave.getId());
|
|
||||||
emisWaybillCargoMapper.insertEmisWaybillCargo(cargoItem);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 插入附件信息
|
|
||||||
if(!CollectionUtil.isEmpty(emisWaybillSave.getAttachmentList() )){
|
|
||||||
List<EmisWaybillAttachment> attachmentList=emisWaybillSave.getAttachmentList();
|
|
||||||
for (EmisWaybillAttachment attachmentItem:attachmentList) {
|
|
||||||
attachmentItem.setWaybillId(emisWaybillSave.getId());
|
|
||||||
emisWaybillAttachmentMapper.insertEmisWaybillAttachment(attachmentItem);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
emisWaybillSave.setId(emisWaybillOld.getId());
|
emisWaybillSave.setId(emisWaybillOld.getId());
|
||||||
emisWaybillSave.preUpdate();
|
updateWayBill(emisWaybillSave);
|
||||||
|
|
||||||
emisWaybillMapper.updateEmisWaybill(emisWaybillSave);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增费用
|
||||||
|
* @param emisWaybillSave
|
||||||
|
*/
|
||||||
|
private void addWayBill(EmisWaybill emisWaybillSave){
|
||||||
|
|
||||||
|
//补齐数据
|
||||||
|
emisWaybillSave.preInsert();
|
||||||
|
|
||||||
|
String orderSn = WaybillHelper.genOrderSn();
|
||||||
|
|
||||||
|
// 订单号
|
||||||
|
emisWaybillSave.setOrderSn(orderSn);
|
||||||
|
|
||||||
|
// 登记网点
|
||||||
|
emisWaybillSave.setRegisterSiteCode(getCurrentUser().getOwnerSiteCode());
|
||||||
|
emisWaybillSave.setRegisterManCode(getCurrentUser().getEmpCode());
|
||||||
|
emisWaybillSave.setRegisterDate(new Date());
|
||||||
|
|
||||||
|
// 发件网点
|
||||||
|
emisWaybillSave.setSendSiteCode(getCurrentUser().getOwnerSiteCode());
|
||||||
|
emisWaybillSave.setSendSiteName(getCurrentUser().getOwnerSiteName());
|
||||||
|
|
||||||
|
// 派件网点
|
||||||
|
emisWaybillSave.setDispatchSiteCode(emisWaybillSave.getDispatchUnderlingSiteCode());
|
||||||
|
|
||||||
|
|
||||||
|
// 订单运单初始状态
|
||||||
|
emisWaybillSave.setOrderStatus("0");
|
||||||
|
emisWaybillSave.setWaybillStatus("0");
|
||||||
|
|
||||||
|
// 下单时间
|
||||||
|
emisWaybillSave.setOrderDate(new Date());
|
||||||
|
|
||||||
|
// 订单类型为正式单
|
||||||
|
emisWaybillSave.setOrderType("1");
|
||||||
|
|
||||||
|
// 保存收件地址,并产生客户编号
|
||||||
|
String recieveCustomerCode="";
|
||||||
|
EmisCustomerAddress recieveAddress = new EmisCustomerAddress();
|
||||||
|
recieveAddress.setCountry(emisWaybillSave.getReceiveCountry());
|
||||||
|
recieveAddress.setName(emisWaybillSave.getReceiveName());
|
||||||
|
recieveAddress.setPhone(emisWaybillSave.getReceiveMobile());
|
||||||
|
recieveAddress.setProvince(emisWaybillSave.getReceiveProvince());
|
||||||
|
recieveAddress.setCity(emisWaybillSave.getReceiveCity());
|
||||||
|
recieveAddress.setCounty(emisWaybillSave.getReceiveCounty());
|
||||||
|
recieveAddress.setTown(emisWaybillSave.getReceiveTown());
|
||||||
|
// recieveAddress.setEmail(emisWaybillSave);
|
||||||
|
recieveAddress.setAddress(emisWaybillSave.getReceiveAddress());
|
||||||
|
recieveAddress.setCompany(emisWaybillSave.getReceiveCompany());
|
||||||
|
recieveAddress.setUseSiteCode(getCurrentUser().getOwnerSiteCode());
|
||||||
|
recieveAddress.setAddressType("2");
|
||||||
|
EmisCustomerAddress recieveAddressNew=createCustomerAddress(recieveAddress);
|
||||||
|
recieveCustomerCode = recieveAddressNew.getCustomerCode();
|
||||||
|
emisWaybillSave.setReceiveCustomerCode(recieveCustomerCode);
|
||||||
|
|
||||||
|
// 保存寄件地址并产生寄件客户编号
|
||||||
|
String sendCustomerCode="";
|
||||||
|
EmisCustomerAddress sendAddress = new EmisCustomerAddress();
|
||||||
|
sendAddress.setCountry(emisWaybillSave.getSendCountry());
|
||||||
|
sendAddress.setName(emisWaybillSave.getSendName());
|
||||||
|
sendAddress.setPhone(emisWaybillSave.getSendMobile());
|
||||||
|
sendAddress.setProvince(emisWaybillSave.getSendProvince());
|
||||||
|
sendAddress.setCity(emisWaybillSave.getSendCity());
|
||||||
|
sendAddress.setCounty(emisWaybillSave.getSendCounty());
|
||||||
|
sendAddress.setTown(emisWaybillSave.getSendTown());
|
||||||
|
// recieveAddress.setEmail(emisWaybillSave);
|
||||||
|
sendAddress.setAddress(emisWaybillSave.getSendAddress());
|
||||||
|
sendAddress.setCompany(emisWaybillSave.getSendCompany());
|
||||||
|
sendAddress.setUseSiteCode(getCurrentUser().getOwnerSiteCode());
|
||||||
|
sendAddress.setAddressType("1");
|
||||||
|
EmisCustomerAddress sendAddressNew=createCustomerAddress(sendAddress);
|
||||||
|
|
||||||
|
sendCustomerCode = sendAddressNew.getCustomerCode();
|
||||||
|
emisWaybillSave.setCustomerCode(sendCustomerCode);
|
||||||
|
|
||||||
|
// 获取泡重比
|
||||||
|
EmisTransLine emisTransLine = getTransLineByCode(emisWaybillSave.getTransLineType());
|
||||||
|
emisWaybillSave.setMeterType(emisTransLine.getMeterRate());
|
||||||
|
|
||||||
|
// 时效
|
||||||
|
EmisTransProduct emisTransProduct = getTransProductByCode(emisWaybillSave.getProductType());
|
||||||
|
emisWaybillSave.setTimeType(emisTransProduct.getAgingDesc());
|
||||||
|
|
||||||
|
if(emisWaybillSave.getSendDate()==null){
|
||||||
|
emisWaybillSave.setSendDate(new Date());
|
||||||
|
}
|
||||||
|
Date estDate = getEstimateDate(
|
||||||
|
emisWaybillSave.getSendDate(),emisWaybillSave.getProductType(),
|
||||||
|
emisWaybillSave.getSendCountry(),
|
||||||
|
emisWaybillSave.getReceiveCountry());
|
||||||
|
|
||||||
|
// 预计到达时间
|
||||||
|
log.info("预估到达时间==>"+ DateUtils.dateTime(estDate));
|
||||||
|
emisWaybillSave.setEstimateDate(estDate);
|
||||||
|
|
||||||
|
// 子单号
|
||||||
|
if("1".equals(emisWaybillSave.getBlGenSubbill()) ){
|
||||||
|
// 子单号拼接
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for(int i=0;i<emisWaybillSave.getParcelQty().intValue();i++){
|
||||||
|
sb.append(emisWaybillSave.getBillCode()+ StringUtils.leftPad(String.valueOf(i),4,"0")+",");
|
||||||
|
}
|
||||||
|
emisWaybillSave.setBillCodeSub(sb.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
// 物品名称
|
||||||
|
if(StringUtils.isEmpty(emisWaybillSave.getGoodsInfo())){
|
||||||
|
if(!CollectionUtils.isEmpty(emisWaybillSave.getCargoList()) ){
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
for(EmisWaybillCargo cargo:emisWaybillSave.getCargoList()){
|
||||||
|
sb.append(cargo.getGoodsName()+",");
|
||||||
|
}
|
||||||
|
emisWaybillSave.setGoodsInfo(sb.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
emisWaybillMapper.insertEmisWaybill(emisWaybillSave);
|
||||||
|
|
||||||
|
// 产生主键插入其他数据
|
||||||
|
// 插入费用
|
||||||
|
List<EmisWaybillFeeitem> feeitemList=emisWaybillSave.getFeeitemList();
|
||||||
|
if(!CollectionUtils.isEmpty(feeitemList)){
|
||||||
|
for (EmisWaybillFeeitem feeItem:feeitemList) {
|
||||||
|
feeItem.setWaybillId(emisWaybillSave.getId());
|
||||||
|
emisWaybillFeeitemMapper.insertEmisWaybillFeeitem(feeItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 插入商品信息
|
||||||
|
if(!CollectionUtil.isEmpty(emisWaybillSave.getCargoList() )){
|
||||||
|
List<EmisWaybillCargo> cargoList=emisWaybillSave.getCargoList();
|
||||||
|
for (EmisWaybillCargo cargoItem:cargoList) {
|
||||||
|
cargoItem.setWaybillId(emisWaybillSave.getId());
|
||||||
|
emisWaybillCargoMapper.insertEmisWaybillCargo(cargoItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 插入附件信息
|
||||||
|
if(!CollectionUtil.isEmpty(emisWaybillSave.getAttachmentList() )){
|
||||||
|
List<EmisWaybillAttachment> attachmentList=emisWaybillSave.getAttachmentList();
|
||||||
|
for (EmisWaybillAttachment attachmentItem:attachmentList) {
|
||||||
|
attachmentItem.setWaybillId(emisWaybillSave.getId());
|
||||||
|
emisWaybillAttachmentMapper.insertEmisWaybillAttachment(attachmentItem);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void updateWayBill(EmisWaybill emisWaybillSave){
|
||||||
|
emisWaybillSave.preUpdate();
|
||||||
|
|
||||||
|
// 基础信息更新
|
||||||
|
emisWaybillMapper.updateEmisWaybill(emisWaybillSave);
|
||||||
|
|
||||||
|
// 更新资费
|
||||||
|
|
||||||
|
// 更新产品
|
||||||
|
|
||||||
|
// 更新附件
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 运单费用计算接口
|
* 运单费用计算接口
|
||||||
* @param emisWaybill
|
* @param emisWaybill
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user