Jelajahi Sumber

完善本地审核记录

guarantee-lsq 2 tahun lalu
induk
melakukan
0c35cc6a6d

+ 112 - 0
platform-dao/src/main/java/com/platform/dao/dto/activiti/LocalAuditRecordDTO.java

@@ -0,0 +1,112 @@
+package com.platform.dao.dto.activiti;
+
+import com.platform.common.bean.BaseDTO;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * @Description testDTO
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class LocalAuditRecordDTO extends BaseDTO implements Serializable {
+
+    private String id;
+    /**
+     * 数据Id
+     */
+    private String targetId;
+    /**
+     * 审批单名称
+     */
+    private String targetName;
+    /**
+     * 审批单代码
+     */
+    private String targetCode;
+    /**
+     * 实例ID
+     */
+    private String processInstanceId;
+    /**
+     * 审批人ID
+     */
+    private String createdUserId;
+    /**
+     * 审批操作人姓名
+     */
+    private String createdUserName;
+    /**
+     * 当前关联任务Id
+     */
+    private String taskid;
+    /**
+     * 单号
+     */
+    private String no;
+    /**
+     * 审批意见
+     */
+    private String opinion;
+    /**
+     * 陪跑ID
+     */
+    private String updateUserId;
+    /**
+     * 陪跑人
+     */
+    private String updateUserName;
+    /**
+     * 是否是自己发起的
+     */
+    private Integer self;
+    /**
+     * 审批单申请时间
+     */
+    private LocalDateTime applyTime;
+    /**
+     * 审批单申请时间开始
+     */
+    private LocalDateTime applyTimeStart;
+    /**
+     * 审批单申请时间结束
+     */
+    private LocalDateTime applyTimeEnd;
+    /**
+     * 审批时间
+     */
+    private LocalDateTime createTime;
+    /**
+     * 审批时间开始
+     */
+    private LocalDateTime createTimeStart;
+    /**
+     * 审批时间结束
+     */
+    private LocalDateTime createTimeEnd;
+    /**
+     * 陪跑时间
+     */
+    private LocalDateTime updateTime;
+    /**
+     * 陪跑时间开始
+     */
+    private LocalDateTime updateTimeStart;
+    /**
+     * 陪跑时间结束
+     */
+    private LocalDateTime updateTimeEnd;
+    /**
+     * 关键字
+     */
+    private String keyword;
+
+}

+ 98 - 0
platform-dao/src/main/java/com/platform/dao/entity/activiti/LocalAuditRecord.java

@@ -0,0 +1,98 @@
+package com.platform.dao.entity.activiti;
+
+import com.platform.common.model.UserInfo;
+import lombok.Data;
+
+import javax.persistence.Table;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * @Description 审批记录信息
+ * @Author chenyuehu
+ * @Date 2020/2/6
+ * @Version Copyright (c) 2019,合肥乾元坤合科技有限公司 All rights reserved.
+ */
+@Data
+@Table(name = "t_local_audit_record")
+public class LocalAuditRecord implements Serializable {
+    private String id;
+    /**
+     * 目标ID:表单的单号id,或者设备的id。方便得task列表点击进行判定,跳转到不同表单
+     */
+    private String targetId;
+    /**
+     * 目标名称:任务名称,每个审批单自己定义的。最好是固定的类型
+     */
+    private String targetName;
+    /**
+     * 目标编码:表单的编码,根据不同表单编码进行跳转展示表单
+     */
+    private String targetCode;
+    /**
+     * 审批单-申请时间
+     */
+    private LocalDateTime applyTime;
+
+    /**
+     * 实例ID
+     */
+    private String processInstanceId;
+
+    /**
+     * 用户ID:审批操作人
+     */
+    private String createdUserId;
+
+    /**
+     * 姓名:审批操作人姓名
+     */
+    private String createdUserName;
+
+    /**
+     * 自己:是否是自己发起的
+     */
+    private Boolean self = false;
+
+    /**
+     * 当前关联任务Id:
+     */
+    private String taskId;
+
+    /**
+     * 单号
+     */
+    private String no;
+
+    /**
+     * 审批意见
+     */
+    private String opinion;
+
+    /**
+     * 审批时间
+     */
+    private LocalDateTime createTime;
+
+    private LocalDateTime updateTime;
+
+    private String updateUserId;
+
+    private String updateUserName;
+
+    /**
+     * 是否通过
+     */
+    private Boolean flag;
+
+    private LocalAuditRecord(){}
+    public LocalAuditRecord(LocalDateTime applyTime, UserInfo user, String opinion, String taskId, String taskName) {
+        this.createdUserId = user.getUserId();
+        this.createdUserName = user.getRealName();
+        this.opinion = opinion;
+        this.createTime = LocalDateTime.now();
+        this.taskId = taskId;
+        this.applyTime = applyTime;
+        this.targetName = taskName;
+    }
+}

