Просмотр исходного кода

修改渠道查询当前登录人管理的渠道用户信息

hxl13994548489 2 лет назад
Родитель
Сommit
54f7085335

+ 10 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserService.java

@@ -151,6 +151,16 @@ public interface SysUserService extends IService<SysUser> {
     IPage<QuUserNum> quAgentAreaAdmin(QuUserNumDto quUserNumDto);
 
     IPage<QuUserNum> quAgentAreaAdminDetail(QuUserNumDto quUserNumDto);
+
+
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/4/29 16:03
+     *  @Description: 查询当前登陆人管理的渠道信息 ,即领导人为当前人的数据
+     */
+    List<String> getUserIdsByLeaderId(String userId);
+
 }
 
 

+ 21 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserServiceImpl.java

@@ -1258,6 +1258,27 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
         page.setTotal(deptByCompany.size());
         return page;
     }
+
+    /**
+     *  @version
+     *  @author: hxl
+     *  @Date: 2024/4/29 16:01
+     *  @Description: 查询当前登陆人管理的渠道人 即领导人为当前登陆人的用户需要递归查询
+     */
+    public List<String> getUserIdsByLeaderId(String userId){
+        // 获取系统中的所有用户
+        LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.eq(SysUser::getStatus, 1);
+        List<SysUser> allUsers = this.getBaseMapper().selectList(queryWrapper);
+        // 查询指定用户ID管理的用户,即第一级下属
+        queryWrapper.eq(SysUser::getId, userId);
+        List<SysUser> leadUsers = this.getBaseMapper().selectList(queryWrapper);
+        // 用于存储所有下属的ID
+        List<String> strIds = new ArrayList<>();
+        // 递归获取第一级下属及其所有下属的ID
+        findChildren(leadUsers, allUsers, strIds);
+        return strIds;
+    }
 }
 
 

+ 4 - 4
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -84,7 +84,8 @@ import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
-import static com.ydtech.modules.order.constants.OrderCacheConstant.*;
+import static com.ydtech.modules.order.constants.OrderCacheConstant.QUOTE_INFO_KEY;
+import static com.ydtech.modules.order.constants.OrderCacheConstant.QUOTE_INFO_KEY_TIME;
 
 /**
  * @author wenkaisen
@@ -838,8 +839,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             //渠道
             //查询用户表中的信息为领带id为用户id的数据
             //List<SysUserBaseVO> allUsersByLeaderId = sysUserMapper.getAllUsersByLeaderId(orderQueryVo.getUserId());
-            agentUserIds = sysUserMapper.getUserIdsByLeaderId(orderQueryVo.getUserId());
-
+            agentUserIds = sysUserService.getUserIdsByLeaderId(orderQueryVo.getUserId());
             //查询下级
            // if (allUsersByLeaderId != null && allUsersByLeaderId.size() > 0) {
            //     for (SysUserBaseVO sysUserBaseVO : allUsersByLeaderId) {
@@ -847,7 +847,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
            //     }
            // }
             //查询团队长的机构ids
-            deptIds= sysUserMapper.getDeptIdsByUserIds(orderQueryVo.getUserId());
+            //deptIds= sysUserMapper.getDeptIdsByUserIds(orderQueryVo.getUserId());
         } else if (type == 2) {
             //查询所有的代理人
             //agentUserIds = sysUserMapper.getAgentUserIds();