|
|
|
@ -35,9 +35,9 @@ public class HomepageServiceImpl implements HomepageService {
|
|
|
|
|
private final KnowledgeSubmitRecordService knowledgeSubmitRecordService;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 先看用户是否具有任意节点的审批权限,
|
|
|
|
|
* 如果被配置审批权限,则认为为知识审批人员视角。
|
|
|
|
|
* 如没有被配置审批权限,则以报送人员视角进行统计
|
|
|
|
|
* 先看用户是否是知识审批角色
|
|
|
|
|
* 如果是知识审批角色,则按知识审批角色统计
|
|
|
|
|
* 如没有知识审批角色,则以报送人员视角进行统计
|
|
|
|
|
* 如没有任何角色权限,数据全部显示为0
|
|
|
|
|
* <p>
|
|
|
|
|
* 知识数量:如果多次审批,则进行去重,只保留一次
|
|
|
|
@ -69,10 +69,10 @@ public class HomepageServiceImpl implements HomepageService {
|
|
|
|
|
resVO.setLastLoginTime(systemUser.getRecentLoginTime());
|
|
|
|
|
// 首先查询用户是否有审批的权限,
|
|
|
|
|
List<Integer> roleTypeList = user.getRoleTypeList();
|
|
|
|
|
Long passTotalCount = knowledgeService.lambdaQuery().eq(Knowledge::getStatus, StatusEnum.PASS.getStatus()).count();
|
|
|
|
|
resVO.setKnowledgeCount(passTotalCount);
|
|
|
|
|
// 如果用户有审批权限,则以审批人的视角
|
|
|
|
|
if (roleTypeList.contains(RoleTypeEnum.KNOWLEDGE_APPROVAL.getRoleType())) {
|
|
|
|
|
// 全量知识,所有审批通过的
|
|
|
|
|
resVO.setKnowledgeCount(knowledgeService.lambdaQuery().eq(Knowledge::getStatus, StatusEnum.PASS.getStatus()).count());
|
|
|
|
|
// 待审批
|
|
|
|
|
resVO.setWaitProcessCount(knowledgeFlowTodoService.lambdaQuery().eq(KnowledgeFlowTodo::getTodoUserId, user.getId()).count());
|
|
|
|
|
// 由我审批并标记为审批通过的数量
|
|
|
|
@ -80,12 +80,10 @@ public class HomepageServiceImpl implements HomepageService {
|
|
|
|
|
// 由我审批并标记为“驳回”的知识数量。
|
|
|
|
|
resVO.setRejectProcessCount(knowledgeFlowRecordService.queryPassProcessCountByUser(user.getId(), 2, null));
|
|
|
|
|
// 查询由我审批且目前已失效的
|
|
|
|
|
resVO.setInvalidProcessCount(knowledgeFlowRecordService.queryPassProcessCountByUser(user.getId(), null, null));
|
|
|
|
|
resVO.setInvalidProcessCount(knowledgeFlowRecordService.queryPassProcessCountByUser(user.getId(), null, 5));
|
|
|
|
|
}
|
|
|
|
|
// 没有被配置审批权限,则以报送人员视角进行统计
|
|
|
|
|
else if (roleTypeList.contains(RoleTypeEnum.KNOWLEDGE_SUBMIT.getRoleType())){
|
|
|
|
|
// 首先查询所有通过
|
|
|
|
|
Long passTotalCount = knowledgeService.lambdaQuery().eq(Knowledge::getStatus, StatusEnum.PASS.getStatus()).count();
|
|
|
|
|
else if (roleTypeList.contains(RoleTypeEnum.KNOWLEDGE_SUBMIT.getRoleType())) {
|
|
|
|
|
// 然后找到属于自己的知识的草稿
|
|
|
|
|
Long userSelfCount = knowledgeService.lambdaQuery().ne(Knowledge::getStatus, StatusEnum.PASS.getStatus())
|
|
|
|
|
.eq(Knowledge::getDraftBelongUserId, user.getId()).count();
|
|
|
|
@ -96,7 +94,7 @@ public class HomepageServiceImpl implements HomepageService {
|
|
|
|
|
resVO.setInvalidProcessCount(knowledgeSubmitRecordService.queryKnowledgeSubmitStatusCount(user.getId(), StatusEnum.INVALID.getStatus()));
|
|
|
|
|
resVO.setPassProcessCount(knowledgeSubmitRecordService.queryKnowledgeSubmitStatusCount(user.getId(), StatusEnum.PASS.getStatus()));
|
|
|
|
|
}
|
|
|
|
|
// 没有任何角色权限,数据全部显示为0
|
|
|
|
|
// 没有任何角色权限,就只展示全量的,其他的都是0
|
|
|
|
|
return resVO;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|