+ 26 - 0
platform-dao/src/main/java/com/platform/dao/mapper/activiti/LocalAuditRecordMapper.java

@@ -0,0 +1,26 @@
+package com.platform.dao.mapper.activiti;
+
+import com.platform.dao.config.MyMapper;
+import com.platform.dao.dto.activiti.LocalAuditRecordDTO;
+import com.platform.dao.entity.activiti.LocalAuditRecord;
+import com.platform.dao.vo.query.activiti.LocalAuditRecordVO;
+import org.springframework.stereotype.Component;
+import java.util.List;
+
+
+/**
+ * @Description test mapper
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Component
+public interface LocalAuditRecordMapper extends MyMapper<LocalAuditRecord> {
+    /**
+     * 分页查询
+     * @param dto
+     * @return
+     */
+    List<LocalAuditRecordVO> selectList(LocalAuditRecordDTO dto);
+
+}

+ 118 - 0
platform-dao/src/main/java/com/platform/dao/vo/export/activiti/ExportLocalAuditRecordVO.java

@@ -0,0 +1,118 @@
+package com.platform.dao.vo.export.activiti;
+
+import com.platform.office.annotation.Excel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+
+/**
+ * @Description test导出VO
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+public class ExportLocalAuditRecordVO implements Serializable {
+
+    /**
+     * 主键
+     */
+    @Excel(name = "主键", orderNum = "1")
+    private String id;
+
+    /**
+     * 数据Id
+     */
+    @Excel(name = "数据Id", orderNum = "2")
+    private String targetId;
+
+    /**
+     * 审批单名称
+     */
+    @Excel(name = "审批单名称", orderNum = "3")
+    private String targetName;
+
+    /**
+     * 审批单代码
+     */
+    @Excel(name = "审批单代码", orderNum = "4")
+    private String targetCode;
+
+    /**
+     * 实例ID
+     */
+    @Excel(name = "实例ID", orderNum = "5")
+    private String processInstanceId;
+
+    /**
+     * 审批人ID
+     */
+    @Excel(name = "审批人ID", orderNum = "6")
+    private String createdUserId;
+
+    /**
+     * 审批操作人姓名
+     */
+    @Excel(name = "审批操作人姓名", orderNum = "7")
+    private String createdUserName;
+
+    /**
+     * 当前关联任务Id
+     */
+    @Excel(name = "当前关联任务Id", orderNum = "8")
+    private String taskid;
+
+    /**
+     * 单号
+     */
+    @Excel(name = "单号", orderNum = "9")
+    private String no;
+
+    /**
+     * 审批意见
+     */
+    @Excel(name = "审批意见", orderNum = "10")
+    private String opinion;
+
+    /**
+     * 陪跑ID
+     */
+    @Excel(name = "陪跑ID", orderNum = "11")
+    private String updateUserId;
+
+    /**
+     * 陪跑人
+     */
+    @Excel(name = "陪跑人", orderNum = "12")
+    private String updateUserName;
+
+    /**
+     * 是否是自己发起的
+     */
+    @Excel(name = "是否是自己发起的", orderNum = "13")
+    private Integer self;
+
+    /**
+     * 审批单申请时间
+     */
+    @Excel(name = "审批单申请时间", orderNum = "14")
+    private LocalDateTime applyTime;
+
+    /**
+     * 审批时间
+     */
+    @Excel(name = "审批时间", orderNum = "15")
+    private LocalDateTime createTime;
+
+    /**
+     * 陪跑时间
+     */
+    @Excel(name = "陪跑时间", orderNum = "16")
+    private LocalDateTime updateTime;
+
+
+}

+ 98 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/activiti/LocalAuditRecordVO.java

