From dbf7396c1b492922735d69ab9edbeffb60b62369 Mon Sep 17 00:00:00 2001 From: xjs <1294405880@qq.com> Date: Tue, 1 Mar 2022 11:51:59 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BB=BB=E5=8A=A1=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=89=8D=E5=90=8E=E7=AB=AFcrud=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-ui/src/api/business/log/tasklog.js | 19 ++ .../src/views/business/log/tasklog/index.vue | 240 +++++++++++++++++- .../tasklog/controller/TaskLogController.java | 55 +++- .../java/com/xjs/tasklog/domain/TaskLog.java | 28 +- .../com/xjs/tasklog/mapper/TaskLogMapper.java | 27 ++ .../xjs/tasklog/service/TaskLogService.java | 30 +++ .../service/impl/TaskLogServiceImpl.java | 44 ++++ .../resources/mapper/log/TaskLogMapper.xml | 38 +++ 8 files changed, 464 insertions(+), 17 deletions(-) create mode 100644 ruoyi-ui/src/api/business/log/tasklog.js create mode 100644 xjs-business/xjs-business-log/src/main/resources/mapper/log/TaskLogMapper.xml diff --git a/ruoyi-ui/src/api/business/log/tasklog.js b/ruoyi-ui/src/api/business/log/tasklog.js new file mode 100644 index 00000000..44a383fa --- /dev/null +++ b/ruoyi-ui/src/api/business/log/tasklog.js @@ -0,0 +1,19 @@ +import request from '@/utils/request' + +// 查询任务日志列表 +export function listTaskLog(query) { + return request({ + url: '/log/taskLog/list', + method: 'get', + params: query + }) +} + + +// 删除任务日志 +export function delTaskLog(id) { + return request({ + url: '/log/taskLog/' + id, + method: 'delete' + }) +} diff --git a/ruoyi-ui/src/views/business/log/tasklog/index.vue b/ruoyi-ui/src/views/business/log/tasklog/index.vue index b7c41fde..5a763eea 100644 --- a/ruoyi-ui/src/views/business/log/tasklog/index.vue +++ b/ruoyi-ui/src/views/business/log/tasklog/index.vue @@ -1,13 +1,243 @@ + name: "TaskLog", + mixins: [pickerOptions], + data() { + return { + // 遮罩层 + loading: true, + // 选中数组 + ids: [], + // 非单个禁用 + single: true, + // 非多个禁用 + multiple: true, + // 显示搜索条件 + showSearch: true, + // 总条数 + total: 0, + // 任务日志表格数据 + taskLogList: [], + // 弹出层标题 + title: "", + // 是否显示弹出层 + open: false, + // 查询参数 + queryParams: { + pageNum: 1, + pageSize: 10, + name: null, + isAsc: null, + orderByColumn: null, + }, + // 表单参数 + form: {}, + // 表单校验 + rules: { + }, + + //检查查询范围 + daterangeCreateTime: [], - + //标记排序重置(修复点击重置请求两次接口BUG) + sortStatus: true, + }; + }, + created() { + this.resetSort() + this.getList(); + }, + methods: { + /** 查询任务日志列表 */ + getList() { + if (null != this.daterangeCreateTime && '' != this.daterangeCreateTime) { + this.queryParams.createTime = this.daterangeCreateTime[0]; + this.queryParams.endCreateTime = this.daterangeCreateTime[1]; + } + this.loading = true; + listTaskLog(this.queryParams).then(response => { + this.loading = false; + this.taskLogList = response.rows; + this.total = response.total; + }); + }, + + //重置排序 + resetSort() { + this.queryParams.isAsc = this.defaultSort.order + this.queryParams.orderByColumn = this.defaultSort.prop + }, + + /** 搜索按钮操作 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 重置按钮操作 */ + resetQuery() { + this.resetSort() + this.daterangeCreateTime = []; + this.queryParams.createTime = null + this.queryParams.endCreateTime = null + + this.sortStatus=false + this.$refs.tables.sort(this.defaultSort.prop, this.defaultSort.order)//拿到默认排序 + this.sortStatus=true + + this.resetForm("queryForm"); + this.handleQuery(); + }, + // 多选框选中数据 + handleSelectionChange(selection) { + this.ids = selection.map(item => item.id) + this.single = selection.length!==1 + this.multiple = !selection.length + }, + + /** 删除按钮操作 */ + handleDelete(row) { + const ids = row.id || this.ids; + this.$modal.confirm('是否确认删除任务日志编号为"' + ids + '"的数据项?').then(function() { + return delTaskLog(ids); + }).then(() => { + this.getList(); + this.$modal.msgSuccess("删除成功"); + }).catch(() => {}); + }, + /** 导出按钮操作 */ + handleExport() { + this.download('log/taskLog/export', { + ...this.queryParams + }, `taskLog_${new Date().getTime()}.xlsx`) + }, + + /** 排序触发事件 */ + handleSortChange(column) { + this.queryParams.isAsc = column.order; + this.queryParams.orderByColumn = column.prop; + + + //点击重置的时候不再次请求接口 + if (this.sortStatus) { + this.getList(); + } + }, + } +}; + diff --git a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/controller/TaskLogController.java b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/controller/TaskLogController.java index 01690e5c..6f20d71b 100644 --- a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/controller/TaskLogController.java +++ b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/controller/TaskLogController.java @@ -1,25 +1,33 @@ package com.xjs.tasklog.controller; import com.ruoyi.common.core.domain.R; +import com.ruoyi.common.core.utils.poi.ExcelUtil; +import com.ruoyi.common.core.web.controller.BaseController; +import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.core.web.page.TableDataInfo; +import com.ruoyi.common.log.annotation.Log; +import com.ruoyi.common.log.enums.BusinessType; +import com.ruoyi.common.security.annotation.RequiresPermissions; import com.xjs.tasklog.domain.TaskLog; import com.xjs.tasklog.service.TaskLogService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; /** * 任务日志controller + * * @author xiejs * @since 2022-03-01 */ @RestController @RequestMapping("taskLog") @Api(tags = "业务模块-任务日志") -public class TaskLogController { +public class TaskLogController extends BaseController { @Autowired private TaskLogService taskLogService; @@ -33,4 +41,41 @@ public class TaskLogController { boolean save = taskLogService.save(taskLog); return save ? R.ok() : R.fail(); } + + + //--------------------------代码生成---------------------------- + + /** + * 查询任务日志列表 + */ + @RequiresPermissions("log:taskLog:list") + @GetMapping("/list") + public TableDataInfo list(TaskLog taskLog) { + startPage(); + List list = taskLogService.selectTaskLogList(taskLog); + return getDataTable(list); + } + + /** + * 导出任务日志列表 + */ + @RequiresPermissions("log:taskLog:export") + @Log(title = "任务日志", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, TaskLog taskLog) { + List list = taskLogService.selectTaskLogList(taskLog); + ExcelUtil util = new ExcelUtil<>(TaskLog.class); + util.exportExcel(response, list, "任务日志数据"); + } + + + /** + * 删除任务日志 + */ + @RequiresPermissions("log:taskLog:remove") + @Log(title = "任务日志", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) { + return toAjax(taskLogService.deleteTaskLogByIds(ids)); + } } diff --git a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/domain/TaskLog.java b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/domain/TaskLog.java index 9f92500f..dad4278e 100644 --- a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/domain/TaskLog.java +++ b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/domain/TaskLog.java @@ -3,40 +3,54 @@ package com.xjs.tasklog.domain; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.common.core.annotation.Excel; +import com.xjs.entity.BaseEntity; import lombok.Data; +import lombok.EqualsAndHashCode; import java.io.Serializable; import java.util.Date; /** * 任务日志实体类 + * * @author xiejs * @since 2022-03-01 */ @Data -public class TaskLog implements Serializable { +@EqualsAndHashCode(callSuper = true) +public class TaskLog extends BaseEntity implements Serializable { private static final long serialVersionUID = 1L; - /** 主键id */ + /** + * 主键id + */ private Long id; - /** 任务名称 */ + /** + * 任务名称 + */ @Excel(name = "任务名称") private String name; - /** 方法名 */ + /** + * 方法名 + */ @Excel(name = "方法名") private String method; - /** 类路径 */ + /** + * 类路径 + */ @Excel(name = "类路径") private String classPath; - /** 请求时间 */ + /** + * 请求时间 + */ @Excel(name = "请求时间") private Long requestTime; - @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @TableField(fill = FieldFill.INSERT) private Date createTime; diff --git a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/mapper/TaskLogMapper.java b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/mapper/TaskLogMapper.java index f261474f..99be12e2 100644 --- a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/mapper/TaskLogMapper.java +++ b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/mapper/TaskLogMapper.java @@ -3,6 +3,8 @@ package com.xjs.tasklog.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.xjs.tasklog.domain.TaskLog; +import java.util.List; + /** * 任务日志mapper * @author xiejs @@ -10,4 +12,29 @@ import com.xjs.tasklog.domain.TaskLog; */ public interface TaskLogMapper extends BaseMapper { + //-------------------------代码生成-------------------------- + + /** + * 查询任务日志列表 + * + * @param taskLog 任务日志 + * @return 任务日志集合 + */ + public List selectTaskLogList(TaskLog taskLog); + + /** + * 删除任务日志 + * + * @param id 任务日志主键 + * @return 结果 + */ + public int deleteTaskLogById(Long id); + + /** + * 批量删除任务日志 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteTaskLogByIds(Long[] ids); } diff --git a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/TaskLogService.java b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/TaskLogService.java index 56a7e926..60ac152a 100644 --- a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/TaskLogService.java +++ b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/TaskLogService.java @@ -3,10 +3,40 @@ package com.xjs.tasklog.service; import com.baomidou.mybatisplus.extension.service.IService; import com.xjs.tasklog.domain.TaskLog; +import java.util.List; + /** * 任务日志service * @author xiejs * @since 2022-03-01 */ public interface TaskLogService extends IService { + + //-----------------------代码生成------------------------------ + + /** + * 查询任务日志列表 + * + * @param taskLog 任务日志 + * @return 任务日志集合 + */ + public List selectTaskLogList(TaskLog taskLog); + + /** + * 批量删除任务日志 + * + * @param ids 需要删除的任务日志主键集合 + * @return 结果 + */ + public int deleteTaskLogByIds(Long[] ids); + + /** + * 删除任务日志信息 + * + * @param id 任务日志主键 + * @return 结果 + */ + public int deleteTaskLogById(Long id); + + } diff --git a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/impl/TaskLogServiceImpl.java b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/impl/TaskLogServiceImpl.java index 5f764d6a..2ded4b99 100644 --- a/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/impl/TaskLogServiceImpl.java +++ b/xjs-business/xjs-business-log/src/main/java/com/xjs/tasklog/service/impl/TaskLogServiceImpl.java @@ -6,11 +6,55 @@ import com.xjs.tasklog.mapper.TaskLogMapper; import com.xjs.tasklog.service.TaskLogService; import org.springframework.stereotype.Service; +import javax.annotation.Resource; +import java.util.List; + /** * 任务日志service实现 + * * @author xiejs * @since 2022-03-01 */ @Service public class TaskLogServiceImpl extends ServiceImpl implements TaskLogService { + @Resource + private TaskLogMapper taskLogMapper; + + + //----------------------------------代码生成------------------------------------ + + /** + * 查询任务日志列表 + * + * @param taskLog 任务日志 + * @return 任务日志 + */ + @Override + public List selectTaskLogList(TaskLog taskLog) { + return taskLogMapper.selectTaskLogList(taskLog); + } + + + /** + * 批量删除任务日志 + * + * @param ids 需要删除的任务日志主键 + * @return 结果 + */ + @Override + public int deleteTaskLogByIds(Long[] ids) { + return taskLogMapper.deleteTaskLogByIds(ids); + } + + /** + * 删除任务日志信息 + * + * @param id 任务日志主键 + * @return 结果 + */ + @Override + public int deleteTaskLogById(Long id) { + return taskLogMapper.deleteTaskLogById(id); + } + } diff --git a/xjs-business/xjs-business-log/src/main/resources/mapper/log/TaskLogMapper.xml b/xjs-business/xjs-business-log/src/main/resources/mapper/log/TaskLogMapper.xml new file mode 100644 index 00000000..e29a3263 --- /dev/null +++ b/xjs-business/xjs-business-log/src/main/resources/mapper/log/TaskLogMapper.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + select id, name, method, class_path, request_time, create_time from task_log + + + + + + delete from task_log where id = #{id} + + + + delete from task_log where id in + + #{id} + + + \ No newline at end of file