Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
8
8timerapiv200
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
8timerv2
8timerapiv200
Commits
7cafbec8
Commit
7cafbec8
authored
Mar 27, 2020
by
邓实川
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
改了下配置application,删了没用的quartz文件
parent
8b048405
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
142 additions
and
260 deletions
+142
-260
src/main/java/cn/timer/api/config/quartz/SchedulerConfig.java
+0
-38
src/main/java/cn/timer/api/controller/quartz/JobController.java
+140
-166
src/main/java/cn/timer/api/controller/zzgl/ZzglController.java
+0
-9
src/main/java/cn/timer/api/dao/quartz/JobAndTriggerMapper.java
+0
-18
src/main/resources/application-pro.yml
+2
-2
src/main/resources/mapping/quartz/JobAndTriggerMapper.xml
+0
-27
No files found.
src/main/java/cn/timer/api/config/quartz/SchedulerConfig.java
deleted
100644 → 0
View file @
8b048405
package
cn
.
timer
.
api
.
config
.
quartz
;
//@Configuration
public
class
SchedulerConfig
{
// @Bean(name = "SchedulerFactory")
// public SchedulerFactoryBean schedulerFactoryBean() throws IOException {
// SchedulerFactoryBean factory = new SchedulerFactoryBean();
// factory.setQuartzProperties(quartzProperties());
// return factory;
// }
//
// @Bean
// public Properties quartzProperties() throws IOException {
// PropertiesFactoryBean propertiesFactoryBean = new PropertiesFactoryBean();
// propertiesFactoryBean.setLocation(new ClassPathResource("/quartz.properties"));
// // 在quartz.properties中的属性被读取并注入后再初始化对象
// propertiesFactoryBean.afterPropertiesSet();
// return propertiesFactoryBean.getObject();
// }
//
// /*
// * quartz初始化监听器
// */
// @Bean
// public QuartzInitializerListener executorListener() {
// return new QuartzInitializerListener();
// }
//
// /*
// * 通过SchedulerFactoryBean获取Scheduler的实例
// */
// @Bean(name = "Scheduler")
// public Scheduler scheduler() throws IOException {
// return schedulerFactoryBean().getScheduler();
// }
}
src/main/java/cn/timer/api/controller/quartz/JobController.java
View file @
7cafbec8
package
cn
.
timer
.
api
.
controller
.
quartz
;
import
java.util.HashMap
;
import
java.util.Map
;
import
org.quartz.CronScheduleBuilder
;
import
org.quartz.CronTrigger
;
import
org.quartz.JobBuilder
;
import
org.quartz.JobDetail
;
import
org.quartz.JobKey
;
import
org.quartz.Scheduler
;
import
org.quartz.SchedulerException
;
import
org.quartz.TriggerBuilder
;
import
org.quartz.TriggerKey
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.github.pagehelper.PageInfo
;
import
cn.timer.api.bean.quartz.JobAndTrigger
;
import
cn.timer.api.config.quartz.BaseJob
;
import
cn.timer.api.dao.quartz.JobAndTriggerMapper
;
import
cn.timer.api.utils.Result
;
import
cn.timer.api.utils.ResultUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
@Api
(
tags
=
"99.0 Quartz"
)
@RestController
@RequestMapping
(
value
=
"/quartz"
,
produces
=
{
"application/json"
})
public
class
JobController
{
@Autowired
private
JobAndTriggerMapper
jobAndTriggerMapper
;
// 加入Qulifier注解,通过名称注入bean
@Autowired
// @Qualifier("Scheduler")
private
Scheduler
scheduler
;
@SuppressWarnings
(
"unused"
)
private
static
Logger
log
=
LoggerFactory
.
getLogger
(
JobController
.
class
);
@PostMapping
(
value
=
"/addjob"
)
@ApiOperation
(
value
=
"新增任务"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Void
>
addjob
(
@RequestParam
(
value
=
"jobClassName"
)
String
jobClassName
,
@RequestParam
(
value
=
"jobGroupName"
)
String
jobGroupName
,
@RequestParam
(
value
=
"cronExpression"
)
String
cronExpression
)
throws
Exception
{
addJob
(
jobClassName
,
jobGroupName
,
cronExpression
);
return
ResultUtil
.
success
(
"新增定时任务成功"
);
}
public
void
addJob
(
String
jobClassName
,
String
jobGroupName
,
String
cronExpression
)
throws
Exception
{
// 启动调度器
scheduler
.
start
();
// 构建job信息
JobDetail
jobDetail
=
JobBuilder
.
newJob
(
getClass
(
jobClassName
).
getClass
())
.
withIdentity
(
jobClassName
,
jobGroupName
).
build
();
// 表达式调度构建器(即任务执行的时间)
CronScheduleBuilder
scheduleBuilder
=
CronScheduleBuilder
.
cronSchedule
(
cronExpression
);
// 按新的cronExpression表达式构建一个新的trigger
CronTrigger
trigger
=
TriggerBuilder
.
newTrigger
().
withIdentity
(
jobClassName
,
jobGroupName
)
.
withSchedule
(
scheduleBuilder
).
build
();
try
{
scheduler
.
scheduleJob
(
jobDetail
,
trigger
);
}
catch
(
SchedulerException
e
)
{
System
.
out
.
println
(
"创建定时任务失败"
+
e
);
throw
new
Exception
(
"创建定时任务失败"
);
}
}
@PostMapping
(
value
=
"/pausejob"
)
@ApiOperation
(
value
=
"暂停任务"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Void
>
pausejob
(
@RequestParam
(
value
=
"jobClassName"
)
String
jobClassName
,
@RequestParam
(
value
=
"jobGroupName"
)
String
jobGroupName
)
throws
Exception
{
jobPause
(
jobClassName
,
jobGroupName
);
return
ResultUtil
.
success
(
"暂停定时任务成功"
);
}
public
void
jobPause
(
String
jobClassName
,
String
jobGroupName
)
throws
Exception
{
scheduler
.
pauseJob
(
JobKey
.
jobKey
(
jobClassName
,
jobGroupName
));
}
@PostMapping
(
value
=
"/resumejob"
)
@ApiOperation
(
value
=
"恢复任务"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Void
>
resumejob
(
@RequestParam
(
value
=
"jobClassName"
)
String
jobClassName
,
@RequestParam
(
value
=
"jobGroupName"
)
String
jobGroupName
)
throws
Exception
{
jobresume
(
jobClassName
,
jobGroupName
);
return
ResultUtil
.
success
(
"恢复定时任务成功"
);
}
public
void
jobresume
(
String
jobClassName
,
String
jobGroupName
)
throws
Exception
{
scheduler
.
resumeJob
(
JobKey
.
jobKey
(
jobClassName
,
jobGroupName
));
}
@PostMapping
(
value
=
"/reschedulejob"
)
@ApiOperation
(
value
=
"重新设置任务"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Void
>
rescheduleJob
(
@RequestParam
(
value
=
"jobClassName"
)
String
jobClassName
,
@RequestParam
(
value
=
"jobGroupName"
)
String
jobGroupName
,
@RequestParam
(
value
=
"cronExpression"
)
String
cronExpression
)
throws
Exception
{
jobreschedule
(
jobClassName
,
jobGroupName
,
cronExpression
);
return
ResultUtil
.
success
(
"重设定时任务成功"
);
}
public
void
jobreschedule
(
String
jobClassName
,
String
jobGroupName
,
String
cronExpression
)
throws
Exception
{
try
{
TriggerKey
triggerKey
=
TriggerKey
.
triggerKey
(
jobClassName
,
jobGroupName
);
// 表达式调度构建器
CronScheduleBuilder
scheduleBuilder
=
CronScheduleBuilder
.
cronSchedule
(
cronExpression
);
CronTrigger
trigger
=
(
CronTrigger
)
scheduler
.
getTrigger
(
triggerKey
);
// 按新的cronExpression表达式重新构建trigger
trigger
=
trigger
.
getTriggerBuilder
().
withIdentity
(
triggerKey
).
withSchedule
(
scheduleBuilder
).
build
();
// 按新的trigger重新设置job执行
scheduler
.
rescheduleJob
(
triggerKey
,
trigger
);
}
catch
(
SchedulerException
e
)
{
System
.
out
.
println
(
"更新定时任务失败"
+
e
);
throw
new
Exception
(
"更新定时任务失败"
);
}
}
@PostMapping
(
value
=
"/deletejob"
)
@ApiOperation
(
value
=
"删除任务"
,
httpMethod
=
"POST"
,
notes
=
"接口发布说明"
)
public
Result
<
Void
>
deletejob
(
@RequestParam
(
value
=
"jobClassName"
)
String
jobClassName
,
@RequestParam
(
value
=
"jobGroupName"
)
String
jobGroupName
)
throws
Exception
{
jobdelete
(
jobClassName
,
jobGroupName
);
return
ResultUtil
.
success
(
"删除成功"
);
}
public
void
jobdelete
(
String
jobClassName
,
String
jobGroupName
)
throws
Exception
{
scheduler
.
pauseTrigger
(
TriggerKey
.
triggerKey
(
jobClassName
,
jobGroupName
));
scheduler
.
unscheduleJob
(
TriggerKey
.
triggerKey
(
jobClassName
,
jobGroupName
));
scheduler
.
deleteJob
(
JobKey
.
jobKey
(
jobClassName
,
jobGroupName
));
}
@GetMapping
(
value
=
"/queryjob"
)
@ApiOperation
(
value
=
"查询任务"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
Map
<
String
,
Object
>>
queryjob
(
@RequestParam
(
value
=
"pageNum"
)
Integer
pageNum
,
@RequestParam
(
value
=
"pageSize"
)
Integer
pageSize
)
{
PageInfo
<
JobAndTrigger
>
jobAndTrigger
=
jobAndTriggerMapper
.
getJobAndTriggerDetails
(
pageNum
,
pageSize
);
Map
<
String
,
Object
>
map
=
new
HashMap
<
String
,
Object
>();
map
.
put
(
"JobAndTrigger"
,
jobAndTrigger
);
map
.
put
(
"number"
,
jobAndTrigger
.
getTotal
());
return
ResultUtil
.
data
(
map
,
"查询成功"
);
}
public
static
BaseJob
getClass
(
String
classname
)
throws
Exception
{
Class
<?>
class1
=
Class
.
forName
(
classname
);
return
(
BaseJob
)
class1
.
newInstance
();
}
}
//package cn.timer.api.controller.quartz;
//
//import java.util.HashMap;
//import java.util.Map;
//
//import org.quartz.CronScheduleBuilder;
//import org.quartz.CronTrigger;
//import org.quartz.JobBuilder;
//import org.quartz.JobDetail;
//import org.quartz.JobKey;
//import org.quartz.Scheduler;
//import org.quartz.SchedulerException;
//import org.quartz.TriggerBuilder;
//import org.quartz.TriggerKey;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.PostMapping;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestParam;
//import org.springframework.web.bind.annotation.RestController;
//
//import com.github.pagehelper.PageInfo;
//
//import cn.timer.api.bean.quartz.JobAndTrigger;
//import cn.timer.api.config.quartz.TestJob;
//import cn.timer.api.dao.quartz.JobAndTriggerMapper;
//import cn.timer.api.utils.Result;
//import cn.timer.api.utils.ResultUtil;
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiOperation;
//
//@Api(tags = "99.0 Quartz")
//@RestController
//@RequestMapping(value = "/quartz", produces = { "application/json" })
//public class JobController {
//
// @Autowired
// private Scheduler scheduler;
//
// @PostMapping(value = "/addjob")
// @ApiOperation(value = "新增任务", httpMethod = "POST", notes = "接口发布说明")
// public Result<Void> addjob(@RequestParam(value = "jobClassName") String jobClassName,
// @RequestParam(value = "jobGroupName") String jobGroupName,
// @RequestParam(value = "cronExpression") String cronExpression) throws Exception {
// addJob(jobClassName, jobGroupName, cronExpression);
// return ResultUtil.success("新增定时任务成功");
// }
//
// public void addJob(String jobClassName, String jobGroupName, String cronExpression) throws Exception {
//
// // 启动调度器
// scheduler.start();
//
// // 构建job信息
// JobDetail jobDetail = JobBuilder.newJob(TestJob.class)
// .withIdentity(jobClassName, jobGroupName).build();
//
// // 表达式调度构建器(即任务执行的时间)
// CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(cronExpression);
//
// // 按新的cronExpression表达式构建一个新的trigger
// CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity(jobClassName, jobGroupName)
// .withSchedule(scheduleBuilder).build();
//
// try {
// scheduler.scheduleJob(jobDetail, trigger);
//
// } catch (SchedulerException e) {
// System.out.println("创建定时任务失败" + e);
// throw new Exception("创建定时任务失败");
// }
// }
//
// @PostMapping(value = "/pausejob")
// @ApiOperation(value = "暂停任务", httpMethod = "POST", notes = "接口发布说明")
// public Result<Void> pausejob(@RequestParam(value = "jobClassName") String jobClassName,
// @RequestParam(value = "jobGroupName") String jobGroupName) throws Exception {
// jobPause(jobClassName, jobGroupName);
// return ResultUtil.success("暂停定时任务成功");
// }
//
// public void jobPause(String jobClassName, String jobGroupName) throws Exception {
// scheduler.pauseJob(JobKey.jobKey(jobClassName, jobGroupName));
// }
//
// @PostMapping(value = "/resumejob")
// @ApiOperation(value = "恢复任务", httpMethod = "POST", notes = "接口发布说明")
// public Result<Void> resumejob(@RequestParam(value = "jobClassName") String jobClassName,
// @RequestParam(value = "jobGroupName") String jobGroupName) throws Exception {
// jobresume(jobClassName, jobGroupName);
// return ResultUtil.success("恢复定时任务成功");
// }
//
// public void jobresume(String jobClassName, String jobGroupName) throws Exception {
// scheduler.resumeJob(JobKey.jobKey(jobClassName, jobGroupName));
// }
//
// @PostMapping(value = "/reschedulejob")
// @ApiOperation(value = "重新设置任务", httpMethod = "POST", notes = "接口发布说明")
// public Result<Void> rescheduleJob(@RequestParam(value = "jobClassName") String jobClassName,
// @RequestParam(value = "jobGroupName") String jobGroupName,
// @RequestParam(value = "cronExpression") String cronExpression) throws Exception {
// jobreschedule(jobClassName, jobGroupName, cronExpression);
// return ResultUtil.success("重设定时任务成功");
// }
//
// public void jobreschedule(String jobClassName, String jobGroupName, String cronExpression) throws Exception {
// try {
// TriggerKey triggerKey = TriggerKey.triggerKey(jobClassName, jobGroupName);
// // 表达式调度构建器
// CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(cronExpression);
//
// CronTrigger trigger = (CronTrigger) scheduler.getTrigger(triggerKey);
//
// // 按新的cronExpression表达式重新构建trigger
// trigger = trigger.getTriggerBuilder().withIdentity(triggerKey).withSchedule(scheduleBuilder).build();
//
// // 按新的trigger重新设置job执行
// scheduler.rescheduleJob(triggerKey, trigger);
// } catch (SchedulerException e) {
// System.out.println("更新定时任务失败" + e);
// throw new Exception("更新定时任务失败");
// }
// }
//
// @PostMapping(value = "/deletejob")
// @ApiOperation(value = "删除任务", httpMethod = "POST", notes = "接口发布说明")
// public Result<Void> deletejob(@RequestParam(value = "jobClassName") String jobClassName,
// @RequestParam(value = "jobGroupName") String jobGroupName) throws Exception {
// jobdelete(jobClassName, jobGroupName);
// return ResultUtil.success("删除成功");
// }
//
// public void jobdelete(String jobClassName, String jobGroupName) throws Exception {
// scheduler.pauseTrigger(TriggerKey.triggerKey(jobClassName, jobGroupName));
// scheduler.unscheduleJob(TriggerKey.triggerKey(jobClassName, jobGroupName));
// scheduler.deleteJob(JobKey.jobKey(jobClassName, jobGroupName));
// }
//
//}
src/main/java/cn/timer/api/controller/zzgl/ZzglController.java
View file @
7cafbec8
...
...
@@ -63,15 +63,6 @@ public class ZzglController {
return
ResultUtil
.
data
(
zzglBmgwMs
);
}
@GetMapping
(
value
=
"/deptlist2"
)
@ApiOperation
(
value
=
"获取部门岗位2"
,
httpMethod
=
"GET"
,
notes
=
"接口发布说明"
)
public
Result
<
List
<
ZzglBmgwM
>>
selectlistdept2
(
@CurrentUser
UserBean
userBean
)
{
Integer
orgCode
=
userBean
.
getOrgCode
();
List
<
ZzglBmgwM
>
zzglBmgwMs
=
new
LambdaQueryChainWrapper
<
ZzglBmgwM
>(
zzglBmgwMMapper
)
.
select
(
ZzglBmgwM:
:
getName
,
ZzglBmgwM:
:
getId
,
ZzglBmgwM:
:
getUpId
).
eq
(
ZzglBmgwM:
:
getOrgCode
,
orgCode
).
list
();
return
ResultUtil
.
data
(
zzglBmgwMs
);
}
/**
* 岗位成员
*
...
...
src/main/java/cn/timer/api/dao/quartz/JobAndTriggerMapper.java
deleted
100644 → 0
View file @
8b048405
package
cn
.
timer
.
api
.
dao
.
quartz
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.github.pagehelper.PageInfo
;
import
cn.timer.api.bean.quartz.JobAndTrigger
;
@Repository
public
interface
JobAndTriggerMapper
extends
BaseMapper
<
JobAndTrigger
>
{
public
PageInfo
<
JobAndTrigger
>
getJobAndTriggerDetails
(
@RequestParam
(
value
=
"pageNum"
)
Integer
pageNum
,
@RequestParam
(
value
=
"pageSize"
)
Integer
pageSize
);
}
\ No newline at end of file
src/main/resources/application-pro.yml
View file @
7cafbec8
...
...
@@ -12,9 +12,9 @@ spring:
max-request-size
:
20MB
jpa
:
# 配置生成表 存储引擎InnoDB
#
database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
database-platform
:
org.hibernate.dialect.MySQL5InnoDBDialect
# database
:
#
open-in-view: false
open-in-view
:
false
# naming
:
# spring boot jpa hibernate 根据实体类生成表以及字段的命名策略
# 无修改命名 org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
...
...
src/main/resources/mapping/quartz/JobAndTriggerMapper.xml
deleted
100644 → 0
View file @
8b048405
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.timer.api.dao.quartz.JobAndTriggerMapper"
>
<select
id=
"getJobAndTriggerDetails"
resultType=
"cn.timer.api.bean.quartz.JobAndTrigger"
>
SELECT
qrtz_job_details.JOB_NAME,
qrtz_job_details.JOB_GROUP,
qrtz_job_details.JOB_CLASS_NAME,
qrtz_triggers.TRIGGER_NAME,
qrtz_triggers.TRIGGER_GROUP,
qrtz_cron_triggers.CRON_EXPRESSION,
qrtz_cron_triggers.TIME_ZONE_ID
FROM
qrtz_job_details
JOIN qrtz_triggers
JOIN qrtz_cron_triggers ON
qrtz_job_details.JOB_NAME =
qrtz_triggers.JOB_NAME
AND
qrtz_triggers.TRIGGER_NAME = qrtz_cron_triggers.TRIGGER_NAME
AND
qrtz_triggers.TRIGGER_GROUP = qrtz_cron_triggers.TRIGGER_GROUP
</select>
</mapper>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment