Browse Source

Merge remote-tracking branch 'origin/master'

user5 1 year atrás
parent
commit
750d43e45f
16 changed files with 299 additions and 16 deletions
  1. 5 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/factory/UserApiFallbackFactory.java
  2. 8 0
      jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/feign/IUserApi.java
  3. 25 6
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/projectRecords/service/CwProjectRecordsService.java
  4. 26 6
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/projectReport/service/CwProjectReportService.java
  5. 33 0
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApply/service/ReportCancellApplyService.java
  6. 1 0
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/mapper/xml/ReportCancellApplyArchivedMapper.xml
  7. 50 0
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/service/ReportCancellApplyArchivedService.java
  8. 5 0
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/service/dto/ArchivedReportInfoDto.java
  9. 37 0
      jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/workClientInfo/controller/CwWorkClientController.java
  10. 4 4
      jeeplus-modules/jeeplus-finance/src/main/resources/bootstrap.yml
  11. 22 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/controller/OfficeController.java
  12. 5 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/feign/UserApiImpl.java
  13. 17 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/UserMapper.java
  14. 27 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/xml/UserMapper.xml
  15. 19 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/OfficeService.java
  16. 15 0
      jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/UserService.java

+ 5 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/factory/UserApiFallbackFactory.java

@@ -79,6 +79,11 @@ public class UserApiFallbackFactory implements FallbackFactory <IUserApi> {
             }
 
             @Override
+            public List<UserDTO> getAllUserInfo() {
+                return null;
+            }
+
+            @Override
             public List <UserDTO> findListFlowAbleByPostId(String postId) {
                 return Lists.newArrayList ( );
             }

+ 8 - 0
jeeplus-api/jeeplus-system-api/src/main/java/com/jeeplus/sys/feign/IUserApi.java

