package project.loan.job; import java.util.Date; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.util.CollectionUtils; import kernel.web.Page; import project.loan.LoanOrder; import project.loan.LoanOrderService; /** * 质押借币 利息JOB * */ public class LoanInterestJob { private Logger logger = LoggerFactory.getLogger(LoanInterestJob.class); private LoanOrderService loanOrderService; public void taskJob() { try { int pageNo = 1; int pageSize = 300; // 小于当前时间,新增的订单都不查 Date date = new Date(); while (true) { Page page = loanOrderService.pagedQueryInterestOrder(pageNo, pageSize, date); List orders = page.getElements(); // 分页没数据时表示已经计算结束 if (CollectionUtils.isEmpty(orders)) { break; } try { loanOrderService.updateInterest(orders); } catch (Throwable e) { logger.error("error:", e); } logger.info("loan interest finished, count:" + orders.size()); pageNo++; } } catch (Throwable e) { logger.error("PledgeGalaxyOrderProfit run fail", e); } } public void setLoanOrderService(LoanOrderService loanOrderService) { this.loanOrderService = loanOrderService; } }