Commit a8eb4f72 authored by ZWT's avatar ZWT

feat(能源管理系统): 间开优化定时任务

1.开发间开优化长期间开优化定时任务,了解长期并网型流程算法;
2.定时任务模块新增CRON常量类,定义常用表达式;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 1114d68f
package pps.core.task.constant;
/**
* cron配置
*
* @author ZWT
* @date 2023/09/13 14:29
*/
public class CronConstant {
/**
* 每月第一天 0点
*/
public static final String FIRST_DAY_OF_THE_MONTH = "0 0 0 1 * ?";
/**
* 每周一 0点
*/
public static final String EVERY_MONDAY = "0 0 0 ? * 2";
}
package pps.core.task.job;
import pps.cloud.space.service.ISpaceOptimizeLongCloudService;
import pps.core.task.constant.CronConstant;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.data.XServiceResult;
import xstartup.service.job.XJob;
import xstartup.service.job.annotation.XCronTrigger;
/**
* 长期间开优化定时任务
*
* @author ZWT
* @date 2023/09/13 13:59
*/
@XText("长期间开优化定时任务")
@XService
public class SpaceOptimizeLongJob implements XJob {
/**
* 每月一日执行
*
* @param xContext x上下文
* @return {@link XServiceResult}
*/
@XCronTrigger(value = CronConstant.FIRST_DAY_OF_THE_MONTH)
@Override
public XServiceResult execute(XContext xContext) {
ISpaceOptimizeLongCloudService service = xContext.getBean(ISpaceOptimizeLongCloudService.class);
XServiceResult result = service.optimizeLongJob(xContext);
result.throwIfFail();
return XServiceResult.OK;
}
}
\ No newline at end of file
package pps.cloud.space.service;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.data.XServiceResult;
/**
* 长期间开优化模块
*
* @author ZWT
* @date 2023/09/13 14:03
*/
@XService
@XText("长期间开优化模块")
public interface ISpaceOptimizeLongCloudService {
/**
* 长期间开优化--定时任务
*
* @param context 上下文
* @return {@link XServiceResult}
*/
@XText("长期间开优化--定时任务")
XServiceResult optimizeLongJob(XContext context);
}
\ No newline at end of file
...@@ -11,7 +11,7 @@ import xstartup.base.XContext; ...@@ -11,7 +11,7 @@ import xstartup.base.XContext;
import xstartup.data.XSingleResult; import xstartup.data.XSingleResult;
/** /**
* 基础间开配置模块 * 基础间开配置Cloud模块
* *
* @author ZWT * @author ZWT
* @date 2023/09/06 17:09 * @date 2023/09/06 17:09
......
package pps.core.space.service;
import pps.cloud.space.service.ISpaceOptimizeLongCloudService;
import xstartup.annotation.XService;
import xstartup.base.XContext;
import xstartup.data.XServiceResult;
/**
* 长期间开优化Cloud模块
*
* @author ZWT
* @date 2023/09/13 14:14
*/
@XService
public class SpaceOptimizeLongCloudServiceImpl implements ISpaceOptimizeLongCloudService {
/**
* 长期间开优化--定时任务
*
* @param context 上下文
* @return {@link XServiceResult}
*/
@Override
public XServiceResult optimizeLongJob(XContext context) {
return XServiceResult.OK;
}
}
package app; package app;
import pps.core.task.job.SpaceOptimizeLongJob;
import pps.core.task.job.TestJob; import pps.core.task.job.TestJob;
import pps.core.task.job.WeatherJob; import pps.core.task.job.WeatherJob;
import xstartup.base.XStartup; import xstartup.base.XStartup;
...@@ -19,19 +20,20 @@ import xstartup.service.job.conf.XJobServiceConf; ...@@ -19,19 +20,20 @@ import xstartup.service.job.conf.XJobServiceConf;
//import xstartup.feature.cloud.XCloudHuaweiCseFeature; //import xstartup.feature.cloud.XCloudHuaweiCseFeature;
public class DeployPpsAllApplication { public class DeployPpsAllApplication {
public static void main(String... args){ public static void main(String... args) {
System.out.println(XEncryptUtils.encrypt("!qwe@azx#12W3")); System.out.println(XEncryptUtils.encrypt("!qwe@azx#12W3"));
XStartup startup = new XStartupApplication("pps"); XStartup startup = new XStartupApplication("pps");
startup.config(new XServerConf(22060).naming("pps-all")); startup.config(new XServerConf(22060).naming("pps-all"));
startup.config(new XServiceConf("pps")); startup.config(new XServiceConf("pps"));
startup.enable(XApiFeature.class) startup.enable(XApiFeature.class)
.config(new XApiCookieConf("%4bH8s9&",43200)); .config(new XApiCookieConf("%4bH8s9&", 43200));
startup.enable(XSwaggerFeature.class); startup.enable(XSwaggerFeature.class);
startup.enable(XMybatisFeature.class); startup.enable(XMybatisFeature.class);
startup.enable(XRpcFeature.class); startup.enable(XRpcFeature.class);
startup.enable(XCorsFeature.class); startup.enable(XCorsFeature.class);
startup.enable(XJobFeature.class).config(new XJobServiceConf(TestJob.class)); startup.enable(XJobFeature.class).config(new XJobServiceConf(TestJob.class));
startup.enable(XJobFeature.class).config(new XJobServiceConf(WeatherJob.class)); startup.enable(XJobFeature.class).config(new XJobServiceConf(WeatherJob.class));
startup.enable(XJobFeature.class).config(new XJobServiceConf(SpaceOptimizeLongJob.class));
//startup.enable(XCloudHuaweiCseFeature.class); //startup.enable(XCloudHuaweiCseFeature.class);
startup.run(args); startup.run(args);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment