waring
parent
0df09df186
commit
bab37f01c2
|
|
@ -1,6 +1,5 @@
|
||||||
package org.qinan.safetyeval.app.executor.institution;
|
package org.qinan.safetyeval.app.executor.institution;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
||||||
import org.qinan.safetyeval.app.executor.institution.support.EvalCmdCopy;
|
import org.qinan.safetyeval.app.executor.institution.support.EvalCmdCopy;
|
||||||
import org.qinan.safetyeval.app.executor.institution.support.EvalNodeCoConverter;
|
import org.qinan.safetyeval.app.executor.institution.support.EvalNodeCoConverter;
|
||||||
import org.qinan.safetyeval.app.executor.institution.support.EvalProjectNodeSupport;
|
import org.qinan.safetyeval.app.executor.institution.support.EvalProjectNodeSupport;
|
||||||
|
|
@ -43,21 +42,14 @@ import org.qinan.safetyeval.domain.support.EvalNodeCodes;
|
||||||
import org.qinan.safetyeval.domain.waring.gateway.EvalProjectWaringGateway;
|
import org.qinan.safetyeval.domain.waring.gateway.EvalProjectWaringGateway;
|
||||||
import org.qinan.safetyeval.domain.waring.model.EvalProjectWaringE;
|
import org.qinan.safetyeval.domain.waring.model.EvalProjectWaringE;
|
||||||
import org.qinan.safetyeval.infrastructure.convertor.EvalProcessControlConvertor;
|
import org.qinan.safetyeval.infrastructure.convertor.EvalProcessControlConvertor;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalContractDO;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalContractQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalInternalReviewDO;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalInternalReviewQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalProcessControlDO;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProcessControlQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDO;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportDraftQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDraftDO;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalSurveyAttachDO;
|
|
||||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalTechReviewDO;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalContractMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalInternalReviewMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalProcessControlMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalReportDraftMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalReportMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalSurveyAttachMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.mapper.EvalTechReviewMapper;
|
|
||||||
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReviewItemQueryService;
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReviewItemQueryService;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalSurveyAttachQueryService;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalTechReviewQueryService;
|
||||||
import org.qinan.safetyeval.infrastructure.support.NodeWriteAuthority;
|
import org.qinan.safetyeval.infrastructure.support.NodeWriteAuthority;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
@ -98,19 +90,19 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
|
||||||
@Resource
|
@Resource
|
||||||
private EvalProjectWaringGateway evalProjectWaringGateway;
|
private EvalProjectWaringGateway evalProjectWaringGateway;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalContractMapper evalContractMapper;
|
private EvalContractQueryService evalContractQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalSurveyAttachMapper evalSurveyAttachMapper;
|
private EvalSurveyAttachQueryService evalSurveyAttachQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalReportDraftMapper evalReportDraftMapper;
|
private EvalReportDraftQueryService evalReportDraftQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalInternalReviewMapper evalInternalReviewMapper;
|
private EvalInternalReviewQueryService evalInternalReviewQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalTechReviewMapper evalTechReviewMapper;
|
private EvalTechReviewQueryService evalTechReviewQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalProcessControlMapper evalProcessControlMapper;
|
private EvalProcessControlQueryService evalProcessControlQueryService;
|
||||||
@Resource
|
@Resource
|
||||||
private EvalReportMapper evalReportMapper;
|
private EvalReportQueryService evalReportQueryService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SingleResponse<EvalProcessControlCO> getOrSave(EvalProcessControlSaveCmd cmd) {
|
public SingleResponse<EvalProcessControlCO> getOrSave(EvalProcessControlSaveCmd cmd) {
|
||||||
|
|
@ -274,105 +266,23 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
|
||||||
List<EvalProjectFileCO> files = new java.util.ArrayList<>();
|
List<EvalProjectFileCO> files = new java.util.ArrayList<>();
|
||||||
|
|
||||||
// 业务合同-合同扫描件
|
// 业务合同-合同扫描件
|
||||||
EvalContractDO contract = evalContractMapper.selectOne(new LambdaQueryWrapper<EvalContractDO>()
|
files.addAll(evalContractQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalContractDO::getProjectId, projectId)
|
// 现场踏勘-附件
|
||||||
.eq(EvalContractDO::getOrgId, orgId)
|
files.addAll(evalSurveyAttachQueryService.listProjectFiles(projectId, orgId));
|
||||||
.select(EvalContractDO::getId, EvalContractDO::getScanFileUrl));
|
|
||||||
if (contract != null && contract.getScanFileUrl() != null) {
|
|
||||||
files.add(buildFile(contract.getId(), ProjectStageEnum.BUSINESS_CONTRACT.getMsg(),
|
|
||||||
"合同扫描件", "合同扫描件", contract.getScanFileUrl()));
|
|
||||||
}
|
|
||||||
|
|
||||||
// 现场踏勘-附件(直接按projectId查询附件,避免先查踏勘记录再中转)
|
|
||||||
List<EvalSurveyAttachDO> attaches = evalSurveyAttachMapper.selectList(new LambdaQueryWrapper<EvalSurveyAttachDO>()
|
|
||||||
.eq(EvalSurveyAttachDO::getProjectId, projectId)
|
|
||||||
.eq(EvalSurveyAttachDO::getOrgId, orgId)
|
|
||||||
.select(EvalSurveyAttachDO::getId, EvalSurveyAttachDO::getFileName,
|
|
||||||
EvalSurveyAttachDO::getAttachTypeName, EvalSurveyAttachDO::getFileUrl));
|
|
||||||
if (attaches != null) {
|
|
||||||
for (EvalSurveyAttachDO attach : attaches) {
|
|
||||||
if (attach.getFileUrl() != null) {
|
|
||||||
String itemName = attach.getAttachTypeName() != null ? attach.getAttachTypeName() : "踏勘附件";
|
|
||||||
String name = attach.getFileName() != null ? attach.getFileName() : itemName;
|
|
||||||
files.add(buildFile(attach.getId(), ProjectStageEnum.SITE_SURVEY.getMsg(),
|
|
||||||
itemName, name, attach.getFileUrl()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 报告编制-报告草稿
|
// 报告编制-报告草稿
|
||||||
List<EvalReportDraftDO> drafts = evalReportDraftMapper.selectList(new LambdaQueryWrapper<EvalReportDraftDO>()
|
files.addAll(evalReportDraftQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalReportDraftDO::getProjectId, projectId)
|
|
||||||
.eq(EvalReportDraftDO::getOrgId, orgId)
|
|
||||||
.select(EvalReportDraftDO::getId, EvalReportDraftDO::getContentUrl,
|
|
||||||
EvalReportDraftDO::getTemplateName, EvalReportDraftDO::getDraftVersionNo));
|
|
||||||
if (drafts != null) {
|
|
||||||
for (EvalReportDraftDO draft : drafts) {
|
|
||||||
if (draft.getContentUrl() != null) {
|
|
||||||
String name = draft.getTemplateName() != null ? draft.getTemplateName() : "报告草稿";
|
|
||||||
String itemName = "V" + (draft.getDraftVersionNo() != null ? draft.getDraftVersionNo() : 0);
|
|
||||||
files.add(buildFile(draft.getId(), ProjectStageEnum.REPORT_PREPARATION.getMsg(),
|
|
||||||
itemName, name, draft.getContentUrl()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 内部审核-内审签字
|
// 内部审核-内审签字
|
||||||
EvalInternalReviewDO internalReview = evalInternalReviewMapper.selectOne(new LambdaQueryWrapper<EvalInternalReviewDO>()
|
files.addAll(evalInternalReviewQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalInternalReviewDO::getProjectId, projectId)
|
|
||||||
.eq(EvalInternalReviewDO::getOrgId, orgId)
|
|
||||||
.select(EvalInternalReviewDO::getId, EvalInternalReviewDO::getReviewerSignatureUrl));
|
|
||||||
if (internalReview != null && internalReview.getReviewerSignatureUrl() != null) {
|
|
||||||
files.add(buildFile(internalReview.getId(), ProjectStageEnum.INTERNAL_REVIEW.getMsg(),
|
|
||||||
"内审签字", "内审签字", internalReview.getReviewerSignatureUrl()));
|
|
||||||
}
|
|
||||||
|
|
||||||
// 技术审核-技审签字
|
// 技术审核-技审签字
|
||||||
EvalTechReviewDO techReview = evalTechReviewMapper.selectOne(new LambdaQueryWrapper<EvalTechReviewDO>()
|
files.addAll(evalTechReviewQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalTechReviewDO::getProjectId, projectId)
|
|
||||||
.eq(EvalTechReviewDO::getOrgId, orgId)
|
|
||||||
.select(EvalTechReviewDO::getId, EvalTechReviewDO::getReviewerSignatureUrl));
|
|
||||||
if (techReview != null && techReview.getReviewerSignatureUrl() != null) {
|
|
||||||
files.add(buildFile(techReview.getId(), ProjectStageEnum.TECHNICAL_REVIEW.getMsg(),
|
|
||||||
"技审签字", "技审签字", techReview.getReviewerSignatureUrl()));
|
|
||||||
}
|
|
||||||
|
|
||||||
// 过程控制-归档交接单
|
// 过程控制-归档交接单
|
||||||
EvalProcessControlDO processControl = evalProcessControlMapper.selectOne(new LambdaQueryWrapper<EvalProcessControlDO>()
|
files.addAll(evalProcessControlQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalProcessControlDO::getProjectId, projectId)
|
|
||||||
.eq(EvalProcessControlDO::getOrgId, orgId)
|
|
||||||
.select(EvalProcessControlDO::getId, EvalProcessControlDO::getHandoverFormUrl));
|
|
||||||
if (processControl != null && processControl.getHandoverFormUrl() != null) {
|
|
||||||
files.add(buildFile(processControl.getId(), ProjectStageEnum.PROCESS_CONTROL.getMsg(),
|
|
||||||
"归档交接单", "归档交接单", processControl.getHandoverFormUrl()));
|
|
||||||
}
|
|
||||||
|
|
||||||
// 过程控制-归档报告
|
// 过程控制-归档报告
|
||||||
List<EvalReportDO> reports = evalReportMapper.selectList(new LambdaQueryWrapper<EvalReportDO>()
|
files.addAll(evalReportQueryService.listProjectFiles(projectId, orgId));
|
||||||
.eq(EvalReportDO::getProjectId, projectId)
|
|
||||||
.eq(EvalReportDO::getOrgId, orgId)
|
|
||||||
.select(EvalReportDO::getId, EvalReportDO::getFileUrl, EvalReportDO::getFileName));
|
|
||||||
if (reports != null) {
|
|
||||||
for (EvalReportDO report : reports) {
|
|
||||||
if (report.getFileUrl() != null) {
|
|
||||||
String name = report.getFileName() != null ? report.getFileName() : "归档报告";
|
|
||||||
files.add(buildFile(report.getId(), ProjectStageEnum.PROCESS_CONTROL.getMsg(),
|
|
||||||
"归档报告", name, report.getFileUrl()));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return SingleResponse.success(files);
|
return SingleResponse.success(files);
|
||||||
}
|
}
|
||||||
|
|
||||||
private EvalProjectFileCO buildFile(Long id, String processName, String itemName, String name, String url) {
|
|
||||||
EvalProjectFileCO co = new EvalProjectFileCO();
|
|
||||||
co.setProcessName(processName);
|
|
||||||
co.setItemName(itemName);
|
|
||||||
co.setProjectDocUrl(url);
|
|
||||||
return co;
|
|
||||||
}
|
|
||||||
|
|
||||||
private EvalReportEntity buildReport(EvalProjectEntity project) {
|
private EvalReportEntity buildReport(EvalProjectEntity project) {
|
||||||
EvalReportEntity report = new EvalReportEntity();
|
EvalReportEntity report = new EvalReportEntity();
|
||||||
report.setOrgId(project.getOrgId());
|
report.setOrgId(project.getOrgId());
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业务合同查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalContractQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目合同相关文件(合同扫描件)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 内部审核查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalInternalReviewQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目内部审核相关文件(内审签字)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 过程控制查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalProcessControlQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目过程控制相关文件(归档交接单)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 报告草稿查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalReportDraftQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目报告编制相关文件(报告草稿)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 归档报告查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalReportQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目归档报告相关文件(归档报告)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 现场踏勘附件查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalSurveyAttachQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目踏勘相关文件(踏勘附件)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
|
||||||
|
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 技术审核查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
public interface EvalTechReviewQueryService {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询项目技术审核相关文件(技审签字)
|
||||||
|
*
|
||||||
|
* @param projectId 项目ID
|
||||||
|
* @param orgId 机构ID
|
||||||
|
* @return 项目文件CO列表
|
||||||
|
*/
|
||||||
|
List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalContractDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalContractMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalContractQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业务合同查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalContractQueryServiceImpl implements EvalContractQueryService {
|
||||||
|
|
||||||
|
private final EvalContractMapper evalContractMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
EvalContractDO contract = evalContractMapper.selectOne(new LambdaQueryWrapper<EvalContractDO>()
|
||||||
|
.eq(EvalContractDO::getProjectId, projectId)
|
||||||
|
.eq(EvalContractDO::getOrgId, orgId)
|
||||||
|
.select(EvalContractDO::getId, EvalContractDO::getScanFileUrl));
|
||||||
|
if (contract == null || contract.getScanFileUrl() == null) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.BUSINESS_CONTRACT.getMsg());
|
||||||
|
co.setItemName("合同扫描件");
|
||||||
|
co.setProjectDocUrl(contract.getScanFileUrl());
|
||||||
|
files.add(co);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalInternalReviewDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalInternalReviewMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalInternalReviewQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 内部审核查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalInternalReviewQueryServiceImpl implements EvalInternalReviewQueryService {
|
||||||
|
|
||||||
|
private final EvalInternalReviewMapper evalInternalReviewMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
EvalInternalReviewDO internalReview = evalInternalReviewMapper.selectOne(new LambdaQueryWrapper<EvalInternalReviewDO>()
|
||||||
|
.eq(EvalInternalReviewDO::getProjectId, projectId)
|
||||||
|
.eq(EvalInternalReviewDO::getOrgId, orgId)
|
||||||
|
.select(EvalInternalReviewDO::getId, EvalInternalReviewDO::getReviewerSignatureUrl));
|
||||||
|
if (internalReview == null || internalReview.getReviewerSignatureUrl() == null) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.INTERNAL_REVIEW.getMsg());
|
||||||
|
co.setItemName("内审签字");
|
||||||
|
co.setProjectDocUrl(internalReview.getReviewerSignatureUrl());
|
||||||
|
files.add(co);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalProcessControlDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalProcessControlMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProcessControlQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 过程控制查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalProcessControlQueryServiceImpl implements EvalProcessControlQueryService {
|
||||||
|
|
||||||
|
private final EvalProcessControlMapper evalProcessControlMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
EvalProcessControlDO processControl = evalProcessControlMapper.selectOne(new LambdaQueryWrapper<EvalProcessControlDO>()
|
||||||
|
.eq(EvalProcessControlDO::getProjectId, projectId)
|
||||||
|
.eq(EvalProcessControlDO::getOrgId, orgId)
|
||||||
|
.select(EvalProcessControlDO::getId, EvalProcessControlDO::getHandoverFormUrl));
|
||||||
|
if (processControl == null || processControl.getHandoverFormUrl() == null) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.PROCESS_CONTROL.getMsg());
|
||||||
|
co.setItemName("归档交接单");
|
||||||
|
co.setProjectDocUrl(processControl.getHandoverFormUrl());
|
||||||
|
files.add(co);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDraftDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalReportDraftMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportDraftQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 报告草稿查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalReportDraftQueryServiceImpl implements EvalReportDraftQueryService {
|
||||||
|
|
||||||
|
private final EvalReportDraftMapper evalReportDraftMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
List<EvalReportDraftDO> drafts = evalReportDraftMapper.selectList(new LambdaQueryWrapper<EvalReportDraftDO>()
|
||||||
|
.eq(EvalReportDraftDO::getProjectId, projectId)
|
||||||
|
.eq(EvalReportDraftDO::getOrgId, orgId)
|
||||||
|
.select(EvalReportDraftDO::getId, EvalReportDraftDO::getContentUrl,
|
||||||
|
EvalReportDraftDO::getTemplateName, EvalReportDraftDO::getDraftVersionNo));
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
if (drafts == null) {
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
for (EvalReportDraftDO draft : drafts) {
|
||||||
|
if (draft.getContentUrl() != null) {
|
||||||
|
String itemName = "V" + (draft.getDraftVersionNo() != null ? draft.getDraftVersionNo() : 0);
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.REPORT_PREPARATION.getMsg());
|
||||||
|
co.setItemName(itemName);
|
||||||
|
co.setProjectDocUrl(draft.getContentUrl());
|
||||||
|
files.add(co);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalReportMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 归档报告查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalReportQueryServiceImpl implements EvalReportQueryService {
|
||||||
|
|
||||||
|
private final EvalReportMapper evalReportMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
List<EvalReportDO> reports = evalReportMapper.selectList(new LambdaQueryWrapper<EvalReportDO>()
|
||||||
|
.eq(EvalReportDO::getProjectId, projectId)
|
||||||
|
.eq(EvalReportDO::getOrgId, orgId)
|
||||||
|
.select(EvalReportDO::getId, EvalReportDO::getFileUrl, EvalReportDO::getFileName));
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
if (reports == null) {
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
for (EvalReportDO report : reports) {
|
||||||
|
if (report.getFileUrl() != null) {
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.PROCESS_CONTROL.getMsg());
|
||||||
|
co.setItemName("归档报告");
|
||||||
|
co.setProjectDocUrl(report.getFileUrl());
|
||||||
|
files.add(co);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalSurveyAttachDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalSurveyAttachMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalSurveyAttachQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 现场踏勘附件查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalSurveyAttachQueryServiceImpl implements EvalSurveyAttachQueryService {
|
||||||
|
|
||||||
|
private final EvalSurveyAttachMapper evalSurveyAttachMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
List<EvalSurveyAttachDO> attaches = evalSurveyAttachMapper.selectList(new LambdaQueryWrapper<EvalSurveyAttachDO>()
|
||||||
|
.eq(EvalSurveyAttachDO::getProjectId, projectId)
|
||||||
|
.eq(EvalSurveyAttachDO::getOrgId, orgId)
|
||||||
|
.select(EvalSurveyAttachDO::getId, EvalSurveyAttachDO::getFileName,
|
||||||
|
EvalSurveyAttachDO::getAttachTypeName, EvalSurveyAttachDO::getFileUrl));
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
if (attaches == null) {
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
for (EvalSurveyAttachDO attach : attaches) {
|
||||||
|
if (attach.getFileUrl() != null) {
|
||||||
|
String itemName = attach.getAttachTypeName() != null ? attach.getAttachTypeName() : "踏勘附件";
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.SITE_SURVEY.getMsg());
|
||||||
|
co.setItemName(itemName);
|
||||||
|
co.setProjectDocUrl(attach.getFileUrl());
|
||||||
|
files.add(co);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import org.qinan.safetyeval.client.co.institution.EvalProjectFileCO;
|
||||||
|
import org.qinan.safetyeval.domain.constant.ProjectStageEnum;
|
||||||
|
import org.qinan.safetyeval.infrastructure.dataobject.EvalTechReviewDO;
|
||||||
|
import org.qinan.safetyeval.infrastructure.mapper.EvalTechReviewMapper;
|
||||||
|
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalTechReviewQueryService;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 技术审核查询服务
|
||||||
|
*
|
||||||
|
* @Author: trae
|
||||||
|
* @date 2026-07-23
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class EvalTechReviewQueryServiceImpl implements EvalTechReviewQueryService {
|
||||||
|
|
||||||
|
private final EvalTechReviewMapper evalTechReviewMapper;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<EvalProjectFileCO> listProjectFiles(Long projectId, Long orgId) {
|
||||||
|
EvalTechReviewDO techReview = evalTechReviewMapper.selectOne(new LambdaQueryWrapper<EvalTechReviewDO>()
|
||||||
|
.eq(EvalTechReviewDO::getProjectId, projectId)
|
||||||
|
.eq(EvalTechReviewDO::getOrgId, orgId)
|
||||||
|
.select(EvalTechReviewDO::getId, EvalTechReviewDO::getReviewerSignatureUrl));
|
||||||
|
if (techReview == null || techReview.getReviewerSignatureUrl() == null) {
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
List<EvalProjectFileCO> files = new ArrayList<>();
|
||||||
|
EvalProjectFileCO co = new EvalProjectFileCO();
|
||||||
|
co.setProcessName(ProjectStageEnum.TECHNICAL_REVIEW.getMsg());
|
||||||
|
co.setItemName("技审签字");
|
||||||
|
co.setProjectDocUrl(techReview.getReviewerSignatureUrl());
|
||||||
|
files.add(co);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue