From 5ca44785400ed8f736e1735434b5c03a4c56df08 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期三, 04 八月 2021 18:52:09 +0800
Subject: [PATCH] update 更新 SysJob 导入导出 补全 SysUser 试图对象

---
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobLogController.java |  170 ++++++++--------
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJobLog.java               |  160 ++++++++-------
 ruoyi-ui/src/views/monitor/job/log.vue                                          |   20 -
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java    |   10 
 ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserImportVo.java      |   73 +++++++
 ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJob.java                  |   33 +-
 ruoyi-ui/src/api/monitor/jobLog.js                                              |    9 
 ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserExportVo.java      |   93 +++++++++
 ruoyi-ui/src/views/monitor/job/index.vue                                        |   16 -
 9 files changed, 365 insertions(+), 219 deletions(-)

diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java
index b45acbc..353678f 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobController.java
@@ -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.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.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
@@ -48,11 +49,10 @@
     @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);
     }
 
     /**
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobLogController.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobLogController.java
index e7cb9f0..b3c966d 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobLogController.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/controller/SysJobLogController.java
@@ -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();
+    }
+}
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJob.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJob.java
index 26b8628..416dced 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJob.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJob.java
@@ -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 @@
 @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 @@
      */
     @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 @@
      */
     @NotBlank(message = "璋冪敤鐩爣瀛楃涓蹭笉鑳戒负绌�")
     @Size(min = 0, max = 500, message = "璋冪敤鐩爣瀛楃涓查暱搴︿笉鑳借秴杩�500涓瓧绗�")
-    @Excel(name = "璋冪敤鐩爣瀛楃涓�")
+    @ExcelProperty(value = "璋冪敤鐩爣瀛楃涓�")
     private String invokeTarget;
 
     /**
@@ -65,25 +69,28 @@
      */
     @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姝e父 1鏆傚仠锛�
      */
-    @Excel(name = "浠诲姟鐘舵��", readConverterExp = "0=姝e父,1=鏆傚仠")
+    @ExcelProperty(value = "浠诲姟鐘舵��", converter = ExcelDictConvert.class)
+	@ExcelDictFormat(dictType = "sys_job_status")
     private String status;
 
     /**
@@ -96,7 +103,6 @@
      * 鍒涘缓鏃堕棿
      */
     @TableField(fill = FieldFill.INSERT)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date createTime;
 
     /**
@@ -109,7 +115,6 @@
      * 鏇存柊鏃堕棿
      */
     @TableField(fill = FieldFill.INSERT_UPDATE)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date updateTime;
 
     /**
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJobLog.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJobLog.java
index b315c56..bc9074a 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJobLog.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/domain/SysJobLog.java
@@ -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姝e父 1澶辫触锛� */
-    @Excel(name = "鎵ц鐘舵��", readConverterExp = "0=姝e父,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姝e父 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;
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserExportVo.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserExportVo.java
new file mode 100644
index 0000000..6842f0a
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserExportVo.java
@@ -0,0 +1,93 @@
+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姝e父 1鍋滅敤锛�
+	 */
+	@ExcelProperty(value = "甯愬彿鐘舵��", converter = ExcelDictConvert.class)
+	@ExcelDictFormat(dictType = "sys_common_status")
+	private String status;
+
+	/**
+	 * 鏈�鍚庣櫥褰旾P
+	 */
+	@ExcelProperty(value = "鏈�鍚庣櫥褰旾P")
+	private String loginIp;
+
+	/**
+	 * 鏈�鍚庣櫥褰曟椂闂�
+	 */
+	@ExcelProperty(value = "鏈�鍚庣櫥褰曟椂闂�")
+	private Date loginDate;
+
+	/**
+	 * 閮ㄩ棬鍚嶇О
+	 */
+	@ExcelProperty(value = "閮ㄩ棬鍚嶇О")
+	private String deptName;
+
+	/**
+	 * 璐熻矗浜�
+	 */
+	@ExcelProperty(value = "閮ㄩ棬璐熻矗浜�")
+	private String leader;
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserImportVo.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserImportVo.java
new file mode 100644
index 0000000..9c1a7d3
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/vo/SysUserImportVo.java
@@ -0,0 +1,73 @@
+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姝e父 1鍋滅敤锛�
+	 */
+	@ExcelProperty(value = "甯愬彿鐘舵��", converter = ExcelDictConvert.class)
+	@ExcelDictFormat(dictType = "sys_common_status")
+	private String status;
+
+}
diff --git a/ruoyi-ui/src/api/monitor/jobLog.js b/ruoyi-ui/src/api/monitor/jobLog.js
index be1fffd..6e0be61 100644
--- a/ruoyi-ui/src/api/monitor/jobLog.js
+++ b/ruoyi-ui/src/api/monitor/jobLog.js
@@ -24,12 +24,3 @@
     method: 'delete'
   })
 }
-
-// 瀵煎嚭璋冨害鏃ュ織
-export function exportJobLog(query) {
-  return request({
-    url: '/monitor/jobLog/export',
-    method: 'get',
-    params: query
-  })
-}
\ No newline at end of file
diff --git a/ruoyi-ui/src/views/monitor/job/index.vue b/ruoyi-ui/src/views/monitor/job/index.vue
index 0e0d943..d12e73e 100644
--- a/ruoyi-ui/src/views/monitor/job/index.vue
+++ b/ruoyi-ui/src/views/monitor/job/index.vue
@@ -280,7 +280,8 @@
 </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",
@@ -505,18 +506,7 @@
     },
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     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);
     }
   }
 };
diff --git a/ruoyi-ui/src/views/monitor/job/log.vue b/ruoyi-ui/src/views/monitor/job/log.vue
index 25db43f..8ce0111 100644
--- a/ruoyi-ui/src/views/monitor/job/log.vue
+++ b/ruoyi-ui/src/views/monitor/job/log.vue
@@ -177,8 +177,9 @@
 </template>
 
 <script>
-import { getJob} from "@/api/monitor/job";
-import { listJobLog, delJobLog, exportJobLog, cleanJobLog } from "@/api/monitor/jobLog";
+import { getJob } from "@/api/monitor/job";
+import { listJobLog, delJobLog, cleanJobLog } from "@/api/monitor/jobLog";
+import { downLoadExcel } from "@/utils/download";
 
 export default {
   name: "JobLog",
@@ -310,19 +311,8 @@
     },
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     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);
     }
   }
 };
-</script>
\ No newline at end of file
+</script>

--
Gitblit v1.9.3