Browse Source

隐患初始化

guarantee-lsq 2 years ago
parent
commit
5f044861a1

+ 9 - 0
platform-common/src/main/java/com/platform/common/util/StringUtils.java

@@ -358,4 +358,13 @@ public class StringUtils {
         }
     }
 
+    public static String getRoles(){
+        // 根据用户的角色来定
+        StringBuilder roleCodes = new StringBuilder();
+        SecurityUtils.getUserInfo().getRoleCodes().forEach(item-> {
+            roleCodes.append(item).append(",");
+        });
+        return roleCodes.toString();
+    }
+
 }

+ 17 - 0
platform-dao/src/main/java/com/platform/dao/dto/hidden/HiddenDangerDTO.java

@@ -2,6 +2,7 @@ package com.platform.dao.dto.hidden;
 
 import com.platform.common.bean.BaseDTO;
 import com.platform.common.validation.group.UpdateGroup;
+import com.platform.dao.entity.upms.SysFile;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -10,6 +11,7 @@ import javax.validation.constraints.*;
 import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDate;
+import java.util.List;
 
 /**
  * @Description 隐患管理表DTO
@@ -131,4 +133,19 @@ public class HiddenDangerDTO extends BaseDTO implements Serializable {
      */
     private String keyword;
 
+    /**
+     * 整改前图片集合
+     */
+    private List<SysFile> beforeImageList;
+
+    /**
+     * 整改后图片集合
+     */
+    private List<SysFile> afterImageList;
+
+    /**
+     * 附件集合
+     */
+    private List<SysFile> fileList;
+
 }

+ 63 - 0
platform-dao/src/main/java/com/platform/dao/enums/HiddenDangerStatusEnum.java

@@ -0,0 +1,63 @@
+package com.platform.dao.enums;
+
+import com.google.common.collect.Lists;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Description 隐患管理状态
+ * @Author liuyu
+ * @Date 2020/05/05
+ * @Version Copyright (c) 2019,合肥乾元坤合科技有限公司 All rights reserved.
+ */
+@Getter
+@AllArgsConstructor
+public enum HiddenDangerStatusEnum {
+
+    /**
+     * 新建
+     */
+    NEW_APPLY(0, "新建"),
+    /**
+     * 执行中
+     */
+    ON_GOING(1, "执行中"),
+    /**
+     * 已完成
+     */
+    FINISHED(2, "已完成"),
+    ;
+
+    private final Integer value;
+    private final String name;
+
+    //讲枚举转换成list格式,这样前台遍历的时候比较容易,列如 下拉框 后台调用toList方法,你就可以得到code 和name了
+    public static List<Map<String, Object>> toList() {
+        List<Map<String, Object>> list = Lists.newArrayList();//Lists.newArrayList()其实和new ArrayList()几乎一模
+        //  一样, 唯一它帮你做的(其实是javac帮你做的), 就是自动推导(不是"倒")尖括号里的数据类型.
+        for (HiddenDangerStatusEnum obj : HiddenDangerStatusEnum.values()) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("value", obj.getValue());
+            map.put("name", obj.getName());
+            list.add(map);
+        }
+        return list;
+    }
+
+    //讲枚举转换成list格式,这样前台遍历的时候比较容易,列如 下拉框 后台调用toList方法,你就可以得到code 和name了
+    public static String getNameByValue(Integer value) {
+        String name = "";
+        for (HiddenDangerStatusEnum obj : HiddenDangerStatusEnum.values()) {
+            if(obj.getValue() == value){
+                name = obj.getName();
+                break;
+            }
+        }
+        return name;
+    }
+
+}

+ 3 - 0
platform-dao/src/main/java/com/platform/dao/enums/SysFileTypeEnum.java

@@ -36,6 +36,9 @@ public enum SysFileTypeEnum {
     CHECK_STANDARD_FILES(22, "保养文件"),
     CHECK_JOB_FILES(23, "保养任务完成文件"),
     Sb_MEASURE_IMGS(31, "计量图片"),
+    HIDDEN_DANGER_BEFORE_IMGS(51, "隐患整改前图片"),
+    HIDDEN_DANGER_AFTER_IMGS(52, "隐患整改后图片"),
+    HIDDEN_DANGER_FILES(53, "隐患整改附件"),
     Sb_MEASURE_FILES(32, "计量文件"),
     REPAIR_SCHEME_IMGS(33, "维修-方案图片"),
     REPAIR_SCHEME_FILES(34, "维修-方案文件");

+ 15 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/hidden/HiddenDangerVO.java

@@ -1,5 +1,6 @@
 package com.platform.dao.vo.query.hidden;
 
+import com.platform.dao.entity.upms.SysFile;
 import lombok.Data;
 import com.platform.common.bean.BaseVO;
 import com.platform.common.bean.BaseDTO;
@@ -11,6 +12,7 @@ import javax.validation.constraints.*;
 import java.io.Serializable;
 import java.time.LocalDateTime;
 import java.time.LocalDate;
+import java.util.List;
 
 /**
  * @Description 隐患管理表VO结果类
@@ -104,5 +106,18 @@ public class HiddenDangerVO extends BaseVO implements Serializable {
      */
     private LocalDateTime createdTime;
 
+    /**
+     * 整改前图片集合
+     */
+    private List<SysFile> beforeImageList;
 
+    /**
+     * 整改后图片集合
+     */
+    private List<SysFile> afterImageList;
+
+    /**
+     * 附件集合
+     */
+    private List<SysFile> fileList;
 }

