123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210 |
- package com.gyee.generation.task;
- import com.gyee.common.util.DateUtils;
- import com.gyee.generation.service.*;
- import com.xxl.job.core.context.XxlJobHelper;
- import com.xxl.job.core.handler.annotation.XxlJob;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.stereotype.Component;
- import javax.annotation.Resource;
- /**
- * @ClassName : SaticScheduleTask
- * @Description : 调度
- */
- @Component
- public class SaticScheduleTask {
- private static Logger logger = LoggerFactory.getLogger(SaticScheduleTask.class);
- @Resource
- private GenerationService generationService;
- @Resource
- private StatusService statusService;
- @Resource
- private AverageAndGeneratingService averageAndGeneratingService;
- @Resource
- private RealtimeSpeedPowerService realtimeSpeedPowerService;
- @Resource
- private TheorypowerService theorypowerService;
- @Resource
- private FiveLossesService fiveLossesService;
- @Resource
- private SafetyService safetyService;
- //3.添加定时任务
- /**
- * 电计量实时计算计算(电量,上网,购网,场用)
- * 每15分钟执行一次
- */
- @XxlJob("electricityMetering7001-realtime")
- public void electricityMetering() {
- XxlJobHelper.log("电计量实时调度程序执行开始!........");
- try {
- generationService.saveGenerationDatas();
- } catch (Exception e) {
- e.printStackTrace();
- }
- XxlJobHelper.log("电计量实时调度任务处理完成!........");
- }
- /**
- * 存储meterpointvalue
- * 每10分钟执行一次
- */
- @XxlJob("electricityMetering7001-history1")
- public void history1() {
- XxlJobHelper.log("电计量历史1调度程序执行开始!........");
- String date = DateUtils.toDate1(DateUtils.getCurrentDate());
- try {
- generationService.saveMeterpointValueRealtime(date,date);
- } catch (Exception e) {
- e.printStackTrace();
- }
- XxlJobHelper.log("电计量历史1调度任务处理完成!........");
- }
- /**
- * 存储meterpointvalue(处理每天最后一个值,保证是第二天0点值)
- * 每天0:30执行
- */
- @XxlJob("electricityMetering7001-history2")
- public void history2() {
- XxlJobHelper.log("电计量历史2调度程序执行开始!........");
- String yesterdayStr = DateUtils.getYesterdayStr("yyyy-MM-dd");
- try {
- generationService.saveMeterpointValueRealtime(yesterdayStr,yesterdayStr);
- } catch (Exception e) {
- e.printStackTrace();
- }
- XxlJobHelper.log("电计量历史2调度任务处理完成!........");
- }
- /**
- * 实时状态计算
- * 只执行一次(死循环)
- * 2s
- */
- @XxlJob("status7001-realtime")
- public void status() throws Exception {
- while(true){
- XxlJobHelper.log("实时状态调度程序执行开始!........");
- statusService.calculateStatus();
- statusService.calculateStatusNumber();
- XxlJobHelper.log("实时状态调度程序执行完成!........");
- }
- }
- /**
- * 平均风速,平均功率,scada发电量计算
- * 每10分钟一次
- */
- @XxlJob("averageandGenerating7001-realtime")
- public void averageandGenerating() throws Exception {
- XxlJobHelper.log("平均风速,功率,scada发电量调度程序执行开始!........");
- averageAndGeneratingService.saveAvespeedAndAvepowerAndScada();
- XxlJobHelper.log("平均风速,功率,scada发电量调度程序执行完成!........");
- }
- /**
- * 实时风速功率
- * 只执行一次(死循环)
- * 2s
- */
- @XxlJob("speedAndPower7001-realtime")
- public void speedAndPower() throws Exception {
- while (true){
- XxlJobHelper.log("实时风速,实时功率调度程序执行开始!........");
- realtimeSpeedPowerService.calculateRealtimeSpeedPower();
- XxlJobHelper.log("实时风速,实时功率调度程序执行完成!........");
- }
- }
- /**
- * 拟合功率曲线,存储到数据库中
- * 一个月执行一次
- * @throws Exception
- */
- @XxlJob("fittingpower7001-realtime")
- public void fittingpower() throws Exception {
- XxlJobHelper.log("拟合功率曲线调度程序执行开始!........");
- theorypowerService.fittingPower();
- XxlJobHelper.log("拟合功率曲线调度程序执行完成!........");
- }
- /**
- * 计算理论功率,保证功率
- * 死循环
- * 10min
- * @throws Exception
- */
- @XxlJob("theropower7001-realtime")
- public void theropower() throws Exception {
- while (true){
- XxlJobHelper.log("理论保证功率调度程序执行开始!........");
- theorypowerService.theropower();
- XxlJobHelper.log("理论保证功率调度程序执行完成!........");
- }
- }
- /**
- * 计算损失电量
- * 1小时一次(*:20)
- * 30min
- * @throws Exception
- */
- @XxlJob("losses7001-realtime")
- public void losses() throws Exception {
- XxlJobHelper.log("损失电量调度程序执行开始!........");
- fiveLossesService.lossesReal();
- XxlJobHelper.log("损失电量调度程序执行完成!........");
- }
- /**
- * 安全天数
- * 每日0点
- * @throws Exception
- */
- @XxlJob("safe7001-realtime")
- public void safety() throws Exception {
- XxlJobHelper.log("安全天数调度程序执行开始!........");
- safetyService.safetyReatimel();
- XxlJobHelper.log("安全天数调度程序执行完成!........");
- }
- /**
- * 保存shutdownevent
- * 2分钟执行一次
- */
- @XxlJob("shutdownevent7001-realtime")
- public void shutdownevent(){
- XxlJobHelper.log("故障事件调度程序执行开始!........");
- fiveLossesService.saveShutdownevent();
- XxlJobHelper.log("故障事件调度程序执行完成!........");
- }
- /**
- * 判断整场通讯
- * 2分钟执行一次
- */
- @XxlJob("wpstatus7001-realtime")
- public void wpstatus(){
- XxlJobHelper.log("整场通讯程序执行开始!........");
- statusService.calWpStatus();
- XxlJobHelper.log("整场通讯调度程序执行完成!........");
- }
- }
|