From 1f653021b7c278f2e505101ce0364e2160be51d1 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期二, 08 十一月 2022 13:37:32 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/crm/common/utils/TreeUtils.java | 30 +++++----------
src/main/java/com/zy/crm/system/service/impl/RoleServiceImpl.java | 35 +++++++++++++++++
src/main/java/com/zy/crm/system/service/RoleService.java | 5 ++
3 files changed, 49 insertions(+), 21 deletions(-)
diff --git a/src/main/java/com/zy/crm/common/utils/TreeUtils.java b/src/main/java/com/zy/crm/common/utils/TreeUtils.java
index 3f5872a..4d6cda0 100644
--- a/src/main/java/com/zy/crm/common/utils/TreeUtils.java
+++ b/src/main/java/com/zy/crm/common/utils/TreeUtils.java
@@ -7,7 +7,6 @@
import com.zy.crm.manager.service.NodeService;
import com.zy.crm.manager.service.TagService;
import com.zy.crm.system.entity.Dept;
-import com.zy.crm.system.entity.Role;
import com.zy.crm.system.entity.User;
import com.zy.crm.system.service.DeptService;
import com.zy.crm.system.service.RoleService;
@@ -189,7 +188,6 @@
map.put("id", dept.getId());
map.put("spread", true);
map.put("key", "dept_id");
-// map.put("icon", "layui-icon layui-icon-star-fill");
List<Map<String, Object>> childrens = new ArrayList<>();
map.put("children", childrens);
dealUserDept(dept, childrens, hostId, userId);
@@ -198,22 +196,8 @@
}
public void dealUserDept(Dept parent, List<Map<String, Object>> list, Long hostId, Long userId) {
- Wrapper<Dept> wrapper = new EntityWrapper<Dept>()
- .eq("parent_id", parent.getId())
- .eq("status", 1);
- if (hostId != null) {
- wrapper.eq("host_id", hostId);
- }
- List<Dept> depts = deptService.selectList(wrapper);
-
- List<User> users = new ArrayList<>();
- Role role = roleService.selectById(userService.selectById(userId).getRoleId());
- if (role.getCode().equals("salesman")) {
- users.add(userService.selectById(userId));
- } else {
- users = userService.getUserByDept(hostId, parent.getId());
- }
-
+ // 浜哄憳
+ List<User> users = roleService.getUserByRoleCode(hostId, parent.getId(), userId);
for (User user : users) {
Map<String, Object> map = new HashMap<>();
map.put("title", user.getNickname());
@@ -222,14 +206,20 @@
map.put("icon", "layui-icon layui-icon-friends");
list.add(map);
}
-
+ // 閮ㄩ棬
+ Wrapper<Dept> wrapper = new EntityWrapper<Dept>()
+ .eq("parent_id", parent.getId())
+ .eq("status", 1);
+ if (hostId != null) {
+ wrapper.eq("host_id", hostId);
+ }
+ List<Dept> depts = deptService.selectList(wrapper);
for (Dept dept : depts) {
Map<String, Object> map = new HashMap<>();
map.put("title", dept.getName());
map.put("id", dept.getId());
map.put("spread", true);
map.put("key", "dept_id");
-// map.put("icon", "layui-icon layui-icon-star-fill");
List<Map<String, Object>> childrens = new ArrayList<>();
map.put("children", childrens);
dealUserDept(dept, childrens, hostId, userId);
diff --git a/src/main/java/com/zy/crm/system/service/RoleService.java b/src/main/java/com/zy/crm/system/service/RoleService.java
index 6a51052..ce0a230 100644
--- a/src/main/java/com/zy/crm/system/service/RoleService.java
+++ b/src/main/java/com/zy/crm/system/service/RoleService.java
@@ -2,7 +2,12 @@
import com.baomidou.mybatisplus.service.IService;
import com.zy.crm.system.entity.Role;
+import com.zy.crm.system.entity.User;
+
+import java.util.List;
public interface RoleService extends IService<Role> {
+ List<User> getUserByRoleCode(Long hostId, Long deptId, Long userId);
+
}
diff --git a/src/main/java/com/zy/crm/system/service/impl/RoleServiceImpl.java b/src/main/java/com/zy/crm/system/service/impl/RoleServiceImpl.java
index da93c1f..02b3021 100644
--- a/src/main/java/com/zy/crm/system/service/impl/RoleServiceImpl.java
+++ b/src/main/java/com/zy/crm/system/service/impl/RoleServiceImpl.java
@@ -1,12 +1,45 @@
package com.zy.crm.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
+import com.core.common.Cools;
import com.zy.crm.system.entity.Role;
+import com.zy.crm.system.entity.User;
import com.zy.crm.system.mapper.RoleMapper;
import com.zy.crm.system.service.RoleService;
+import com.zy.crm.system.service.UserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
@Service("roleService")
public class RoleServiceImpl extends ServiceImpl<RoleMapper, Role> implements RoleService {
+ @Autowired
+ private UserService userService;
+
+ @Override
+ public List<User> getUserByRoleCode(Long hostId, Long deptId, Long userId) {
+ Role role = this.selectById(userService.selectById(userId).getRoleId());
+ if (Cools.isEmpty(role) || Cools.isEmpty(role.getCode())) {
+ return new ArrayList<>();
+ }
+ switch (role.getCode()) {
+ case "boss":
+ case "manager":
+ return userService.getUserByDept(hostId, deptId);
+ case "salesman":
+ User user = userService.selectById(userId);
+ if (deptId.equals(user.getDeptId())) {
+ return Collections.singletonList(user);
+ } else {
+ return new ArrayList<>();
+ }
+ default:
+ return new ArrayList<>();
+ }
+ }
+
}
--
Gitblit v1.9.1