diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillActionController.java b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillActionController.java index 9ab90c6c4..312a1e8c3 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillActionController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillActionController.java @@ -5,9 +5,7 @@ import com.iformall.annotation.SystemControllerLog; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; import com.iformall.domain.po.*; -import com.iformall.enums.EnumBillTypeParam; import com.iformall.service.*; -import com.iformall.utils.DateUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -15,18 +13,11 @@ import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; -import org.apache.commons.collections.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; -import java.util.List; - /** * @author gongbiao */ @@ -39,15 +30,8 @@ public class WxBillActionController extends BaseController { @Autowired private WxBillActionService wxBillActionService; - @Autowired - private WxRentContractService wxRentContractService; - @Autowired - private WxPropertyContractService wxPropertyContractService; - @Autowired - private WxBillRentService wxBillRentService; - @Autowired - private WxBillPropertyService wxBillPropertyService; + @ApiOperation("账单操作记录列表") @GetMapping("list") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), @@ -63,61 +47,4 @@ public class WxBillActionController extends BaseController { PageInfo result = wxBillActionService.listAsPage(wxBillAction, pageNum, pageSize); return new ResultData(result); } - - public void addSysLatePayBillAction(WxBillAction wxBillAction){ - - } - - @ApiOperation("滞纳金变更列表") - @GetMapping("latePaylist") - @SystemControllerLog(description = "账单操作记录-滞纳金列表") - public ResultData latePaylist(@ModelAttribute WxBillAction wxBillAction, Integer pageNum, Integer pageSize) { - logger.debug("[" + getIpAddr() + "] WxBillActionController::latePaylist"); - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); - if (null == wxBillAction) { - wxBillAction = new WxBillAction(); - } - Date frontDay = DateUtils.getDaySet(new Date(), Calendar.DATE,-1); - wxBillAction.setBillId(wxBillAction.getBillId()); - wxBillAction.setStartDate(sdf.format(frontDay)); - wxBillAction.setEndDate(sdf.format(frontDay)+" 23:59:59"); - List billActionList = wxBillActionService.find(wxBillAction); - if(CollectionUtils.isEmpty(billActionList)){ - - } - - wxBillAction.setTenantId(getTenantId()); - wxBillAction.setSortColumns(BaseEntity.SortField.Id_DESC); - PageInfo result = wxBillActionService.listAsPage(wxBillAction, pageNum, pageSize); - if(result != null && CollectionUtils.isNotEmpty(result.getList())){ - - - Date startDate; - Date endDate = DateUtils.getDaySet(new Date(), Calendar.DATE,-1);; - - if (EnumBillTypeParam.RENT.getCode().equals(result.getList().get(0).getBillType())) { - WxBillRent billRent = new WxBillRent(); - billRent.setId(wxBillAction.getBillId()); - WxRentContract rentContract = wxRentContractService.getByBill(billRent); - WxBillRent wxBillRent = wxBillRentService.getById(wxBillAction.getBillId()); - startDate = DateUtils.getDaySet(wxBillRent.getReceiveDate(), Calendar.DATE,rentContract.getLatePayDay()); - }else if (EnumBillTypeParam.PROPERTY.getCode().equals(result.getList().get(0).getBillType())) { - WxBillProperty billRent = new WxBillProperty(); - billRent.setId(wxBillAction.getBillId()); - WxPropertyContract propertyContract = wxPropertyContractService.getByBill(billRent); - WxBillProperty wxBillProperty = wxBillPropertyService.getById(wxBillAction.getBillId()); - startDate = DateUtils.getDaySet(wxBillProperty.getReceiveDate(), Calendar.DATE,propertyContract.getLatePayDay()); - } - - Date curr = endDate; - for (WxBillAction action:result.getList()) { - if(sdf.format(curr).equals(action.getCreatetime())){ - continue; - } - - } - } - return new ResultData(result); - } - } \ No newline at end of file diff --git a/mallinkAdmin/src/main/resources/db/migration/V201907291424__L_ALTER_BILL.sql b/mallinkAdmin/src/main/resources/db/migration/V201907291424__L_ALTER_BILL.sql deleted file mode 100644 index 4e7112cc4..000000000 --- a/mallinkAdmin/src/main/resources/db/migration/V201907291424__L_ALTER_BILL.sql +++ /dev/null @@ -1,2 +0,0 @@ -ALTER TABLE `wx_bill_action` -ADD COLUMN `bill_type` INT(2) NULL DEFAULT 0 COMMENT '账单类型'; diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java new file mode 100644 index 000000000..5e1e220df --- /dev/null +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/LatePayBillActionSchedule.java @@ -0,0 +1,48 @@ +package com.iformall.schedule; + +import com.iformall.domain.po.WxMall; +import com.iformall.domain.vo.WxBillAll; +import com.iformall.mapper.WxMallMapper; +import com.iformall.service.WxBillAllService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author luozukai + */ +@Component +public class LatePayBillActionSchedule { + + private final Logger logger = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private WxBillAllService wxBillAllService; + + @Autowired + private WxMallMapper wxMallMapper; + + /** + * 每天1点执行 + */ + @Scheduled(cron = "0 0 1 * * ?") + public void updateBillStatus() { + logger.info("账单状态更新开始"); + + List wxMalls = wxMallMapper.findList(null); + for (WxMall wxMall : wxMalls) { + String tenantId = wxMall.getTenantId(); + WxBillAll wxBillAll = new WxBillAll(); + wxBillAll.setTenantId(tenantId); + wxBillAllService.updateBillStatus(wxBillAll); + } + + logger.info("账单状态更新结束"); + } + + +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxBillAction.java b/mallinkService/src/main/java/com/iformall/domain/po/WxBillAction.java index d9d9ee694..af0da6520 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxBillAction.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxBillAction.java @@ -23,7 +23,6 @@ public class WxBillAction extends BaseEntity { @Transient protected List ids; - @io.swagger.annotations.ApiModelProperty(value = "租户ID", name = "tenantId") private String tenantId; @@ -54,9 +53,6 @@ public class WxBillAction extends BaseEntity { @io.swagger.annotations.ApiModelProperty(value = "付款时间", name = "payDate") private Date payDate; - @io.swagger.annotations.ApiModelProperty(value = "账单类型", name = "billType") - private Integer billType; - @Transient private Long oldPrice; diff --git a/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java b/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java index fd90c1803..d88478445 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxBillAllService.java @@ -58,7 +58,7 @@ public interface WxBillAllService { ResultData updateReceivePay(WxBillAll wxBillAll, MallUserInfo user); - void addBillAction(EnumBillAction billAction, Long billId, Long oldPrice, Long newPrice, MallUserInfo mallUserInfo,Integer billType); + void addBillAction(EnumBillAction billAction, Long billId, Long oldPrice, Long newPrice, MallUserInfo mallUserInfo); void exportTemplate(WxBillExcelTemplate wxBillExcelTemplate, HttpServletRequest request, HttpServletResponse response); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillActionServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillActionServiceImpl.java index 6c99a563f..1e0b0fb6b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillActionServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillActionServiceImpl.java @@ -63,7 +63,6 @@ public class WxBillActionServiceImpl implements WxBillActionService { Date date = new Date(); wxBillAction.setCreatetime(date); wxBillAction.setUpdatetime(date); - wxBillAction.setBillType(action.getBillType()); return wxBillActionMapper.insertSelective(wxBillAction); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index 3cc813bd8..18986d3f7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -784,7 +784,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { if(oldLatePrice != null){ wxBillRent.setLatePayPrice(newLatePrice); wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); - addBillAction(EnumBillAction.UPDATE_LATE_PAY_MONEY,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_LATE_PAY_MONEY,id, oldPrice, newPrice, user); }else{ //租赁账单更新 wxBillRent.setReceivePay(newPrice); @@ -794,7 +794,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { } wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } } else if (billType.equals(EnumBillTypeParam.RENT_DEPOSIT.getCode())) { WxBillDeposit dbBill = wxBillDepositMapper.selectByPrimaryKey(id); @@ -809,7 +809,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { wxBillDeposit.setUpdatetime(updateDate); wxBillDepositMapper.updateByPrimaryKeySelective(wxBillDeposit); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.PROPERTY.getCode())) { WxBillProperty dbBill = wxBillPropertyMapper.selectByPrimaryKey(id); //物业账单更新 @@ -819,7 +819,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { if(oldLatePrice != null){ wxBillProperty.setLatePayPrice(newLatePrice); wxBillPropertyMapper.updateByPrimaryKeySelective(wxBillProperty); - addBillAction(EnumBillAction.UPDATE_LATE_PAY_MONEY,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_LATE_PAY_MONEY,id, oldPrice, newPrice, user); }else{ wxBillProperty.setReceivePay(newPrice); wxBillProperty.setOwe(newPrice - dbBill.getPay()); @@ -828,7 +828,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { } wxBillPropertyMapper.updateByPrimaryKeySelective(wxBillProperty); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } } else if (billType.equals(EnumBillTypeParam.PROPERTY_DEPOSIT.getCode())) { WxBillPropertyDeposit dbBill = wxBillPropertyDepositMapper.selectByPrimaryKey(id); @@ -843,22 +843,22 @@ public class WxBillAllServiceImpl implements WxBillAllService { wxBillPropertyDeposit.setUpdatetime(updateDate); wxBillPropertyDepositMapper.updateByPrimaryKeySelective(wxBillPropertyDeposit); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.WATER.getCode())) { //水费账单更新 updateDailyBill(id, newPrice, updateDate); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.POWER.getCode())) { //电费账单更新 updateDailyBill(id, newPrice, updateDate); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.AIR_CONDITIONING.getCode())) { //空调费账单更新 updateDailyBill(id, newPrice, updateDate); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.ROUTINE.getCode())) { WxBillOther dbBill = wxBillOtherMapper.selectByPrimaryKey(id); //其他费用账单更新 @@ -872,7 +872,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { wxBillOther.setUpdatetime(updateDate); wxBillOtherMapper.updateByPrimaryKeySelective(wxBillOther); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else if (billType.equals(EnumBillTypeParam.ATHER_DEPOSIT.getCode())) { WxBillOtherDeposit dbBill = wxBillOtherDepositMapper.selectByPrimaryKey(id); //其他押金账单更新 @@ -886,7 +886,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { wxBillOtherDeposit.setUpdatetime(updateDate); wxBillOtherDepositMapper.updateByPrimaryKeySelective(wxBillOtherDeposit); //账单日志 - addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user,billType); + addBillAction(EnumBillAction.UPDATE_BILL,id, oldPrice, newPrice, user); } else { logger.info("未找到账单类型"); } @@ -894,14 +894,13 @@ public class WxBillAllServiceImpl implements WxBillAllService { } @Override - public void addBillAction(EnumBillAction billAction,Long billId, Long oldPrice, Long newPrice, MallUserInfo mallUserInfo,Integer billType) { + public void addBillAction(EnumBillAction billAction,Long billId, Long oldPrice, Long newPrice, MallUserInfo mallUserInfo) { WxBillAction wxBillAction = new WxBillAction(); wxBillAction.setBillId(billId); String oldPriceStr = new BigDecimal(oldPrice).divide(new BigDecimal(100)).toPlainString(); String newPriceStr = new BigDecimal(newPrice).divide(new BigDecimal(100)).toPlainString(); wxBillAction.setDetails(oldPriceStr + "元变更成" + newPriceStr + "元"); wxBillAction.setAction(billAction.getCode()); - wxBillAction.setBillType(billType); wxBillActionService.modifyBill(wxBillAction, mallUserInfo); } diff --git a/mallinkService/src/main/resources/mapper/WxBillActionMapper.xml b/mallinkService/src/main/resources/mapper/WxBillActionMapper.xml index 973e1b91c..666f68f91 100644 --- a/mallinkService/src/main/resources/mapper/WxBillActionMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBillActionMapper.xml @@ -13,11 +13,10 @@ - - `id`,`tenant_id`,`bill_id`,`user_id`,`user_name`,`phone`,`action`,`details`,`createtime`,`updatetime`,`pay_date`,bill_type + `id`,`tenant_id`,`bill_id`,`user_id`,`user_name`,`phone`,`action`,`details`,`createtime`,`updatetime`,`pay_date`