浏览代码

feat: 添加策略生成接口

weijianghai 3 月之前
父节点
当前提交
aa5442af47

+ 125 - 0
readme.md

@@ -212,6 +212,131 @@ curl --location 'http://127.0.0.1:39110/jobs/runJob' \
 }'
 ```
 
+#### 车辆策略
+
+##### 车效大屏建设数据定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_CXDP_JOB"
+}'
+```
+
+##### 高油耗车辆策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_HIGH_FUEL_CONSUMPTION_JOB"
+}'
+```
+
+##### 高修理车辆策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_HIGH_REPAIR_JOB"
+}'
+```
+
+##### 车辆低效占比策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_INEFFICIENCY_PERCENT_JOB"
+}'
+```
+
+##### 车辆低效区县策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_INEFFICIENCY_QX_JOB"
+}'
+```
+
+##### 租赁车辆产生维修费策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_RENTAL_REPAIR_JOB"
+}'
+```
+
+##### 车辆违章未处理策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_VIOLATION_UNPROCESSED_JOB"
+}'
+```
+
+##### 违规车辆策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "CAR_VIOLATION_UNPROCESSED_JOB"
+}'
+```
+
+
+#### 不动产策略
+
+##### 闲置建筑面积超过1000平米策略定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "HOUSE_BUILDING_IDLE_STRATEGY_JOB"
+}'
+```
+
+##### 房产大屏建筑面积统计定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "HOUSE_BUILDING_AREA_STAT_JOB"
+}'
+```
+
+##### 房产大屏建筑和土地数量统计定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "HOUSE_BUILDING_LAND_COUNT_JOB"
+}'
+```
+
+##### 房产大屏出租收入统计定时任务
+
+```shell
+curl --location 'http://127.0.0.1:39110/jobs/runJob' \
+--header 'Content-Type: application/json' \
+--data '{
+    "jobName": "HOUSE_RENTAL_INCOME_JOB"
+}'
+```
+
 #### 车辆报告定时任务
 
 ```shell

+ 48 - 0
src/main/java/com/nokia/finance/tasks/enums/JobEnum.java

@@ -89,5 +89,53 @@ public enum JobEnum {
      * 不动产报告定时任务
      */
     HOUSE_REPORT_JOB,
+    /**
+     * 车效大屏建设数据定时任务
+     */
+    CAR_CXDP_JOB,
+    /**
+     * 高油耗车辆策略定时任务
+     */
+    CAR_HIGH_FUEL_CONSUMPTION_JOB,
+    /**
+     * 高修理车辆策略定时任务
+     */
+    CAR_HIGH_REPAIR_JOB,
+    /**
+     * 车辆低效占比策略定时任务
+     */
+    CAR_INEFFICIENCY_PERCENT_JOB,
+    /**
+     * 车辆低效区县策略定时任务
+     */
+    CAR_INEFFICIENCY_QX_JOB,
+    /**
+     * 租赁车辆产生维修费策略定时任务
+     */
+    CAR_RENTAL_REPAIR_JOB,
+    /**
+     * 车辆违章未处理策略定时任务
+     */
+    CAR_VIOLATION_UNPROCESSED_JOB,
+    /**
+     * 违规车辆策略定时任务
+     */
+    CAR_WDYJ_JOB,
+    /**
+     * 闲置建筑面积超过1000平米策略定时任务
+     */
+    HOUSE_BUILDING_IDLE_STRATEGY_JOB,
+    /**
+     * 房产大屏建筑面积统计定时任务
+     */
+    HOUSE_BUILDING_AREA_STAT_JOB,
+    /**
+     * 房产大屏建筑和土地数量统计定时任务
+     */
+    HOUSE_BUILDING_LAND_COUNT_JOB,
+    /**
+     * 房产大屏出租收入统计定时任务
+     */
+    HOUSE_RENTAL_INCOME_JOB,
     ;
 }

+ 40 - 34
src/main/java/com/nokia/finance/tasks/service/JobService.java

@@ -11,6 +11,7 @@ import com.nokia.finance.tasks.jobs.car.chengben.CarQiTaJob;
 import com.nokia.finance.tasks.jobs.car.chengben.CarRanYouJob;
 import com.nokia.finance.tasks.jobs.car.chengben.CarSiCheGongYongJob;
 import com.nokia.finance.tasks.jobs.car.chengben.CarWeiXiuJob;
+import com.nokia.finance.tasks.jobs.car.cxdp.CarCxdpJob;
 import com.nokia.finance.tasks.jobs.car.ruixing.CarBaoFeiJob;
 import com.nokia.finance.tasks.jobs.car.ruixing.CarBaseDataDayJob;
 import com.nokia.finance.tasks.jobs.car.ruixing.CarLiChengDayJob;
@@ -20,12 +21,27 @@ import com.nokia.finance.tasks.jobs.car.ruixing.CarYongCheJob;
 import com.nokia.finance.tasks.jobs.car.ruixing.CarYueJieJob;
 import com.nokia.finance.tasks.jobs.car.shujucangku.CarFeeBsJob;
 import com.nokia.finance.tasks.jobs.car.shujucangku.CarFeeHbJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarHighFuelConsumptionJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarHighRepairJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarInefficiencyPercentJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarInefficiencyQxJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarRentalRepairJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarViolationUnprocessedJob;
+import com.nokia.finance.tasks.jobs.car.strategy.CarWdyjJob;
 import com.nokia.finance.tasks.jobs.house.HouseReportJob;
 import com.nokia.finance.tasks.jobs.house.chengben.HouseBuildingRepairMonthJob;
 import com.nokia.finance.tasks.jobs.house.chengben.HouseRentInRepairMonthJob;
+import com.nokia.finance.tasks.jobs.house.fcdp.HouseBuildingAreaStatJob;
+import com.nokia.finance.tasks.jobs.house.fcdp.HouseBuildingLandCountJob;
+import com.nokia.finance.tasks.jobs.house.fcdp.HouseRentalIncomeJob;
+import com.nokia.finance.tasks.jobs.house.strategy.HouseBuildingIdleStrategyJob;
 import com.nokia.finance.tasks.pojo.dto.RunJobDto;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 
+@Slf4j
+@RequiredArgsConstructor
 @Service
 public class JobService {
     private final CarBaseDataDayJob carBaseDataDayJob;
@@ -50,39 +66,18 @@ public class JobService {
     private final HouseRentInRepairMonthJob houseRentInRepairMonthJob;
     private final CarReportJob carReportJob;
     private final HouseReportJob houseReportJob;
-
-    public JobService(CarBaseDataDayJob carBaseDataDayJob, CarYueJieJob carYueJieJob, CarBaoFeiJob carBaoFeiJob,
-                      CarLiChengMonthJob carLiChengMonthJob, CarWuDanYongCheJob carWuDanYongCheJob,
-                      CarYongCheJob carYongCheJob, CarRanYouJob carRanYouJob, CarDaWeiXiuJob carDaWeiXiuJob,
-                      CarWeiXiuJob carWeiXiuJob, CarLuQiaoJob carLuQiaoJob, CarBaoXianJob carBaoXianJob,
-                      CarNianJianFeiJob carNianJianFeiJob, CarQiTaJob carQiTaJob, CarFeeHbJob carFeeHbJob,
-                      CarFeeBsJob carFeeBsJob, HouseBuildingRepairMonthJob houseBuildingRepairMonthJob,
-                      CarLiChengDayJob carLiChengDayJob, CarSiCheGongYongJob carSiCheGongYongJob,
-                      CarFuWuFeiJob carFuWuFeiJob, HouseRentInRepairMonthJob houseRentInRepairMonthJob,
-                      CarReportJob carReportJob, HouseReportJob houseReportJob) {
-        this.carBaseDataDayJob = carBaseDataDayJob;
-        this.carYueJieJob = carYueJieJob;
-        this.carBaoFeiJob = carBaoFeiJob;
-        this.carLiChengMonthJob = carLiChengMonthJob;
-        this.carWuDanYongCheJob = carWuDanYongCheJob;
-        this.carYongCheJob = carYongCheJob;
-        this.carRanYouJob = carRanYouJob;
-        this.carDaWeiXiuJob = carDaWeiXiuJob;
-        this.carWeiXiuJob = carWeiXiuJob;
-        this.carLuQiaoJob = carLuQiaoJob;
-        this.carBaoXianJob = carBaoXianJob;
-        this.carNianJianFeiJob = carNianJianFeiJob;
-        this.carQiTaJob = carQiTaJob;
-        this.carFeeHbJob = carFeeHbJob;
-        this.carFeeBsJob = carFeeBsJob;
-        this.houseBuildingRepairMonthJob = houseBuildingRepairMonthJob;
-        this.carLiChengDayJob = carLiChengDayJob;
-        this.carSiCheGongYongJob = carSiCheGongYongJob;
-        this.carFuWuFeiJob = carFuWuFeiJob;
-        this.houseRentInRepairMonthJob = houseRentInRepairMonthJob;
-        this.carReportJob = carReportJob;
-        this.houseReportJob = houseReportJob;
-    }
+    private final CarCxdpJob carCxdpJob;
+    private final CarHighFuelConsumptionJob carHighFuelConsumptionJob;
+    private final CarHighRepairJob carHighRepairJob;
+    private final CarInefficiencyPercentJob carInefficiencyPercentJob;
+    private final CarInefficiencyQxJob carInefficiencyQxJob;
+    private final CarRentalRepairJob carRentalRepairJob;
+    private final CarViolationUnprocessedJob carViolationUnprocessedJob;
+    private final CarWdyjJob carWdyjJob;
+    private final HouseBuildingIdleStrategyJob houseBuildingIdleStrategyJob;
+    private final HouseBuildingAreaStatJob houseBuildingAreaStatJob;
+    private final HouseBuildingLandCountJob houseBuildingLandCountJob;
+    private final HouseRentalIncomeJob houseRentalIncomeJob;
 
     public R<Object> runJob(RunJobDto dto) {
         switch (dto.getJobName()) {
@@ -108,7 +103,18 @@ public class JobService {
             case HOUSE_RENT_IN_REPAIR_MONTH_JOB -> houseRentInRepairMonthJob.runJob();
             case CAR_REPORT_JOB -> carReportJob.runJob();
             case HOUSE_REPORT_JOB -> houseReportJob.runJob();
-            default -> {}
+            case CAR_CXDP_JOB -> carCxdpJob.runJob();
+            case CAR_HIGH_FUEL_CONSUMPTION_JOB -> carHighFuelConsumptionJob.runJob();
+            case CAR_HIGH_REPAIR_JOB -> carHighRepairJob.runJob();
+            case CAR_INEFFICIENCY_PERCENT_JOB -> carInefficiencyPercentJob.runJob();
+            case CAR_INEFFICIENCY_QX_JOB -> carInefficiencyQxJob.runJob();
+            case CAR_RENTAL_REPAIR_JOB -> carRentalRepairJob.runJob();
+            case CAR_VIOLATION_UNPROCESSED_JOB -> carViolationUnprocessedJob.runJob();
+            case CAR_WDYJ_JOB -> carWdyjJob.runJob();
+            case HOUSE_BUILDING_IDLE_STRATEGY_JOB -> houseBuildingIdleStrategyJob.runJob();
+            case HOUSE_BUILDING_AREA_STAT_JOB -> houseBuildingAreaStatJob.runJob();
+            case HOUSE_BUILDING_LAND_COUNT_JOB -> houseBuildingLandCountJob.runJob();
+            case HOUSE_RENTAL_INCOME_JOB -> houseRentalIncomeJob.runJob();
         }
         return R.ok();
     }