Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
W
wangxiaolu-sfa-module-job
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
sfa
wangxiaolu-sfa-module-job
Commits
af30b2f9
提交
af30b2f9
authored
11月 08, 2024
作者:
000516
提交者:
Coding
11月 08, 2024
浏览文件
操作
浏览文件
下载
差异文件
集成Mybatis-plus;分页规范修改;完成考勤功能
Merge Request: 集成Mybatis-plus;分页规范修改;完成考勤功能 Created By: @李秋林 Accepted By: @李秋林 URL:
https://g-pkkp8204.coding.net/p/wangxiaolu-sfa/d/wangxiaolu-sfa-module-job/git/merge/32?initial=true
上级
efd61a86
1e3c5ee7
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
225 行增加
和
280 行删除
+225
-280
pom.xml
pom.xml
+10
-1
SfaJobApplication.java
src/main/java/com/sfa/job/SfaJobApplication.java
+2
-0
ControllerResponseAdvice.java
...a/com/sfa/job/config/advice/ControllerResponseAdvice.java
+48
-0
MybatisPlusConfig.java
...main/java/com/sfa/job/config/mysql/MybatisPlusConfig.java
+23
-0
SysJobController.java
src/main/java/com/sfa/job/controller/SysJobController.java
+10
-18
SysJobLogController.java
...main/java/com/sfa/job/controller/SysJobLogController.java
+9
-15
SysJob.java
src/main/java/com/sfa/job/domain/SysJob.java
+19
-113
SysJobLog.java
src/main/java/com/sfa/job/domain/SysJobLog.java
+18
-107
SysJobLogMapper.java
src/main/java/com/sfa/job/mapper/SysJobLogMapper.java
+3
-1
SysJobMapper.java
src/main/java/com/sfa/job/mapper/SysJobMapper.java
+3
-1
ISysJobLogService.java
src/main/java/com/sfa/job/service/ISysJobLogService.java
+2
-2
ISysJobService.java
src/main/java/com/sfa/job/service/ISysJobService.java
+3
-3
SysJobLogServiceImpl.java
src/main/java/com/sfa/job/service/SysJobLogServiceImpl.java
+39
-9
SysJobServiceImpl.java
src/main/java/com/sfa/job/service/SysJobServiceImpl.java
+36
-10
没有找到文件。
pom.xml
浏览文件 @
af30b2f9
...
@@ -73,7 +73,16 @@
...
@@ -73,7 +73,16 @@
<groupId>
com.wangxiaolu.sfa
</groupId>
<groupId>
com.wangxiaolu.sfa
</groupId>
<artifactId>
wangxiaolu-sfa-common-swagger
</artifactId>
<artifactId>
wangxiaolu-sfa-common-swagger
</artifactId>
</dependency>
</dependency>
<dependency>
<groupId>
com.baomidou
</groupId>
<artifactId>
mybatis-plus-annotation
</artifactId>
</dependency>
<dependency>
<groupId>
com.baomidou
</groupId>
<artifactId>
mybatis-plus-boot-starter
</artifactId>
</dependency>
</dependencies>
</dependencies>
<build>
<build>
...
...
src/main/java/com/sfa/job/SfaJobApplication.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
;
package
com
.
sfa
.
job
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
com.sfa.common.security.annotation.EnableCustomConfig
;
import
com.sfa.common.security.annotation.EnableCustomConfig
;
...
@@ -13,6 +14,7 @@ import com.sfa.common.security.annotation.EnableRyFeignClients;
...
@@ -13,6 +14,7 @@ import com.sfa.common.security.annotation.EnableRyFeignClients;
@EnableCustomConfig
@EnableCustomConfig
@EnableRyFeignClients
@EnableRyFeignClients
@SpringBootApplication
@SpringBootApplication
@MapperScan
(
"com.sfa.job.mapper"
)
public
class
SfaJobApplication
public
class
SfaJobApplication
{
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/sfa/job/config/advice/ControllerResponseAdvice.java
0 → 100644
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
config
.
advice
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.sfa.common.core.domain.R
;
import
com.sfa.common.core.web.domain.AjaxResult
;
import
org.springframework.core.MethodParameter
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.server.ServerHttpRequest
;
import
org.springframework.http.server.ServerHttpResponse
;
import
org.springframework.web.bind.annotation.RestControllerAdvice
;
import
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice
;
/**
* @author : liqiulin
* @date : 2024-10-28 17
* @describe :自动封装
*/
@RestControllerAdvice
public
class
ControllerResponseAdvice
implements
ResponseBodyAdvice
<
Object
>{
/**
* response是R类型或者注释了NotControllerResponseAdvice都不进行包装
*/
@Override
public
boolean
supports
(
MethodParameter
methodParameter
,
Class
converterType
)
{
if
(
methodParameter
.
getParameterType
().
isAssignableFrom
(
AjaxResult
.
class
))
{
return
false
;
}
return
!
methodParameter
.
getParameterType
().
isAssignableFrom
(
R
.
class
);
}
@Override
public
Object
beforeBodyWrite
(
Object
body
,
MethodParameter
methodParameter
,
MediaType
selectedContentType
,
Class
selectedConverterType
,
ServerHttpRequest
request
,
ServerHttpResponse
response
)
{
// String类型不能直接包装
if
(
methodParameter
.
getGenericParameterType
().
equals
(
String
.
class
))
{
ObjectMapper
objectMapper
=
new
ObjectMapper
();
try
{
// 将数据包装在ResultVo里后转换为json串进行返回
return
objectMapper
.
writeValueAsString
(
R
.
ok
(
body
));
}
catch
(
JsonProcessingException
e
)
{
throw
new
RuntimeException
();
}
}
// 包装成R返回
return
R
.
ok
(
body
);
}
}
src/main/java/com/sfa/job/config/mysql/MybatisPlusConfig.java
0 → 100644
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
config
.
mysql
;
import
com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor
;
import
com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
/**
* @author : liqiulin
* @date : 2024-04-25 13
* @describe :
*/
@Configuration
public
class
MybatisPlusConfig
{
@Bean
public
MybatisPlusInterceptor
mybatisPlusInterceptor
(){
MybatisPlusInterceptor
interceptor
=
new
MybatisPlusInterceptor
();
interceptor
.
addInnerInterceptor
(
new
PaginationInnerInterceptor
());
return
interceptor
;
}
}
\ No newline at end of file
src/main/java/com/sfa/job/controller/SysJobController.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
controller
;
package
com
.
sfa
.
job
.
controller
;
import
java.util.List
;
import
javax.servlet.http.HttpServletResponse
;
import
org.quartz.SchedulerException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.sfa.common.core.constant.Constants
;
import
com.sfa.common.core.constant.Constants
;
import
com.sfa.common.core.exception.job.TaskException
;
import
com.sfa.common.core.exception.job.TaskException
;
import
com.sfa.common.core.utils.StringUtils
;
import
com.sfa.common.core.utils.StringUtils
;
import
com.sfa.common.core.utils.poi.ExcelUtil
;
import
com.sfa.common.core.utils.poi.ExcelUtil
;
import
com.sfa.common.core.web.controller.BaseController
;
import
com.sfa.common.core.web.controller.BaseController
;
import
com.sfa.common.core.web.domain.AjaxResult
;
import
com.sfa.common.core.web.domain.AjaxResult
;
import
com.sfa.common.core.web.
page.TableData
Info
;
import
com.sfa.common.core.web.
domain.Page
Info
;
import
com.sfa.common.log.annotation.Log
;
import
com.sfa.common.log.annotation.Log
;
import
com.sfa.common.log.enums.BusinessType
;
import
com.sfa.common.log.enums.BusinessType
;
import
com.sfa.common.security.annotation.RequiresPermissions
;
import
com.sfa.common.security.annotation.RequiresPermissions
;
...
@@ -27,6 +15,12 @@ import com.sfa.job.domain.SysJob;
...
@@ -27,6 +15,12 @@ import com.sfa.job.domain.SysJob;
import
com.sfa.job.service.ISysJobService
;
import
com.sfa.job.service.ISysJobService
;
import
com.sfa.job.util.CronUtils
;
import
com.sfa.job.util.CronUtils
;
import
com.sfa.job.util.ScheduleUtils
;
import
com.sfa.job.util.ScheduleUtils
;
import
org.quartz.SchedulerException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
/**
/**
* 调度任务信息操作处理
* 调度任务信息操作处理
...
@@ -45,11 +39,9 @@ public class SysJobController extends BaseController
...
@@ -45,11 +39,9 @@ public class SysJobController extends BaseController
*/
*/
@RequiresPermissions
(
"monitor:job:list"
)
@RequiresPermissions
(
"monitor:job:list"
)
@GetMapping
(
"/list"
)
@GetMapping
(
"/list"
)
public
TableData
Info
list
(
SysJob
sysJob
)
public
Page
Info
list
(
SysJob
sysJob
)
{
{
startPage
();
return
jobService
.
selectJobList
(
sysJob
);
List
<
SysJob
>
list
=
jobService
.
selectJobList
(
sysJob
);
return
getDataTable
(
list
);
}
}
/**
/**
...
@@ -60,7 +52,7 @@ public class SysJobController extends BaseController
...
@@ -60,7 +52,7 @@ public class SysJobController extends BaseController
@PostMapping
(
"/export"
)
@PostMapping
(
"/export"
)
public
void
export
(
HttpServletResponse
response
,
SysJob
sysJob
)
public
void
export
(
HttpServletResponse
response
,
SysJob
sysJob
)
{
{
List
<
SysJob
>
list
=
jobService
.
selectJobList
(
sysJob
);
List
<
SysJob
>
list
=
jobService
.
selectJobList
(
sysJob
)
.
getRows
()
;
ExcelUtil
<
SysJob
>
util
=
new
ExcelUtil
<
SysJob
>(
SysJob
.
class
);
ExcelUtil
<
SysJob
>
util
=
new
ExcelUtil
<
SysJob
>(
SysJob
.
class
);
util
.
exportExcel
(
response
,
list
,
"定时任务"
);
util
.
exportExcel
(
response
,
list
,
"定时任务"
);
}
}
...
...
src/main/java/com/sfa/job/controller/SysJobLogController.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
controller
;
package
com
.
sfa
.
job
.
controller
;
import
java.util.List
;
import
javax.servlet.http.HttpServletResponse
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.sfa.common.core.utils.poi.ExcelUtil
;
import
com.sfa.common.core.utils.poi.ExcelUtil
;
import
com.sfa.common.core.web.controller.BaseController
;
import
com.sfa.common.core.web.controller.BaseController
;
import
com.sfa.common.core.web.domain.AjaxResult
;
import
com.sfa.common.core.web.domain.AjaxResult
;
import
com.sfa.common.core.web.
page.TableData
Info
;
import
com.sfa.common.core.web.
domain.Page
Info
;
import
com.sfa.common.log.annotation.Log
;
import
com.sfa.common.log.annotation.Log
;
import
com.sfa.common.log.enums.BusinessType
;
import
com.sfa.common.log.enums.BusinessType
;
import
com.sfa.common.security.annotation.RequiresPermissions
;
import
com.sfa.common.security.annotation.RequiresPermissions
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.service.ISysJobLogService
;
import
com.sfa.job.service.ISysJobLogService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
javax.servlet.http.HttpServletResponse
;
import
java.util.List
;
/**
/**
* 调度日志操作处理
* 调度日志操作处理
...
@@ -36,11 +32,9 @@ public class SysJobLogController extends BaseController
...
@@ -36,11 +32,9 @@ public class SysJobLogController extends BaseController
*/
*/
@RequiresPermissions
(
"monitor:job:list"
)
@RequiresPermissions
(
"monitor:job:list"
)
@GetMapping
(
"/list"
)
@GetMapping
(
"/list"
)
public
TableData
Info
list
(
SysJobLog
sysJobLog
)
public
Page
Info
list
(
SysJobLog
sysJobLog
)
{
{
startPage
();
return
jobLogService
.
selectJobLogList
(
sysJobLog
);
List
<
SysJobLog
>
list
=
jobLogService
.
selectJobLogList
(
sysJobLog
);
return
getDataTable
(
list
);
}
}
/**
/**
...
@@ -51,7 +45,7 @@ public class SysJobLogController extends BaseController
...
@@ -51,7 +45,7 @@ public class SysJobLogController extends BaseController
@PostMapping
(
"/export"
)
@PostMapping
(
"/export"
)
public
void
export
(
HttpServletResponse
response
,
SysJobLog
sysJobLog
)
public
void
export
(
HttpServletResponse
response
,
SysJobLog
sysJobLog
)
{
{
List
<
SysJobLog
>
list
=
jobLogService
.
selectJobLogList
(
sysJobLog
);
List
<
SysJobLog
>
list
=
jobLogService
.
selectJobLogList
(
sysJobLog
)
.
getRows
()
;
ExcelUtil
<
SysJobLog
>
util
=
new
ExcelUtil
<
SysJobLog
>(
SysJobLog
.
class
);
ExcelUtil
<
SysJobLog
>
util
=
new
ExcelUtil
<
SysJobLog
>(
SysJobLog
.
class
);
util
.
exportExcel
(
response
,
list
,
"调度日志"
);
util
.
exportExcel
(
response
,
list
,
"调度日志"
);
}
}
...
...
src/main/java/com/sfa/job/domain/SysJob.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
domain
;
package
com
.
sfa
.
job
.
domain
;
import
java.util.Date
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
javax.validation.constraints.NotBlank
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
javax.validation.constraints.Size
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.sfa.common.core.annotation.Excel
;
import
com.sfa.common.core.annotation.Excel
;
import
com.sfa.common.core.annotation.Excel.ColumnType
;
import
com.sfa.common.core.annotation.Excel.ColumnType
;
import
com.sfa.common.core.constant.ScheduleConstants
;
import
com.sfa.common.core.constant.ScheduleConstants
;
import
com.sfa.common.core.utils.StringUtils
;
import
com.sfa.common.core.utils.StringUtils
;
import
com.sfa.common.core.web.domain.Base
Entity
;
import
com.sfa.common.core.web.domain.Base
Do
;
import
com.sfa.job.util.CronUtils
;
import
com.sfa.job.util.CronUtils
;
import
lombok.Data
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.Size
;
import
java.util.Date
;
/**
/**
* 定时任务调度表 sys_job
* 定时任务调度表 sys_job
*
*
* @author ruoyi
* @author ruoyi
*/
*/
public
class
SysJob
extends
BaseEntity
@TableName
(
value
=
"sys_job"
)
@Data
public
class
SysJob
extends
BaseDo
{
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
/** 任务ID */
/** 任务ID */
@Excel
(
name
=
"任务序号"
,
cellType
=
ColumnType
.
NUMERIC
)
@Excel
(
name
=
"任务序号"
,
cellType
=
ColumnType
.
NUMERIC
)
@TableId
(
type
=
IdType
.
AUTO
)
private
Long
jobId
;
private
Long
jobId
;
/** 任务名称 */
/** 任务名称 */
@Excel
(
name
=
"任务名称"
)
@Excel
(
name
=
"任务名称"
)
@NotBlank
(
message
=
"任务名称不能为空"
)
@Size
(
min
=
0
,
max
=
64
,
message
=
"任务名称不能超过64个字符"
)
private
String
jobName
;
private
String
jobName
;
/** 任务组名 */
/** 任务组名 */
...
@@ -36,10 +44,14 @@ public class SysJob extends BaseEntity
...
@@ -36,10 +44,14 @@ public class SysJob extends BaseEntity
/** 调用目标字符串 */
/** 调用目标字符串 */
@Excel
(
name
=
"调用目标字符串"
)
@Excel
(
name
=
"调用目标字符串"
)
@NotBlank
(
message
=
"调用目标字符串不能为空"
)
@Size
(
min
=
0
,
max
=
500
,
message
=
"调用目标字符串长度不能超过500个字符"
)
private
String
invokeTarget
;
private
String
invokeTarget
;
/** cron执行表达式 */
/** cron执行表达式 */
@Excel
(
name
=
"执行表达式 "
)
@Excel
(
name
=
"执行表达式 "
)
@NotBlank
(
message
=
"Cron执行表达式不能为空"
)
@Size
(
min
=
0
,
max
=
255
,
message
=
"Cron执行表达式不能超过255个字符"
)
private
String
cronExpression
;
private
String
cronExpression
;
/** cron计划策略 */
/** cron计划策略 */
...
@@ -54,62 +66,6 @@ public class SysJob extends BaseEntity
...
@@ -54,62 +66,6 @@ public class SysJob extends BaseEntity
@Excel
(
name
=
"任务状态"
,
readConverterExp
=
"0=正常,1=暂停"
)
@Excel
(
name
=
"任务状态"
,
readConverterExp
=
"0=正常,1=暂停"
)
private
String
status
;
private
String
status
;
public
Long
getJobId
()
{
return
jobId
;
}
public
void
setJobId
(
Long
jobId
)
{
this
.
jobId
=
jobId
;
}
@NotBlank
(
message
=
"任务名称不能为空"
)
@Size
(
min
=
0
,
max
=
64
,
message
=
"任务名称不能超过64个字符"
)
public
String
getJobName
()
{
return
jobName
;
}
public
void
setJobName
(
String
jobName
)
{
this
.
jobName
=
jobName
;
}
public
String
getJobGroup
()
{
return
jobGroup
;
}
public
void
setJobGroup
(
String
jobGroup
)
{
this
.
jobGroup
=
jobGroup
;
}
@NotBlank
(
message
=
"调用目标字符串不能为空"
)
@Size
(
min
=
0
,
max
=
500
,
message
=
"调用目标字符串长度不能超过500个字符"
)
public
String
getInvokeTarget
()
{
return
invokeTarget
;
}
public
void
setInvokeTarget
(
String
invokeTarget
)
{
this
.
invokeTarget
=
invokeTarget
;
}
@NotBlank
(
message
=
"Cron执行表达式不能为空"
)
@Size
(
min
=
0
,
max
=
255
,
message
=
"Cron执行表达式不能超过255个字符"
)
public
String
getCronExpression
()
{
return
cronExpression
;
}
public
void
setCronExpression
(
String
cronExpression
)
{
this
.
cronExpression
=
cronExpression
;
}
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
public
Date
getNextValidTime
()
public
Date
getNextValidTime
()
{
{
...
@@ -119,53 +75,4 @@ public class SysJob extends BaseEntity
...
@@ -119,53 +75,4 @@ public class SysJob extends BaseEntity
}
}
return
null
;
return
null
;
}
}
public
String
getMisfirePolicy
()
{
return
misfirePolicy
;
}
public
void
setMisfirePolicy
(
String
misfirePolicy
)
{
this
.
misfirePolicy
=
misfirePolicy
;
}
public
String
getConcurrent
()
{
return
concurrent
;
}
public
void
setConcurrent
(
String
concurrent
)
{
this
.
concurrent
=
concurrent
;
}
public
String
getStatus
()
{
return
status
;
}
public
void
setStatus
(
String
status
)
{
this
.
status
=
status
;
}
@Override
public
String
toString
()
{
return
new
ToStringBuilder
(
this
,
ToStringStyle
.
MULTI_LINE_STYLE
)
.
append
(
"jobId"
,
getJobId
())
.
append
(
"jobName"
,
getJobName
())
.
append
(
"jobGroup"
,
getJobGroup
())
.
append
(
"cronExpression"
,
getCronExpression
())
.
append
(
"nextValidTime"
,
getNextValidTime
())
.
append
(
"misfirePolicy"
,
getMisfirePolicy
())
.
append
(
"concurrent"
,
getConcurrent
())
.
append
(
"status"
,
getStatus
())
.
append
(
"createBy"
,
getCreateBy
())
.
append
(
"createTime"
,
getCreateTime
())
.
append
(
"updateBy"
,
getUpdateBy
())
.
append
(
"updateTime"
,
getUpdateTime
())
.
append
(
"remark"
,
getRemark
())
.
toString
();
}
}
}
\ No newline at end of file
src/main/java/com/sfa/job/domain/SysJobLog.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
domain
;
package
com
.
sfa
.
job
.
domain
;
import
java.util.Date
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
org.apache.commons.lang3.builder.ToStringBuilder
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
org.apache.commons.lang3.builder.ToStringStyle
;
import
com.sfa.common.core.annotation.Excel
;
import
com.sfa.common.core.annotation.Excel
;
import
com.sfa.common.core.web.domain.BaseEntity
;
import
lombok.Data
;
import
java.util.Date
;
/**
/**
* 定时任务调度日志表 sys_job_log
* 定时任务调度日志表 sys_job_log
*
*
* @author ruoyi
* @author ruoyi
*/
*/
public
class
SysJobLog
extends
BaseEntity
@TableName
(
value
=
"sys_job_log"
)
@Data
public
class
SysJobLog
{
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
...
@@ -44,112 +47,20 @@ public class SysJobLog extends BaseEntity
...
@@ -44,112 +47,20 @@ public class SysJobLog extends BaseEntity
private
String
exceptionInfo
;
private
String
exceptionInfo
;
/** 开始时间 */
/** 开始时间 */
@TableField
(
exist
=
false
)
private
Date
startTime
;
private
Date
startTime
;
/** 停止时间 */
/** 停止时间 */
@TableField
(
exist
=
false
)
private
Date
stopTime
;
private
Date
stopTime
;
public
Long
getJobLogId
()
/** 创建时间 */
{
private
Date
createTime
;
return
jobLogId
;
}
public
void
setJobLogId
(
Long
jobLogId
)
{
this
.
jobLogId
=
jobLogId
;
}
public
String
getJobName
()
{
return
jobName
;
}
public
void
setJobName
(
String
jobName
)
{
this
.
jobName
=
jobName
;
}
public
String
getJobGroup
()
{
return
jobGroup
;
}
public
void
setJobGroup
(
String
jobGroup
)
{
this
.
jobGroup
=
jobGroup
;
}
public
String
getInvokeTarget
()
{
return
invokeTarget
;
}
public
void
setInvokeTarget
(
String
invokeTarget
)
{
this
.
invokeTarget
=
invokeTarget
;
}
public
String
getJobMessage
()
{
return
jobMessage
;
}
public
void
setJobMessage
(
String
jobMessage
)
{
this
.
jobMessage
=
jobMessage
;
}
public
String
getStatus
()
{
return
status
;
}
public
void
setStatus
(
String
status
)
{
this
.
status
=
status
;
}
public
String
getExceptionInfo
()
{
return
exceptionInfo
;
}
public
void
setExceptionInfo
(
String
exceptionInfo
)
{
this
.
exceptionInfo
=
exceptionInfo
;
}
public
Date
getStartTime
()
{
return
startTime
;
}
public
void
setStartTime
(
Date
startTime
)
{
this
.
startTime
=
startTime
;
}
public
Date
getStopTime
()
{
return
stopTime
;
}
public
void
setStopTime
(
Date
stopTime
)
{
this
.
stopTime
=
stopTime
;
}
@Override
/** 操作开始时间 **/
public
String
toString
()
{
@TableField
(
exist
=
false
)
return
new
ToStringBuilder
(
this
,
ToStringStyle
.
MULTI_LINE_STYLE
)
private
Date
beginTime
;
.
append
(
"jobLogId"
,
getJobLogId
())
/** 操作结束时间 **/
.
append
(
"jobName"
,
getJobName
())
@TableField
(
exist
=
false
)
.
append
(
"jobGroup"
,
getJobGroup
())
private
Date
endTime
;
.
append
(
"jobMessage"
,
getJobMessage
())
.
append
(
"status"
,
getStatus
())
.
append
(
"exceptionInfo"
,
getExceptionInfo
())
.
append
(
"startTime"
,
getStartTime
())
.
append
(
"stopTime"
,
getStopTime
())
.
toString
();
}
}
}
src/main/java/com/sfa/job/mapper/SysJobLogMapper.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
mapper
;
package
com
.
sfa
.
job
.
mapper
;
import
java.util.List
;
import
java.util.List
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.domain.SysJobLog
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
...
@@ -12,7 +14,7 @@ import org.springframework.stereotype.Repository;
...
@@ -12,7 +14,7 @@ import org.springframework.stereotype.Repository;
*/
*/
@Repository
@Repository
@Mapper
@Mapper
public
interface
SysJobLogMapper
public
interface
SysJobLogMapper
extends
BaseMapper
<
SysJobLog
>
{
{
/**
/**
* 获取quartz调度器日志的计划任务
* 获取quartz调度器日志的计划任务
...
...
src/main/java/com/sfa/job/mapper/SysJobMapper.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
mapper
;
package
com
.
sfa
.
job
.
mapper
;
import
java.util.List
;
import
java.util.List
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.sfa.job.domain.SysJob
;
import
com.sfa.job.domain.SysJob
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.springframework.stereotype.Repository
;
import
org.springframework.stereotype.Repository
;
...
@@ -12,7 +14,7 @@ import org.springframework.stereotype.Repository;
...
@@ -12,7 +14,7 @@ import org.springframework.stereotype.Repository;
*/
*/
@Repository
@Repository
@Mapper
@Mapper
public
interface
SysJobMapper
public
interface
SysJobMapper
extends
BaseMapper
<
SysJob
>
{
{
/**
/**
* 查询调度任务日志集合
* 查询调度任务日志集合
...
...
src/main/java/com/sfa/job/service/ISysJobLogService.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
service
;
package
com
.
sfa
.
job
.
service
;
import
java.util.List
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.domain.SysJobLog
;
/**
/**
...
@@ -16,7 +16,7 @@ public interface ISysJobLogService
...
@@ -16,7 +16,7 @@ public interface ISysJobLogService
* @param jobLog 调度日志信息
* @param jobLog 调度日志信息
* @return 调度任务日志集合
* @return 调度任务日志集合
*/
*/
public
List
<
SysJobLog
>
selectJobLogList
(
SysJobLog
jobLog
);
public
PageInfo
selectJobLogList
(
SysJobLog
jobLog
);
/**
/**
* 通过调度任务日志ID查询调度信息
* 通过调度任务日志ID查询调度信息
...
...
src/main/java/com/sfa/job/service/ISysJobService.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
service
;
package
com
.
sfa
.
job
.
service
;
import
java.util.List
;
import
org.quartz.SchedulerException
;
import
com.sfa.common.core.exception.job.TaskException
;
import
com.sfa.common.core.exception.job.TaskException
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
com.sfa.job.domain.SysJob
;
import
com.sfa.job.domain.SysJob
;
import
org.quartz.SchedulerException
;
/**
/**
* 定时任务调度信息信息 服务层
* 定时任务调度信息信息 服务层
...
@@ -18,7 +18,7 @@ public interface ISysJobService
...
@@ -18,7 +18,7 @@ public interface ISysJobService
* @param job 调度信息
* @param job 调度信息
* @return 调度任务集合
* @return 调度任务集合
*/
*/
public
List
<
SysJob
>
selectJobList
(
SysJob
job
);
public
PageInfo
selectJobList
(
SysJob
job
);
/**
/**
* 通过调度任务ID查询调度信息
* 通过调度任务ID查询调度信息
...
...
src/main/java/com/sfa/job/service/SysJobLogServiceImpl.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
service
;
package
com
.
sfa
.
job
.
service
;
import
java.util.List
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
org.springframework.stereotype.Service
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
com.sfa.common.core.web.page.TableSupport
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.domain.SysJobLog
;
import
com.sfa.job.mapper.SysJobLogMapper
;
import
com.sfa.job.mapper.SysJobLogMapper
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Objects
;
/**
/**
* 定时任务调度日志信息 服务层
* 定时任务调度日志信息 服务层
*
*
* @author ruoyi
* @author ruoyi
*/
*/
@Service
@Service
...
@@ -19,19 +25,43 @@ public class SysJobLogServiceImpl implements ISysJobLogService
...
@@ -19,19 +25,43 @@ public class SysJobLogServiceImpl implements ISysJobLogService
/**
/**
* 获取quartz调度器日志的计划任务
* 获取quartz调度器日志的计划任务
*
*
* @param jobLog 调度日志信息
* @param jobLog 调度日志信息
* @return 调度任务日志集合
* @return 调度任务日志集合
*/
*/
@Override
@Override
public
List
<
SysJobLog
>
selectJobLogList
(
SysJobLog
jobLog
)
public
PageInfo
selectJobLogList
(
SysJobLog
jobLog
)
{
{
return
jobLogMapper
.
selectJobLogList
(
jobLog
);
LambdaQueryWrapper
<
SysJobLog
>
qw
=
buildWrapper
(
jobLog
);
Page
<
SysJobLog
>
pageR
=
jobLogMapper
.
selectPage
(
TableSupport
.
pageI
(),
qw
);
PageInfo
<
SysJobLog
>
pageInfo
=
new
PageInfo
<>(
pageR
);
return
pageInfo
;
}
private
LambdaQueryWrapper
<
SysJobLog
>
buildWrapper
(
SysJobLog
jobLog
)
{
LambdaQueryWrapper
<
SysJobLog
>
qw
=
new
LambdaQueryWrapper
<>();
if
(
StringUtils
.
isNotBlank
(
jobLog
.
getStatus
())){
qw
.
eq
(
SysJobLog:
:
getStatus
,
jobLog
.
getStatus
());
}
if
(
StringUtils
.
isNotBlank
(
jobLog
.
getJobGroup
())){
qw
.
eq
(
SysJobLog:
:
getJobGroup
,
jobLog
.
getJobGroup
());
}
if
(
StringUtils
.
isNotBlank
(
jobLog
.
getJobName
())){
qw
.
like
(
SysJobLog:
:
getJobName
,
jobLog
.
getJobName
());
}
if
(
StringUtils
.
isNotBlank
(
jobLog
.
getInvokeTarget
())){
qw
.
like
(
SysJobLog:
:
getInvokeTarget
,
jobLog
.
getInvokeTarget
());
}
if
(
Objects
.
nonNull
(
jobLog
.
getBeginTime
())&&
Objects
.
nonNull
(
jobLog
.
getEndTime
())){
qw
.
between
(
SysJobLog:
:
getCreateTime
,
jobLog
.
getBeginTime
(),
jobLog
.
getEndTime
());
}
qw
.
orderByDesc
(
SysJobLog:
:
getCreateTime
);
return
qw
;
}
}
/**
/**
* 通过调度任务日志ID查询调度信息
* 通过调度任务日志ID查询调度信息
*
*
* @param jobLogId 调度任务日志ID
* @param jobLogId 调度任务日志ID
* @return 调度任务日志对象信息
* @return 调度任务日志对象信息
*/
*/
...
@@ -43,7 +73,7 @@ public class SysJobLogServiceImpl implements ISysJobLogService
...
@@ -43,7 +73,7 @@ public class SysJobLogServiceImpl implements ISysJobLogService
/**
/**
* 新增任务日志
* 新增任务日志
*
*
* @param jobLog 调度日志信息
* @param jobLog 调度日志信息
*/
*/
@Override
@Override
...
...
src/main/java/com/sfa/job/service/SysJobServiceImpl.java
浏览文件 @
af30b2f9
package
com
.
sfa
.
job
.
service
;
package
com
.
sfa
.
job
.
service
;
import
java.util.List
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
javax.annotation.PostConstruct
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.sfa.common.core.constant.ScheduleConstants
;
import
com.sfa.common.core.exception.job.TaskException
;
import
com.sfa.common.core.web.domain.PageInfo
;
import
com.sfa.common.core.web.page.TableSupport
;
import
com.sfa.job.domain.SysJob
;
import
com.sfa.job.mapper.SysJobMapper
;
import
com.sfa.job.util.CronUtils
;
import
com.sfa.job.util.ScheduleUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.quartz.JobDataMap
;
import
org.quartz.JobDataMap
;
import
org.quartz.JobKey
;
import
org.quartz.JobKey
;
import
org.quartz.Scheduler
;
import
org.quartz.Scheduler
;
...
@@ -9,12 +18,9 @@ import org.quartz.SchedulerException;
...
@@ -9,12 +18,9 @@ import org.quartz.SchedulerException;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
com.sfa.common.core.constant.ScheduleConstants
;
import
com.sfa.common.core.exception.job.TaskException
;
import
javax.annotation.PostConstruct
;
import
com.sfa.job.domain.SysJob
;
import
java.util.List
;
import
com.sfa.job.mapper.SysJobMapper
;
import
com.sfa.job.util.CronUtils
;
import
com.sfa.job.util.ScheduleUtils
;
/**
/**
* 定时任务调度信息 服务层
* 定时任务调度信息 服务层
...
@@ -51,9 +57,29 @@ public class SysJobServiceImpl implements ISysJobService
...
@@ -51,9 +57,29 @@ public class SysJobServiceImpl implements ISysJobService
* @return
* @return
*/
*/
@Override
@Override
public
List
<
SysJob
>
selectJobList
(
SysJob
job
)
public
PageInfo
selectJobList
(
SysJob
job
)
{
{
return
jobMapper
.
selectJobList
(
job
);
LambdaQueryWrapper
<
SysJob
>
qw
=
buildWrapper
(
job
);
Page
<
SysJob
>
pageR
=
jobMapper
.
selectPage
(
TableSupport
.
pageI
(),
qw
);
PageInfo
<
SysJob
>
pageInfo
=
new
PageInfo
<>(
pageR
);
return
pageInfo
;
}
private
LambdaQueryWrapper
<
SysJob
>
buildWrapper
(
SysJob
job
)
{
LambdaQueryWrapper
<
SysJob
>
qw
=
new
LambdaQueryWrapper
<>();
if
(
StringUtils
.
isNotBlank
(
job
.
getStatus
())){
qw
.
eq
(
SysJob:
:
getStatus
,
job
.
getStatus
());
}
if
(
StringUtils
.
isNotBlank
(
job
.
getJobGroup
())){
qw
.
eq
(
SysJob:
:
getJobGroup
,
job
.
getJobGroup
());
}
if
(
StringUtils
.
isNotBlank
(
job
.
getJobName
())){
qw
.
like
(
SysJob:
:
getJobName
,
job
.
getJobName
());
}
if
(
StringUtils
.
isNotBlank
(
job
.
getInvokeTarget
())){
qw
.
like
(
SysJob:
:
getInvokeTarget
,
job
.
getInvokeTarget
());
}
return
qw
;
}
}
/**
/**
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论