update 修改 操作日志导出 适配easyexcel工具

This commit is contained in:
疯狂的狮子li 2021-08-03 19:29:59 +08:00
parent 89cca8af07
commit da4e080656
4 changed files with 37 additions and 40 deletions

View File

@ -5,18 +5,19 @@ import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.utils.poi.ExcelUtils;
import com.ruoyi.system.domain.SysOperLog; import com.ruoyi.system.domain.SysOperLog;
import com.ruoyi.system.service.ISysOperLogService; import com.ruoyi.system.service.ISysOperLogService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
/** /**
* 操作日志记录 * 操作日志记录
* *
* @author ruoyi * @author ruoyi
*/ */
@RestController @RestController
@ -36,11 +37,12 @@ public class SysOperlogController extends BaseController
@Log(title = "操作日志", businessType = BusinessType.EXPORT) @Log(title = "操作日志", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('monitor:operlog:export')") @PreAuthorize("@ss.hasPermi('monitor:operlog:export')")
@GetMapping("/export") @GetMapping("/export")
public AjaxResult export(SysOperLog operLog) public void export(SysOperLog operLog, HttpServletResponse response)
{ {
List<SysOperLog> list = operLogService.selectOperLogList(operLog); List<SysOperLog> list = operLogService.selectOperLogList(operLog);
ExcelUtil<SysOperLog> util = new ExcelUtil<SysOperLog>(SysOperLog.class); ExcelUtils.exportExcel(list, "操作日志", SysOperLog.class, response);
return util.exportExcel(list, "操作日志"); // ExcelUtil<SysOperLog> util = new ExcelUtil<SysOperLog>(SysOperLog.class);
// return util.exportEasyExcel(list, "操作日志");
} }
@Log(title = "操作日志", businessType = BusinessType.DELETE) @Log(title = "操作日志", businessType = BusinessType.DELETE)

View File

@ -1,12 +1,13 @@
package com.ruoyi.system.domain; package com.ruoyi.system.domain;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.annotation.Excel.ColumnType;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.experimental.Accessors; import lombok.experimental.Accessors;
@ -26,26 +27,31 @@ import java.util.Map;
@NoArgsConstructor @NoArgsConstructor
@Accessors(chain = true) @Accessors(chain = true)
@TableName("sys_oper_log") @TableName("sys_oper_log")
@ExcelIgnoreUnannotated
//@ColumnWidth(16)
//@HeadRowHeight(14)
//@HeadFontStyle(fontHeightInPoints = 11)
public class SysOperLog implements Serializable { public class SysOperLog implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** /**
* 日志主键 * 日志主键
*/ */
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC) @ExcelProperty(value = "操作序号")
@TableId(value = "oper_id", type = IdType.AUTO) @TableId(value = "oper_id", type = IdType.AUTO)
private Long operId; private Long operId;
/** /**
* 操作模块 * 操作模块
*/ */
@Excel(name = "操作模块") @ExcelProperty(value = "操作模块")
private String title; private String title;
/** /**
* 业务类型0其它 1新增 2修改 3删除 * 业务类型0其它 1新增 2修改 3删除
*/ */
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据") @ExcelProperty(value = "业务类型", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_oper_type")
private Integer businessType; private Integer businessType;
/** /**
@ -57,80 +63,81 @@ public class SysOperLog implements Serializable {
/** /**
* 请求方法 * 请求方法
*/ */
@Excel(name = "请求方法") @ExcelProperty(value = "请求方法")
private String method; private String method;
/** /**
* 请求方式 * 请求方式
*/ */
@Excel(name = "请求方式") @ExcelProperty(value = "请求方式")
private String requestMethod; private String requestMethod;
/** /**
* 操作类别0其它 1后台用户 2手机端用户 * 操作类别0其它 1后台用户 2手机端用户
*/ */
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户") @ExcelProperty(value = "操作类别", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType; private Integer operatorType;
/** /**
* 操作人员 * 操作人员
*/ */
@Excel(name = "操作人员") @ExcelProperty(value = "操作人员")
private String operName; private String operName;
/** /**
* 部门名称 * 部门名称
*/ */
@Excel(name = "部门名称") @ExcelProperty(value = "部门名称")
private String deptName; private String deptName;
/** /**
* 请求url * 请求url
*/ */
@Excel(name = "请求地址") @ExcelProperty(value = "请求地址")
private String operUrl; private String operUrl;
/** /**
* 操作地址 * 操作地址
*/ */
@Excel(name = "操作地址") @ExcelProperty(value = "操作地址")
private String operIp; private String operIp;
/** /**
* 操作地点 * 操作地点
*/ */
@Excel(name = "操作地点") @ExcelProperty(value = "操作地点")
private String operLocation; private String operLocation;
/** /**
* 请求参数 * 请求参数
*/ */
@Excel(name = "请求参数") @ExcelProperty(value = "请求参数")
private String operParam; private String operParam;
/** /**
* 返回参数 * 返回参数
*/ */
@Excel(name = "返回参数") @ExcelProperty(value = "返回参数")
private String jsonResult; private String jsonResult;
/** /**
* 操作状态0正常 1异常 * 操作状态0正常 1异常
*/ */
@Excel(name = "状态", readConverterExp = "0=正常,1=异常") @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
@ExcelDictFormat(dictType = "sys_common_status")
private Integer status; private Integer status;
/** /**
* 错误消息 * 错误消息
*/ */
@Excel(name = "错误消息") @ExcelProperty(value = "错误消息")
private String errorMsg; private String errorMsg;
/** /**
* 操作时间 * 操作时间
*/ */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ExcelProperty(value = "操作时间")
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date operTime; private Date operTime;
/** /**

View File

@ -189,6 +189,7 @@
<script> <script>
import { list, delOperlog, cleanOperlog, exportOperlog } from "@/api/monitor/operlog"; import { list, delOperlog, cleanOperlog, exportOperlog } from "@/api/monitor/operlog";
import { downLoadExcel } from "@/utils/zipdownload";
export default { export default {
name: "Operlog", name: "Operlog",
@ -316,18 +317,7 @@ export default {
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
const queryParams = this.queryParams; downLoadExcel('/monitor/operlog/export', this.queryParams);
this.$confirm('是否确认导出所有操作日志数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.exportLoading = true;
return exportOperlog(queryParams);
}).then(response => {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
} }
} }
}; };

View File

@ -170,9 +170,7 @@
<script> <script>
import { listOss, delOss } from "@/api/system/oss"; import { listOss, delOss } from "@/api/system/oss";
import { downLoadOss } from "@/utils/ossdownload"; import { downLoadOss } from "@/utils/zipdownload";
import { updateConfig } from "@/api/system/config";
export default { export default {
name: "Oss", name: "Oss",