update 更新 SysJob 导入导出 补全 SysUser 试图对象

This commit is contained in:
疯狂的狮子li
2021-08-04 18:52:09 +08:00
parent 9cf4794146
commit 5ca4478540
9 changed files with 365 additions and 219 deletions

View File

@ -1,6 +1,5 @@
package com.ruoyi.quartz.controller;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.controller.BaseController;
@ -9,7 +8,8 @@ import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.job.TaskException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtils;
import com.ruoyi.quartz.domain.SysJob;
import com.ruoyi.quartz.service.ISysJobService;
import com.ruoyi.quartz.util.CronUtils;
@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
@ -48,11 +49,10 @@ public class SysJobController extends BaseController
@PreAuthorize("@ss.hasPermi('monitor:job:export')")
@Log(title = "定时任务", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(SysJob sysJob)
public void export(SysJob sysJob, HttpServletResponse response)
{
List<SysJob> list = jobService.selectJobList(sysJob);
ExcelUtil<SysJob> util = new ExcelUtil<SysJob>(SysJob.class);
return util.exportExcel(list, "定时任务");
ExcelUtils.exportExcel(list, "定时任务", SysJob.class, response);
}
/**

View File

@ -1,85 +1,85 @@
package com.ruoyi.quartz.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.quartz.domain.SysJobLog;
import com.ruoyi.quartz.service.ISysJobLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 调度日志操作处理
*
* @author ruoyi
*/
@RestController
@RequestMapping("/monitor/jobLog")
public class SysJobLogController extends BaseController
{
@Autowired
private ISysJobLogService jobLogService;
/**
* 查询定时任务调度日志列表
*/
@PreAuthorize("@ss.hasPermi('monitor:job:list')")
@GetMapping("/list")
public TableDataInfo list(SysJobLog sysJobLog)
{
return jobLogService.selectPageJobLogList(sysJobLog);
}
/**
* 导出定时任务调度日志列表
*/
@PreAuthorize("@ss.hasPermi('monitor:job:export')")
@Log(title = "任务调度日志", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(SysJobLog sysJobLog)
{
List<SysJobLog> list = jobLogService.selectJobLogList(sysJobLog);
ExcelUtil<SysJobLog> util = new ExcelUtil<SysJobLog>(SysJobLog.class);
return util.exportExcel(list, "调度日志");
}
/**
* 根据调度编号获取详细信息
*/
@PreAuthorize("@ss.hasPermi('monitor:job:query')")
@GetMapping(value = "/{configId}")
public AjaxResult getInfo(@PathVariable Long jobLogId)
{
return AjaxResult.success(jobLogService.selectJobLogById(jobLogId));
}
/**
* 删除定时任务调度日志
*/
@PreAuthorize("@ss.hasPermi('monitor:job:remove')")
@Log(title = "定时任务调度日志", businessType = BusinessType.DELETE)
@DeleteMapping("/{jobLogIds}")
public AjaxResult remove(@PathVariable Long[] jobLogIds)
{
return toAjax(jobLogService.deleteJobLogByIds(jobLogIds));
}
/**
* 清空定时任务调度日志
*/
@PreAuthorize("@ss.hasPermi('monitor:job:remove')")
@Log(title = "调度日志", businessType = BusinessType.CLEAN)
@DeleteMapping("/clean")
public AjaxResult clean()
{
jobLogService.cleanJobLog();
return AjaxResult.success();
}
}
package com.ruoyi.quartz.controller;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtils;
import com.ruoyi.quartz.domain.SysJobLog;
import com.ruoyi.quartz.service.ISysJobLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 调度日志操作处理
*
* @author ruoyi
*/
@RestController
@RequestMapping("/monitor/jobLog")
public class SysJobLogController extends BaseController
{
@Autowired
private ISysJobLogService jobLogService;
/**
* 查询定时任务调度日志列表
*/
@PreAuthorize("@ss.hasPermi('monitor:job:list')")
@GetMapping("/list")
public TableDataInfo list(SysJobLog sysJobLog)
{
return jobLogService.selectPageJobLogList(sysJobLog);
}
/**
* 导出定时任务调度日志列表
*/
@PreAuthorize("@ss.hasPermi('monitor:job:export')")
@Log(title = "任务调度日志", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public void export(SysJobLog sysJobLog, HttpServletResponse response)
{
List<SysJobLog> list = jobLogService.selectJobLogList(sysJobLog);
ExcelUtils.exportExcel(list, "调度日志", SysJobLog.class, response);
}
/**
* 根据调度编号获取详细信息
*/
@PreAuthorize("@ss.hasPermi('monitor:job:query')")
@GetMapping(value = "/{configId}")
public AjaxResult getInfo(@PathVariable Long jobLogId)
{
return AjaxResult.success(jobLogService.selectJobLogById(jobLogId));
}
/**
* 删除定时任务调度日志
*/
@PreAuthorize("@ss.hasPermi('monitor:job:remove')")
@Log(title = "定时任务调度日志", businessType = BusinessType.DELETE)
@DeleteMapping("/{jobLogIds}")
public AjaxResult remove(@PathVariable Long[] jobLogIds)
{
return toAjax(jobLogService.deleteJobLogByIds(jobLogIds));
}
/**
* 清空定时任务调度日志
*/
@PreAuthorize("@ss.hasPermi('monitor:job:remove')")
@Log(title = "调度日志", businessType = BusinessType.CLEAN)
@DeleteMapping("/clean")
public AjaxResult clean()
{
jobLogService.cleanJobLog();
return AjaxResult.success();
}
}

View File

@ -1,11 +1,13 @@
package com.ruoyi.quartz.domain;
import com.ruoyi.common.utils.StringUtils;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.constant.ScheduleConstants;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.quartz.util.CronUtils;
import lombok.Data;
import lombok.NoArgsConstructor;
@ -28,13 +30,14 @@ import java.util.Map;
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sys_job")
@ExcelIgnoreUnannotated
public class SysJob implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 任务ID
*/
@Excel(name = "任务序号", cellType = ColumnType.NUMERIC)
@ExcelProperty(value = "任务序号")
@TableId(value = "job_id", type = IdType.AUTO)
private Long jobId;
@ -43,13 +46,14 @@ public class SysJob implements Serializable {
*/
@NotBlank(message = "任务名称不能为空")
@Size(min = 0, max = 64, message = "任务名称不能超过64个字符")
@Excel(name = "任务名称")
@ExcelProperty(value = "任务名称")
private String jobName;
/**
* 任务组名
*/
@Excel(name = "任务组名")
@ExcelProperty(value = "任务组名", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_job_group")
private String jobGroup;
/**
@ -57,7 +61,7 @@ public class SysJob implements Serializable {
*/
@NotBlank(message = "调用目标字符串不能为空")
@Size(min = 0, max = 500, message = "调用目标字符串长度不能超过500个字符")
@Excel(name = "调用目标字符串")
@ExcelProperty(value = "调用目标字符串")
private String invokeTarget;
/**
@ -65,25 +69,28 @@ public class SysJob implements Serializable {
*/
@NotBlank(message = "Cron执行表达式不能为空")
@Size(min = 0, max = 255, message = "Cron执行表达式不能超过255个字符")
@Excel(name = "执行表达式 ")
@ExcelProperty(value = "执行表达式")
private String cronExpression;
/**
* cron计划策略
*/
@Excel(name = "计划策略 ", readConverterExp = "0=默认,1=立即触发执行,2=触发一次执行,3=不触发立即执行")
private String misfirePolicy = ScheduleConstants.MISFIRE_DEFAULT;
@ExcelProperty(value = "计划策略 ", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0=默认,1=立即触发执行,2=触发一次执行,3=不触发立即执行")
private String misfirePolicy = ScheduleConstants.MISFIRE_DEFAULT;
/**
* 是否并发执行0允许 1禁止
*/
@Excel(name = "并发执行", readConverterExp = "0=允许,1=禁止")
@ExcelProperty(value = "并发执行", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0=允许,1=禁止")
private String concurrent;
/**
* 任务状态0正常 1暂停
*/
@Excel(name = "任务状态", readConverterExp = "0=正常,1=暂停")
@ExcelProperty(value = "任务状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_job_status")
private String status;
/**
@ -96,7 +103,6 @@ public class SysJob implements Serializable {
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
@ -109,7 +115,6 @@ public class SysJob implements Serializable {
* 更新时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**

View File

@ -1,78 +1,82 @@
package com.ruoyi.quartz.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 定时任务调度日志表 sys_job_log
*
* @author ruoyi
*/
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sys_job_log")
public class SysJobLog
{
private static final long serialVersionUID = 1L;
/** ID */
@Excel(name = "日志序号")
@TableId(value = "job_log_id", type = IdType.AUTO)
private Long jobLogId;
/** 任务名称 */
@Excel(name = "任务名称")
private String jobName;
/** 任务组名 */
@Excel(name = "任务组名")
private String jobGroup;
/** 调用目标字符串 */
@Excel(name = "调用目标字符串")
private String invokeTarget;
/** 日志信息 */
@Excel(name = "日志信息")
private String jobMessage;
/** 执行状态0正常 1失败 */
@Excel(name = "执行状态", readConverterExp = "0=正常,1=失败")
private String status;
/** 异常信息 */
@Excel(name = "异常信息")
private String exceptionInfo;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 请求参数
*/
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
/** 开始时间 */
@TableField(exist = false)
private Date startTime;
/** 停止时间 */
@TableField(exist = false)
private Date stopTime;
}
package com.ruoyi.quartz.domain;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.*;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 定时任务调度日志表 sys_job_log
*
* @author ruoyi
*/
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sys_job_log")
@ExcelIgnoreUnannotated
public class SysJobLog
{
private static final long serialVersionUID = 1L;
/** ID */
@ExcelProperty(value = "日志序号")
@TableId(value = "job_log_id", type = IdType.AUTO)
private Long jobLogId;
/** 任务名称 */
@ExcelProperty(value = "任务名称")
private String jobName;
/** 任务组名 */
@ExcelProperty(value = "任务组名", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_job_group")
private String jobGroup;
/** 调用目标字符串 */
@ExcelProperty(value = "调用目标字符串")
private String invokeTarget;
/** 日志信息 */
@ExcelProperty(value = "日志信息")
private String jobMessage;
/** 执行状态0正常 1失败 */
@ExcelProperty(value = "执行状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_common_status")
private String status;
/** 异常信息 */
@ExcelProperty(value = "异常信息")
private String exceptionInfo;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
/**
* 请求参数
*/
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
/** 开始时间 */
@TableField(exist = false)
private Date startTime;
/** 停止时间 */
@TableField(exist = false)
private Date stopTime;
}