package com.ruoyi.web.task; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.system.dto.TBillDto; import com.ruoyi.system.model.TBill; import com.ruoyi.system.model.TContract; import com.ruoyi.system.query.TBillQuery; import com.ruoyi.system.query.TContractQuery; import com.ruoyi.system.service.TBillService; import com.ruoyi.system.service.TContractService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Calendar; import java.util.Collections; import java.util.Date; @Slf4j @Component("billTask") public class TbillTask { @Autowired TBillService tBillService; @Autowired TContractService tContractService; /** * 判断账单是否到期 */ public void checkBillOverdue(){ try { int index = 1; int rows = 20; long pages = 0; TBillQuery query = new TBillQuery(); query.setPageSize(rows); //查询未缴费的 query.setPayFeesStatus(1); Calendar c = Calendar.getInstance(); Date time = c.getTime(); do { query.setPageNum(index); PageInfo pageinfo = tBillService.queryPage(query); if (pages==0){ pages = pageinfo.getPages(); } if (pageinfo.getRecords()!=null && pageinfo.getRecords().size()>0){ pageinfo.getRecords().forEach(tBill -> { //todo 生成账单 }); } index++; }while (index<=pages); }catch (Exception e){ log.error(""); } } /** * 计算违约金 */ public void caculatePenaltyFee(){ try { int index = 1; int rows = 20; long pages = 0; TBillQuery query = new TBillQuery(); query.setPageSize(rows); //查询已逾期的 query.setPayFeesStatus(4); Calendar c = Calendar.getInstance(); Date time = c.getTime(); do { query.setPageNum(index); PageInfo pageinfo = tBillService.queryPage(query); if (pages==0){ pages = pageinfo.getPages(); } if (pageinfo.getRecords()!=null && pageinfo.getRecords().size()>0){ pageinfo.getRecords().forEach(tContract -> { //todo 生成账单 }); } index++; }while (index<=pages); }catch (Exception e){ log.error(""); } } }