From 110ac9e605c4e446ecf13228b9e840287c7a292b Mon Sep 17 00:00:00 2001 From: luozukai Date: Fri, 2 Aug 2019 10:57:47 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=BB=9E=E7=BA=B3=E9=87=91][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9][=E4=BF=AE=E6=94=B9=E6=BB=9E=E7=BA=B3=E9=87=91?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E7=B4=AF=E5=8A=A0=E9=80=BB=E8=BE=91]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/WxRentContractController.java | 70 +++++++++++-------- .../com/iformall/tenant/TenantInfoImpl.java | 4 ++ .../schedule/LatePayBillActionSchedule.java | 59 ++++++++-------- .../service/impl/WxFlowServiceImpl.java | 2 +- 4 files changed, 78 insertions(+), 57 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java index 4d8ff8b42..6ccd412cc 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/contract/WxRentContractController.java @@ -13,6 +13,8 @@ import com.iformall.enums.EnumIsPreview; import com.iformall.enums.EnumRentStartType; import com.iformall.exception.MallinkException; import com.iformall.mapper.WxBillActionMapper; +import com.iformall.mapper.WxBillPropertyMapper; +import com.iformall.mapper.WxBillRentMapper; import com.iformall.mapper.WxRentContractMapper; import com.iformall.service.*; import com.iformall.utils.DateUtils; @@ -49,38 +51,50 @@ public class WxRentContractController extends BaseController { @Autowired private WxRentContractMapper wxRentContractMapper; + + @Autowired + WxBillRentMapper wxBillRentMapper; + @Autowired + WxBillPropertyMapper wxBillPropertyMapper; @Autowired private WxBillActionMapper wxBillActionMapper; @Autowired private WxBillPropertyService wxBillPropertyService; - @GetMapping("test") - @SystemControllerLog(description = "获取两个时间相差,返回n月零n天") - public ResultData test(String startDate, String endDate) throws Exception{ - final IdWorker idWorker = IdWorker.get(); - List billRentList = wxBillRentService.findLatePayBill(); - for (WxBillRent wxBillRent : billRentList) { - WxBillAction billAction = new WxBillAction(); - billAction.setId(idWorker.nextId()); - billAction.setCreatetime(new Date()); - billAction.setUserName("系统端"); - billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); - billAction.setBillId(wxBillRent.getId()); - BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP); - billAction.setDetails("系统计入"+ divide.toString()+"元"); - wxBillActionMapper.insertSelective(billAction); - } - - List billPropertyList = wxBillPropertyService.findLatePayBill(); - for (WxBillProperty wxBillRent : billPropertyList) { - WxBillAction billAction = new WxBillAction(); - billAction.setId(idWorker.nextId()); - billAction.setCreatetime(new Date()); - billAction.setUserName("系统端"); - billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); - billAction.setBillId(wxBillRent.getId()); - BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(100), 2, BigDecimal.ROUND_HALF_UP); - billAction.setDetails("系统计入"+ divide.toString()+"元"); - wxBillActionMapper.insertSelective(billAction); + @GetMapping("autolatePay") + @SystemControllerLog(description = "autolatePay") + public ResultData autolatePay(String startDate, String endDate) throws Exception{ + try { + logger.info("账单滞纳金更新开始"); + final IdWorker idWorker = IdWorker.get(); + List billRentList = wxBillRentService.findLatePayBill(); + for (WxBillRent wxBillRent : billRentList) { + WxBillAction billAction = new WxBillAction(); + billAction.setId(idWorker.nextId()); + billAction.setUserName("系统端"); + billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); + billAction.setBillId(wxBillRent.getId()); + BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); + billAction.setDetails("系统计入"+ divide.toString()+"元"); + wxBillActionMapper.insertSelective(billAction); + } + + List billPropertyList = wxBillPropertyService.findLatePayBill(); + for (WxBillProperty wxBillRent : billPropertyList) { + WxBillAction billAction = new WxBillAction(); + billAction.setId(idWorker.nextId()); + billAction.setUserName("系统端"); + billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); + billAction.setBillId(wxBillRent.getId()); + BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); + billAction.setDetails("系统计入"+ divide.toString()+"元"); + wxBillActionMapper.insertSelective(billAction); + } + wxBillRentMapper.autoAddLatePayPrice(); + wxBillPropertyMapper.autoAddLatePayPrice(); + logger.info("账单滞纳金更新结束"); + }catch (Exception e){ + logger.error("LatePayBillActionSchedule error! message:{}",e.getMessage()); + logger.error("LatePayBillActionSchedule error!",e); } return new ResultData(); } diff --git a/mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java b/mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java index 5fde686e2..9892de836 100644 --- a/mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java +++ b/mallinkAdmin/src/main/java/com/iformall/tenant/TenantInfoImpl.java @@ -118,6 +118,10 @@ public class TenantInfoImpl implements TenantInfo { return true; if ("com.iformall.mapper.WxBillPropertyMapper.updateNotPaidStatus".equals(ms.getId())) return true; + if ("com.iformall.mapper.WxBillRentMapper.autoAddLatePayPrice".equals(ms.getId())) + return true; + if ("com.iformall.mapper.WxBillPropertyMapper.autoAddLatePayPrice".equals(ms.getId())) + return true; return false; } } diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java index 5be3ab989..b3764334b 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java @@ -16,7 +16,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import java.math.BigDecimal; -import java.util.Date; import java.util.List; /** @@ -41,35 +40,39 @@ public class LatePayBillActionSchedule { */ @Scheduled(cron = "0 0 1 * * ?") public void updateBillStatus() { - logger.info("账单滞纳金更新开始"); - final IdWorker idWorker = IdWorker.get(); - List billRentList = wxBillRentService.findLatePayBill(); - for (WxBillRent wxBillRent : billRentList) { - WxBillAction billAction = new WxBillAction(); - billAction.setId(idWorker.nextId()); - billAction.setUserName("系统端"); - billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); - billAction.setBillId(wxBillRent.getId()); - BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); - billAction.setDetails("系统计入"+ divide.toString()+"元"); - wxBillActionMapper.insertSelective(billAction); - } + try { + logger.info("账单滞纳金更新开始"); + final IdWorker idWorker = IdWorker.get(); + List billRentList = wxBillRentService.findLatePayBill(); + for (WxBillRent wxBillRent : billRentList) { + WxBillAction billAction = new WxBillAction(); + billAction.setId(idWorker.nextId()); + billAction.setUserName("系统端"); + billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); + billAction.setBillId(wxBillRent.getId()); + BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); + billAction.setDetails("系统计入"+ divide.toString()+"元"); + wxBillActionMapper.insertSelective(billAction); + } - List billPropertyList = wxBillPropertyService.findLatePayBill(); - for (WxBillProperty wxBillRent : billPropertyList) { - WxBillAction billAction = new WxBillAction(); - billAction.setId(idWorker.nextId()); - billAction.setUserName("系统端"); - billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); - billAction.setBillId(wxBillRent.getId()); - BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); - billAction.setDetails("系统计入"+ divide.toString()+"元"); - wxBillActionMapper.insertSelective(billAction); + List billPropertyList = wxBillPropertyService.findLatePayBill(); + for (WxBillProperty wxBillRent : billPropertyList) { + WxBillAction billAction = new WxBillAction(); + billAction.setId(idWorker.nextId()); + billAction.setUserName("系统端"); + billAction.setAction(EnumBillAction.UPDATE_LATE_PAY_MONEY.getCode()); + billAction.setBillId(wxBillRent.getId()); + BigDecimal divide = new BigDecimal(wxBillRent.getOwe()).multiply(new BigDecimal(wxBillRent.getLatePayRatio())).divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP); + billAction.setDetails("系统计入"+ divide.toString()+"元"); + wxBillActionMapper.insertSelective(billAction); + } + wxBillRentMapper.autoAddLatePayPrice(); + wxBillPropertyMapper.autoAddLatePayPrice(); + logger.info("账单滞纳金更新结束"); + }catch (Exception e){ + logger.error("LatePayBillActionSchedule error! message:{}",e.getMessage()); + logger.error("LatePayBillActionSchedule error!",e); } - - wxBillRentMapper.autoAddLatePayPrice(); - wxBillPropertyMapper.autoAddLatePayPrice(); - logger.info("账单滞纳金更新结束"); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index e968d89c6..525ba492d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -263,7 +263,7 @@ public class WxFlowServiceImpl implements WxFlowService { if(EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) { //作废 wxCoupon.setStatus(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode()); - wxCouponService.saveOrUpdate(wxCoupon); + wxCouponMapper.updateByPrimaryKeySelective(wxCoupon); } } wxCoupon.setApprovalType(operateType);