dev
parent
29526b8431
commit
03f428c266
|
|
@ -115,41 +115,10 @@ public class EvalProjectExecutor implements EvalProjectApi {
|
||||||
public PageResponse<EvalProjectCO> page(EvalProjectPageQuery query) {
|
public PageResponse<EvalProjectCO> page(EvalProjectPageQuery query) {
|
||||||
EvalProjectQuery domainQuery = evalProjectCmdConvertor.convertPageQueryToQ(query);
|
EvalProjectQuery domainQuery = evalProjectCmdConvertor.convertPageQueryToQ(query);
|
||||||
domainQuery.setSurveyType(query.getSurveyType());
|
domainQuery.setSurveyType(query.getSurveyType());
|
||||||
|
domainQuery.setMyProject(query.getMyProject());
|
||||||
PageResult<EvalProjectEntity> pageResult = evalProjectDomainService.page(domainQuery);
|
PageResult<EvalProjectEntity> pageResult = evalProjectDomainService.page(domainQuery);
|
||||||
List<EvalProjectCO> co = evalProjectCmdConvertor.convertEListToCOList(pageResult.getRecords());
|
List<EvalProjectCO> co = evalProjectCmdConvertor.convertEListToCOList(pageResult.getRecords());
|
||||||
if (!CollectionUtils.isEmpty(co)) {
|
if (!CollectionUtils.isEmpty(co)) {
|
||||||
if (query.getSurveyType() == 0) {
|
|
||||||
// 未完成,有可能其他人已经上传检查表(已完成),但是当前人员没有去打卡, 需要判断节点是否完成, 如完成,设置为完成
|
|
||||||
for (EvalProjectCO evalProjectCO : co) {
|
|
||||||
int surveyType = 0;
|
|
||||||
List<ProjectNodeCO> projectNodeCOS = JSON.parseArray(evalProjectCO.getProjectNode(), ProjectNodeCO.class);
|
|
||||||
for (ProjectNodeCO projectNodeCO : projectNodeCOS) {
|
|
||||||
if (ProjectStageEnum.SITE_SURVEY.getVal().equals(projectNodeCO.getType()) && projectNodeCO.getState() == 1) {
|
|
||||||
surveyType = 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
evalProjectCO.setSurveyType(surveyType);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (query.getSurveyType() == 1) {
|
|
||||||
for (EvalProjectCO evalProjectCO : co) {
|
|
||||||
evalProjectCO.setSurveyType(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (query.getSurveyType() == 2) {
|
|
||||||
for (EvalProjectCO evalProjectCO : co) {
|
|
||||||
int surveyType = 0;
|
|
||||||
List<ProjectNodeCO> projectNodeCOS = JSON.parseArray(evalProjectCO.getProjectNode(), ProjectNodeCO.class);
|
|
||||||
for (ProjectNodeCO projectNodeCO : projectNodeCOS) {
|
|
||||||
if (ProjectStageEnum.SITE_SURVEY.getVal().equals(projectNodeCO.getType()) && projectNodeCO.getState() == 1) {
|
|
||||||
surveyType = 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
evalProjectCO.setSurveyType(surveyType);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 获取客户公司名称
|
// 获取客户公司名称
|
||||||
Map<Long, String> customerNameMap = evalCustomerMapper.selectBatchIds(co.stream()
|
Map<Long, String> customerNameMap = evalCustomerMapper.selectBatchIds(co.stream()
|
||||||
.map(EvalProjectCO::getCustomerId).collect(Collectors.toList()))
|
.map(EvalProjectCO::getCustomerId).collect(Collectors.toList()))
|
||||||
|
|
|
||||||
|
|
@ -16,9 +16,7 @@ import org.qinan.safetyeval.infrastructure.adapter.ThreadLocalUserInfoAdapter;
|
||||||
import org.qinan.safetyeval.infrastructure.adapter.auth.AuthUserContextAdapter;
|
import org.qinan.safetyeval.infrastructure.adapter.auth.AuthUserContextAdapter;
|
||||||
import org.qinan.safetyeval.infrastructure.convertor.EvalProjectDoConvertor;
|
import org.qinan.safetyeval.infrastructure.convertor.EvalProjectDoConvertor;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalProjectDO;
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalProjectDO;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalSurveyDO;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalProjectMapper;
|
import org.qinan.safetyeval.infrastructure.mapper.EvalProjectMapper;
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalSignTaskMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalSurveyMapper;
|
import org.qinan.safetyeval.infrastructure.mapper.EvalSurveyMapper;
|
||||||
import org.qinan.safetyeval.infrastructure.support.InsertFieldDefaults;
|
import org.qinan.safetyeval.infrastructure.support.InsertFieldDefaults;
|
||||||
import org.qinan.safetyeval.infrastructure.support.OrgContextResolver;
|
import org.qinan.safetyeval.infrastructure.support.OrgContextResolver;
|
||||||
|
|
@ -30,7 +28,6 @@ import org.springframework.util.StringUtils;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
@ -178,30 +175,7 @@ public class EvalProjectGatewayImpl implements EvalProjectGateway {
|
||||||
if (StringUtils.hasText(query.getKeyword())) {
|
if (StringUtils.hasText(query.getKeyword())) {
|
||||||
wrapper.and(o -> o.like(EvalProjectDO::getProjectName, query.getKeyword()).or().like(EvalProjectDO::getProjectNo, query.getKeyword()));
|
wrapper.and(o -> o.like(EvalProjectDO::getProjectName, query.getKeyword()).or().like(EvalProjectDO::getProjectNo, query.getKeyword()));
|
||||||
}
|
}
|
||||||
// app查询(已完成的勘察打卡)
|
if (Boolean.TRUE.equals(query.getMyProject())) {
|
||||||
List<Long> pIds = evalSurveyMapper.selectList(new LambdaQueryWrapper<EvalSurveyDO>()
|
|
||||||
.eq(EvalSurveyDO::getPersonnelId, AuthUserContextAdapter.getCurrentUserId())
|
|
||||||
.isNotNull(EvalSurveyDO::getSignOutTime)).stream().map(EvalSurveyDO::getProjectId)
|
|
||||||
.distinct()
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
if (query.getSurveyType() == 1) {
|
|
||||||
wrapper.in(EvalProjectDO::getId, CollectionUtils.isEmpty(pIds) ? Collections.singletonList(0L) : pIds);
|
|
||||||
}
|
|
||||||
if (query.getSurveyType() == 0) {
|
|
||||||
List<Long> myPIds = evalProjectMapper.getByPersonnelId(AuthUserContextAdapter.getCurrentUserId());
|
|
||||||
List<Long> unfinishedIds = new ArrayList<>();
|
|
||||||
if (!CollectionUtils.isEmpty(pIds)) {
|
|
||||||
for (Long peId : myPIds) {
|
|
||||||
if (!pIds.contains(peId)) {
|
|
||||||
unfinishedIds.add(peId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
unfinishedIds.addAll(myPIds);
|
|
||||||
}
|
|
||||||
wrapper.in(EvalProjectDO::getId, CollectionUtils.isEmpty(unfinishedIds) ? Collections.singletonList(0L) : unfinishedIds);
|
|
||||||
}
|
|
||||||
if (Boolean.TRUE.equals(query.getMyProject()) && query.getSurveyType() == 2) {
|
|
||||||
wrapper.apply("JSON_CONTAINS(participants_json, JSON_OBJECT('id', {0}))", AuthUserContextAdapter.getCurrentUserId());
|
wrapper.apply("JSON_CONTAINS(participants_json, JSON_OBJECT('id', {0}))", AuthUserContextAdapter.getCurrentUserId());
|
||||||
}
|
}
|
||||||
applyProgressStatusFilter(wrapper, query.getProgressStatus());
|
applyProgressStatusFilter(wrapper, query.getProgressStatus());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue