Ver Fonte

任务日志相关

小车车 há 3 meses atrás
pai
commit
20e7b00b3f

+ 94 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworklog/WorkflowWorkLogController.java

@@ -0,0 +1,94 @@
+package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog;
+
+import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogPageReqVO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogRespVO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogSaveReqVO;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.mappoint.workdesign.WorkflowWorkLogService;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkLogDO;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.validation.Valid;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.io.IOException;
+import java.util.List;
+
+import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
+
+
+@Tag(name = "管理后台 - 作业流程操作日志")
+@RestController
+@RequestMapping("/isc/workflow-work-log")
+@Validated
+public class WorkflowWorkLogController {
+
+    @Resource
+    private WorkflowWorkLogService workflowWorkLogService;
+
+    @PostMapping("/insertWorkflowWorkLog")
+    @Operation(summary = "创建作业流程操作日志")
+    @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:create')")
+    public CommonResult<Long> insertWorkflowWorkLog(@Valid @RequestBody WorkflowWorkLogSaveReqVO createReqVO) {
+        return success(workflowWorkLogService.createWorkflowWorkLog(createReqVO));
+    }
+
+    @PutMapping("/updateWorkflowWorkLog")
+    @Operation(summary = "更新作业流程操作日志")
+    @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:update')")
+    public CommonResult<Boolean> updateWorkflowWorkLog(@Valid @RequestBody WorkflowWorkLogSaveReqVO updateReqVO) {
+        workflowWorkLogService.updateWorkflowWorkLog(updateReqVO);
+        return success(true);
+    }
+
+    @DeleteMapping("/deleteWorkflowWorkLogList")
+    @Parameter(name = "ids", description = "编号", required = true)
+    @Operation(summary = "批量删除作业流程操作日志")
+                @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:delete')")
+    public CommonResult<Boolean> deleteWorkflowWorkLogList(@RequestParam("ids") List<Long> ids) {
+        workflowWorkLogService.deleteWorkflowWorkLogListByIds(ids);
+        return success(true);
+    }
+
+    @GetMapping("/selectWorkflowWorkLogById")
+    @Operation(summary = "获得作业流程操作日志")
+    @Parameter(name = "id", description = "编号", required = true, example = "1024")
+    @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:query')")
+    public CommonResult<WorkflowWorkLogRespVO> selectWorkflowWorkLogById(@RequestParam("id") Long id) {
+        WorkflowWorkLogDO workflowWorkLog = workflowWorkLogService.getWorkflowWorkLog(id);
+        return success(BeanUtils.toBean(workflowWorkLog, WorkflowWorkLogRespVO.class));
+    }
+
+    @GetMapping("/getWorkflowWorkLogPage")
+    @Operation(summary = "获得作业流程操作日志分页")
+    @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:query')")
+    public CommonResult<PageResult<WorkflowWorkLogRespVO>> getWorkflowWorkLogPage(@Valid WorkflowWorkLogPageReqVO pageReqVO) {
+        PageResult<WorkflowWorkLogDO> pageResult = workflowWorkLogService.getWorkflowWorkLogPage(pageReqVO);
+        return success(BeanUtils.toBean(pageResult, WorkflowWorkLogRespVO.class));
+    }
+
+    @GetMapping("/exportWorkflowWorkLogExcel")
+    @Operation(summary = "导出作业流程操作日志 Excel")
+    @PreAuthorize("@ss.hasPermission('isc:workflow-work-log:export')")
+    @ApiAccessLog(operateType = EXPORT)
+    public void exportWorkflowWorkLogExcel(@Valid WorkflowWorkLogPageReqVO pageReqVO,
+              HttpServletResponse response) throws IOException {
+        pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
+        List<WorkflowWorkLogDO> list = workflowWorkLogService.getWorkflowWorkLogPage(pageReqVO).getList();
+        // 导出 Excel
+        ExcelUtils.write(response, "作业流程操作日志.xls", "数据", WorkflowWorkLogRespVO.class,
+                        BeanUtils.toBean(list, WorkflowWorkLogRespVO.class));
+    }
+
+}

