| @@ -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<WxBillRent> 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<WxBillProperty> 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<WxBillRent> 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<WxBillProperty> 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(); | |||
| } | |||
| @@ -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; | |||
| } | |||
| } | |||
| @@ -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<WxBillRent> 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<WxBillRent> 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<WxBillProperty> 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<WxBillProperty> 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("账单滞纳金更新结束"); | |||
| } | |||
| @@ -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); | |||