lyhzzz 3 месяцев назад
Родитель
Сommit
063d93c3cd

+ 2 - 1
src/main/java/com/fdkankan/fusion/controller/TmUserController.java

@@ -89,9 +89,10 @@ public class TmUserController {
                                   @RequestParam(name = "userName", required = false) String userName,
                                       @RequestParam(name = "deptId", required = false) String deptId,
                                       @RequestParam(name = "status", required = false) Integer status,
+                                      @RequestParam(name = "searchType" ,defaultValue = "0") Integer searchType,
                                       @RequestParam(name = "pageNum",defaultValue = "1") Long pageNum,
                                       @RequestParam(name = "pageSize",defaultValue = "10") Long pageSize) {
-        return ResultData.ok(tmUserService.pageList(userName,nickName,deptId,status,pageNum,pageSize));
+        return ResultData.ok(tmUserService.pageList(userName,nickName,deptId,status,pageNum,pageSize, searchType));
     }
 
     @GetMapping("/getUserListSelect")

+ 1 - 1
src/main/java/com/fdkankan/fusion/service/ITmUserService.java

@@ -41,7 +41,7 @@ public interface ITmUserService extends IService<TmUser> {
 
     TmUser getLoginUser();
 
-    PageInfo pageList(String userName,String nickName, String deptId, Integer status, Long pageNum, Long pageSize);
+    PageInfo pageList(String userName,String nickName, String deptId, Integer status, Long pageNum, Long pageSize,Integer searchType);
 
     Object getUserListSelect(String deptId);
 

+ 20 - 5
src/main/java/com/fdkankan/fusion/service/impl/TmUserServiceImpl.java

@@ -31,6 +31,7 @@ import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Set;
@@ -286,8 +287,26 @@ public class TmUserServiceImpl extends ServiceImpl<ITmUserMapper, TmUser> implem
     }
 
     @Override
-    public PageInfo pageList(String userName,String nickName, String deptId, Integer status, Long pageNum, Long pageSize) {
+    public PageInfo pageList(String userName,String nickName, String deptIdParam, Integer status, Long pageNum, Long pageSize,Integer searchType) {
         LambdaQueryWrapper<TmUser> wrapper = new LambdaQueryWrapper<>();
+        List<String> deptIds = new ArrayList<>();
+        String deptId = tmDepartmentService.getDeptId();
+
+        if(searchType == 0){
+            deptIds.add(deptId);
+        }
+        if(searchType == 1){  //下级共享给上级场景
+            List<TmDepartment> sonByDeptId = tmDepartmentService.getSonByDeptId(deptId);
+            deptIds.add(deptId);
+            deptIds.addAll(sonByDeptId.stream().map(TmDepartment::getId).collect(Collectors.toList()));
+        }
+        if(deptIds.isEmpty()){
+            return PageInfo.PageInfoEmpty();
+        }
+        if(StringUtils.isNotBlank(deptId)){
+            wrapper.eq(TmUser::getDeptId,deptIdParam);
+        }
+
         if(StringUtils.isNotBlank(userName)){
             wrapper.like(TmUser::getUserName,userName);
         }
@@ -298,10 +317,6 @@ public class TmUserServiceImpl extends ServiceImpl<ITmUserMapper, TmUser> implem
         if(status != null){
             wrapper.eq(TmUser::getStatus,status);
         }
-        List<String> deptIds = tmDepartmentService.getDeptIds();
-        if(StringUtils.isNotBlank(deptId)){
-            deptIds = tmDepartmentService.getSonByDeptIdAndDeptIds(deptIds,deptId);
-        }
         wrapper.in(TmUser::getDeptId,deptIds);
 
         wrapper.orderByDesc(TmUser::getCreateTime);