+ 49 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworklog/vo/WorkflowWorkLogPageReqVO.java

@@ -0,0 +1,49 @@
+package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo;
+
+import lombok.*;
+import java.util.*;
+import io.swagger.v3.oas.annotations.media.Schema;
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
+
+@Schema(description = "管理后台 - 作业流程操作日志分页 Request VO")
+@Data
+public class WorkflowWorkLogPageReqVO extends PageParam {
+
+    @Schema(description = "作业/任务节点ID,关联作业主表或任务节点表主键", example = "12724")
+    private String nodeId;
+
+    @Schema(description = "上一任务节点ID,关联上一节点日志的node_id,作业创建时置NULL", example = "28235")
+    private String parentNodeId;
+
+    @Schema(description = "操作步骤,仅能量隔离、隔离解除节点任务有效,赋值为正整数,其他任务置NULL")
+    private String step;
+
+    @Schema(description = "操作用户/任务负责人ID,关联用户表主键", example = "9545")
+    private String userId;
+
+    @Schema(description = "操作用户/任务负责人昵称", example = "王五")
+    private String nickName;
+
+    @Schema(description = "操作用户/任务负责人头像地址,默认空字符串")
+    private String avatar;
+
+    @Schema(description = "任务/行为开始时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] taskStartTime;
+
+    @Schema(description = "任务/行为完成时间,未完成置NULL,作业创建时与开始时间一致")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] taskFinishTime;
+
+    @Schema(description = "任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离")
+    private String taskContent;
+
+    @Schema(description = "创建时间")
+    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
+    private LocalDateTime[] createTime;
+
+}

+ 59 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworklog/vo/WorkflowWorkLogRespVO.java