@@ -0,0 +1,98 @@
+package com.platform.dao.vo.query.activiti;
+
+import lombok.Data;
+import com.platform.common.bean.BaseVO;
+import com.platform.common.bean.BaseDTO;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.validation.constraints.*;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.time.LocalDate;
+
+/**
+ * @Description testVO结果类
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class LocalAuditRecordVO extends BaseVO implements Serializable {
+
+    /**
+     * 主键
+     */
+    private String id;
+    /**
+     * 数据Id
+     */
+    private String targetId;
+    /**
+     * 审批单名称
+     */
+    private String targetName;
+    /**
+     * 审批单代码
+     */
+    private String targetCode;
+    /**
+     * 实例ID
+     */
+    private String processInstanceId;
+    /**
+     * 审批人ID
+     */
+    private String createdUserId;
+    /**
+     * 审批操作人姓名
+     */
+    private String createdUserName;
+    /**
+     * 当前关联任务Id
+     */
+    private String taskId;
+    /**
+     * 单号
+     */
+    private String no;
+    /**
+     * 审批意见
+     */
+    private String opinion;
+    /**
+     * 陪跑ID
+     */
+    private String updateUserId;
+    /**
+     * 陪跑人
+     */
+    private String updateUserName;
+    /**
+     * 是否是自己发起的
+     */
+    private Integer self;
+    /**
+     * 审批单申请时间
+     */
+    private LocalDateTime applyTime;
+    /**
+     * 审批时间
+     */
+    private LocalDateTime createTime;
+    /**
+     * 陪跑时间
+     */
+    private LocalDateTime updateTime;
+
+    private Integer flag;
+
+    private Integer status;
+
+    private String userName;
+
+
+}

+ 112 - 0
platform-dao/src/main/resources/mapper/activiti/LocalAuditRecordMapper.xml

