三七 пре 5 дана
родитељ
комит
3d07f47f7c

+ 41 - 4
fs-company/src/main/java/com/fs/company/controller/qw/QwSopTempController.java

@@ -72,7 +72,7 @@ public class QwSopTempController extends BaseController
         // 收集所有需要查询的用户ID
         Set<Long> userIds = list.stream()
                 .map(QwSopTemp::getCreateBy)
-                .filter(StringUtil::strIsNullOrEmpty)
+                .filter(str -> !StringUtil.strIsNullOrEmpty(str)) // 取反,保留非空值
                 .map(Long::valueOf)
                 .collect(Collectors.toSet());
 
@@ -149,11 +149,20 @@ public class QwSopTempController extends BaseController
         Long deptId = loginUser.getUser().getDeptId();
         if (deptId!=null){
             combinedDpetList.add(deptId);
+
+            //本部门的上级部门
+            List<Long> deptList = companyDeptService.selectCompanyDeptByDeptId(deptId);
+            if (!deptList.isEmpty()){
+                combinedDpetList.addAll(deptList);
+            }
         }
+
+
+
         //本部门的下级部门
-        List<Long> deptList = companyDeptService.selectCompanyDeptByParentId(deptId);
-        if (!deptList.isEmpty()){
-            combinedDpetList.addAll(deptList);
+        List<Long> parentList = companyDeptService.selectCompanyDeptByParentId(deptId);
+        if (!parentList.isEmpty()){
+            combinedDpetList.addAll(parentList);
         }
 
         List<Long> userIds = companyUserService.selectCompanyQwUserByDept(combinedDpetList, loginUser.getUser().getUserType());
@@ -166,6 +175,34 @@ public class QwSopTempController extends BaseController
         startPage();
 //        List<QwSopTemp> list = qwSopTempService.selectQwSopTempList(qwSopTemp);
         List<QwSopTemp> list = qwSopTempService.selectQwSopTempListNew(qwSopTemp);
+
+        // 收集所有需要查询的用户ID
+        Set<Long> createBys = list.stream()
+                .map(QwSopTemp::getCreateBy)
+                .filter(str -> !StringUtil.strIsNullOrEmpty(str)) // 取反,保留非空值
+                .map(Long::valueOf)
+                .collect(Collectors.toSet());
+
+        if (!userIds.isEmpty()){
+            // 批量查询用户信息
+            Map<Long, DocCompanyUserVO> userMap = companyUserService
+                    .selectDocCompanyUserListByUserIds(createBys)
+                    .stream()
+                    .collect(Collectors.toMap(DocCompanyUserVO::getUserId, Function.identity()));
+
+
+            list.forEach(item->{
+
+                if (!StringUtil.strIsNullOrEmpty(item.getCreateBy())) {
+                    DocCompanyUserVO user = userMap.get(Long.valueOf(item.getCreateBy()));
+                    if (user != null) {
+                        item.setCreateByName(user.getNickName());
+                        item.setCreateByDeptName(user.getDeptName());
+                    }
+                }
+
+            });
+        }
         return getDataTable(list);
     }
 

+ 4 - 0
fs-service/src/main/java/com/fs/company/mapper/CompanyDeptMapper.java

@@ -108,6 +108,10 @@ public interface CompanyDeptMapper
     @Select("select dept_id from company_dept where parent_id=#{parentId}")
     List<Long> selectCompanyDeptByParentId(@Param("parentId") Long parentId);
 
+    @Select("select parent_id from company_dept where dept_id=#{deptId}")
+    List<Long> selectCompanyDeptByDeptId(@Param("deptId") Long deptId);
+
+
     @Select("select * from company_dept where status='0' and del_flag='0'")
     List<CompanyDept> queryDeptDataAll();
 

+ 1 - 0
fs-service/src/main/java/com/fs/company/service/ICompanyDeptService.java

@@ -81,6 +81,7 @@ public interface ICompanyDeptService
     List<String> selectCompanyDeptNamesByIds(String ids);
 
     List<Long> selectCompanyDeptByParentId(Long parentId);
+    List<Long> selectCompanyDeptByDeptId(Long parentId);
 
     String selectDeptNameById(Long deptId);
 

+ 5 - 0
fs-service/src/main/java/com/fs/company/service/impl/CompanyDeptServiceImpl.java

@@ -235,6 +235,11 @@ public class CompanyDeptServiceImpl implements ICompanyDeptService
         return companyDeptMapper.selectCompanyDeptByParentId(parentId);
     }
 
+    @Override
+    public List<Long> selectCompanyDeptByDeptId(Long deptId) {
+        return companyDeptMapper.selectCompanyDeptByDeptId(deptId);
+    }
+
     @Override
     public String selectDeptNameById(Long deptId) {
         return companyDeptMapper.selectDeptNameById(deptId);