This commit is contained in:
linfso 2024-06-08 16:46:59 +08:00
parent b53eecbdb1
commit caacfd9e4f
3 changed files with 26 additions and 15 deletions

View File

@ -10,7 +10,7 @@ public enum EmisBizErrorType {
CALC_WEIGHT_ERROR("E003", "重量计算错误"),
CALC_QUOTE_ERROR("E004", "报价未配置"),
BILL_LOCK("E901", "已锁账"),
BILL_LOCK("E901", "已锁定"),
NOT_EXISTS("E902","不存在"),
EXISTS("E903","已存在"),

View File

@ -1184,11 +1184,11 @@ public class EmisBaseService {
/**
* 判断是否锁账
* 判断是否超时锁账
* @param emisWaybill
* @return
*/
public boolean isWaybillLock(EmisWaybill emisWaybill) {
public boolean isOutTimeLock(EmisWaybill emisWaybill) {
// 判断运单状态,如果已锁账,则不允许修改
// 下单超过 24小时
// (1)当天开单的,次日9点前允许修改面单;

View File

@ -177,18 +177,23 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
EmisWaybill dbEmisWaybill = this.selectEmisWaybillByBillCode(billCode);
if(dbEmisWaybill==null){
return null;
throw new EmisBizError(EmisBizErrorType.NOT_EXISTS,"运单不存在");
}
// 设置运单锁单指令
boolean isLock=isWaybillLock(dbEmisWaybill);
boolean isLock=isOutTimeLock(dbEmisWaybill);
if(isLock){
dbEmisWaybill.setLockFlag("T");
dbEmisWaybill.setLockReason("超时不允许修改(TimeOut");
dbEmisWaybill.setLockReason("不允许修改");
}else{
dbEmisWaybill.setLockFlag("F");
}
if("1".equals(dbEmisWaybill.getBlSign())){
dbEmisWaybill.setLockFlag("T");
dbEmisWaybill.setLockReason("已签收,不允许修改");
}
// 收费项 // 查询收费项
EmisWaybillFeeitem queryFeeitem = new EmisWaybillFeeitem();
@ -218,17 +223,23 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
EmisWaybill dbEmisWaybill = this.selectEmisWaybillByOrderSn(orderSn);
if(dbEmisWaybill==null){
return null;
throw new EmisBizError(EmisBizErrorType.NOT_EXISTS,"运单不存在");
}
// 设置运单锁单指令
boolean isLock=isWaybillLock(dbEmisWaybill);
boolean isLock=isOutTimeLock(dbEmisWaybill);
if(isLock){
dbEmisWaybill.setLockFlag("T");
dbEmisWaybill.setLockReason("不允许修改");
}else{
dbEmisWaybill.setLockFlag("F");
}
if("1".equals(dbEmisWaybill.getBlSign())){
dbEmisWaybill.setLockFlag("T");
dbEmisWaybill.setLockReason("已签收,不允许修改");
}
// 收费项 // 查询收费项
EmisWaybillFeeitem queryFeeitem = new EmisWaybillFeeitem();
queryFeeitem.setWaybillId(dbEmisWaybill.getId());
@ -246,10 +257,6 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
queryAttachment.setWaybillId(dbEmisWaybill.getId());
List<EmisWaybillAttachment> dbAttachmentList=emisWaybillAttachmentMapper.selectEmisWaybillAttachmentList(queryAttachment);
return WaybillOrder.toVo(dbEmisWaybill,dbCargoList,dbFeeItemList,dbAttachmentList);
}
@ -292,9 +299,14 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
// return LocalTime.now().isAfter(localTime);
if(emisWaybillOld!=null ) {
if (isWaybillLock(emisWaybillOld)) {
throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已锁账,不允许修改");
if (isOutTimeLock(emisWaybillOld)) {
throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已超时,不允许修改");
}
if ("1".equals(emisWaybillOld.getBlSign())) {
throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已签收,不允许修改");
}
}
// 新增
@ -302,7 +314,6 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb
addWayBill(emisWaybillSave);
}else{
emisWaybillSave.setId(emisWaybillOld.getId());
// 把历史发货日期带过来用于重新计算预估到到时间
emisWaybillSave.setSendDate(emisWaybillOld.getSendDate());