@@ -0,0 +1,112 @@
+<?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="com.platform.dao.mapper.activiti.LocalAuditRecordMapper">
+    <sql id="Base_Column_List">
+                             store.id,
+                             store.target_id,
+                             store.target_name,
+                             store.target_code,
+                             store.process_instance_id,
+                             store.created_user_id,
+                             store.created_user_name,
+                             store.task_id,
+                             store.no,
+                             store.opinion,
+                             store.update_user_id,
+                             store.update_user_name,
+                             store.self,
+                             store.apply_time,
+                             store.create_time,
+                             store.update_time
+                        </sql>
+    <sql id="Ref_Column_List">
+                                                                         store.target_id,
+                                     store.target_name,
+                                     store.target_code,
+                                     store.process_instance_id,
+                                                                                                                             store.task_id,
+                                     store.no,
+                                     store.opinion,
+                                                                                                                             store.self,
+                                     store.apply_time,
+                                     store.create_time,
+                                                                    </sql>
+    <sql id="List_Condition">
+        <if test="id != null and id != ''">
+            and store.id = #{id}
+        </if>
+        <if test="targetId != null and targetId != ''">
+            and store.target_id = #{targetId}
+        </if>
+        <if test="targetName != null and targetName != ''">
+            and store.target_name = #{targetName}
+        </if>
+        <if test="targetCode != null and targetCode != ''">
+            and store.target_code = #{targetCode}
+        </if>
+        <if test="processInstanceId != null and processInstanceId != ''">
+            and store.process_instance_id = #{processInstanceId}
+        </if>
+        <if test="createdUserId != null and createdUserId != ''">
+            and store.created_user_id = #{createdUserId}
+        </if>
+        <if test="createdUserName != null and createdUserName != ''">
+            and store.created_user_name = #{createdUserName}
+        </if>
+        <if test="taskid != null and taskid != ''">
+            and store.task_id = #{taskid}
+        </if>
+        <if test="no != null and no != ''">
+            and store.no = #{no}
+        </if>
+        <if test="opinion != null and opinion != ''">
+            and store.opinion = #{opinion}
+        </if>
+        <if test="updateUserId != null and updateUserId != ''">
+            and store.update_user_id = #{updateUserId}
+        </if>
+        <if test="updateUserName != null and updateUserName != ''">
+            and store.update_user_name = #{updateUserName}
+        </if>
+        <if test="self != null">
+            and store.self = #{self}
+        </if>
+        <if test="applyTimeStart != null">
+            and store.apply_time <![CDATA[>=]]>; #{applyTimeStart}
+        </if>
+        <if test="applyTimeEnd != null">
+            and store.apply_time <![CDATA[<=]]> #{applyTimeEnd}
+        </if>
+        <if test="applyTime != null">
+            and store.apply_time = #{applyTime}
+        </if>
+        <if test="createTimeStart != null">
+            and store.create_time <![CDATA[>=]]>; #{createTimeStart}
+        </if>
+        <if test="createTimeEnd != null">
+            and store.create_time <![CDATA[<=]]> #{createTimeEnd}
+        </if>
+        <if test="createTime != null">
+            and store.create_time = #{createTime}
+        </if>
+        <if test="updateTimeStart != null">
+            and store.update_time <![CDATA[>=]]>; #{updateTimeStart}
+        </if>
+        <if test="updateTimeEnd != null">
+            and store.update_time <![CDATA[<=]]> #{updateTimeEnd}
+        </if>
+        <if test="updateTime != null">
+            and store.update_time = #{updateTime}
+        </if>
+        <if test="keyword != null and keyword != ''">
+            and store.no like concat(concat('%',#{keyword}),'%')
+        </if>
+    </sql>
+    <select id="selectList" parameterType="com.platform.dao.dto.activiti.LocalAuditRecordDTO"
+            resultType="com.platform.dao.vo.query.activiti.LocalAuditRecordVO">
+        select store.*,data.status,data.created_user_name as userName from t_local_audit_record as store join t_custom_field_template_data data on store.target_id = data.id
+        <where>
+            <include refid="List_Condition"/>
+        </where>
+    </select>
+</mapper>

+ 141 - 0
platform-rest/src/main/java/com/platform/rest/controller/activiti/LocalAuditRecordController.java

@@ -0,0 +1,141 @@
+package com.platform.rest.controller.activiti;
+
+import com.platform.common.util.R;
+import com.platform.dao.dto.activiti.LocalAuditRecordDTO;
+import com.platform.dao.entity.activiti.LocalAuditRecord;
+import com.platform.service.activiti.LocalAuditRecordService;
+import com.platform.dao.util.ExcelUtil;
+import com.platform.dao.vo.export.activiti.ExportLocalAuditRecordVO;
+import com.platform.dao.vo.query.activiti.LocalAuditRecordVO;
+import com.platform.common.util.BeanConverterUtil;
+import com.platform.common.validation.group.AddGroup;
+import com.platform.common.validation.group.UpdateGroup;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+import lombok.AllArgsConstructor;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.rest.log.annotation.SysLog;
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * @Description test 控制器
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/audit/audits")
+public class LocalAuditRecordController {
+
+  private final  LocalAuditRecordService localAuditRecordService;
+
+  /**
+   * 通过id查询单条记录
+   *
+   * @param id 主键
+   * @return R
+   */
+  @GetMapping("/{id}")
+  public R<LocalAuditRecord> getById(@PathVariable("id") String id){
+      return new R<>(localAuditRecordService.getModelById(id));
+  }
+
+  /**
+   * 新增记录
+   *
+   * @param localAuditRecordDTO testDTO
+   * @return R
+   */
+  @SysLog("新增test")
+  @PostMapping
+  @PreAuthorize("@pms.hasPermission('audit-audits-add')")
+  public R save(@Validated({AddGroup.class}) @RequestBody LocalAuditRecordDTO localAuditRecordDTO) {
+      return new R<>(localAuditRecordService.saveModelByDTO(localAuditRecordDTO));
+  }
+
+  /**
+   * 修改记录
+   *
+   * @param localAuditRecordDTO testDTO
+   * @return R
+   */
+  @SysLog("修改test")
+  @PutMapping("/{id}")
+  @PreAuthorize("@pms.hasPermission('audit-audits-edit')")
+  public R update(@PathVariable("id") String id, @Validated({UpdateGroup.class}) @RequestBody LocalAuditRecordDTO localAuditRecordDTO) {
+      localAuditRecordService.modModelByDTO(localAuditRecordDTO);
+      return new R<>();
+  }
+
+
+                                                                                                  
+  /**
+   * 通过id删除一条记录
+   *
+   * @param id 主键
+   * @return R
+   */
+  @SysLog("删除test")
+  @DeleteMapping("/{id}")
+  @PreAuthorize("@pms.hasPermission('audit-audits-del')")
+  public R removeById(@PathVariable String id){
+    localAuditRecordService.deleteByPrimaryKey(id);
+    return new R<>();
+  }
+
+    /**
+     * 批量记录
+     *
+     * @param ids 主键
+     * @return R
+     */
+    @SysLog("批量删除test")
+    @DeleteMapping("")
+    @PreAuthorize("@pms.hasPermission('audit-audits-del')")
+    public R removeIds(@RequestBody List<String> ids){
+        localAuditRecordService.batchDelete(ids);
+        return new R<>();
+    }
+
+  /**
+   * 获取分页
+   *
+   * @param pageNum 当前页码
+   * @param pageSize 每页条数
+   * @param localAuditRecordDTO testDTO
+   * @return R
+   */
+  @GetMapping("/page")
+  public R<AbstractPageResultBean<LocalAuditRecordVO>> query(LocalAuditRecordDTO localAuditRecordDTO, @RequestParam(defaultValue = "1") int pageNum, @RequestParam(defaultValue = "20") int pageSize) {
+      return new R<>(localAuditRecordService.selectPageList(localAuditRecordDTO, pageNum, pageSize));
+  }
+
+  /**
+   * 获取列表
+   *
+   * @param localAuditRecordDTO testDTO
+   * @return R
+   */
+  @GetMapping("")
+  public R query(LocalAuditRecordDTO localAuditRecordDTO) {
+      return new R<>(localAuditRecordService.getModelListByDTO(localAuditRecordDTO));
+  }
+
+  /**
+     * test导出
+     *
+     * @param localAuditRecordDTO testDTO
+     * @return R
+     */
+  @GetMapping("/export")
+  @SysLog("test导出")
+  @PreAuthorize("@pms.hasPermission('audit-audits-export')")
+  public void export(HttpServletResponse response, LocalAuditRecordDTO localAuditRecordDTO) {
+    List<LocalAuditRecord> list = localAuditRecordService.getModelListByDTO(localAuditRecordDTO);
+    ExcelUtil.exportResponseDict(response, ExportLocalAuditRecordVO.class, BeanConverterUtil.copyListProperties(list, ExportLocalAuditRecordVO.class), "test");
+  }
+
+}

+ 35 - 0
platform-service/src/main/java/com/platform/service/activiti/LocalAuditRecordService.java

@@ -0,0 +1,35 @@
+package com.platform.service.activiti;
+
+import com.platform.dao.vo.query.activiti.LocalAuditRecordVO;
+import com.platform.dao.dto.activiti.LocalAuditRecordDTO;
+import com.platform.dao.entity.activiti.LocalAuditRecord;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.service.base.IBaseService;
+import java.util.List;
+
+/**
+ * @Description test service
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+public interface LocalAuditRecordService extends IBaseService<LocalAuditRecord, LocalAuditRecordDTO> {
+
+   /**
+    * 批量删除
+    *
+    * @param ids :
+    * @return :
+    */
+    int batchDelete(List<String> ids);
+
+    /**
+     * 分页查询
+     * @param record
+     * @param pageNum
+     * @param pageSize
+     * @return
+     */
+    AbstractPageResultBean<LocalAuditRecordVO> selectPageList(LocalAuditRecordDTO record, int pageNum, int pageSize);
+
+                                                                                                                                                                                                    }

+ 50 - 0
platform-service/src/main/java/com/platform/service/activiti/impl/LocalAuditRecordServiceImpl.java

@@ -0,0 +1,50 @@
+package com.platform.service.activiti.impl;
+
+import com.github.pagehelper.PageHelper;
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.dao.bean.MyPage;
+import com.platform.dao.dto.activiti.LocalAuditRecordDTO;
+import com.platform.dao.entity.activiti.LocalAuditRecord;
+import com.platform.dao.mapper.activiti.LocalAuditRecordMapper;
+import com.platform.dao.vo.query.activiti.LocalAuditRecordVO;
+import com.platform.service.activiti.LocalAuditRecordService;
+import com.platform.service.base.impl.BaseServiceImpl;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import tk.mybatis.mapper.weekend.Weekend;
+import tk.mybatis.mapper.weekend.WeekendCriteria;
+
+import java.util.List;
+
+/**
+ * @Description test service 实现类
+ * @Author lsq
+ * @Date 2022-06-23 14:58:05
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@AllArgsConstructor
+@Service("localAuditRecordService")
+public class LocalAuditRecordServiceImpl extends BaseServiceImpl<LocalAuditRecordMapper, LocalAuditRecord, LocalAuditRecordDTO> implements LocalAuditRecordService {
+
+    @Override
+    public int batchDelete(List<String> ids) {
+        Weekend<LocalAuditRecord> weekend = new Weekend<>(LocalAuditRecord.class);
+        WeekendCriteria<LocalAuditRecord, Object> weekendCriteria = weekend.weekendCriteria();
+        weekendCriteria.andIn(LocalAuditRecord::getId, ids);
+        mapper.deleteByExample(weekend);
+        return 1;
+    }
+
+    @Override
+    public AbstractPageResultBean<LocalAuditRecordVO> selectPageList(LocalAuditRecordDTO record, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        return new MyPage(mapper.selectList(record));
+    }
+
+    @Override
+    public AbstractPageResultBean<LocalAuditRecord> selectPageInfo(LocalAuditRecordDTO record, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        return new MyPage(mapper.selectList(record));
+    }
+
+                                                                                                                                                                                                    }

+ 24 - 0
platform-service/src/main/java/com/platform/service/customize/BaseFormCheckServiceAbstract.java

@@ -9,13 +9,16 @@ import com.platform.activiti.dao.entity.ActAuditRequest;
 import com.platform.common.constant.CommonConstants;
 import com.platform.common.exception.BusinessException;
 import com.platform.common.model.UserInfo;
+import com.platform.common.util.IdGeneratorUtils;
 import com.platform.common.util.JsonUtils;
 import com.platform.common.util.SecurityUtils;
 import com.platform.dao.dto.activiti.SbAllocateFormActiviti;
 import com.platform.dao.entity.activiti.ActivitiUserModel;
+import com.platform.dao.entity.activiti.LocalAuditRecord;
 import com.platform.dao.entity.customize.CustomFieldTemplateData;
 import com.platform.dao.entity.upms.SysUser;
 import com.platform.dao.enums.ActivitiFormStatusEnum;
+import com.platform.dao.mapper.activiti.LocalAuditRecordMapper;
 import com.platform.dao.mapper.customize.CustomFieldTemplateDataMapper;
 import com.platform.dao.mapper.sb.SbInfoMapper;
 import com.platform.service.activiti.ActivitiAssignStrategy;
@@ -51,6 +54,8 @@ public abstract class BaseFormCheckServiceAbstract implements BaseFormCheckServi
     private TaskService taskService;
     @Autowired
     private SysUserService sysUserService;
+    @Autowired
+    private LocalAuditRecordMapper localAuditRecordMapper;
 
     @Autowired
     private ActivitiUserModelService activitiUserModelService;
@@ -207,13 +212,32 @@ public abstract class BaseFormCheckServiceAbstract implements BaseFormCheckServi
         records.add(0, new ActAuditRecord(user.getUserId(), user.getRealName(), actAuditRequest.getRefuseReason(),
                 LocalDateTime.now(), result == 0 ? false : true, taskId, task.getName()));
         map.put(CommonConstants.ACT_AUDIT_RECORD, records);
+        // 本地存储审核记录
+        saveLocalAuditRecord(actAuditRequest,user,result);
         taskService.addComment(taskId, actAuditRequest.getProcessInstanceId(), actAuditRequest.getRefuseReason());
         taskService.complete(taskId, map);
         // 审批拒绝,则不用判断是否结束。审批同意则要判断是否流程结束,结束则更新报废单状态和设备状态
         return result == 0 ? false : true;
+    }
 
+    /**
+     * 本地存储审核记录信息
+     * @param actAuditRequest
+     */
+    private void saveLocalAuditRecord(ActAuditRequest actAuditRequest,UserInfo user,int result){
+        CustomFieldTemplateData data = getById(actAuditRequest.getId());
+        LocalAuditRecord record = new LocalAuditRecord(data.getCreatedTime(),user,actAuditRequest.getRefuseReason(),actAuditRequest.getTaskId(),actAuditRequest.getAuditModelName());
+        record.setId(IdGeneratorUtils.getObjectId());
+        record.setNo(JSONObject.parseObject(data.getData()).getString("no"));
+        record.setProcessInstanceId(actAuditRequest.getProcessInstanceId());
+        record.setTargetCode(data.getRemark());
+        record.setTargetId(actAuditRequest.getId());
+        record.setSelf(user.getUserId().equals(data.getCreatedUserId()) ? Boolean.TRUE : Boolean.FALSE);
+        record.setFlag(result == 0 ? false : true);
+        localAuditRecordMapper.insertSelective(record);
     }
 
+
     /**
      * 终止审核:如果已经终止删除过的
      * 审批设置对象:ActApplyInfo