@@ -0,0 +1,59 @@
+package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+import com.alibaba.excel.annotation.*;
+
+@Schema(description = "管理后台 - 作业流程操作日志 Response VO")
+@Data
+@ExcelIgnoreUnannotated
+public class WorkflowWorkLogRespVO {
+
+    @Schema(description = "日志ID,自增长主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26301")
+    @ExcelProperty("日志ID,自增长主键")
+    private Long id;
+
+    @Schema(description = "作业/任务节点ID,关联作业主表或任务节点表主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "12724")
+    @ExcelProperty("作业/任务节点ID,关联作业主表或任务节点表主键")
+    private String nodeId;
+
+    @Schema(description = "上一任务节点ID,关联上一节点日志的node_id,作业创建时置NULL", example = "28235")
+    @ExcelProperty("上一任务节点ID,关联上一节点日志的node_id,作业创建时置NULL")
+    private String parentNodeId;
+
+    @Schema(description = "操作步骤,仅能量隔离、隔离解除节点任务有效,赋值为正整数,其他任务置NULL")
+    @ExcelProperty("操作步骤,仅能量隔离、隔离解除节点任务有效,赋值为正整数,其他任务置NULL")
+    private String step;
+
+    @Schema(description = "操作用户/任务负责人ID,关联用户表主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "9545")
+    @ExcelProperty("操作用户/任务负责人ID,关联用户表主键")
+    private String userId;
+
+    @Schema(description = "操作用户/任务负责人昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
+    @ExcelProperty("操作用户/任务负责人昵称")
+    private String nickName;
+
+    @Schema(description = "操作用户/任务负责人头像地址,默认空字符串")
+    @ExcelProperty("操作用户/任务负责人头像地址,默认空字符串")
+    private String avatar;
+
+    @Schema(description = "任务/行为开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
+    @ExcelProperty("任务/行为开始时间")
+    private LocalDateTime taskStartTime;
+
+    @Schema(description = "任务/行为完成时间,未完成置NULL,作业创建时与开始时间一致")
+    @ExcelProperty("任务/行为完成时间,未完成置NULL,作业创建时与开始时间一致")
+    private LocalDateTime taskFinishTime;
+
+    @Schema(description = "任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离", requiredMode = Schema.RequiredMode.REQUIRED)
+    @ExcelProperty("任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离")
+    private String taskContent;
+
+    @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
+    @ExcelProperty("创建时间")
+    private LocalDateTime createTime;
+
+}

+ 49 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/controller/admin/workdesign/workflowworklog/vo/WorkflowWorkLogSaveReqVO.java

@@ -0,0 +1,49 @@
+package cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.*;
+import java.util.*;
+import jakarta.validation.constraints.*;
+import org.springframework.format.annotation.DateTimeFormat;
+import java.time.LocalDateTime;
+
+@Schema(description = "管理后台 - 作业流程操作日志新增/修改 Request VO")
+@Data
+public class WorkflowWorkLogSaveReqVO {
+
+    @Schema(description = "日志ID,自增长主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "26301")
+    private Long id;
+
+    @Schema(description = "作业/任务节点ID,关联作业主表或任务节点表主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "12724")
+    @NotEmpty(message = "作业/任务节点ID,关联作业主表或任务节点表主键不能为空")
+    private String nodeId;
+
+    @Schema(description = "上一任务节点ID,关联上一节点日志的node_id,作业创建时置NULL", example = "28235")
+    private String parentNodeId;
+
+    @Schema(description = "操作步骤,仅能量隔离、隔离解除节点任务有效,赋值为正整数,其他任务置NULL")
+    private String step;
+
+    @Schema(description = "操作用户/任务负责人ID,关联用户表主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "9545")
+    @NotEmpty(message = "操作用户/任务负责人ID,关联用户表主键不能为空")
+    private String userId;
+
+    @Schema(description = "操作用户/任务负责人昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
+    @NotEmpty(message = "操作用户/任务负责人昵称不能为空")
+    private String nickName;
+
+    @Schema(description = "操作用户/任务负责人头像地址,默认空字符串")
+    private String avatar;
+
+    @Schema(description = "任务/行为开始时间", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotNull(message = "任务/行为开始时间不能为空")
+    private LocalDateTime taskStartTime;
+
+    @Schema(description = "任务/行为完成时间,未完成置NULL,作业创建时与开始时间一致")
+    private LocalDateTime taskFinishTime;
+
+    @Schema(description = "任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离", requiredMode = Schema.RequiredMode.REQUIRED)
+    @NotEmpty(message = "任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离不能为空")
+    private String taskContent;
+
+}

+ 64 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/dal/dataobject/mappoint/workdesign/WorkflowWorkLogService.java

@@ -0,0 +1,64 @@
+package cn.iocoder.yudao.module.iscs.dal.dataobject.mappoint.workdesign;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogPageReqVO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogSaveReqVO;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkLogDO;
+import com.baomidou.mybatisplus.extension.service.IService;
+import jakarta.validation.Valid;
+
+import java.util.List;
+
+/**
+ * 作业流程操作日志 Service 接口
+ *
+ * @author Bozzys
+ */
+public interface WorkflowWorkLogService extends IService<WorkflowWorkLogDO> {
+
+    /**
+     * 创建作业流程操作日志
+     *
+     * @param createReqVO 创建信息
+     * @return 编号
+     */
+    Long createWorkflowWorkLog(@Valid WorkflowWorkLogSaveReqVO createReqVO);
+
+    /**
+     * 更新作业流程操作日志
+     *
+     * @param updateReqVO 更新信息
+     */
+    void updateWorkflowWorkLog(@Valid WorkflowWorkLogSaveReqVO updateReqVO);
+
+    /**
+     * 删除作业流程操作日志
+     *
+     * @param id 编号
+     */
+    void deleteWorkflowWorkLog(Long id);
+
+    /**
+    * 批量删除作业流程操作日志
+    *
+    * @param ids 编号
+    */
+    void deleteWorkflowWorkLogListByIds(List<Long> ids);
+
+    /**
+     * 获得作业流程操作日志
+     *
+     * @param id 编号
+     * @return 作业流程操作日志
+     */
+    WorkflowWorkLogDO getWorkflowWorkLog(Long id);
+
+    /**
+     * 获得作业流程操作日志分页
+     *
+     * @param pageReqVO 分页查询
+     * @return 作业流程操作日志分页
+     */
+    PageResult<WorkflowWorkLogDO> getWorkflowWorkLogPage(WorkflowWorkLogPageReqVO pageReqVO);
+
+}

+ 68 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/dal/dataobject/mappoint/workdesign/WorkflowWorkLogServiceImpl.java

@@ -0,0 +1,68 @@
+package cn.iocoder.yudao.module.iscs.dal.dataobject.mappoint.workdesign;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogPageReqVO;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogSaveReqVO;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkLogDO;
+import cn.iocoder.yudao.module.iscs.dal.mysql.workdesign.WorkflowWorkLogMapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import jakarta.annotation.Resource;
+import org.springframework.stereotype.Service;
+import org.springframework.validation.annotation.Validated;
+
+import java.util.List;
+
+/**
+ * 作业流程操作日志 Service 实现类
+ *
+ * @author Bozzys
+ */
+@Service
+@Validated
+public class WorkflowWorkLogServiceImpl extends ServiceImpl<WorkflowWorkLogMapper, WorkflowWorkLogDO> implements WorkflowWorkLogService {
+
+    @Resource
+    private WorkflowWorkLogMapper workflowWorkLogMapper;
+
+    @Override
+    public Long createWorkflowWorkLog(WorkflowWorkLogSaveReqVO createReqVO) {
+        // 插入
+        WorkflowWorkLogDO workflowWorkLog = BeanUtils.toBean(createReqVO, WorkflowWorkLogDO.class);
+        workflowWorkLogMapper.insert(workflowWorkLog);
+
+        // 返回
+        return workflowWorkLog.getId();
+    }
+
+    @Override
+    public void updateWorkflowWorkLog(WorkflowWorkLogSaveReqVO updateReqVO) {
+        // 更新
+        WorkflowWorkLogDO updateObj = BeanUtils.toBean(updateReqVO, WorkflowWorkLogDO.class);
+        workflowWorkLogMapper.updateById(updateObj);
+    }
+
+    @Override
+    public void deleteWorkflowWorkLog(Long id) {
+        // 删除
+        workflowWorkLogMapper.deleteById(id);
+    }
+
+    @Override
+        public void deleteWorkflowWorkLogListByIds(List<Long> ids) {
+        // 删除
+        workflowWorkLogMapper.deleteByIds(ids);
+        }
+
+
+    @Override
+    public WorkflowWorkLogDO getWorkflowWorkLog(Long id) {
+        return workflowWorkLogMapper.selectById(id);
+    }
+
+    @Override
+    public PageResult<WorkflowWorkLogDO> getWorkflowWorkLogPage(WorkflowWorkLogPageReqVO pageReqVO) {
+        return workflowWorkLogMapper.selectPage(pageReqVO);
+    }
+
+}

+ 69 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/dal/dataobject/workdesign/WorkflowWorkLogDO.java

@@ -0,0 +1,69 @@
+package cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign;
+
+import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
+import com.baomidou.mybatisplus.annotation.KeySequence;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.*;
+
+import java.time.LocalDateTime;
+
+/**
+ * 作业流程操作日志 DO
+ *
+ * @author Bozzys
+ */
+@TableName("isc_workflow_work_log")
+@KeySequence("isc_workflow_work_log_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
+@Data
+@EqualsAndHashCode(callSuper = true)
+@ToString(callSuper = true)
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+public class WorkflowWorkLogDO extends BaseDO {
+
+    /**
+     * 日志ID,自增长主键
+     */
+    @TableId
+    private Long id;
+    /**
+     * 作业/任务节点ID,关联作业主表或任务节点表主键
+     */
+    private String nodeId;
+    /**
+     * 上一任务节点ID,关联上一节点日志的node_id,作业创建时置NULL
+     */
+    private String parentNodeId;
+    /**
+     * 操作步骤,仅能量隔离、隔离解除节点任务有效,赋值为正整数,其他任务置NULL
+     */
+    private String step;
+    /**
+     * 操作用户/任务负责人ID,关联用户表主键
+     */
+    private String userId;
+    /**
+     * 操作用户/任务负责人昵称
+     */
+    private String nickName;
+    /**
+     * 操作用户/任务负责人头像地址,默认空字符串
+     */
+    private String avatar;
+    /**
+     * 任务/行为开始时间
+     */
+    private LocalDateTime taskStartTime;
+    /**
+     * 任务/行为完成时间,未完成置NULL,作业创建时与开始时间一致
+     */
+    private LocalDateTime taskFinishTime;
+    /**
+     * 任务/行为描述,如:创建作业、获取钥匙和锁具、能量隔离
+     */
+    private String taskContent;
+
+
+}

+ 33 - 0
yudao-module-iscs/src/main/java/cn/iocoder/yudao/module/iscs/dal/mysql/workdesign/WorkflowWorkLogMapper.java

@@ -0,0 +1,33 @@
+package cn.iocoder.yudao.module.iscs.dal.mysql.workdesign;
+
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
+import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
+import cn.iocoder.yudao.module.iscs.controller.admin.workdesign.workflowworklog.vo.WorkflowWorkLogPageReqVO;
+import cn.iocoder.yudao.module.iscs.dal.dataobject.workdesign.WorkflowWorkLogDO;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 作业流程操作日志 Mapper
+ *
+ * @author Bozzys
+ */
+@Mapper
+public interface WorkflowWorkLogMapper extends BaseMapperX<WorkflowWorkLogDO> {
+
+    default PageResult<WorkflowWorkLogDO> selectPage(WorkflowWorkLogPageReqVO reqVO) {
+        return selectPage(reqVO, new LambdaQueryWrapperX<WorkflowWorkLogDO>()
+                .eqIfPresent(WorkflowWorkLogDO::getNodeId, reqVO.getNodeId())
+                .eqIfPresent(WorkflowWorkLogDO::getParentNodeId, reqVO.getParentNodeId())
+                .eqIfPresent(WorkflowWorkLogDO::getStep, reqVO.getStep())
+                .eqIfPresent(WorkflowWorkLogDO::getUserId, reqVO.getUserId())
+                .likeIfPresent(WorkflowWorkLogDO::getNickName, reqVO.getNickName())
+                .eqIfPresent(WorkflowWorkLogDO::getAvatar, reqVO.getAvatar())
+                .betweenIfPresent(WorkflowWorkLogDO::getTaskStartTime, reqVO.getTaskStartTime())
+                .betweenIfPresent(WorkflowWorkLogDO::getTaskFinishTime, reqVO.getTaskFinishTime())
+                .eqIfPresent(WorkflowWorkLogDO::getTaskContent, reqVO.getTaskContent())
+                .betweenIfPresent(WorkflowWorkLogDO::getCreateTime, reqVO.getCreateTime())
+                .orderByDesc(WorkflowWorkLogDO::getId));
+    }
+
+}

+ 12 - 0
yudao-module-iscs/src/main/resources/mapper/workdesign/WorkflowWorkLogMapper.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.iocoder.yudao.module.iscs.dal.mysql.workdesign.WorkflowWorkLogMapper">
+
+    <!--
+        一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
+        无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
+        代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
+        文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
+     -->
+
+</mapper>