Pārlūkot izejas kodu

feat: plan state query

shc 9 mēneši atpakaļ
vecāks
revīzija
955dddeba2

+ 26 - 0
hnqz-upms/hnqz-upms-api/src/main/java/com/qunzhixinxi/hnqz/admin/api/constant/UpmsState.java

@@ -50,6 +50,32 @@ public class UpmsState {
         private final String description;
     }
 
+    /**
+     * 执行计划类型(可见实际类型)
+     *
+     * @author ImplementPlanType
+     * @version 1.0.0
+     * @date 2024/05/19 11:22
+     */
+    @Getter
+    @AllArgsConstructor
+    public enum ImplementPlanActionState {
+
+        IN_PROGRESS("IN_PROGRESS", "执行中"),
+        REJECTED("REJECTED", "拒绝"),
+
+        AWAIT_2_LEADER("AWAIT_2_LEADER", "待营销中心分管领导审批"),
+        AWAIT_2_OM("AWAIT_2_OM", "待运营管理员审批"),
+
+        PASSED_AND_GO("PASSED_AND_GO", "审核通过已下发"),
+        PASSED_TO_GO("PASSED_TO_GO", "审核通过待下发"),
+        ;
+
+        @EnumValue
+        private final String state;
+        private final String desc;
+    }
+
 
     /**
      * 执行计划类型

+ 3 - 3
hnqz-upms/hnqz-upms-api/src/main/java/com/qunzhixinxi/hnqz/admin/api/dto/SysImplementPlanDTO.java

@@ -147,9 +147,9 @@ public final class SysImplementPlanDTO {
         private UpmsType.ImplementPlanType planType;
 
         /**
-         * 审核状态
+         * 实际可见状态
          */
-        private UpmsState.ImplementPlanState planState;
+        private UpmsState.ImplementPlanActionState actionState;
 
         /**
          * 受托人ID
@@ -188,7 +188,7 @@ public final class SysImplementPlanDTO {
         @NotNull(message = "审核结果必填")
         private Boolean result;
 
-        @NotBlank(message = "审核意见必填")
+        // @NotBlank(message = "审核意见必填")
         private String msg;
     }
 }

+ 30 - 3
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/SysImplementPlanManager.java

@@ -136,9 +136,10 @@ public class SysImplementPlanManager {
 
     private Page<SysImplementPlan> toBasePage(int entLevel, SysImplementPlanDTO.OnPage query, HnqzUser operator) {
 
+
         // 获取根目录分页
         Page<SysImplementPlan> page = this.getPage(operator, entLevel, query.getCurrent(), query.getSize(), query.getPlanName(),
-                query.getConsigneeId(), operator.getDeptId(), query.getPlanState(), query.getPlanType(), query.getPeriod(), query.getCreateTime());
+                query.getConsigneeId(), operator.getDeptId(), query.getActionState(), query.getPlanType(), query.getPeriod(), query.getCreateTime());
 
         List<SysImplementPlan> records = page.getRecords();
 
@@ -288,7 +289,7 @@ public class SysImplementPlanManager {
                                            String planName,
                                            Integer consigneeId,
                                            Integer consignorId,
-                                           UpmsState.ImplementPlanState planState,
+                                           UpmsState.ImplementPlanActionState actionState,
                                            UpmsType.ImplementPlanType planType,
                                            LocalDate[] period,
                                            LocalDateTime[] createTime) {
@@ -298,7 +299,7 @@ public class SysImplementPlanManager {
 //                .eq(Objects.nonNull(consigneeId), SysImplementPlan::getConsigneeId, consigneeId)
 //                .eq(Objects.nonNull(consignorId), SysImplementPlan::getConsignorId, consignorId)
                 .eq(Objects.nonNull(planType), SysImplementPlan::getPlanType, planType)
-                .eq(Objects.nonNull(planState), SysImplementPlan::getPlanState, planState)
+                // .eq(Objects.nonNull(planState), SysImplementPlan::getPlanState, planState)
                 .like(StrUtil.isNotBlank(planName), SysImplementPlan::getPlanName, planName);
 
         // 服务商管理员(只查询发给我的)
@@ -331,6 +332,32 @@ public class SysImplementPlanManager {
                     .in(CollUtil.isNotEmpty(visibleEntIds), SysImplementPlan::getConsigneeId, visibleEntIds)
                     // .eq(Objects.nonNull(consigneeId), SysImplementPlan::getConsigneeId, consigneeId)
                     .eq(SysImplementPlan::getParentId, 0);
+
+
+            // 拼装状态
+            if (Objects.nonNull(actionState)) {
+                switch (actionState) {
+                    case AWAIT_2_LEADER:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.INIT).eq(SysImplementPlan::getParentId, 0);
+                        break;
+                    case AWAIT_2_OM:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.INIT).ne(SysImplementPlan::getParentId, 0);
+                        break;
+                    case PASSED_AND_GO:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.PASSED).apply("plan_score != avail_score");
+                        break;
+                    case PASSED_TO_GO:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.PASSED).apply("plan_score = avail_score");;
+                        break;
+                    case REJECTED:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.REJECTED);
+                        break;
+                    case IN_PROGRESS:
+                        wrapper.eq(SysImplementPlan::getPlanState, UpmsState.ImplementPlanState.IN_PROGRESS);
+                        break;
+                }
+            }
+
         }
         // 平台||营销中心(查询全部)
         else {