shc 8 месяцев назад
Родитель
Сommit
4fe6917d5a

+ 6 - 0
hnqz-upms/hnqz-upms-api/src/main/java/com/qunzhixinxi/hnqz/admin/api/entity/WmTaskSupervision.java

@@ -42,6 +42,12 @@ public final class WmTaskSupervision implements Serializable {
     @TableField(value = "sup_res")
     private Boolean supervisionResult;
 
+    /**
+     * 监察状态
+     */
+    @TableField(value = "sup_state")
+    private UpmsState.TaskSupervisionState supervisionState;
+
     /**
      * 是否可以修改
      */

+ 25 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmTaskSupervisionServiceImpl.java

@@ -1,18 +1,22 @@
 package com.qunzhixinxi.hnqz.admin.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qunzhixinxi.hnqz.admin.api.constant.UpmsState;
 import com.qunzhixinxi.hnqz.admin.api.dto.WmSupervisionDto;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmTaskSupervision;
 import com.qunzhixinxi.hnqz.admin.mapper.WmTaskSupervisionMapper;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskSupervisionService;
 import com.qunzhixinxi.hnqz.common.security.service.HnqzUser;
+import com.qunzhixinxi.hnqz.common.security.util.SecurityUtils;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * 任务监督服务实现
@@ -46,6 +50,7 @@ public class WmTaskSupervisionServiceImpl extends ServiceImpl<WmTaskSupervisionM
         taskSupervision.setCreateTime(LocalDateTime.now());
         taskSupervision.setUpdateBy(user.getUsername());
         taskSupervision.setUpdateTime(LocalDateTime.now());
+        taskSupervision.setSupervisionState(UpmsState.TaskSupervisionState.INIT);
 
         return this.save(taskSupervision);
     }
@@ -72,9 +77,29 @@ public class WmTaskSupervisionServiceImpl extends ServiceImpl<WmTaskSupervisionM
     @Transactional(rollbackFor = Exception.class)
     public void updateSupervision(Long supervisionId, Boolean modifiable, HnqzUser operator) {
 
+        UpmsState.TaskSupervisionState state = UpmsState.TaskSupervisionState.REJECTED;
+        if (!modifiable) {
+            List<Integer> roles = SecurityUtils.getRoles();
+
+            // 部门领导
+            if (CollUtil.containsAny(roles, List.of(57, 58, 59, 60))) {
+                state = UpmsState.TaskSupervisionState.CKT1;
+            }
+            // 分管领导
+            else if (CollUtil.containsAny(roles, List.of(51, 54, 55, 61))) {
+                state = UpmsState.TaskSupervisionState.CKT2;
+            }
+            // 事业部总经理
+            else if (CollUtil.containsAny(roles, List.of(39))) {
+                state = UpmsState.TaskSupervisionState.PASSED;
+            }
+
+        }
+
         WmTaskSupervision taskSupervision = new WmTaskSupervision();
         taskSupervision.setSupervisionId(supervisionId);
         taskSupervision.setModifiable(modifiable);
+        taskSupervision.setSupervisionState(state);
         taskSupervision.setUpdateBy(operator.getUsername());
         taskSupervision.setUpdateTime(LocalDateTime.now());