@@ -112,6 +112,14 @@ public interface IUserApi {
     List <UserDTO> findListByPostId(@RequestParam("postId") String postId);
 
     /**
+     * 获取所有的用户信息
+     *
+     * @return
+     */
+    @GetMapping(value = BASE_URL + "/getAllUserInfo")
+    List <UserDTO> getAllUserInfo();
+
+    /**
      * 根据岗位id获取用户列表
      *
      * @param postId

+ 25 - 6
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/projectRecords/service/CwProjectRecordsService.java

@@ -119,18 +119,37 @@ public class CwProjectRecordsService extends ServiceImpl<CwProjectRecordsMapper,
         }
 
         IPage<CwProjectRecordsDTO> list = cwProjectRecordsMapper.findList(page, queryWrapper);
+        List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
         list.getRecords().forEach(li->{
             if (StringUtils.isBlank(li.getProjectMasterName())){
                 //根据项目经理1的id去查项目经理去名称
                 if (StringUtils.isNotBlank(li.getProjectMasterId())){
-                    UserDTO byId = SpringUtil.getBean(IUserApi.class).getById(li.getProjectMasterId());
-                    li.setProjectMasterName(byId.getName());
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMasterId().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMasterName(projectMasterName);
+                    }
                 }
-            } else if (StringUtils.isBlank(li.getRealHeaderName())){
-                //根据项目经理1的id去查项目经理去名称
+            }
+            if (StringUtils.isBlank(li.getRealHeaderName())) {
                 if (StringUtils.isNotBlank(li.getRealHeader())){
-                    UserDTO byId = SpringUtil.getBean(IUserApi.class).getById(li.getRealHeader());
-                    li.setRealHeaderName(byId.getName());
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getRealHeader().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setRealHeaderName(projectMasterName);
+                    }
                 }
             }
         });

+ 26 - 6
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/projectReport/service/CwProjectReportService.java

@@ -521,18 +521,38 @@ public class CwProjectReportService extends ServiceImpl<CwProjectReportMapper, C
 
 
         IPage<CwProjectReportData> list = reportMapper.findList(page,userDTO,isBmzr, officeIds.toString(), queryWrapper);
+        List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
         list.getRecords().forEach(li->{
             if (StringUtils.isBlank(li.getProjectMasterName())){
                 //根据项目经理1的id去查项目经理去名称
                 if (StringUtils.isNotBlank(li.getProjectMasterId())){
-                    UserDTO byId = SpringUtil.getBean(IUserApi.class).getById(li.getProjectMasterId());
-                    li.setProjectMasterName(byId.getName());
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMasterId().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMasterName(projectMasterName);
+                    }
                 }
-            } else if (StringUtils.isBlank(li.getRealHeaderName())){
-                //根据项目经理1的id去查项目经理去名称
+            }
+
+            if (StringUtils.isBlank(li.getRealHeaderName())) {
                 if (StringUtils.isNotBlank(li.getProjectMaster2Id())){
-                    UserDTO byId = SpringUtil.getBean(IUserApi.class).getById(li.getProjectMaster2Id());
-                    li.setProjectMaster2Name(byId.getName());
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMaster2Id().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMaster2Name(projectMasterName);
+                    }
                 }
             }
         });

+ 33 - 0
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApply/service/ReportCancellApplyService.java

@@ -147,6 +147,39 @@ public class ReportCancellApplyService extends ServiceImpl<ReportCancellApplyMap
                 }
             }
         });
+        List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
+        list.getRecords().forEach(li -> {
+            if (StringUtils.isBlank(li.getProjectMasterName())){
+                //根据项目经理1的id去查项目经理去名称
+                if (StringUtils.isNotBlank(li.getProjectMasterId())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMasterId().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMasterName(projectMasterName);
+                    }
+                }
+            } else if (StringUtils.isBlank(li.getProjectMaster2Name())) {
+                if (StringUtils.isNotBlank(li.getProjectMaster2Id())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMaster2Id().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMaster2Name(projectMasterName);
+                    }
+                }
+            }
+        });
         return list;
     }
 

+ 1 - 0
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/mapper/xml/ReportCancellApplyArchivedMapper.xml

@@ -77,6 +77,7 @@
 				f.name as userName,
 				g.name as projectMasterName,
 				h.name as reportSponsor,
+				h.id as reportSponsorId,
 				d.project_master_id as projectMasterId,
 				d.real_header as projectMaster2Id,
                 k.name as projectMaster2Name,

+ 50 - 0
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/service/ReportCancellApplyArchivedService.java

@@ -156,6 +156,56 @@ public class ReportCancellApplyArchivedService extends ServiceImpl<ReportCancell
                 }
             }
         });
+        List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
+        list.getRecords().forEach(li -> {
+            if (StringUtils.isBlank(li.getProjectMasterName())){
+                //根据项目经理1的id去查项目经理去名称
+                if (StringUtils.isNotBlank(li.getProjectMasterId())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMasterId().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMasterName(projectMasterName);
+                    }
+                }
+
+                if (StringUtils.isNotBlank(li.getProjectMaster2Id())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getProjectMaster2Id().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setProjectMaster2Name(projectMasterName);
+                    }
+                }
+
+                if (StringUtils.isBlank(li.getReportSponsor())) {
+                    if (StringUtils.isNotBlank(li.getReportSponsorId())){
+                        UserDTO matchingUser = null;
+                        for (UserDTO user : allUserInfo) {
+                            if (li.getReportSponsorId().equals(user.getId())) {
+                                matchingUser = user;
+                                break;
+                            }
+                        }
+                        if (matchingUser != null) {
+                            String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                            li.setReportSponsor(projectMasterName);
+                        }
+                    }
+                }
+
+            }
+        });
         return list;
     }
 

+ 5 - 0
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/reportCancellApplyArchived/service/dto/ArchivedReportInfoDto.java

@@ -69,6 +69,11 @@ public class ArchivedReportInfoDto extends BaseDTO {
     private String reportSponsor;
 
     /**
+     * 报告主办人id
+     */
+    private String reportSponsorId;
+
+    /**
      * 报告作废原因
      */
     private String cancellateReason;

+ 37 - 0
jeeplus-modules/jeeplus-finance/src/main/java/com/jeeplus/finance/workClientInfo/controller/CwWorkClientController.java

@@ -22,6 +22,8 @@ import com.jeeplus.logging.annotation.ApiLog;
 import com.jeeplus.logging.constant.enums.LogTypeEnum;
 //import com.jeeplus.sys.utils.DictUtils;
 import com.jeeplus.sys.feign.IDictApi;
+import com.jeeplus.sys.feign.IUserApi;
+import com.jeeplus.sys.service.dto.UserDTO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.StringUtils;
@@ -68,6 +70,7 @@ public class CwWorkClientController {
     public ResponseEntity<IPage<CwWorkClientBaseDTO>> data(CwWorkClientBaseDTO cwWorkClientBaseDTO, Page<CwWorkClientBaseDTO> page) throws Exception {
         IPage<CwWorkClientBaseDTO> result = new Page<CwWorkClientBaseDTO>();
         result = cwWorkClientService.findList (page,cwWorkClientBaseDTO);
+        List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
         result.getRecords().stream().forEach(i -> {
             if (StringUtils.isNotBlank(i.getTaskId()) && StringUtils.isNotBlank(i.getStatus())) {
                 if ("2".equals(i.getStatus())) { // “审核中”的数据要获取数据审核人
@@ -75,6 +78,40 @@ public class CwWorkClientController {
                 }
             }
         });
+        result.getRecords().forEach(li -> {
+            if (StringUtils.isBlank(li.getCreateBy().getName())){
+                //根据项目经理1的id去查项目经理去名称
+                UserDTO createBy = li.getCreateBy();
+                if (StringUtils.isNotBlank(li.getCreateBy().getId())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (createBy.getId().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String name = matchingUser.getName(); // Assuming the property name is "userName"
+                        createBy.setName(name);
+                        li.setCreateBy(createBy);
+                    }
+                }
+            } else if (StringUtils.isBlank(li.getUpdateUserName())) {
+                if (StringUtils.isNotBlank(li.getUpdateUser())){
+                    UserDTO matchingUser = null;
+                    for (UserDTO user : allUserInfo) {
+                        if (li.getUpdateUser().equals(user.getId())) {
+                            matchingUser = user;
+                            break;
+                        }
+                    }
+                    if (matchingUser != null) {
+                        String projectMasterName = matchingUser.getName(); // Assuming the property name is "userName"
+                        li.setUpdateUserName(projectMasterName);
+                    }
+                }
+            }
+        });
         return ResponseEntity.ok (result);
     }
 

+ 4 - 4
jeeplus-modules/jeeplus-finance/src/main/resources/bootstrap.yml

@@ -38,8 +38,8 @@ spring:
         server-addr: 127.0.0.1:8848
         # 命名空间
         namespace: ${spring.profiles.active}
-        username: nacos
-        password: nacos
+#        username: nacos
+#        password: nacos
       config:
         # 配置中心地址
         server-addr: 127.0.0.1:8848
@@ -50,8 +50,8 @@ spring:
           - application.${spring.cloud.nacos.config.file-extension}
         # 命名空间
         namespace: ${spring.profiles.active}
-        username: ${spring.cloud.nacos.discovery.username}
-        password: ${spring.cloud.nacos.discovery.password}
+#        username: ${spring.cloud.nacos.discovery.username}
+#        password: ${spring.cloud.nacos.discovery.password}
     sentinel:
       transport:
         dashboard: 127.0.0.1:8858

+ 22 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/controller/OfficeController.java

@@ -164,6 +164,28 @@ public class OfficeController {
         List <OfficeDTO> list = officeService.findAccessList ( tenantId, parentId );
         //List <OfficeDTO> rootTree = officeService.getRootTree (list, extId, type, showAll,"1" );
         List <OfficeDTO> rootTree = officeService.getOldRootTree (parentId,list, extId, type, showAll );
+        return ResponseEntity.ok ( rootTree );
+    }
+
+    /**
+     * 根据用户查询出部门组织。
+     *
+     * @param extId   排除的ID
+     * @param type    类型(1:公司;2:部门)
+     * @param showAll 是否显示不可用数据 1 显示 0 隐藏
+     * @return
+     */
+    @ApiLog("根据用户查询出部门组织")
+    @GetMapping("treeDataByUser")
+    public ResponseEntity <List <OfficeDTO>> treeDataByUser(@RequestParam(required = false) String tenantId,
+                                                            @RequestParam(required = false) String parentId,
+                                                            @RequestParam(required = false) String extId,
+                                                            @RequestParam(required = false) String type,
+                                                            @RequestParam(required = false, defaultValue = CommonConstants.NO) String showAll) {
+        //根据签字注师2岗位用户所在部门查部门数据
+        List <OfficeDTO> list = officeService.findListByUser ( tenantId, parentId );
+        //List <OfficeDTO> rootTree = officeService.getRootTree (list, extId, type, showAll,"1" );
+        List <OfficeDTO> rootTree = officeService.getOldRootTree (parentId,list, extId, type, showAll );
 
         return ResponseEntity.ok ( rootTree );
     }

+ 5 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/feign/UserApiImpl.java

@@ -98,6 +98,11 @@ public class UserApiImpl implements IUserApi {
     }
 
     @Override
+    public List<UserDTO> getAllUserInfo() {
+        return userService.getAllUserInfo();
+    }
+
+    @Override
     public List<UserDTO> findListFlowAbleByPostId(String postId) {
         return userService.findListFlowAbleByPostId ( postId );
     }

+ 17 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/UserMapper.java

@@ -224,4 +224,21 @@ public interface UserMapper extends BaseMapper <User> {
      * @return
      */
     String isUpdatePassword(String userId);
+
+    /**
+     * 获取所有的用户信息
+     * @return
+     */
+    @InterceptorIgnore(tenantLine = "true")
+    List<UserDTO> getAllUserInfo();
+
+    /**
+     * 获取拥有权限的用户的部门id
+     * @return
+     */
+    @InterceptorIgnore(tenantLine = "true")
+    List<String> getHasUser();
+
+    @InterceptorIgnore(tenantLine = "true")
+    List<String> getHasUserFather();
 }

+ 27 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/mapper/xml/UserMapper.xml

@@ -510,5 +510,32 @@ select a.id, a.company_id as "companyDTO.id", a.office_id as "officeDTO.id", a.l
         </if>
         AND post.del_flag = 0
     </select>
+    <select id="getAllUserInfo" resultType="com.jeeplus.sys.service.dto.UserDTO">
+        select distinct id,name from sys_user where del_flag = '0'
+    </select>
+    <select id="getHasUser" resultType="java.lang.String">
+        SELECT DISTINCT
+    	a.office_id AS "id"
+         FROM sys_user a
+         LEFT JOIN sys_cert sc
+         ON a.id = sc.user_id and sc.del_flag = '0'
+         LEFT JOIN sys_office c
+         ON c.id = a.company_id
+         LEFT JOIN sys_office o
+         ON o.id = a.office_id
+         WHERE (sc.type = '6' AND a.del_flag = 0)
+    </select>
+    <select id="getHasUserFather" resultType="java.lang.String">
+        SELECT DISTINCT
+                o.parent_id AS "id"
+         FROM sys_user a
+         LEFT JOIN sys_cert sc
+         ON a.id = sc.user_id and sc.del_flag = '0'
+         LEFT JOIN sys_office c
+         ON c.id = a.company_id
+         LEFT JOIN sys_office o
+         ON o.id = a.office_id
+         WHERE (sc.type = '6' AND a.del_flag = 0)
+    </select>
 
 </mapper>

+ 19 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/OfficeService.java

@@ -118,6 +118,25 @@ public class OfficeService extends TreeService <OfficeMapper, Office> {
         return baseMapper.findAccessList ( queryWrapper );
     }
 
+    /**
+     * 用户信息获取列表
+     *
+     * @return
+     */
+    public List <OfficeDTO> findListByUser(String tenantId, String parentId) {
+        // 查询出拥有证书的用户信息所属的部门id
+        List<String> ids = userService.hasUser();
+
+
+        QueryWrapper queryWrapper = new QueryWrapper ( );
+        queryWrapper.like ( StringUtils.isNotBlank ( parentId ), "a.parent_ids", "," + parentId + "," );
+        queryWrapper.eq ( StringUtils.isNotBlank ( tenantId ), "a.tenant_id", tenantId );
+        queryWrapper.eq ( "a.del_flag", 0 );
+        queryWrapper.orderByAsc ( "a.sort" );
+        queryWrapper.in ( "a.id", ids );
+        return baseMapper.findAccessList ( queryWrapper );
+    }
+
     public List <OfficeDTO> getAccessRootTree(List<OfficeDTO> list, String extId, String type, String showAll, String showMyOffice) {
         List<OfficeDTO> offices = Lists.newArrayList ();
         // 获取到所有parent_id为‘0’的部门数据

+ 15 - 0
jeeplus-modules/jeeplus-system/src/main/java/com/jeeplus/sys/service/UserService.java

@@ -506,4 +506,19 @@ public class UserService extends ServiceImpl <UserMapper, User> {
         });
         return  list;
     }
+
+    public List<UserDTO> getAllUserInfo() {
+        return userMapper.getAllUserInfo();
+    }
+
+    /**
+     * 查询出拥有权限的用户的部门id
+     * @return
+     */
+    public List<String> hasUser() {
+        List<String> hasUser = userMapper.getHasUser();
+        List<String> hasUserFather = userMapper.getHasUserFather();
+        hasUser.addAll(hasUserFather);
+        return hasUser;
+    }
 }