Просмотр исходного кода

feat:

1. 标项同步接口增加项目基本信息、实施计划终验时间、是否完成初验;
dev
WendyYang 1 неделю назад
Родитель
Сommit
00ea2713f0
2 измененных файлов: 44 добавлений и 7 удалений
  1. +21
    -7
      hz-pm-api/src/main/java/com/hz/pm/api/open/manage/OpenApiProjectLibManage.java
  2. +23
    -0
      hz-pm-api/src/main/java/com/hz/pm/api/open/model/vo/TenderToMhDetailVO.java

+ 21
- 7
hz-pm-api/src/main/java/com/hz/pm/api/open/manage/OpenApiProjectLibManage.java Просмотреть файл

@@ -41,6 +41,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;

import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;

/**
@@ -198,7 +199,8 @@ public class OpenApiProjectLibManage {
public List<TenderToMhDetailVO> listTenders(TenderListReq req) {
openApiCheckSignUtil.checkSign(req.getKey());
Wrapper<Project> projQuery = Wrappers.lambdaQuery(Project.class)
.select(Project::getId, Project::getProjectCode)
.select(Project::getId, Project::getProjectCode, Project::getBuildOrgCode, Project::getProjectName,
Project::getContactName, Project::getContactPhone, Project::getBuildOrgName)
.eq(req.getProjectYear() != null, Project::getProjectYear, req.getProjectYear())
.eq(req.getBuildOrgCode() != null, Project::getBuildOrgCode, req.getBuildOrgCode())
.eq(req.getProjectCode() != null, Project::getProjectCode, req.getProjectCode())
@@ -208,10 +210,11 @@ public class OpenApiProjectLibManage {
if (projects.isEmpty()) {
return Collections.emptyList();
}
List<Long> projectIds = projects.stream()
.map(w -> ProjectIdCodeCacheUtil.get(w.getProjectCode()))
.flatMap(Collection::stream)
.collect(Collectors.toList());
List<Long> projectIds = new ArrayList<>();
Map<String, Project> projectMap = CollUtils.listToMap(projects, w -> {
projectIds.addAll(ProjectIdCodeCacheUtil.get(w.getProjectCode()));
return w.getProjectCode();
}, Function.identity(), (v1, v2) -> v1.getId() > v2.getId() ? v1 : v2);
Wrapper<Purchase> purQuery = Wrappers.lambdaQuery(Purchase.class)
.in(Purchase::getProjectId, projectIds)
.ge(req.getBidUpdateOn() != null, Purchase::getUpdateOn, req.getBidUpdateOn())
@@ -239,7 +242,17 @@ public class OpenApiProjectLibManage {
TenderToMhDetailVO tender = new TenderToMhDetailVO();
tender.setBidId(w.getId());
tender.setCreateOn(w.getCreateOn());
tender.setProjectCode(ProjectIdCodeCacheUtil.get(w.getProjectId()));

// 设置项目信息
String projectCode = ProjectIdCodeCacheUtil.get(w.getProjectId());
Project project = projectMap.get(projectCode);
tender.setProjectCode(projectCode);
tender.setProjectName(project.getProjectName());
tender.setBuildOrgCode(project.getBuildOrgCode());
tender.setBuildOrgName(project.getBuildOrgName());
tender.setProjectContactPerson(project.getContactName());
tender.setProjectContact(project.getContactPhone());

tender.setName(w.getBidName());
tender.setBuyMain(String.valueOf(w.getPurchaseUnitId()));
tender.setBuildContent(w.getBidBuildContent());
@@ -256,8 +269,9 @@ public class OpenApiProjectLibManage {
Operation operation = operationMap.get(w.getId());
if (operation != null) {
tender.setRefactorTime(operation.getActualAdaptionTime());
tender.setImplPlanFinalTime(operation.getFinalInspectionDate());
}
tender.setIsFinishInitialAccept(StrUtil.isNotBlank(w.getPreliminaryInspectionMaterials()));
BizUtils.notNull(w.getXcfhxEvalFinishDate(), ft -> tender.setXcCompleteTime(ft.atStartOfDay()));
BizUtils.notNull(w.getSecurityEvalDate(), ft -> tender.setLpCompleteTime(ft.atStartOfDay()));
BizUtils.notNull(w.getFinalInspectionDate(), ft -> tender.setFinalTime(ft.atStartOfDay()));


+ 23
- 0
hz-pm-api/src/main/java/com/hz/pm/api/open/model/vo/TenderToMhDetailVO.java Просмотреть файл

@@ -18,9 +18,26 @@ import java.util.List;
@Data
public class TenderToMhDetailVO {

@ApiModelProperty(value = "项目名称")
private String projectName;

@ApiModelProperty(value = "项目编码")
private String projectCode;

@ApiModelProperty("建设单位编码")
private String buildOrgCode;

@ApiModelProperty("建设单位名称")
private String buildOrgName;

@ApiModelProperty(value = "项目联系人")
private String projectContactPerson;

@ApiModelProperty(value = "项目联系人电话")
private String projectContact;

// 标项信息

@ApiModelProperty(value = "标项ID")
private Long bidId;

@@ -111,4 +128,10 @@ public class TenderToMhDetailVO {
@ApiModelProperty("等保测评报告(附件)")
private String lpReportFiles;

@ApiModelProperty(value = "标项是否完成初验")
private Boolean isFinishInitialAccept;

@ApiModelProperty(value = "实施计划终验时间")
private LocalDateTime implPlanFinalTime;

}

Загрузка…
Отмена
Сохранить