调度任务

This commit is contained in:
2022-11-02 14:14:49 +08:00
parent d5f7ff80d4
commit c53cd9b2dc
22 changed files with 607 additions and 588 deletions

View File

@@ -1,8 +1,7 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.DateUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.CoustmReportFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
@@ -12,10 +11,6 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;
/**
* pqs
@@ -33,41 +28,13 @@ public class HarmCustomReportJob {
@XxlJob("harmCustomReportHandler")
public void harmCustomReportHandler(){
long a = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String command = XxlJobHelper.getJobParam();
LineParam lineParam = new LineParam();
lineParam.setType(Integer.valueOf(command));
String date = null;
if(command.equals(BizParamConstant.STAT_BIZ_YEAR)){
//年
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.YEAR,-1);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
} else if(command.equals(BizParamConstant.STAT_BIZ_MONTH)){
//月
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH,-1);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
}else if(command.equals(BizParamConstant.STAT_BIZ_QUARTER)){
//季度
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.MONTH,-3);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
}else if(command.equals(BizParamConstant.STAT_BIZ_WEEK)){
//周
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.WEEK_OF_MONTH,-1);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
}else if(command.equals(BizParamConstant.STAT_BIZ_DAY)){
//天
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_MONTH,-1);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
}
//date = "2022-10-27";
String date = CommonExecutorUtils.prepareTimeDeal(command);
//date = "2022-10-26";
lineParam.setDataDate(date);
coustmReportFeignClient.batchReport(lineParam);
long b = System.currentTimeMillis();

View File

@@ -3,6 +3,8 @@ package com.njcn.executor.handler;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.DayDataFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LimitRateHanlderParam;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
@@ -32,21 +34,14 @@ public class HarmDateToDayJob {
@XxlJob("harmDateToDayJob")
public void harmDateToDayJob(){
long a = System.currentTimeMillis();
LocalDateTime localDateTime = LocalDateTime.now().minusDays(1);
String startTime = LocalDateTimeUtil.beginOfDay(localDateTime).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String endTime = LocalDateTimeUtil.endOfDay(localDateTime).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//下面两行测试数据部署需删除
//startTime = "2022-10-27 00:00:00";
//endTime = "2022-10-27 23:59:59";
LineParam lineParam = new LineParam();
lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
lineParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
LimitRateHanlderParam limitRateHanlderParam = new LimitRateHanlderParam();
limitRateHanlderParam.setStartTime(startTime);
limitRateHanlderParam.setEndTime(endTime);
dayDataFeignClient.dayDataHanlder(limitRateHanlderParam);
long b = System.currentTimeMillis();
log.info("时间"+endTime+"执行时间"+(b-a)/1000+"\n");
//下面测试数据部署需删除
//lineParam.setDataDate("2022-10-27");
dayDataFeignClient.dayDataHanlder(lineParam);
}
}

View File

@@ -1,5 +1,7 @@
package com.njcn.executor.handler;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.IntegrityFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
@@ -26,16 +28,9 @@ public class HarmIntegrityJob {
@XxlJob("harmIntegrityJob")
public void harmIntegrityJob(){
LineParam lineParam = new LineParam();
lineParam.setType(5);
String date = LocalDate.now().minusDays(1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
//date = "2022-10-28";
lineParam.setDataDate(date);
lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
lineParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
integrityFeignClient.computeDataIntegrity(lineParam);
}

View File

@@ -1,8 +1,11 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.LimitrateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LimitRateHanlderParam;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -26,18 +29,15 @@ public class HarmLimitRateJob {
@XxlJob("harmLimitRateJob")
public void harmLimitRateJob(){
LocalDateTime localDateTime = LocalDateTime.now().minusDays(1);
String startTime = LocalDateTimeUtil.beginOfDay(localDateTime).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String endTime = LocalDateTimeUtil.endOfDay(localDateTime).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//下面两行测试数据部署需删除
//startTime = "2022-10-27 00:00:00";
//endTime = "2022-10-27 23:59:59";
LimitRateHanlderParam limitRateHanlderParam = new LimitRateHanlderParam();
limitRateHanlderParam.setStartTime(startTime);
limitRateHanlderParam.setEndTime(endTime);
limitrateFeignClient.limitRateHanlder(limitRateHanlderParam);
LineParam lineParam = new LineParam();
lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
lineParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
//下面测试数据部署需删除
//lineParam.setDataDate("2022-10-26");
limitrateFeignClient.limitRateHanlder(lineParam);
}
}

View File

@@ -1,5 +1,7 @@
package com.njcn.executor.handler;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.LimitTargetFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.handler.annotation.XxlJob;
@@ -25,10 +27,9 @@ public class HarmLimitTargetJob {
@XxlJob("harmLimitTargetJob")
public void harmLimitTargetJob(){
String date = LocalDate.now().minusDays(1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
LineParam lineParam = new LineParam();
lineParam.setType(5);
lineParam.setDataDate(date);
lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
lineParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
//lineParam.setDataDate("2022-10-27");
limitTargetFeignClient.getLimitTargetData(lineParam);

View File

@@ -1,5 +1,7 @@
package com.njcn.executor.handler;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.OnlineRateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.handler.annotation.XxlJob;
@@ -23,7 +25,8 @@ public class HarmOnlineRateJob {
@XxlJob("harmOnlineRateJob")
public void harmOnlineRateJob(){
LineParam lineParam = new LineParam();
lineParam.setType(5);
lineParam.setType(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY));
lineParam.setDataDate(CommonExecutorUtils.prepareTimeDeal(BizParamConstant.STAT_BIZ_DAY));
onlineRateFeignClient.getOnlineRateData(lineParam);
}

View File

@@ -1,5 +1,8 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.DateUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.executor.utils.CommonExecutorUtils;
import com.njcn.prepare.harmonic.api.line.PollutionFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
@@ -8,8 +11,10 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
/**
* 污区数据
@@ -23,25 +28,17 @@ public class HarmPollutionJob {
@XxlJob("harmPollutionJob")
public void harmPollutionJob(){
long a = System.currentTimeMillis();
String command = XxlJobHelper.getJobParam();
LineParam lineParam = new LineParam();
lineParam.setType(Integer.valueOf(command));
String date = LocalDate.now().minusDays(1).format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
String date = CommonExecutorUtils.prepareTimeDeal(command);
log.info("执行日期harmPollutionJob。。。。。。。。。。"+date);
/**
* 测试数据部署时注释
*/
//测试数据部署时注释
//date = "2022-10-21";
lineParam.setDataDate(date);
pollutionFeignClient.processPollutionData(lineParam);
long b = System.currentTimeMillis();
log.info("+++++++++++harmPollutionJob执行总时间+++++++++++++++"+(b-a)/1000);
}
}

