guarantee-lsq 3 years ago
parent
commit
c2b3af00d4

+ 2 - 1
platform-dao/src/main/java/com/platform/dao/enums/SysConfigEnum.java

@@ -41,7 +41,8 @@ public enum SysConfigEnum {
     CHECK_JOB_WORK("每周工作负荷"),
     SPARE_WARN_EMAIL("最低库存邮箱"),
     REPAIR_FEE_TYPE_MAPS("维修费用类别集合"),
-    SPARE_WARN_FORREST_EMAIL("保养库存邮件邮箱");
+    SPARE_WARN_FORREST_EMAIL("保养库存邮件邮箱"),
+    REPAIR_SUPER_USERS("维修管理中的超级用户集合");
     private final String typeName;
 
 }

+ 4 - 4
platform-dao/src/main/resources/mapper/repair/RepairApplicationFormMapper.xml

@@ -72,13 +72,16 @@
             <if test="userId != null and userId != ''">
                 and application.user_id = #{userId}
             </if>
-            <if test="repairUserId != null and repairUserId != ''">
+            <!--<if test="repairUserId != null and repairUserId != ''">
                 <if test="repairUserIdOrNoAssignFlag != null and repairUserIdOrNoAssignFlag == true">
                     and (application.repair_user_id = #{repairUserId} or application.repair_user_id is null)
                 </if>
                 <if test="repairUserIdOrNoAssignFlag == null || repairUserIdOrNoAssignFlag == false">
                     and (application.repair_user_id = #{repairUserId}  or sb.repair_user_second  = #{repairUserId} )
                 </if>
+            </if>-->
+            <if test="repairUserId != null and repairUserId != ''">
+                and application.repair_user_id = #{repairUserId}
             </if>
             <if test="checkUserId != null and checkUserId != ''">
                 and application.check_user_id = #{checkUserId}
@@ -93,9 +96,6 @@
                 and application.apply_time <![CDATA[ <= ]]> #{searchEndTime}
             </if>
             <!-- 新增查询参数 -->
-            <if test="queryRepairUserId != null">
-                and application.repair_user_id = #{queryRepairUserId}
-            </if>
             <if test="statusList != null and statusList.size > 0">
                 AND application.status in
                 <foreach item="item" index="index" collection="statusList" open="(" close=")" separator=",">

+ 23 - 6
platform-service/src/main/java/com/platform/service/repair/impl/RepairApplicationFormServiceImpl.java

@@ -12,6 +12,7 @@ import com.platform.common.constant.CommonConstants;
 import com.platform.common.constant.RedisKeyConstants;
 import com.platform.common.enums.DataFilterTypeEnum;
 import com.platform.common.exception.BusinessException;
+import com.platform.common.exception.DeniedException;
 import com.platform.common.model.UserInfo;
 import com.platform.common.util.*;
 import com.platform.dao.bean.MyVOPage;
@@ -146,7 +147,7 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
     public MyVOPage<RepairApplicationFormVO> selectPageInfoVO(RepairApplicationFormDTO record, int pageNum, int pageSize) {
         PageHelper.startPage(pageNum, pageSize);
 
-        if (record.getSearchType() != null) {
+        /*if (record.getSearchType() != null) {
             // 获取报修人
             if (record.getSearchType() == 1) {
                 if (record.getFilter() != null && DataFilterTypeEnum.SELF.getValue() == record.getFilter().intValue()) {
@@ -168,23 +169,38 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
                     record.setCheckUserId(userInfo.getUserId());
                 }
             }
+        }*/
+
+        UserInfo userInfo = SecurityUtils.getUserInfo();
+        record.setRepairUserId(userInfo.getUserId());
+        // 排除超级用户
+        String userNames = ConfigCache.getLabelByValueAllowNull(SysConfigEnum.REPAIR_SUPER_USERS.name());
+        if(StringUtils.isBlank(userNames)){
+            throw new DeniedException("请设置维修菜单的超级用户");
         }
-        if(record.getStatusSearchType() != null){
+        if(userNames.contains(userInfo.getUsername())){
+            record.setRepairUserId(null);
+        }
+        if(record.getSearchType() != null){
             List<Integer> statusList = new ArrayList<>();
-            if(record.getStatusSearchType() == 1){ // 待维修
+            if(record.getSearchType() == 1){ // 待分配
                 statusList.add(RepairApplicationFormStatusEnum.NOT_ALLOCATED.getValue());
+                record.setRepairUserId(null);
+            }
+            if(record.getSearchType() == 2){ // 待维修
                 statusList.add(RepairApplicationFormStatusEnum.PROCESSING.getValue());
             }
-            if(record.getStatusSearchType() == 2){ // 待审核
+            if(record.getSearchType() == 2){ // 待审核
                 statusList.add(RepairApplicationFormStatusEnum.WAIT_SUBMIT.getValue());
                 statusList.add(RepairApplicationFormStatusEnum.NOT_ACCEPTANCE.getValue());
             }
-            if(record.getStatusSearchType() == 3){ // 已完成
+            if(record.getSearchType() == 3){ // 已完成
                 statusList.add(RepairApplicationFormStatusEnum.FINISHED.getValue());
             }
-            if(record.getStatusSearchType() == 4){ // 已驳回
+            if(record.getSearchType() == 4){ // 已驳回
                 statusList.add(RepairApplicationFormStatusEnum.REBACK.getValue());
             }
+            record.setStatusList(statusList);
         }
         return new MyVOPage<>(mapper.selectPageList(record));
     }
@@ -437,6 +453,7 @@ public class RepairApplicationFormServiceImpl extends BaseServiceImpl<RepairAppl
 
     @Override
     public void modModelByDTO(RepairApplicationFormDTO model) {
+        System.out.println("-----------委外--------------------"+JsonUtils.objectToJson(model));
         if (StringUtils.isBlank(model.getSbId())) {
             throw new BusinessException("请选择报修的设备");
         }