update 更新 SysJob 导入导出 补全 SysUser 试图对象
| | |
| | | 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; |
| | |
| | | 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; |
| | |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | @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); |
| | | } |
| | | |
| | | /** |
| | |
| | | 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.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;
|
| | |
|
| | | /**
|
| | |
| | | @PreAuthorize("@ss.hasPermi('monitor:job:export')")
|
| | | @Log(title = "ä»»å¡è°åº¦æ¥å¿", businessType = BusinessType.EXPORT)
|
| | | @GetMapping("/export")
|
| | | public AjaxResult export(SysJobLog sysJobLog)
|
| | | public void export(SysJobLog sysJobLog, HttpServletResponse response) |
| | | {
|
| | | List<SysJobLog> list = jobLogService.selectJobLogList(sysJobLog);
|
| | | ExcelUtil<SysJobLog> util = new ExcelUtil<SysJobLog>(SysJobLog.class);
|
| | | return util.exportExcel(list, "è°åº¦æ¥å¿");
|
| | | ExcelUtils.exportExcel(list, "è°åº¦æ¥å¿", SysJobLog.class, response); |
| | | }
|
| | |
|
| | | /**
|
| | |
| | | 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; |
| | |
| | | @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; |
| | | |
| | |
| | | */ |
| | | @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; |
| | | |
| | | /** |
| | |
| | | */ |
| | | @NotBlank(message = "è°ç¨ç®æ å符串ä¸è½ä¸ºç©º") |
| | | @Size(min = 0, max = 500, message = "è°ç¨ç®æ å符串é¿åº¦ä¸è½è¶
è¿500个å符") |
| | | @Excel(name = "è°ç¨ç®æ å符串") |
| | | @ExcelProperty(value = "è°ç¨ç®æ å符串") |
| | | private String invokeTarget; |
| | | |
| | | /** |
| | |
| | | */ |
| | | @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=ä¸è§¦åç«å³æ§è¡") |
| | | @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; |
| | | |
| | | /** |
| | |
| | | * å建æ¶é´ |
| | | */ |
| | | @TableField(fill = FieldFill.INSERT) |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date createTime; |
| | | |
| | | /** |
| | |
| | | * æ´æ°æ¶é´ |
| | | */ |
| | | @TableField(fill = FieldFill.INSERT_UPDATE) |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date updateTime; |
| | | |
| | | /** |
| | |
| | | package com.ruoyi.quartz.domain;
|
| | |
|
| | | 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.ExcelDictFormat; |
| | | import com.ruoyi.common.convert.ExcelDictConvert; |
| | | import lombok.Data;
|
| | | import lombok.NoArgsConstructor;
|
| | | import lombok.experimental.Accessors;
|
| | |
| | | @NoArgsConstructor
|
| | | @Accessors(chain = true)
|
| | | @TableName("sys_job_log")
|
| | | @ExcelIgnoreUnannotated |
| | | public class SysJobLog
|
| | | {
|
| | | private static final long serialVersionUID = 1L;
|
| | |
|
| | | /** ID */
|
| | | @Excel(name = "æ¥å¿åºå·")
|
| | | @ExcelProperty(value = "æ¥å¿åºå·") |
| | | @TableId(value = "job_log_id", type = IdType.AUTO)
|
| | | private Long jobLogId;
|
| | |
|
| | | /** ä»»å¡åç§° */
|
| | | @Excel(name = "ä»»å¡åç§°")
|
| | | @ExcelProperty(value = "ä»»å¡åç§°") |
| | | private String jobName;
|
| | |
|
| | | /** ä»»å¡ç»å */
|
| | | @Excel(name = "ä»»å¡ç»å")
|
| | | @ExcelProperty(value = "ä»»å¡ç»å", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_job_group") |
| | | private String jobGroup;
|
| | |
|
| | | /** è°ç¨ç®æ å符串 */
|
| | | @Excel(name = "è°ç¨ç®æ å符串")
|
| | | @ExcelProperty(value = "è°ç¨ç®æ å符串") |
| | | private String invokeTarget;
|
| | |
|
| | | /** æ¥å¿ä¿¡æ¯ */
|
| | | @Excel(name = "æ¥å¿ä¿¡æ¯")
|
| | | @ExcelProperty(value = "æ¥å¿ä¿¡æ¯") |
| | | private String jobMessage;
|
| | |
|
| | | /** æ§è¡ç¶æï¼0æ£å¸¸ 1å¤±è´¥ï¼ */
|
| | | @Excel(name = "æ§è¡ç¶æ", readConverterExp = "0=æ£å¸¸,1=失败")
|
| | | @ExcelProperty(value = "æ§è¡ç¶æ", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_common_status") |
| | | private String status;
|
| | |
|
| | | /** å¼å¸¸ä¿¡æ¯ */
|
| | | @Excel(name = "å¼å¸¸ä¿¡æ¯")
|
| | | @ExcelProperty(value = "å¼å¸¸ä¿¡æ¯") |
| | | private String exceptionInfo;
|
| | |
|
| | | /**
|
| | | * å建æ¶é´
|
| | | */
|
| | | @TableField(fill = FieldFill.INSERT)
|
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
| | | private Date createTime;
|
| | |
|
| | | /**
|
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.system.domain.vo; |
| | | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.convert.ExcelDictConvert; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * ç¨æ·å¯¹è±¡å¯¼åºVO |
| | | * |
| | | * @author Lion Li |
| | | */ |
| | | |
| | | @Data |
| | | @NoArgsConstructor |
| | | @Accessors(chain = true) |
| | | public class SysUserExportVo implements Serializable { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * ç¨æ·ID |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·åºå·") |
| | | private Long userId; |
| | | |
| | | /** |
| | | * ç¨æ·è´¦å· |
| | | */ |
| | | @ExcelProperty(value = "ç»å½åç§°") |
| | | private String userName; |
| | | |
| | | /** |
| | | * ç¨æ·æµç§° |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·åç§°") |
| | | private String nickName; |
| | | |
| | | /** |
| | | * ç¨æ·é®ç®± |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·é®ç®±") |
| | | private String email; |
| | | |
| | | /** |
| | | * ææºå·ç |
| | | */ |
| | | @ExcelProperty(value = "ææºå·ç ") |
| | | private String phonenumber; |
| | | |
| | | /** |
| | | * ç¨æ·æ§å« |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·æ§å«", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_user_sex") |
| | | private String sex; |
| | | |
| | | /** |
| | | * å¸å·ç¶æï¼0æ£å¸¸ 1åç¨ï¼ |
| | | */ |
| | | @ExcelProperty(value = "å¸å·ç¶æ", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_common_status") |
| | | private String status; |
| | | |
| | | /** |
| | | * æåç»å½IP |
| | | */ |
| | | @ExcelProperty(value = "æåç»å½IP") |
| | | private String loginIp; |
| | | |
| | | /** |
| | | * æåç»å½æ¶é´ |
| | | */ |
| | | @ExcelProperty(value = "æåç»å½æ¶é´") |
| | | private Date loginDate; |
| | | |
| | | /** |
| | | * é¨é¨åç§° |
| | | */ |
| | | @ExcelProperty(value = "é¨é¨åç§°") |
| | | private String deptName; |
| | | |
| | | /** |
| | | * è´è´£äºº |
| | | */ |
| | | @ExcelProperty(value = "é¨é¨è´è´£äºº") |
| | | private String leader; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.system.domain.vo; |
| | | |
| | | import com.alibaba.excel.annotation.ExcelProperty; |
| | | import com.ruoyi.common.annotation.ExcelDictFormat; |
| | | import com.ruoyi.common.convert.ExcelDictConvert; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | /** |
| | | * ç¨æ·å¯¹è±¡å¯¼å
¥VO |
| | | * |
| | | * @author Lion Li |
| | | */ |
| | | |
| | | @Data |
| | | @NoArgsConstructor |
| | | // @Accessors(chain = true) // 导å
¥ä¸å
è®¸ä½¿ç¨ ä¼æ¾ä¸å°setæ¹æ³ |
| | | public class SysUserImportVo implements Serializable { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * ç¨æ·ID |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·åºå·") |
| | | private Long userId; |
| | | |
| | | /** |
| | | * é¨é¨ID |
| | | */ |
| | | @ExcelProperty(value = "é¨é¨ç¼å·") |
| | | private Long deptId; |
| | | |
| | | /** |
| | | * ç¨æ·è´¦å· |
| | | */ |
| | | @ExcelProperty(value = "ç»å½åç§°") |
| | | private String userName; |
| | | |
| | | /** |
| | | * ç¨æ·æµç§° |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·åç§°") |
| | | private String nickName; |
| | | |
| | | /** |
| | | * ç¨æ·é®ç®± |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·é®ç®±") |
| | | private String email; |
| | | |
| | | /** |
| | | * ææºå·ç |
| | | */ |
| | | @ExcelProperty(value = "ææºå·ç ") |
| | | private String phonenumber; |
| | | |
| | | /** |
| | | * ç¨æ·æ§å« |
| | | */ |
| | | @ExcelProperty(value = "ç¨æ·æ§å«", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_user_sex") |
| | | private String sex; |
| | | |
| | | /** |
| | | * å¸å·ç¶æï¼0æ£å¸¸ 1åç¨ï¼ |
| | | */ |
| | | @ExcelProperty(value = "å¸å·ç¶æ", converter = ExcelDictConvert.class) |
| | | @ExcelDictFormat(dictType = "sys_common_status") |
| | | private String status; |
| | | |
| | | } |
| | |
| | | method: 'delete' |
| | | }) |
| | | } |
| | | |
| | | // 导åºè°åº¦æ¥å¿ |
| | | export function exportJobLog(query) { |
| | | return request({ |
| | | url: '/monitor/jobLog/export', |
| | | method: 'get', |
| | | params: query |
| | | }) |
| | | } |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { listJob, getJob, delJob, addJob, updateJob, exportJob, runJob, changeJobStatus } from "@/api/monitor/job"; |
| | | import { listJob, getJob, delJob, addJob, updateJob, runJob, changeJobStatus } from "@/api/monitor/job"; |
| | | import { downLoadExcel } from "@/utils/download"; |
| | | |
| | | export default { |
| | | name: "Job", |
| | |
| | | }, |
| | | /** å¯¼åºæé®æä½ */ |
| | | handleExport() { |
| | | const queryParams = this.queryParams; |
| | | this.$confirm("æ¯å¦ç¡®è®¤å¯¼åºææå®æ¶ä»»å¡æ°æ®é¡¹?", "è¦å", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "warning" |
| | | }).then(() => { |
| | | this.exportLoading = true; |
| | | return exportJob(queryParams); |
| | | }).then(response => { |
| | | this.download(response.msg); |
| | | this.exportLoading = false; |
| | | }).catch(() => {}); |
| | | downLoadExcel('/monitor/job/export', this.queryParams); |
| | | } |
| | | } |
| | | }; |
| | |
| | | |
| | | <script> |
| | | import { getJob} from "@/api/monitor/job"; |
| | | import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/jobLog"; |
| | | import { listJobLog, delJobLog, cleanJobLog } from "@/api/monitor/jobLog"; |
| | | import { downLoadExcel } from "@/utils/download"; |
| | | |
| | | export default { |
| | | name: "JobLog", |
| | |
| | | }, |
| | | /** å¯¼åºæé®æä½ */ |
| | | handleExport() { |
| | | const queryParams = this.queryParams; |
| | | this.$confirm("æ¯å¦ç¡®è®¤å¯¼åºææè°åº¦æ¥å¿æ°æ®é¡¹?", "è¦å", { |
| | | confirmButtonText: "ç¡®å®", |
| | | cancelButtonText: "åæ¶", |
| | | type: "warning" |
| | | }).then(() => { |
| | | this.exportLoading = true; |
| | | return exportJobLog(queryParams); |
| | | }).then(response => { |
| | | this.download(response.msg); |
| | | this.exportLoading = false; |
| | | }).catch(() => {}); |
| | | downLoadExcel('/monitor/jobLog/export', this.queryParams); |
| | | } |
| | | } |
| | | }; |