diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java index 734000195..2009df0ae 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisSettlePayRecordServiceImpl.java @@ -26,6 +26,7 @@ import com.xdadan.erp.emis.service.EmisBaseService; import com.xdadan.erp.emis.service.IEmisSettleBillService; import com.xdadan.erp.emis.service.IEmisSettleSubBillService; import com.xdadan.erp.emis.utils.WaybillHelper; +import jodd.util.StringUtil; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.MapUtils; @@ -135,23 +136,8 @@ public class EmisSettlePayRecordServiceImpl extends EmisBaseService implements I @Override public int insertEmisSettlePayRecord(EmisSettlePayRecord emisSettlePayRecord,String payId) throws EmisBizError { - if(StringUtils.isEmpty(emisSettlePayRecord.getSettleBillNo())){ - throw new EmisBizError(EmisBizErrorType.FAIL,"账单编号不能为空"); - } - -// || BigDecimal.ZERO.compareTo(emisSettlePayRecord.getPayMoney()) == 0 - if("1".equals(emisSettlePayRecord.getRecType())) { - if (emisSettlePayRecord.getPayMoney() == null ) { - throw new EmisBizError(EmisBizErrorType.FAIL, "收款金额不能为空"); - } - } - -// || BigDecimal.ZERO.compareTo(emisSettlePayRecord.getRefundMoney()) == 0 - else if("2".equals(emisSettlePayRecord.getRecType())) { - if (emisSettlePayRecord.getRefundMoney()== null ) { - throw new EmisBizError(EmisBizErrorType.FAIL, "退款金额不能为空"); - } - } + // 非空校验 + checkParam(emisSettlePayRecord); // 校验交易日期不能晚于当天 checkDate(emisSettlePayRecord); @@ -238,6 +224,43 @@ public class EmisSettlePayRecordServiceImpl extends EmisBaseService implements I return 1; } + private static void checkParam(EmisSettlePayRecord emisSettlePayRecord) throws EmisBizError { + if(StringUtils.isEmpty(emisSettlePayRecord.getSettleBillNo())){ + throw new EmisBizError(EmisBizErrorType.FAIL,"账单编号不能为空"); + } + + if("1".equals(emisSettlePayRecord.getRecType())) { + if (emisSettlePayRecord.getPayMoney() == null) { + throw new EmisBizError(EmisBizErrorType.FAIL, "收款金额不能为空"); + } + if (StringUtil.isBlank(emisSettlePayRecord.getPayType())) { + throw new EmisBizError(EmisBizErrorType.FAIL, "支付方式不能为空"); + } + if (StringUtil.isBlank(emisSettlePayRecord.getPayMan())) { + throw new EmisBizError(EmisBizErrorType.FAIL, "收款人不能为空"); + } + if (emisSettlePayRecord.getTradeDate() == null) { + throw new EmisBizError(EmisBizErrorType.FAIL, "交易日期不能为空"); + } + } else if("2".equals(emisSettlePayRecord.getRecType())) { + if (emisSettlePayRecord.getRefundMoney() == null) { + throw new EmisBizError(EmisBizErrorType.FAIL, "退款金额不能为空"); + } + if (StringUtil.isBlank(emisSettlePayRecord.getPayMan())) { + throw new EmisBizError(EmisBizErrorType.FAIL, "退款人不能为空"); + } + if (StringUtil.isBlank(emisSettlePayRecord.getRefundMode())) { + throw new EmisBizError(EmisBizErrorType.FAIL, "退款方式不能为空"); + } + if (StringUtil.isBlank(emisSettlePayRecord.getRefundReason())) { + throw new EmisBizError(EmisBizErrorType.FAIL, "退款原因不能为空"); + } + if (emisSettlePayRecord.getRefundDate() == null) { + throw new EmisBizError(EmisBizErrorType.FAIL, "退款日期不能为空"); + } + } + } + private static void checkDate(EmisSettlePayRecord emisSettlePayRecord) throws EmisBizError { LocalDate today = LocalDate.now(); if (emisSettlePayRecord.getTradeDate() != null) {