+ 18 - 0
platform-rest/src/main/java/com/platform/rest/controller/sb/SbInfoController.java

@@ -1,14 +1,18 @@
 package com.platform.rest.controller.sb;
 
 import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.common.exception.DeniedException;
 import com.platform.common.util.BeanConverterUtil;
 import com.platform.common.util.R;
+import com.platform.common.util.SecurityUtils;
+import com.platform.common.util.StringUtils;
 import com.platform.common.validation.group.AddGroup;
 import com.platform.common.validation.group.UpdateGroup;
 import com.platform.dao.dto.part.PartInfoDTO;
 import com.platform.dao.dto.repair.RepairProjectRelationDTO;
 import com.platform.dao.dto.sb.SbInfoDTO;
 import com.platform.dao.entity.sb.SbInfo;
+import com.platform.dao.enums.SysRoleCodeEnum;
 import com.platform.dao.util.ExcelUtil;
 import com.platform.dao.util.TreeUtil;
 import com.platform.dao.vo.export.sb.ExportSbInfoMeasureVO;
@@ -207,10 +211,18 @@ public class SbInfoController {
     @DeleteMapping("/{id}")
     @PreAuthorize("@pms.hasPermission('sb-infos-del')")
     public R removeById(@PathVariable String id) {
+        if(SecurityUtils.getUserInfo().getSuperAdmin() == 0){
+            String role = StringUtils.getRoles();
+            if(!role.contains(SysRoleCodeEnum.REPAIR_MANAGE.name()) && !role.contains(SysRoleCodeEnum.MM.name())){
+                throw new DeniedException("不具备删除权限");
+            }
+        }
         sbInfoService.deleteByPrimaryKey(id);
         return new R<>();
     }
 
+
+
     /**
      * 批量记录
      *
@@ -221,6 +233,12 @@ public class SbInfoController {
     @DeleteMapping("")
     @PreAuthorize("@pms.hasPermission('sb-infos-del')")
     public R removeIds(@RequestBody List<String> ids) {
+        if(SecurityUtils.getUserInfo().getSuperAdmin() == 0){
+            String role = StringUtils.getRoles();
+            if(!role.contains(SysRoleCodeEnum.REPAIR_MANAGE.name()) && !role.contains(SysRoleCodeEnum.MM.name())){
+                throw new DeniedException("不具备删除权限");
+            }
+        }
         sbInfoService.batchDelete(ids);
         return new R<>();
     }

+ 8 - 0
platform-rest/src/main/java/com/platform/rest/controller/upms/SysUserDeptController.java

@@ -54,6 +54,14 @@ public class SysUserDeptController {
         return new R<>(sysUserService.getRepairUsers(sysUserDeptDTO));
     }
 
+    /**
+     * 查询用户列表
+     * @return R
+     */
+    @GetMapping("/repair-manager")
+    public R repairManger() {
+        return new R<>(sysUserService.getRepairManger());
+    }
     /**
      * 查询用户列表
      *

+ 2 - 0
platform-service/src/main/java/com/platform/service/hidden/HiddenDangerService.java

@@ -32,4 +32,6 @@ public interface HiddenDangerService extends IBaseService<HiddenDanger, HiddenDa
      */
     AbstractPageResultBean<HiddenDangerVO> selectPageList(HiddenDangerDTO record, int pageNum, int pageSize);
 
+    HiddenDanger saveByDTO(HiddenDangerDTO model);
+
                                                                                                                                                                                                                                                     }

+ 20 - 6
platform-service/src/main/java/com/platform/service/hidden/impl/HiddenDangerServiceImpl.java

@@ -1,19 +1,22 @@
 package com.platform.service.hidden.impl;
+
+import com.github.pagehelper.PageHelper;
 import com.platform.common.bean.AbstractPageResultBean;
 import com.platform.dao.bean.MyPage;
-import com.github.pagehelper.PageHelper;
-import com.platform.dao.vo.query.hidden.HiddenDangerVO;
 import com.platform.dao.dto.hidden.HiddenDangerDTO;
 import com.platform.dao.entity.hidden.HiddenDanger;
+import com.platform.dao.enums.HiddenDangerStatusEnum;
+import com.platform.dao.enums.SysFileTypeEnum;
 import com.platform.dao.mapper.hidden.HiddenDangerMapper;
