调度任务

This commit is contained in:
2022-11-01 20:35:19 +08:00
parent 33c9d309c7
commit 8576dcd5aa
10 changed files with 361 additions and 1 deletions

View File

@@ -25,6 +25,8 @@ public enum ServerEnum {
USER("user-boot", "用户服务模块"), USER("user-boot", "用户服务模块"),
ENERGY("energy-boot", "用能服务模块"), ENERGY("energy-boot", "用能服务模块"),
QUALITY("quality-boot", "电能质量服务模块"), QUALITY("quality-boot", "电能质量服务模块"),
EVENT_PREPARE("event-prepare","暂态模块预处理"),
HARMONIC_PREPARE("harmonic-prepare","谐波模块预处理"),
COMMON("pqs-common", "通用服务模块"); COMMON("pqs-common", "通用服务模块");
private final String name; private final String name;

View File

@@ -0,0 +1,25 @@
package com.njcn.executor.handler;
import com.njcn.prepare.harmonic.api.line.NormalLimitFeignClient;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
/**
* pqs
* 告警异常
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmAlarmDetailJob {
private final NormalLimitFeignClient normalLimitFeignClient;
@XxlJob("harmAlarmDetailJob")
public void harmAlarmDetailJob(){
normalLimitFeignClient.getNormLimitData();
}
}

View File

@@ -0,0 +1,82 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.DateUtil;
import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.prepare.harmonic.api.line.CoustmReportFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
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;
import java.util.Date;
/**
* pqs
* 稳态自定义监测点报告定时调度任务
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmCustomReportJob {
private final CoustmReportFeignClient coustmReportFeignClient;
@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";
lineParam.setDataDate(date);
coustmReportFeignClient.batchReport(lineParam);
long b = System.currentTimeMillis();
System.out.println("时间"+(b-a)/1000);
}
}

View File

@@ -0,0 +1,52 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.prepare.harmonic.api.line.DayDataFeignClient;
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;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
/**
* pqs
* 稳态自定义监测点报告定时调度任务
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmDateToDayJob {
private final DayDataFeignClient dayDataFeignClient;
@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";
LimitRateHanlderParam limitRateHanlderParam = new LimitRateHanlderParam();
limitRateHanlderParam.setStartTime(startTime);
limitRateHanlderParam.setEndTime(endTime);
dayDataFeignClient.dayDataHanlder(limitRateHanlderParam);
long b = System.currentTimeMillis();
log.info("时间"+endTime+"执行时间"+(b-a)/1000+"\n");
}
}

View File

@@ -0,0 +1,42 @@
package com.njcn.executor.handler;
import com.njcn.prepare.harmonic.api.line.IntegrityFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
/**
* pqs
* 稳态自定义监测点报告定时调度任务
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmIntegrityJob {
private final IntegrityFeignClient integrityFeignClient;
@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);
integrityFeignClient.computeDataIntegrity(lineParam);
}
}

View File

@@ -0,0 +1,43 @@
package com.njcn.executor.handler;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.prepare.harmonic.api.line.LimitrateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LimitRateHanlderParam;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
* pqs
* 每日监测点超标次数
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmLimitRateJob {
private final LimitrateFeignClient limitrateFeignClient;
@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);
}
}

View File

@@ -0,0 +1,37 @@
package com.njcn.executor.handler;
import com.njcn.prepare.harmonic.api.line.LimitTargetFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
/**
* pqs
* 每日监测点是否超标
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmLimitTargetJob {
private final LimitTargetFeignClient limitTargetFeignClient;
@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.setDataDate("2022-10-27");
limitTargetFeignClient.getLimitTargetData(lineParam);
}
}

View File

@@ -0,0 +1,30 @@
package com.njcn.executor.handler;
import com.njcn.prepare.harmonic.api.line.OnlineRateFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
/**
* pqs
* 稳态自定义监测点报告定时调度任务
* @author cdf
* @date 2022/10/24
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmOnlineRateJob {
private final OnlineRateFeignClient onlineRateFeignClient;
@XxlJob("harmOnlineRateJob")
public void harmOnlineRateJob(){
LineParam lineParam = new LineParam();
lineParam.setType(5);
onlineRateFeignClient.getOnlineRateData(lineParam);
}
}

View File

@@ -0,0 +1,47 @@
package com.njcn.executor.handler;
import com.njcn.prepare.harmonic.api.line.PollutionFeignClient;
import com.njcn.prepare.harmonic.pojo.param.LineParam;
import com.xxl.job.core.context.XxlJobHelper;
import com.xxl.job.core.handler.annotation.XxlJob;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
/**
* 污区数据
*/
@Slf4j
@Component
@RequiredArgsConstructor
public class HarmPollutionJob {
private final PollutionFeignClient pollutionFeignClient;
@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"));
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

@@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.prepare.harmonic.mapper.line.ExcelRptTempMapper"> <mapper namespace="com.njcn.prepare.harmonic.mapper.line.ExcelRptTempMapper">
<select id="getActiveTempList" resultType="ExcelRptTemp"> <select id="getActiveTempList" resultType="com.njcn.prepare.harmonic.pojo.po.ExcelRptTemp">
SELECT SELECT
DISTINCT t1.* DISTINCT t1.*
FROM FROM