无关风月
2024-10-23 ee2bf95f3472a4179ee0fc7c8e4e2a35e1214bc8
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/util/task/TaskUtil.java
@@ -44,9 +44,14 @@
        System.err.println(string);
    }
    // 每月2号凌晨12点执行的定时任务
    @Scheduled(cron = "0 0 0 2 * ?")
//    @Scheduled(cron = "0 0 0 2 * ?")
    // 每天凌晨12点执行的定时任务
@Scheduled(cron = "0 0 12 1 * ?")
    public void taskMonth() {
        try {
            System.err.println("执行定时任务生成账单");
            // 获取上个月的开始和结束日期
            LocalDate firstDayOfLastMonth = LocalDate.now().minusMonths(1).
                    withDayOfMonth(2);
@@ -60,8 +65,9 @@
            String randomDigits = random.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
                    .mapToObj(String::valueOf)
                    .collect(Collectors.joining()); // 将其连接成一个字符串
            tChargingBill.setCode("JSD"+string+randomDigits+"001" );
            tChargingBill.setCode("JSD"+string+randomDigits );
            tChargingBill.setType(1);
            tChargingBill.setSiteId(0);
            tChargingBill.setBillTime(LocalDateTime.now());
            tChargingBill.setStatus(1);
            tChargingBill.setOrderState(2);
@@ -69,13 +75,13 @@
            // 每月二号给每个站点生成上月账单
            List<Integer> collect = siteClient.getSiteAll().getData().stream().map(Site::getId).collect(Collectors.toList());
            List<TChargingBill> tChargingBills = new ArrayList<>();
            for (int i = 1; i <= collect.size(); i++) {
            for (int i = 0; i < collect.size(); i++) {
                TChargingBill tChargingBill1 = new TChargingBill();
                Random random1 = new Random();
                String randomDigits1 = random1.ints(10, 0, 10) // 生成10个随机数字,范围在0-9
                        .mapToObj(String::valueOf)
                        .collect(Collectors.joining()); // 将其连接成一个字符串
                tChargingBill1.setCode("JSD"+string+randomDigits1+i );
                tChargingBill1.setCode("JSD"+string+randomDigits1+(i+1) );
                tChargingBill1.setType(2);
                tChargingBill1.setSiteId(collect.get(i));
                tChargingBill1.setBillTime(LocalDateTime.now());
@@ -83,6 +89,7 @@
                tChargingBill1.setOrderState(2);
                tChargingBills.add(tChargingBill1);
            }
            System.err.println("列表"+tChargingBills);
            if (!tChargingBills.isEmpty())chargingBillService.saveBatch(tChargingBills);
        } catch (Exception e) {
@@ -90,7 +97,7 @@
        }
    }
    // 每个月最后一天23点执行的定时任务
    @Scheduled(cron = "0 0 23 L * ?")
    @Scheduled(cron = "0 0 12 1 * ?")
    public void taskLastDay() {
        try {
            // 获取上个月的开始和结束日期