+import com.platform.dao.vo.query.hidden.HiddenDangerVO;
+import com.platform.service.base.impl.BaseServiceImpl;
 import com.platform.service.hidden.HiddenDangerService;
+import com.platform.service.upms.SysFileService;
 import org.springframework.stereotype.Service;
-import com.platform.service.base.impl.BaseServiceImpl;
-import org.springframework.transaction.annotation.Transactional;
 import tk.mybatis.mapper.weekend.Weekend;
 import tk.mybatis.mapper.weekend.WeekendCriteria;
-import lombok.AllArgsConstructor;
 
+import javax.annotation.Resource;
 import java.util.List;
 
 /**
@@ -22,9 +25,10 @@ import java.util.List;
  * @Date 2022-12-14 16:19:10
  * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
  */
-@AllArgsConstructor
 @Service("hiddenDangerService")
 public class HiddenDangerServiceImpl extends BaseServiceImpl<HiddenDangerMapper, HiddenDanger, HiddenDangerDTO> implements HiddenDangerService {
+    @Resource
+    private SysFileService sysFileService;
 
     @Override
     public int batchDelete(List<String> ids) {
@@ -41,6 +45,16 @@ public class HiddenDangerServiceImpl extends BaseServiceImpl<HiddenDangerMapper,
         return new MyPage(mapper.selectList(record));
     }
 
+    @Override
+    public HiddenDanger saveByDTO(HiddenDangerDTO model) {
+        // 保存图片和文件
+        sysFileService.saveFile(model.getId(), SysFileTypeEnum.HIDDEN_DANGER_BEFORE_IMGS.getValue(), model.getBeforeImageList());
+        sysFileService.saveFile(model.getId(), SysFileTypeEnum.HIDDEN_DANGER_AFTER_IMGS.getValue(), model.getAfterImageList());
+        sysFileService.saveFile(model.getId(), SysFileTypeEnum.HIDDEN_DANGER_FILES.getValue(), model.getFileList());
+        model.setStatus(HiddenDangerStatusEnum.NEW_APPLY.getValue());
+        return saveModelByDTO(model);
+    }
+
     @Override
     public AbstractPageResultBean<HiddenDanger> selectPageInfo(HiddenDangerDTO record, int pageNum, int pageSize) {
         PageHelper.startPage(pageNum, pageSize);

+ 2 - 1
platform-service/src/main/java/com/platform/service/repair/impl/RepairApplicationFormServiceImpl.java

@@ -515,8 +515,9 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
                     }else{
                         statusList.add(RepairApplicationFormStatusEnum.REPAIR_FAIL.getValue());
                     }
-                }else if(record.getSearchType() == 9){ // 关闭工单
+                }else if(record.getSearchType() == 9){ // 关闭工单
                     statusList.add(RepairApplicationFormStatusEnum.FINISHED.getValue());
+                    statusList.add(RepairApplicationFormStatusEnum.MM_REPAIR_CLOSE.getValue());
                 }
                 // 超级管理员可以看到各个状态下的所有数据 相关领导,可以在这里进行设置
                 if(userInfo.getSuperAdmin() == 1 || record.getSearchType() == -1){

+ 2 - 0
platform-service/src/main/java/com/platform/service/upms/SysUserService.java

@@ -219,4 +219,6 @@ public interface SysUserService extends IBaseService<SysUser, SysUserDTO> {
     List<SysUserVO> getSysUserList(SysUserDeptDTO sysUserDeptDTO);
 
     List<SysUserVO> getRepairUsers(SysUserDTO sysUserDTO);
+
+    List<SysUserVO> getRepairManger();
 }

+ 13 - 0
platform-service/src/main/java/com/platform/service/upms/impl/SysUserServiceImpl.java

@@ -12,6 +12,7 @@ import com.platform.common.enums.DictTypeEnum;
 import com.platform.common.enums.InitialPasswordEnum;
 import com.platform.common.enums.ResultCode;
 import com.platform.common.exception.BusinessException;
+import com.platform.common.exception.DeniedException;
 import com.platform.common.model.OauthUser;
 import com.platform.common.model.UserInfo;
 import com.platform.common.util.*;
@@ -812,4 +813,16 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser,
         }
         return mapper.getRepairUsers(sysUserDTO);
     }
+
+    @Override
+    public List<SysUserVO> getRepairManger() {
+        List<SysUserDept> depts = sysUserDeptService.selectByUserId(SecurityUtils.getUserInfo().getUserId());
+        if(depts == null && depts.size() == 0){
+            throw new DeniedException("该用户没有归属部门");
+        }
+        SysUserDTO sysUserDTO = new SysUserDTO();
+        sysUserDTO.setDeptId(depts.get(0).getDeptId());
+        sysUserDTO.setRoleCode(SysRoleCodeEnum.REPAIR_MANAGE.name());
+        return mapper.getRepairUsers(sysUserDTO);
+    }
 }