From f91e3a2507c6972fb15d7d91f0d0380dd4be0bef Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期一, 19 九月 2022 08:37:56 +0800 Subject: [PATCH] # --- src/main/java/com/zy/crm/common/utils/TreeUtils.java | 21 ++++++++++++++++----- src/main/java/com/zy/crm/system/controller/DeptController.java | 2 +- src/main/webapp/static/js/cstmr/cstmr.js | 12 +++++++----- src/main/webapp/views/cstmr/cstmr.html | 1 + 4 files changed, 25 insertions(+), 11 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 7c534bb..3f5872a 100644 --- a/src/main/java/com/zy/crm/common/utils/TreeUtils.java +++ b/src/main/java/com/zy/crm/common/utils/TreeUtils.java @@ -7,8 +7,10 @@ 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; import com.zy.crm.system.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.Cacheable; @@ -31,6 +33,8 @@ private DeptService deptService; @Autowired private UserService userService; + @Autowired + private RoleService roleService; /******************************** 褰掔被鏍� *********************************/ @@ -176,7 +180,7 @@ * 鑾峰彇鏍戝浘鏁版嵁缁撴瀯 */ @Cacheable(cacheNames="deptUserTree",key="#id") - public ArrayList<Map<String, Object>> getDeptUserTree(String id, Long hostId){ + public ArrayList<Map<String, Object>> getDeptUserTree(String id, Long hostId, Long userId){ ArrayList<Map<String, Object>> result = new ArrayList<>(); Dept dept = deptService.selectById(id); // 涓昏妭鐐� @@ -188,12 +192,12 @@ // map.put("icon", "layui-icon layui-icon-star-fill"); List<Map<String, Object>> childrens = new ArrayList<>(); map.put("children", childrens); - dealUserDept(dept, childrens, hostId); + dealUserDept(dept, childrens, hostId, userId); result.add(map); return result; } - public void dealUserDept(Dept parent, List<Map<String, Object>> list, Long hostId) { + 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); @@ -202,7 +206,14 @@ } List<Dept> depts = deptService.selectList(wrapper); - List<User> users = userService.getUserByDept(hostId, parent.getId()); + 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()); + } + for (User user : users) { Map<String, Object> map = new HashMap<>(); map.put("title", user.getNickname()); @@ -221,7 +232,7 @@ // map.put("icon", "layui-icon layui-icon-star-fill"); List<Map<String, Object>> childrens = new ArrayList<>(); map.put("children", childrens); - dealUserDept(dept, childrens, hostId); + dealUserDept(dept, childrens, hostId, userId); list.add(map); } } diff --git a/src/main/java/com/zy/crm/system/controller/DeptController.java b/src/main/java/com/zy/crm/system/controller/DeptController.java index c4f4143..cb904f3 100644 --- a/src/main/java/com/zy/crm/system/controller/DeptController.java +++ b/src/main/java/com/zy/crm/system/controller/DeptController.java @@ -185,7 +185,7 @@ @PostMapping(value = "/dept/user/tree/auth") @ManagerAuth public R deptUserTree(@RequestParam(required = false, defaultValue = "") String condition) throws IOException, ClassNotFoundException { - ArrayList<Map<String, Object>> tree = treeUtils.getDeptUserTree(String.valueOf(getDeptId()), getHostId()); + ArrayList<Map<String, Object>> tree = treeUtils.getDeptUserTree(String.valueOf(getDeptId()), getHostId(), getUserId()); // 娣辨嫹璐� List<Map<String, Object>> result = ListUtils.deepCopy(tree); if (!Cools.isEmpty(condition)) { diff --git a/src/main/webapp/static/js/cstmr/cstmr.js b/src/main/webapp/static/js/cstmr/cstmr.js index f0c5137..dbd9232 100644 --- a/src/main/webapp/static/js/cstmr/cstmr.js +++ b/src/main/webapp/static/js/cstmr/cstmr.js @@ -64,9 +64,10 @@ break case 2: // 瀵煎叆 Excel - let arrFileHandle = await window.showOpenFilePicker() - let file = await arrFileHandle[0].getFile(); - upload(file); + $("#importExcel").trigger("click"); + // let arrFileHandle = await window.showOpenFilePicker() + // let file = await arrFileHandle[0].getFile(); + // upload(file); break case 3: // 瀵煎嚭 Excel @@ -385,10 +386,11 @@ } } -function upload(file){ - if(!file) { +function upload(obj){ + if(!obj.files) { return; } + var file = obj.files[0]; admin.confirm('纭鍚屾 [' + file.name +'] 鏂囦欢鍚楋紵', function (index) { layer.load(1, {shade: [0.1,'#fff']}); var url = baseUrl + "/cstmr/excel/import/auth"; diff --git a/src/main/webapp/views/cstmr/cstmr.html b/src/main/webapp/views/cstmr/cstmr.html index a244bcb..3c414bd 100644 --- a/src/main/webapp/views/cstmr/cstmr.html +++ b/src/main/webapp/views/cstmr/cstmr.html @@ -84,6 +84,7 @@ </div> </div> <table class="layui-hide" id="cstmr" lay-filter="cstmr"></table> + <input style="display:none" id="importExcel" type="file" onchange="upload(this)" > </div> </div> <div class="layui-card" style="margin-bottom: 0"> -- Gitblit v1.9.1