waring
parent
0df09df186
commit
bab37f01c2
|
|
@ -1,6 +1,5 @@
|
|||
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.EvalNodeCoConverter;
|
||||
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.model.EvalProjectWaringE;
|
||||
import org.qinan.safetyeval.infrastructure.convertor.EvalProcessControlConvertor;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalContractDO;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalInternalReviewDO;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalProcessControlDO;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDO;
|
||||
import org.qinan.safetyeval.infrastructure.dataobject.EvalReportDraftDO;
|
||||
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.EvalContractQueryService;
|
||||
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalInternalReviewQueryService;
|
||||
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProcessControlQueryService;
|
||||
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportDraftQueryService;
|
||||
import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalReportQueryService;
|
||||
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.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -98,19 +90,19 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
|
|||
@Resource
|
||||
private EvalProjectWaringGateway evalProjectWaringGateway;
|
||||
@Resource
|
||||
private EvalContractMapper evalContractMapper;
|
||||
private EvalContractQueryService evalContractQueryService;
|
||||
@Resource
|
||||
private EvalSurveyAttachMapper evalSurveyAttachMapper;
|
||||
private EvalSurveyAttachQueryService evalSurveyAttachQueryService;
|
||||
@Resource
|
||||
private EvalReportDraftMapper evalReportDraftMapper;
|
||||
private EvalReportDraftQueryService evalReportDraftQueryService;
|
||||
@Resource
|
||||
private EvalInternalReviewMapper evalInternalReviewMapper;
|
||||
private EvalInternalReviewQueryService evalInternalReviewQueryService;
|
||||
@Resource
|
||||
private EvalTechReviewMapper evalTechReviewMapper;
|
||||
private EvalTechReviewQueryService evalTechReviewQueryService;
|
||||
@Resource
|
||||
private EvalProcessControlMapper evalProcessControlMapper;
|
||||
private EvalProcessControlQueryService evalProcessControlQueryService;
|
||||
@Resource
|
||||
private EvalReportMapper evalReportMapper;
|
||||
private EvalReportQueryService evalReportQueryService;
|
||||
|
||||
@Override
|
||||
public SingleResponse<EvalProcessControlCO> getOrSave(EvalProcessControlSaveCmd cmd) {
|
||||
|
|
@ -274,105 +266,23 @@ public class EvalProcessControlExecutor implements EvalProcessControlApi {
|
|||
List<EvalProjectFileCO> files = new java.util.ArrayList<>();
|
||||
|
||||
// 业务合同-合同扫描件
|
||||
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) {
|
||||
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()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
files.addAll(evalContractQueryService.listProjectFiles(projectId, orgId));
|
||||
// 现场踏勘-附件
|
||||
files.addAll(evalSurveyAttachQueryService.listProjectFiles(projectId, 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));
|
||||
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()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
files.addAll(evalReportDraftQueryService.listProjectFiles(projectId, 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) {
|
||||
files.add(buildFile(internalReview.getId(), ProjectStageEnum.INTERNAL_REVIEW.getMsg(),
|
||||
"内审签字", "内审签字", internalReview.getReviewerSignatureUrl()));
|
||||
}
|
||||
|
||||
files.addAll(evalInternalReviewQueryService.listProjectFiles(projectId, 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) {
|
||||
files.add(buildFile(techReview.getId(), ProjectStageEnum.TECHNICAL_REVIEW.getMsg(),
|
||||
"技审签字", "技审签字", techReview.getReviewerSignatureUrl()));
|
||||
}
|
||||
|
||||
files.addAll(evalTechReviewQueryService.listProjectFiles(projectId, 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) {
|
||||
files.add(buildFile(processControl.getId(), ProjectStageEnum.PROCESS_CONTROL.getMsg(),
|
||||
"归档交接单", "归档交接单", processControl.getHandoverFormUrl()));
|
||||
}
|
||||
|
||||
files.addAll(evalProcessControlQueryService.listProjectFiles(projectId, orgId));
|
||||
// 过程控制-归档报告
|
||||
List<EvalReportDO> reports = evalReportMapper.selectList(new LambdaQueryWrapper<EvalReportDO>()
|
||||
.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()));
|
||||
}
|
||||
}
|
||||
}
|
||||
files.addAll(evalReportQueryService.listProjectFiles(projectId, orgId));
|
||||
|
||||
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) {
|
||||
EvalReportEntity report = new EvalReportEntity();
|
||||
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