diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSiteBillControlMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSiteBillControlMapper.java index fb65c8cb9..a1c61659f 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSiteBillControlMapper.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisSiteBillControlMapper.java @@ -44,6 +44,10 @@ public interface EmisSiteBillControlMapper extends BaseMapper0){ + return true; + } + + return false; + + + } + + /** + * 计算预估到达时间 + * @param sendDate 开单时间 + * @param prodCode + * @param receiveCountry + * @param sendCountry + * @return + */ public Date getEstimateDate(Date sendDate,String prodCode,String receiveCountry,String sendCountry,Integer otherAddDay) { Date estDate = null; 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 7b79b60cf..162318f0e 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 @@ -198,6 +198,14 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb dbEmisWaybill.setLockReason("已签收,不允许修改"); } + boolean isBillLock=isBillLock(dbEmisWaybill); + if(isLock){ + dbEmisWaybill.setLockFlag("T"); + dbEmisWaybill.setLockReason("已锁账,不允许修改"); + }else{ + dbEmisWaybill.setLockFlag("F"); + } + // 收费项 EmisWaybillFeeitem queryFeeitem = new EmisWaybillFeeitem(); queryFeeitem.setWaybillId(dbEmisWaybill.getId()); @@ -495,30 +503,33 @@ public class EmisWaybillServiceImpl extends EmisBaseService implements IEmisWayb } } - // 判断运单状态,如果已锁账,则不允许修改 - // 下单超过 24小时 - // (1)当天开单的,次日9点前允许修改面单; - //(2)当天开单次日上午9点后未锁帐,总部/财务中心修改; - //(3)若运单已签收、已确认账单、已收款、已锁帐,登记申请审批后进行修改; -// DateTimeFormatter dtf = DateTimeFormatter.ofPattern("HH:mm:ss"); -// LocalTime localTime=LocalTime.parse(time,dtf); -// return LocalTime.now().isAfter(localTime); - - if(emisWaybillOld!=null ) { - if (isOutTimeLock(emisWaybillOld)) { - throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已超时,不允许修改"); - } - - if ("1".equals(emisWaybillOld.getBlSign())) { - throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已签收,不允许修改"); - } - - } - // 新增 if(isNew){ addWayBill(emisWaybillSave); }else{ + + // 判断运单状态,如果已锁账,则不允许修改 + // 下单超过 24小时 + // (1)当天开单的,次日9点前允许修改面单; + //(2)当天开单次日上午9点后未锁帐,总部/财务中心修改; + //(3)若运单已签收、已确认账单、已收款、已锁帐,登记申请审批后进行修改; + + + if(emisWaybillOld!=null ) { + if (isOutTimeLock(emisWaybillOld)) { + throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已超时,不允许修改"); + } + + if ("1".equals(emisWaybillOld.getBlSign())) { + throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "已签收,不允许修改"); + } + + if (isBillLock(emisWaybillOld)) { + throw new EmisBizError(EmisBizErrorType.BILL_LOCK, "锁账,不允许修改"); + } + } + + emisWaybillSave.setId(emisWaybillOld.getId()); // 把历史发货日期带过来用于重新计算预估到到时间 emisWaybillSave.setSendDate(emisWaybillOld.getSendDate()); diff --git a/emis-biz/src/main/resources/mapper/EmisSiteBillControlMapper.xml b/emis-biz/src/main/resources/mapper/EmisSiteBillControlMapper.xml index bdf7a7c7f..98149c5a7 100644 --- a/emis-biz/src/main/resources/mapper/EmisSiteBillControlMapper.xml +++ b/emis-biz/src/main/resources/mapper/EmisSiteBillControlMapper.xml @@ -69,6 +69,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and update_site = #{updateSite} limit 1 + +