diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java b/mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java index 58685c7a2..ef048fae8 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumBillAction.java @@ -14,8 +14,10 @@ public enum EnumBillAction { UPDATE_BILL(2, "账单金额变更"), OFFLINE_PAY(3, "线下缴费"), RETURN(5, "账单退还"), + SETOFF_CANCEL(6,"取消冲抵"), //IMPORT_PAY(10, "导入缴费"), UPDATE_LATE_PAY_MONEY(7, "滞纳金变更"), + CUT_CANCEL(8,"取消减免"), UPDATE_SERVICE_MONEY(9, "手续费变更"), NOTIFY(10,"催缴"), BAD(11,"坏账"), @@ -68,10 +70,14 @@ public enum EnumBillAction { if (StringUtils.isNotBlank(setoffMoney) && new BigDecimal(setoffMoney).compareTo(new BigDecimal(0)) > 0 ) { sb.append(",预收冲抵退回").append(setoffMoney).append("元"); } + }else if (code.intValue() == SETOFF_CANCEL.code.intValue()) { + sb.append(setoffMoney).append("元"); }else if (code.intValue() == UPDATE_LATE_PAY_MONEY.code.intValue()) { sb.append("应付金额").append(oldMoney).append("元变更成").append(newMoney).append("元"); }else if (code.intValue() == UPDATE_SERVICE_MONEY.code.intValue()) { sb.append("应付金额").append(oldMoney).append("元变更成").append(newMoney).append("元"); + }else if (code.intValue() == CUT_CANCEL.code.intValue()) { + sb.append(newMoney).append("元"); }else if (code.intValue() == NOTIFY.code.intValue()) { sb.append("在线催缴通知"); }else if (code.intValue() == BAD.code.intValue()){ diff --git a/mallinkService/src/main/java/com/iformall/service/WxAllBillService.java b/mallinkService/src/main/java/com/iformall/service/WxAllBillService.java index d9d707c59..5f27bf3da 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxAllBillService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxAllBillService.java @@ -63,6 +63,8 @@ public interface WxAllBillService { void backPay(WxBillPayDTO dto,MallUserInfo user); + void backSetOff(WxBillPayDTO dto,MallUserInfo user); + void backCut(WxBillPayDTO dto,MallUserInfo user); void toMechantBackPay(WxBillPayDTO dto,MallUserInfo user); diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java index 7a3213423..38edb8d9a 100644 --- a/mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java +++ b/mallinkService/src/main/java/com/iformall/service/helper/WxBillAllHelper.java @@ -331,6 +331,10 @@ public class WxBillAllHelper { wxAllBillService.backPay(dto, user); } + public void backSetOff(WxBillPayDTO dto,MallUserInfo user) { + wxAllBillService.backSetOff(dto, user); + } + public void backCut(WxBillPayDTO dto,MallUserInfo user) { wxAllBillService.backCut(dto, user); } 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 04a37c2f4..ca4640aba 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java @@ -538,6 +538,20 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill dto.getRemark(),null,null, user); } + @Override + public void backSetOff(WxBillPayDTO dto, MallUserInfo user) { + WxAllBill dbBill = wxAllBillMapper.selectById(dto.getId(),dto.getTenantId()); + WxAllBill wxBillRent = new WxAllBill(); + wxBillRent.setId(dto.getId()); + wxBillRent.updateTenantInfo(dto); + wxBillRent.setUpdatetime(new Date()); + wxBillRent.setSetOff(new BigDecimal(dbBill.getSetOff()).subtract(new BigDecimal(dto.getSetOff())).toPlainString()); + wxAllBillMapper.updateById(wxBillRent); + EnumBillAction action = EnumBillAction.SETOFF_CANCEL; + this.addBillAction(action, dto.getBillTypeValue(),dto.getId(), + null, null,dto.getSetOff(),null,null,null,dto.getRemark(),null,null, user); + } + @Override public void backCut(WxBillPayDTO dto, MallUserInfo user) { WxAllBill dbBill = wxAllBillMapper.selectById(dto.getId(),dto.getTenantId()); @@ -547,9 +561,9 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill wxBillRent.setUpdatetime(new Date()); wxBillRent.setReceivePay(new BigDecimal(dbBill.getReceivePay()).add(new BigDecimal(dto.getCut())).toPlainString()); wxAllBillMapper.updateById(wxBillRent); - EnumBillAction action = EnumBillAction.RETURN; + EnumBillAction action = EnumBillAction.CUT_CANCEL; this.addBillAction(action, dto.getBillTypeValue(),dto.getId(), - dto.getAddpay(), dto.getAddpay(),dto.getSetOff(),wxBillRent.getPayDate(),dto.getPayWay(),dto.getPayWayName(), + dto.getAddpay(), dto.getAddpay(),dto.getCut(),wxBillRent.getPayDate(),dto.getPayWay(),dto.getPayWayName(), dto.getRemark(),null,null, user); } 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 99e1585d4..8e6613d6d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java @@ -1414,7 +1414,7 @@ public class WxFinanceServiceImpl implements WxFinanceService { }else { payDto.setRemark("收款单作废,自动回退"); } - wxBillAllHelper.backPay(payDto, user); + wxBillAllHelper.backSetOff(payDto, user); //记录删除 wxFinanceReceiveSetoffMapper.deleteByConditon(rsq);