浏览代码

feat: plan page by area

shc 9 月之前
父节点
当前提交
26896f0d6d

+ 0 - 3
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/SysUserController.java

@@ -27,13 +27,11 @@ import com.qunzhixinxi.hnqz.admin.api.entity.SysUserRole;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmPlatformQuizTestResult;
 import com.qunzhixinxi.hnqz.admin.api.model.WmQuizResultModel;
 import com.qunzhixinxi.hnqz.admin.api.vo.UserVO;
-import com.qunzhixinxi.hnqz.admin.api.entity.SysCsmUserRelation;
 import com.qunzhixinxi.hnqz.admin.api.dto.CommonUserDTO;
 import com.qunzhixinxi.hnqz.admin.api.model.input.UserCertificationInput;
 import com.qunzhixinxi.hnqz.admin.api.model.excel.CommonUserExcelModel;
 import com.qunzhixinxi.hnqz.admin.api.constant.enums.DelEnum;
 import com.qunzhixinxi.hnqz.admin.manager.SysUserManager;
-import com.qunzhixinxi.hnqz.admin.mapper.SysCsmUserRelationMapper;
 import com.qunzhixinxi.hnqz.admin.mapper.SysUserMapper;
 import com.qunzhixinxi.hnqz.admin.mapper.SysUserRoleMapper;
 import com.qunzhixinxi.hnqz.admin.service.SysAreaEntityService;
@@ -99,7 +97,6 @@ public class SysUserController {
     private final SysUserRoleMapper sysUserRoleMapper;
     private final SysUserAreaService userAreaService;
     private final WmPlatformQuizTestResultService platformQuizTestResultService;
-    private final SysCsmUserRelationMapper sysCsmUserRelationMapper;
     private final SysAreaEntityService areaEntityService;
     private final SysUserManager userManager;
 

+ 40 - 5
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/SysImplementPlanManager.java

@@ -28,20 +28,19 @@ import com.qunzhixinxi.hnqz.admin.api.entity.WmScorePackage;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmTaskType;
 import com.qunzhixinxi.hnqz.admin.api.vo.SysImplementPlanVO;
 import com.qunzhixinxi.hnqz.admin.service.SysDeptService;
+import com.qunzhixinxi.hnqz.admin.service.SysEnterpriseAreaService;
 import com.qunzhixinxi.hnqz.admin.service.SysImplPlanDetailsItemService;
 import com.qunzhixinxi.hnqz.admin.service.SysImplPlanDetailsService;
 import com.qunzhixinxi.hnqz.admin.service.SysImplementPlanService;
 import com.qunzhixinxi.hnqz.admin.service.SysPlanPkgService;
 import com.qunzhixinxi.hnqz.admin.service.SysRoleService;
+import com.qunzhixinxi.hnqz.admin.service.SysUserAreaService;
 import com.qunzhixinxi.hnqz.admin.service.WmDaDrugEntDrugtableService;
 import com.qunzhixinxi.hnqz.admin.service.WmScorePackageService;
-import com.qunzhixinxi.hnqz.admin.service.WmTaskService;
 import com.qunzhixinxi.hnqz.admin.service.WmTaskTypeService;
 import com.qunzhixinxi.hnqz.common.core.constant.CommonConstants;
 import com.qunzhixinxi.hnqz.common.core.exception.BizException;
-import com.qunzhixinxi.hnqz.common.core.util.R;
 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.data.redis.core.RedisTemplate;
@@ -50,7 +49,17 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.time.LocalDate;
 import java.time.LocalDateTime;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.function.Function;
 import java.util.stream.Collectors;
@@ -77,6 +86,8 @@ public class SysImplementPlanManager {
     private final WmScorePackageService scorePackageService;
     private final WmTaskTypeService taskTypeService;
     private final RedisTemplate<String, Object> redisTemplate;
+    private final SysUserAreaService userAreaService;
+    private final SysEnterpriseAreaService enterpriseAreaService;
 
     /**
      * 创建计划
@@ -263,6 +274,7 @@ public class SysImplementPlanManager {
                                            LocalDate[] period,
                                            LocalDateTime[] createTime) {
 
+
         LambdaQueryWrapper<SysImplementPlan> wrapper = Wrappers.<SysImplementPlan>lambdaQuery()
 //                .eq(Objects.nonNull(consigneeId), SysImplementPlan::getConsigneeId, consigneeId)
 //                .eq(Objects.nonNull(consignorId), SysImplementPlan::getConsignorId, consignorId)
@@ -284,8 +296,21 @@ public class SysImplementPlanManager {
         }
         // 事业部管理员||药企(只查询我下发的)
         else if (entLevel == -1) {
+
+            Set<Long> visibleEntIds = new HashSet<>();
+            // 订单查询
+            if (Objects.nonNull(consigneeId)){
+                visibleEntIds.add(Long.valueOf(consigneeId));
+            }
+            // 先定区域内的信息
+            else {
+                List<Long> entIds = listVisibleEntIds(user);
+                visibleEntIds.addAll(entIds);
+            }
+
             wrapper.eq(SysImplementPlan::getConsignorId, user.getDeptId())
-                    .eq(Objects.nonNull(consigneeId), SysImplementPlan::getConsigneeId, consigneeId)
+                    .in(CollUtil.isNotEmpty(visibleEntIds), SysImplementPlan::getConsigneeId, visibleEntIds)
+                    // .eq(Objects.nonNull(consigneeId), SysImplementPlan::getConsigneeId, consigneeId)
                     .eq(SysImplementPlan::getParentId, 0);
         }
         // 平台||营销中心(查询全部)
@@ -305,6 +330,16 @@ public class SysImplementPlanManager {
         return implementPlanService.page(new Page<>(current, size), wrapper);
     }
 
+
+    private List<Long> listVisibleEntIds(HnqzUser user) {
+
+        // 获取当前操作人能看到区域范围
+        List<Long> areaIds = userAreaService.listUserAreas(Long.valueOf(user.getId()));
+
+        // 获取可见范围中所有企业的信息
+        return enterpriseAreaService.listAreaEnts(areaIds);
+    }
+
     /**
      * 审核计划
      *

+ 1 - 2
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/SysUserAreaServiceImpl.java

@@ -67,8 +67,7 @@ public class SysUserAreaServiceImpl extends ServiceImpl<SysUserAreaMapper, SysUs
      */
     @Override
     public List<Long> listUserAreas(Long userId) {
-        return this.list(Wrappers.<SysUserArea>lambdaQuery().eq(SysUserArea::getUserId, userId)
-        ).stream().map(SysUserArea::getAreaId).collect(Collectors.toList());
+        return this.list(Wrappers.<SysUserArea>lambdaQuery().eq(SysUserArea::getUserId, userId)).stream().map(SysUserArea::getAreaId).collect(Collectors.toList());
     }
 
     /**

二进制
hnqz-upms/hnqz-upms-biz/src/main/resources/excel/scorepackage_full_import_template.xlsx