View File

@@ -0,0 +1,59 @@
package com.njcn.executor.utils;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import lombok.extern.slf4j.Slf4j;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.Calendar;
/**
* pqs
*
* @author cdf
* @date 2022/11/2
*/
@Slf4j
public class CommonExecutorUtils {
public static String prepareTimeDeal(String command){
if(StrUtil.isBlank(command)){
log.error(LocalDateTime.now()+"xxl调度任务参数未设置");
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = null;
Calendar calendar = Calendar.getInstance();
switch (command){
case BizParamConstant.STAT_BIZ_YEAR :
calendar.add(Calendar.YEAR,-1);
date = sdf.format(DateUtil.beginOfYear(calendar.getTime()));
break;
case BizParamConstant.STAT_BIZ_MONTH:
//月
date = sdf.format(DateUtil.beginOfMonth(DateUtil.lastMonth()));
break;
case BizParamConstant.STAT_BIZ_QUARTER:
//季度
calendar.add(Calendar.MONTH,-3);
date = sdf.format(DateUtil.beginOfQuarter(calendar.getTime()));
break;
case BizParamConstant.STAT_BIZ_WEEK:
calendar.add(Calendar.WEEK_OF_MONTH,-1);
date = sdf.format(DateUtil.beginOfWeek(calendar.getTime()));
break;
case BizParamConstant.STAT_BIZ_DAY:
calendar.add(Calendar.DAY_OF_MONTH,-1);
date = sdf.format(DateUtil.beginOfDay(calendar.getTime()));
break;
default:
throw new IllegalStateException("Unexpected value: " + command);
}
return date;
}
}