diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java index 8990a9b75..96e2a1b7d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java @@ -342,15 +342,20 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill if (latePayLastMoney.compareTo(new BigDecimal(0)) > 0 ) { opay = opay.add(latePayLastMoney); //如果手续费+滞纳金未消耗到实际收款 - if (latePayLastMoney.compareTo(new BigDecimal(dto.getAddpay())) >= 0 ) { - wxBillRent.setPay(dto.getAddpay()); - sb.append(";已付金额增加").append(new BigDecimal(dto.getAddpay()).toPlainString()); - //实际应收的抵扣 - //remainSetoff = remainSetoff.subtract(latePayLastMoney.subtract(new BigDecimal(dto.getAddpay()))); + BigDecimal pay = new BigDecimal(dto.getAddpay()); + if (latePayLastMoney.compareTo(pay) >= 0 ) { + if (pay.compareTo(new BigDecimal(0)) > 0 ) { + wxBillRent.setPay(pay.toPlainString()); + sb.append(";已付金额增加").append(new BigDecimal(dto.getAddpay()).toPlainString()); + //实际应收的抵扣 + //remainSetoff = remainSetoff.subtract(latePayLastMoney.subtract(new BigDecimal(dto.getAddpay()))); + } }else { - BigDecimal remainPay = new BigDecimal(dto.getAddpay()).subtract(latePayLastMoney); - wxBillRent.setPay(remainPay.toPlainString()); - sb.append(";已付金额增加").append(remainPay.toPlainString()); + if (pay.compareTo(new BigDecimal(0)) > 0 ) { + BigDecimal remainPay = new BigDecimal(dto.getAddpay()).subtract(latePayLastMoney); + wxBillRent.setPay(remainPay.toPlainString()); + sb.append(";已付金额增加").append(remainPay.toPlainString()); + } } if (opay.compareTo(new BigDecimal(dbBill.getOwe())) >= 0 ) { wxBillRent.setStatus(EnumBillStatus.PAID.getCode()); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java index fd5b87a8d..ac01f2e95 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java @@ -665,6 +665,10 @@ public class WxFinanceServiceImpl implements WxFinanceService { payDto.setAddpay("0"); payDto.setSetOff(be.getCurrentSetOff()); payDto.setPayWay(Constant.bill_pay_way_setoff); + if (null == payWay0) { + payWay0 = new WxBillPayWay(); + payWay0.setId(Constant.bill_pay_way_setoff); + } payDto.setPayWayObject(payWay0); payDto.setRemark("收款单收款["+addreceive.getId()+"]冲抵"+addreceive.getRemark()); wxBillAllHelper.updatePay(payDto, user);