guarantee-lsq пре 1 година
родитељ
комит
be664f7cf0

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/dto/preparation/PreparationDTO.java

@@ -234,4 +234,6 @@ public class PreparationDTO extends BaseDTO implements Serializable {
 
     private Integer nodeNum; // 审核节点
 
+    private String delUserId; // 删除人ID集合
+
 }

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/entity/preparation/Preparation.java

@@ -170,5 +170,7 @@ public class Preparation implements Serializable{
 
     private Integer nodeNum; // 审核节点
 
+    private String delUserId; // 删除人ID集合
+
 
 }

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/preparation/PreparationVO.java

@@ -198,4 +198,6 @@ public class PreparationVO extends BaseVO implements Serializable {
 
     private Integer nodeNum; // 审核节点
 
+    private String delUserId; // 删除人ID集合
+
 }

+ 7 - 2
platform-dao/src/main/resources/mapper/preparation/PreparationMapper.xml

@@ -49,6 +49,9 @@
         <if test="positionId != null and positionId != ''">
             and preparation.position_id = #{positionId}
         </if>
+        <if test="applyVerifyUserId != null and applyVerifyUserId != ''">
+            and (preparation.user_id = #{applyVerifyUserId} or preparation.apply_verify_user_id = #{applyVerifyUserId})
+        </if>
         <if test="userId != null and userId != ''">
             and preparation.user_id = #{userId}
         </if>
@@ -125,7 +128,7 @@
             and preparation.repair_minutes = #{repairMinutes}
         </if>
         <if test="repairUserId != null and repairUserId != ''">
-            and preparation.repair_user_id = #{repairUserId}
+            and (preparation.user_id = #{repairUserId} or preparation.repair_user_id = #{repairUserId})
         </if>
         <if test="repairContent != null and repairContent != ''">
             and preparation.repair_content = #{repairContent}
@@ -157,9 +160,11 @@
         </if>
         <if test="tempUserId != null and tempUserId != ''">
             and (preparation.user_id = #{tempUserId} or preparation.receive_verify_leader = #{tempUserId}
-            or preparation.repair_user_id = #{tempUserId} or preparation.apply_verify_user_id = #{tempUserId}
             or preparation.apply_verify_leader = #{tempUserId})
         </if>
+        <if test="delUserId != null and delUserId != ''">
+            and preparation.del_user_id not like concat(concat('%',#{delUserId}),'%')
+        </if>
     </sql>
     <select id="selectList" parameterType="com.platform.dao.dto.preparation.PreparationDTO"
             resultType="com.platform.dao.vo.query.preparation.PreparationVO">

+ 2 - 3
platform-rest/src/main/java/com/platform/rest/controller/preparation/PreparationController.java

@@ -87,9 +87,8 @@ public class PreparationController {
    */
   @SysLog("删除筹建管理")
   @DeleteMapping("/{id}")
-  @PreAuthorize("@pms.hasPermission('preparation-preparations-del')")
   public R removeById(@PathVariable String id) {
-    preparationService.deleteByPrimaryKey(id);
+    preparationService.deleteById(id);
     return new R<>();
   }
 
@@ -103,7 +102,7 @@ public class PreparationController {
   @DeleteMapping("")
   @PreAuthorize("@pms.hasPermission('preparation-preparations-del')")
   public R removeIds(@RequestBody List<String> ids) {
-    preparationService.batchDelete(ids);
+    //preparationService.batchDelete(ids);
     return new R<>();
   }
 

+ 6 - 0
platform-service/src/main/java/com/platform/service/preparation/PreparationService.java

@@ -97,4 +97,10 @@ public interface PreparationService extends IBaseService<Preparation, Preparatio
 
     PreparationVO getRepairNum();
 
+    /**
+     * 删除
+     * @param id
+     */
+    void deleteById(String id);
+
 }

+ 38 - 2
platform-service/src/main/java/com/platform/service/preparation/impl/PreparationServiceImpl.java

@@ -224,7 +224,29 @@ public class PreparationServiceImpl extends BaseServiceImpl<PreparationMapper, P
     public AbstractPageResultBean<PreparationVO> selectPageList(PreparationDTO record, int pageNum, int pageSize) {
         PageHelper.startPage(pageNum, pageSize);
         UserInfo userInfo = SecurityUtils.getUserInfo();
-        record.setTempUserId(userInfo.getUserId());
+        // 获取用户角色
+        StringBuilder roleCodes = new StringBuilder();
+        userInfo.getRoleCodes().forEach(item-> {
+            roleCodes.append(item).append(",");
+        });
+        String roles = roleCodes.toString();
+        if(userInfo.getSuperAdmin() != 1){
+            record.setDelUserId(userInfo.getUserId());
+            if(roles.contains(SysRoleCodeEnum.DEPT_LEADER.name())){
+                // 部门负责人(执行和申请)
+                record.setTempUserId(userInfo.getUserId());
+            }else if(roles.contains(SysRoleCodeEnum.DEPT_MANAGER.name())){
+                // 申请部门主管
+                record.setApplyVerifyUserId(userInfo.getUserId());
+            }else if(roles.contains(SysRoleCodeEnum.PREPARATION_USER.name())){
+                // 执行人
+                record.setRepairUserId(userInfo.getUserId());
+            }else {
+                // 申请人
+                record.setUserId(userInfo.getUserId());
+            }
+        }
+        //record.setTempUserId(userInfo.getUserId());
         if (record.getSearchType() != null && record.getStatus() == null) {
             List<Integer> statusList = new ArrayList<>();
             if (record.getSearchType() == 1) { // 待派工单
@@ -241,7 +263,7 @@ public class PreparationServiceImpl extends BaseServiceImpl<PreparationMapper, P
             } else if (record.getSearchType() == 3) { // 我的工单
             }
             // 超级管理员可以看到各个状态下的所有数据 相关领导,可以在这里进行设置
-            if (userInfo.getSuperAdmin() == 1 || record.getSearchType() == -1) {
+            if (userInfo.getSuperAdmin() == 1) {
                 record.setTempUserId(null);
             }
         }
@@ -799,6 +821,20 @@ public class PreparationServiceImpl extends BaseServiceImpl<PreparationMapper, P
         return vo;
     }
 
+    @Override
+    public void deleteById(String id) {
+        Preparation preparation = mapper.selectByPrimaryKey(id);
+        String delUserId = preparation.getDelUserId();
+        Preparation updPre = new Preparation();
+        updPre.setId(id);
+        if(StringUtils.isEmpty(delUserId)){
+            updPre.setDelUserId(SecurityUtils.getUserInfo().getUserId());
+        }else{
+            updPre.setDelUserId(preparation.getDelUserId() + "," + SecurityUtils.getUserInfo().getUserId());
+        }
+        mapper.updateByPrimaryKeySelective(updPre);
+    }
+
     @Override
     public AbstractPageResultBean<Preparation> selectPageInfo(PreparationDTO record, int pageNum, int pageSize) {
         PageHelper.startPage(pageNum, pageSize);