diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java index 0bfd4fc..e44b2c9 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalProjectExecutor.java @@ -224,10 +224,12 @@ public class EvalProjectExecutor implements EvalProjectApi { for (Long peId : myPIds) { if (!pIds.contains(peId)) { unfinishedIds.add(peId); + wrapper.apply("JSON_CONTAINS(project_node, JSON_OBJECT('type', {0}, 'state', {1}))", ProjectStageEnum.SITE_SURVEY.getVal(), 0); } } } else { unfinishedIds.addAll(myPIds); + wrapper.apply("JSON_CONTAINS(project_node, JSON_OBJECT('type', {0}, 'state', {1}))", ProjectStageEnum.SITE_SURVEY.getVal(), 0); } wrapper.in(EvalProjectDO::getId, CollectionUtils.isEmpty(unfinishedIds) ? Collections.singletonList(0L) : unfinishedIds); } else { @@ -265,6 +267,10 @@ public class EvalProjectExecutor implements EvalProjectApi { surveyType = 1; break; } + if (pIds.contains(Long.valueOf(evalProjectCO.getId()))) { + surveyType = 1; + break; + } } evalProjectCO.setSurveyType(surveyType); } @@ -291,12 +297,20 @@ public class EvalProjectExecutor implements EvalProjectApi { query.setPageSize(200L); query.setProjectIds(data.stream().map(EvalProjectCO::getId).map(Long::valueOf).collect(Collectors.toList())); List pIds = evalProjectMemberGateway.page(query).getRecords().stream().map(EvalProjectMemberEntity::getProjectId).distinct().collect(Collectors.toList()); + List completeIds = evalSurveyMapper.selectList(new LambdaQueryWrapper() + .eq(EvalSurveyDO::getPersonnelId, AuthUserContextAdapter.getCurrentUserId()) + .isNotNull(EvalSurveyDO::getSignOutTime)).stream().map(EvalSurveyDO::getProjectId) + .distinct() + .collect(Collectors.toList()); + if (!CollectionUtils.isEmpty(completeIds)) { + pIds.removeAll(completeIds); + } if (!CollectionUtils.isEmpty(pIds)) { long onSiteTaskSum = evalProjectMapper.onSiteTaskSum(pIds, ProjectStageEnum.SITE_SURVEY.getVal()); co.setOnSiteTaskSum(onSiteTaskSum); } } - co.setPendingMyHandlingSum(data.stream().filter(item -> "NORMAL".equals(item.getProjectPhaseCode()) && item.getArchiveFlag() == 0).count()); + co.setPendingMyHandlingSum((long) data.size()); co.setParticipatingProjectSum(co.getPendingMyHandlingSum()); return SingleResponse.success(co); } diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java index d611c07..924f270 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSignTaskExecutor.java @@ -98,7 +98,9 @@ public class EvalSignTaskExecutor implements EvalSignTaskApi { EvalSignTaskCO evalSignTaskCO = evalSignTaskCmdConvertor.convertEToCO(item); evalSignTaskCO.setProjectId(String.valueOf(item.getProjectId())); EvalProjectDO evalProjectDO = evalProjectMapper.selectById(evalSignTaskCO.getProjectId()); - evalSignTaskCO.setProjectName(evalProjectDO.getProjectName()); + if (evalProjectDO != null) { + evalSignTaskCO.setProjectName(evalProjectDO.getProjectName()); + } evalSignTaskCO.setNodeName(Objects.requireNonNull(ProjectStageEnum.fromVal(evalSignTaskCO.getNodeCode())).getMsg()); List evalProjectMemberDOS = evalProjectMemberMapper.selectList(new LambdaQueryWrapper() .eq(EvalProjectMemberDO::getProjectId, evalSignTaskCO.getProjectId()) diff --git a/safety-eval-infrastructure/src/main/resources/mapper/QualFilingMapper.xml b/safety-eval-infrastructure/src/main/resources/mapper/QualFilingMapper.xml index b385c1d..154ea2b 100644 --- a/safety-eval-infrastructure/src/main/resources/mapper/QualFilingMapper.xml +++ b/safety-eval-infrastructure/src/main/resources/mapper/QualFilingMapper.xml @@ -62,7 +62,7 @@