diff --git a/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/EvalProjectOrgWaringController.java b/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/EvalProjectOrgWaringController.java new file mode 100644 index 00000000..f85f950a --- /dev/null +++ b/safety-eval-adapter/src/main/java/org/qinan/safetyeval/adapter/web/EvalProjectOrgWaringController.java @@ -0,0 +1,74 @@ +package org.qinan.safetyeval.adapter.web; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.Response; +import com.alibaba.cola.dto.SingleResponse; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.app.waring.service.EvalProjectOrgWaringServiceI; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringAddCmd; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringUpdateCmd; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.io.Serializable; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @Date: 2026-08-13 15:49:16 + */ +@RestController +@AllArgsConstructor +@Api(tags = "机构端-险预警") +@RequestMapping("/safetyEval/eval-project-org-waring") +public class EvalProjectOrgWaringController implements Serializable { + private static final long serialVersionUID = 1L; + + private final EvalProjectOrgWaringServiceI evalProjectOrgWaringServiceI; + + @GetMapping + @ApiOperation("查询机构端-险预警列表-分页") + public PageResponse list(@Validated EvalProjectOrgWaringPageQry qry) { + return evalProjectOrgWaringServiceI.listEvalProjectOrgWaringPage(qry); + } + + @GetMapping("/{id}") + @ApiOperation("查询机构端-险预警详情页面") + public SingleResponse getInfo(@PathVariable("id") Long id) { + return SingleResponse.of(evalProjectOrgWaringServiceI.getEvalProjectOrgWaringById(id)); + } + + @PostMapping + @ApiOperation("新增机构端-险预警") + public Response save(@Validated @RequestBody EvalProjectOrgWaringAddCmd evalProjectOrgWaringAddCmd) { + evalProjectOrgWaringServiceI.saveEvalProjectOrgWaring(evalProjectOrgWaringAddCmd); + return Response.buildSuccess(); + } + + @PutMapping + @ApiOperation("修改机构端-险预警") + public Response update(@Validated @RequestBody EvalProjectOrgWaringUpdateCmd evalProjectOrgWaringUpdateCmd) { + evalProjectOrgWaringServiceI.updateEvalProjectOrgWaring(evalProjectOrgWaringUpdateCmd); + return Response.buildSuccess(); + } + + @DeleteMapping("/{id}") + @ApiOperation("删除机构端-险预警(单个)") + public Response deletedById(@PathVariable("id") Long id) { + evalProjectOrgWaringServiceI.deletedEvalProjectOrgWaringById(id); + return Response.buildSuccess(); + } + + @DeleteMapping("/ids") + @ApiOperation("删除机构端-险预警(多个)") + public Response deletedByIds(@RequestParam Long[] ids) { + evalProjectOrgWaringServiceI.deletedEvalProjectOrgWaringByIds(ids); + return Response.buildSuccess(); + } + +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSurveyAttachExecutor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSurveyAttachExecutor.java index 43207f1e..5d6d108d 100644 --- a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSurveyAttachExecutor.java +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/executor/institution/EvalSurveyAttachExecutor.java @@ -6,6 +6,7 @@ import org.qinan.safetyeval.client.api.institution.EvalSurveyAttachApi; import org.qinan.safetyeval.client.co.institution.EvalSurveyAttachCO; import org.qinan.safetyeval.client.dto.SingleResponse; import org.qinan.safetyeval.client.dto.institution.EvalSurveyAttachSaveCmd; +import org.qinan.safetyeval.domain.constant.ProjectDocumentEnum; import org.qinan.safetyeval.domain.constant.ProjectStageEnum; import org.qinan.safetyeval.domain.entity.EvalSurveyAttachEntity; import org.qinan.safetyeval.domain.service.EvalSurveyDomainService; @@ -18,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.StringUtils; import java.util.List; import java.util.Objects; @@ -53,6 +55,24 @@ public class EvalSurveyAttachExecutor implements EvalSurveyAttachApi { .eq(EvalSurveyDO::getProjectId, cmdList.get(0).getProjectId())); if (cmdList.get(0).getProjectId() != null && (Objects.isNull(num) ? 0 : num) >= 2) { projectStageSyncService.onNodeCompleted(Long.valueOf(cmdList.get(0).getProjectId()), ProjectStageEnum.SITE_SURVEY.getNode()); + // 判断是否有企业整改附件, 和整改复查附件 + List data = listByProject(Long.valueOf(cmdList.get(0).getProjectId())).getData(); + long enterpriseCount = data.stream().filter(f -> ProjectDocumentEnum.ENTERPRISE_RECTIFICATION.getVal().equals(f.getAttachTypeCode()) + && StringUtils.hasText(f.getFileUrl())).count(); + if (enterpriseCount == 0) { + // todo新增预警数据: 企业整改附件未传 + + } + long rectificationCountPrefix = data.stream().filter(f -> ProjectDocumentEnum.RECTIFICATION_NOTICE.getVal().equals(f.getAttachTypeCode()) + && f.getCheckbox() == 1).count(); + if (rectificationCountPrefix >= 1) { + long rectificationCount = data.stream().filter(f -> ProjectDocumentEnum.RECTIFICATION_REVIEW.getVal().equals(f.getAttachTypeCode()) + && StringUtils.hasText(f.getFileUrl())).count(); + if (rectificationCount == 0) { + // todo 新增预警数据: 整改复查附件未传 + } + + } } return SingleResponse.success(true); } diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/convertor/EvalProjectOrgWaringCmdConvertor.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/convertor/EvalProjectOrgWaringCmdConvertor.java new file mode 100644 index 00000000..84bde0ad --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/convertor/EvalProjectOrgWaringCmdConvertor.java @@ -0,0 +1,34 @@ +package org.qinan.safetyeval.app.waring.convertor; + +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringAddCmd; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringUpdateCmd; +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; + +/** + * 机构端-险预警转换 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Mapper(componentModel = "spring") +public interface EvalProjectOrgWaringCmdConvertor { + /** + * cmd_add转领域模型 + * + * @param evalProjectOrgWaringAddCmd + * @return + */ + @Mapping(target = "evalProjectOrgWaringGateway", ignore = true) + EvalProjectOrgWaringE convertCmdToE(EvalProjectOrgWaringAddCmd evalProjectOrgWaringAddCmd); + + /** + * cmd_update转领域模型 + * + * @param evalProjectOrgWaringUpdateCmd + * @return + */ + @Mapping(target = "evalProjectOrgWaringGateway", ignore = true) + EvalProjectOrgWaringE convertCmdToE(EvalProjectOrgWaringUpdateCmd evalProjectOrgWaringUpdateCmd); +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringAddCmdExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringAddCmdExe.java new file mode 100644 index 00000000..d415ff79 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringAddCmdExe.java @@ -0,0 +1,42 @@ +package org.qinan.safetyeval.app.waring.executor.command; + +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.app.waring.convertor.EvalProjectOrgWaringCmdConvertor; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringAddCmd; +import org.qinan.safetyeval.domain.waring.ability.EvalProjectOrgWaringAbility; +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; +import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProjectOrgWaringQueryService; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +/** + * 新增机构端-险预警执行器 + * + * @author ltq + * @date 2026-08-13 15:49:16 + */ +@Component +@AllArgsConstructor +public class EvalProjectOrgWaringAddCmdExe { + + private final EvalProjectOrgWaringQueryService evalProjectOrgWaringQueryService; + private final EvalProjectOrgWaringCmdConvertor evalProjectOrgWaringCmdConvertor; + private final EvalProjectOrgWaringAbility evalProjectOrgWaringAbility; + + /** + * 新增机构端-险预警 + * + * @param evalProjectOrgWaringAddCmd 新增机构端-险预警对象 + * @return + */ + @Transactional(rollbackFor = Exception.class) + public boolean execute(EvalProjectOrgWaringAddCmd evalProjectOrgWaringAddCmd) { + EvalProjectOrgWaringE evalProjectOrgWaringE = evalProjectOrgWaringCmdConvertor.convertCmdToE(evalProjectOrgWaringAddCmd); + boolean res = evalProjectOrgWaringE.add(); + if (!res) { + throw new BizException("保存失败"); + } + return true; + } +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringDelCmdExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringDelCmdExe.java new file mode 100644 index 00000000..ae61e559 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringDelCmdExe.java @@ -0,0 +1,55 @@ +package org.qinan.safetyeval.app.waring.executor.command; + +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.domain.waring.ability.EvalProjectOrgWaringAbility; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +/** + * 删除机构端-险预警询执行器 + * + * @author ltq + * @date 2026-08-13 15:49:16 + */ +@Component +@AllArgsConstructor +public class EvalProjectOrgWaringDelCmdExe { + private final EvalProjectOrgWaringAbility evalProjectOrgWaringAbility; + + /** + * 根据IDS删除机构端-险预警对象 + * + * @param ids 机构端-险预警ID数组 + * @return + */ + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long[] ids) { + if (ObjectUtil.isEmpty(ids)) { + throw new BizException("请传入正确的ID"); + } + boolean deleteRes = evalProjectOrgWaringAbility.deletedEvalProjectOrgWaringByIds(ids); + if (!deleteRes) { + throw new BizException("删除失败"); + } + return true; + } + + /** + * 根据ID删除机构端-险预警对象 + * + * @param id 删除机构端-险预警对象ID + * @return + */ + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long id) { + boolean deleteRes = evalProjectOrgWaringAbility.deletedEvalProjectOrgWaringById(id); + if (!deleteRes) { + throw new BizException("删除失败"); + } + return true; + } + + +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringUpdateCmdExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringUpdateCmdExe.java new file mode 100644 index 00000000..31105a4a --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/command/EvalProjectOrgWaringUpdateCmdExe.java @@ -0,0 +1,41 @@ +package org.qinan.safetyeval.app.waring.executor.command; + +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.app.waring.convertor.EvalProjectOrgWaringCmdConvertor; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringUpdateCmd; +import org.qinan.safetyeval.domain.waring.ability.EvalProjectOrgWaringAbility; +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; +import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProjectOrgWaringQueryService; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +/** + * 修改机构端-险预警资源执行器 + * + * @author ltq + * @date 2026-08-13 15:49:16 + */ +@Component +@AllArgsConstructor +public class EvalProjectOrgWaringUpdateCmdExe { + private final EvalProjectOrgWaringQueryService evalProjectOrgWaringQueryService; + private final EvalProjectOrgWaringCmdConvertor evalProjectOrgWaringCmdConvertor; + private final EvalProjectOrgWaringAbility evalProjectOrgWaringAbility; + + /** + * 修改机构端-险预警 + * + * @param evalProjectOrgWaringUpdateCmd 修改机构端-险预警对象 + * @return + */ + @Transactional(rollbackFor = Exception.class) + public boolean execute(EvalProjectOrgWaringUpdateCmd evalProjectOrgWaringUpdateCmd) { + EvalProjectOrgWaringE evalProjectOrgWaringE = evalProjectOrgWaringCmdConvertor.convertCmdToE(evalProjectOrgWaringUpdateCmd); + Boolean updateRes = evalProjectOrgWaringE.update(); + if (!updateRes) { + throw new BizException("数据已被更新,请刷新重试"); + } + return true; + } +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringListQueryExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringListQueryExe.java new file mode 100644 index 00000000..5ae70076 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringListQueryExe.java @@ -0,0 +1,34 @@ +package org.qinan.safetyeval.app.waring.executor.query; + +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.qinan.safetyeval.infrastructure.convertor.EvalProjectOrgWaringDoConvertor; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; +import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProjectOrgWaringQueryService; +import org.springframework.stereotype.Component; + +/** + * 机构端-险预警查询执行器 + * + * @author ltq + * @date 2026-08-13 15:49:16 + */ +@Component +@AllArgsConstructor +public class EvalProjectOrgWaringListQueryExe { + + private final EvalProjectOrgWaringQueryService evalProjectOrgWaringQueryService; + private final EvalProjectOrgWaringDoConvertor evalProjectOrgWaringDoConvertor; + + /** + * 根据ID查找机构端-险预警对象 + * + * @param id 机构端-险预警ID + * @return + */ + public EvalProjectOrgWaringCo execute(Long id) { + EvalProjectOrgWaringDO evalProjectOrgWaringDO = evalProjectOrgWaringQueryService.getById(id); + return evalProjectOrgWaringDoConvertor.converDoToCo(evalProjectOrgWaringDO); + } + +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringPageQueryExe.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringPageQueryExe.java new file mode 100644 index 00000000..98f5d179 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/executor/query/EvalProjectOrgWaringPageQueryExe.java @@ -0,0 +1,32 @@ +package org.qinan.safetyeval.app.waring.executor.query; + +import com.alibaba.cola.dto.PageResponse; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProjectOrgWaringQueryService; +import org.springframework.stereotype.Component; + +/** + * 机构端-险预警分页查询执行器 + * + * @author ltq + * @date 2026-08-13 15:49:16 + */ +@Component +@AllArgsConstructor +public class EvalProjectOrgWaringPageQueryExe { + + private final EvalProjectOrgWaringQueryService evalProjectOrgWaringQueryService; + + /** + * 分页查找机构端-险预警 + * + * @param evalProjectOrgWaringPageQry + * @return + */ + public PageResponse execute(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry) { + return evalProjectOrgWaringQueryService.listEvalProjectOrgWaringPage(evalProjectOrgWaringPageQry); + } + +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/EvalProjectOrgWaringServiceI.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/EvalProjectOrgWaringServiceI.java new file mode 100644 index 00000000..0544fad3 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/EvalProjectOrgWaringServiceI.java @@ -0,0 +1,65 @@ +package org.qinan.safetyeval.app.waring.service; + +import com.alibaba.cola.dto.PageResponse; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringAddCmd; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringUpdateCmd; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +public interface EvalProjectOrgWaringServiceI { + /** + * 分页获取机构端-险预警列表 + * + * @param evalProjectOrgWaringPageQry 查找条件对象 + * @return 结果集 + */ + PageResponse listEvalProjectOrgWaringPage(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry); + + /** + * 根据ID获取机构端-险预警详情 + * + * @param id 机构端-险预警ID + * @return 结果集 + */ + EvalProjectOrgWaringCo getEvalProjectOrgWaringById(Long id); + + /** + * 新增机构端-险预警 + * + * @param evalProjectOrgWaringAddCmd 机构端-险预警 + * @return 结果 + */ + boolean saveEvalProjectOrgWaring(EvalProjectOrgWaringAddCmd evalProjectOrgWaringAddCmd); + + /** + * 修改机构端-险预警 + * + * @param evalProjectOrgWaringUpdateCmd 机构端-险预警 + * @return 结果 + */ + boolean updateEvalProjectOrgWaring(EvalProjectOrgWaringUpdateCmd evalProjectOrgWaringUpdateCmd); + + /** + * 删除机构端-险预警 + * + * @param id 机构端-险预警ID + * @return 结果 + */ + boolean deletedEvalProjectOrgWaringById(Long id); + + /** + * 删除机构端-险预警 + * + * @param ids 机构端-险预警IDs + * @return 结果 + */ + boolean deletedEvalProjectOrgWaringByIds(Long[] ids); + + +} diff --git a/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/impl/EvalProjectOrgWaringServiceImpl.java b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/impl/EvalProjectOrgWaringServiceImpl.java new file mode 100644 index 00000000..e12f14a8 --- /dev/null +++ b/safety-eval-app/src/main/java/org/qinan/safetyeval/app/waring/service/impl/EvalProjectOrgWaringServiceImpl.java @@ -0,0 +1,63 @@ +package org.qinan.safetyeval.app.waring.service.impl; + +import com.alibaba.cola.dto.PageResponse; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.app.waring.executor.command.EvalProjectOrgWaringAddCmdExe; +import org.qinan.safetyeval.app.waring.executor.command.EvalProjectOrgWaringDelCmdExe; +import org.qinan.safetyeval.app.waring.executor.command.EvalProjectOrgWaringUpdateCmdExe; +import org.qinan.safetyeval.app.waring.executor.query.EvalProjectOrgWaringListQueryExe; +import org.qinan.safetyeval.app.waring.executor.query.EvalProjectOrgWaringPageQueryExe; +import org.qinan.safetyeval.app.waring.service.EvalProjectOrgWaringServiceI; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringAddCmd; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringUpdateCmd; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.springframework.stereotype.Service; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Service +@AllArgsConstructor +public class EvalProjectOrgWaringServiceImpl implements EvalProjectOrgWaringServiceI { + + private final EvalProjectOrgWaringListQueryExe evalProjectOrgWaringListQueryExe; + private final EvalProjectOrgWaringUpdateCmdExe evalProjectOrgWaringUpdateCommandExe; + private final EvalProjectOrgWaringAddCmdExe evalProjectOrgWaringAddCommandExe; + private final EvalProjectOrgWaringDelCmdExe evalProjectOrgWaringDelCommandExe; + private final EvalProjectOrgWaringPageQueryExe evalProjectOrgWaringPageQueryExe; + + @Override + public PageResponse listEvalProjectOrgWaringPage(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry) { + return evalProjectOrgWaringPageQueryExe.execute(evalProjectOrgWaringPageQry); + } + + @Override + public EvalProjectOrgWaringCo getEvalProjectOrgWaringById(Long id) { + return evalProjectOrgWaringListQueryExe.execute(id); + } + + @Override + public boolean saveEvalProjectOrgWaring(EvalProjectOrgWaringAddCmd evalProjectOrgWaringAddCmd) { + return evalProjectOrgWaringAddCommandExe.execute(evalProjectOrgWaringAddCmd); + } + + @Override + public boolean updateEvalProjectOrgWaring(EvalProjectOrgWaringUpdateCmd evalProjectOrgWaringUpdateCmd) { + return evalProjectOrgWaringUpdateCommandExe.execute(evalProjectOrgWaringUpdateCmd); + } + + @Override + public boolean deletedEvalProjectOrgWaringById(Long id) { + return evalProjectOrgWaringDelCommandExe.execute(id); + } + + @Override + public boolean deletedEvalProjectOrgWaringByIds(Long[] ids) { + return evalProjectOrgWaringDelCommandExe.execute(ids); + } + +} diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSurveyAttachCO.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSurveyAttachCO.java index fa42ebd3..cae641ac 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSurveyAttachCO.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/co/institution/EvalSurveyAttachCO.java @@ -20,4 +20,7 @@ public class EvalSurveyAttachCO { @ApiModelProperty("文件地址") private String fileUrl; + + @ApiModelProperty("勾选框: 0-不勾选,1-勾选") + private Integer checkbox; } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/institution/EvalSurveyAttachSaveCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/institution/EvalSurveyAttachSaveCmd.java index acc52d35..b3326676 100644 --- a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/institution/EvalSurveyAttachSaveCmd.java +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/dto/institution/EvalSurveyAttachSaveCmd.java @@ -17,4 +17,7 @@ public class EvalSurveyAttachSaveCmd { @ApiModelProperty("文件地址") private String fileUrl; + + @ApiModelProperty("勾选框: 0-不勾选,1-勾选") + private Integer checkbox; } diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringAddCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringAddCmd.java new file mode 100644 index 00000000..7406fa5d --- /dev/null +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringAddCmd.java @@ -0,0 +1,54 @@ +package org.qinan.safetyeval.client.waring.request; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 机构端-险预警新增Cmd + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +public class EvalProjectOrgWaringAddCmd implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 项目id + */ + @ApiModelProperty(value = "项目id", required = true) + @NotNull(message = "项目id不能为空") + private Long projectId; + /** + * 预警类型 + */ + @ApiModelProperty(value = "预警类型", required = true) + @NotBlank(message = "预警类型不能为空") + private String warningType; + /** + * 触发条件 + */ + @ApiModelProperty(value = "触发条件") + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + @ApiModelProperty(value = "处理状态 未处理(none),已处理(done)", required = true) + @NotBlank(message = "处理状态 未处理(none),已处理(done)不能为空") + private String handleStatus; + /** + * 证明材料 + */ + @ApiModelProperty(value = "证明材料") + private String evidenceFileUrl; + /** + * 环境 + */ + @ApiModelProperty(value = "环境") + private String env; + +} diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringPageQry.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringPageQry.java new file mode 100644 index 00000000..2dfd086e --- /dev/null +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringPageQry.java @@ -0,0 +1,48 @@ +package org.qinan.safetyeval.client.waring.request; + +import com.alibaba.cola.dto.PageQuery; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 机构端-险预警分页查询Qry + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +public class EvalProjectOrgWaringPageQry extends PageQuery { + private static final long serialVersionUID = 1L; + + /** + * 项目id + */ + @ApiModelProperty(value = "项目id") + private Long projectId; + /** + * 预警类型 + */ + @ApiModelProperty(value = "预警类型") + private String warningType; + /** + * 触发条件 + */ + @ApiModelProperty(value = "触发条件") + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + @ApiModelProperty(value = "处理状态 未处理(none),已处理(done)") + private String handleStatus; + /** + * 证明材料 + */ + @ApiModelProperty(value = "证明材料") + private String evidenceFileUrl; + /** + * 环境 + */ + @ApiModelProperty(value = "环境") + private String env; + +} diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringUpdateCmd.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringUpdateCmd.java new file mode 100644 index 00000000..6e728539 --- /dev/null +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/request/EvalProjectOrgWaringUpdateCmd.java @@ -0,0 +1,58 @@ +package org.qinan.safetyeval.client.waring.request; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 机构端-险预警修改Cmd + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +public class EvalProjectOrgWaringUpdateCmd implements Serializable { + private static final long serialVersionUID = 1L; + @JsonFormat(shape = JsonFormat.Shape.STRING) + private Long id; + /** + * 项目id + */ + @ApiModelProperty(value = "项目id", required = true) + @NotNull(message = "项目id不能为空") + private Long projectId; + /** + * 预警类型 + */ + @ApiModelProperty(value = "预警类型", required = true) + @NotBlank(message = "预警类型不能为空") + private String warningType; + /** + * 触发条件 + */ + @ApiModelProperty(value = "触发条件") + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + @ApiModelProperty(value = "处理状态 未处理(none),已处理(done)", required = true) + @NotBlank(message = "处理状态 未处理(none),已处理(done)不能为空") + private String handleStatus; + /** + * 证明材料 + */ + @ApiModelProperty(value = "证明材料") + private String evidenceFileUrl; + /** + * 环境 + */ + @ApiModelProperty(value = "环境") + private String env; + @NotNull(message = "version不能为空") + @ApiModelProperty(value = "version") + private Integer version; +} diff --git a/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/response/EvalProjectOrgWaringCo.java b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/response/EvalProjectOrgWaringCo.java new file mode 100644 index 00000000..ef66dac7 --- /dev/null +++ b/safety-eval-client/src/main/java/org/qinan/safetyeval/client/waring/response/EvalProjectOrgWaringCo.java @@ -0,0 +1,51 @@ +package org.qinan.safetyeval.client.waring.response; + +import com.alibaba.cola.dto.ClientObject; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 机构端-险预警Co + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +public class EvalProjectOrgWaringCo extends ClientObject { + private static final long serialVersionUID = 1L; + @JsonFormat(shape = JsonFormat.Shape.STRING) + private Long id; + /** + * 项目id + */ + @ApiModelProperty(value = "项目id") + private Long projectId; + /** + * 预警类型 + */ + @ApiModelProperty(value = "预警类型") + private String warningType; + /** + * 触发条件 + */ + @ApiModelProperty(value = "触发条件") + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + @ApiModelProperty(value = "处理状态 未处理(none),已处理(done)") + private String handleStatus; + /** + * 证明材料 + */ + @ApiModelProperty(value = "证明材料") + private String evidenceFileUrl; + /** + * 环境 + */ + @ApiModelProperty(value = "环境") + private String env; + @ApiModelProperty(value = "version") + private Integer version; +} diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/HandleStatusEnum.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/HandleStatusEnum.java new file mode 100644 index 00000000..f4a247aa --- /dev/null +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/HandleStatusEnum.java @@ -0,0 +1,33 @@ +package org.qinan.safetyeval.domain.constant; + +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +/** + * 处理状态枚举 + */ +@Getter +@RequiredArgsConstructor +public enum HandleStatusEnum { + + NONE("none", "未处理"), + DONE("done", "已处理"), + ; + + private final String code; + private final String value; + public static final String REMARKS = "处理状态枚举: none=>未处理;done=>已处理"; + + + public static HandleStatusEnum ofCode(String code) { + if (code == null) { + return null; + } + for (HandleStatusEnum item : values()) { + if (item.code.equalsIgnoreCase(code)) { + return item; + } + } + return null; + } +} diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/OrgProjectWarningTypeEnum.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/OrgProjectWarningTypeEnum.java new file mode 100644 index 00000000..e1993b86 --- /dev/null +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/constant/OrgProjectWarningTypeEnum.java @@ -0,0 +1,33 @@ +package org.qinan.safetyeval.domain.constant; + +import lombok.Getter; +import lombok.RequiredArgsConstructor; + +/** + * 机构项目预警类型枚举 + */ +@Getter +@RequiredArgsConstructor +public enum OrgProjectWarningTypeEnum { + + NOT_ARCHIVED("not_archived", "未归档"), + REPORT_OVERDUE("report_overdue", "报告超期"), + ; + + private final String code; + private final String value; + public static final String REMARKS = "机构项目预警类型枚举: not_archived=>未归档;report_overdue=>报告超期"; + + + public static OrgProjectWarningTypeEnum ofCode(String code) { + if (code == null) { + return null; + } + for (OrgProjectWarningTypeEnum item : values()) { + if (item.code.equalsIgnoreCase(code)) { + return item; + } + } + return null; + } +} diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/EvalSurveyAttachEntity.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/EvalSurveyAttachEntity.java index 1e88bba7..56f7f2d1 100644 --- a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/EvalSurveyAttachEntity.java +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/entity/EvalSurveyAttachEntity.java @@ -9,4 +9,5 @@ public class EvalSurveyAttachEntity { private Long projectId; private String attachTypeCode; private String fileUrl; + private Integer checkbox; } diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/ability/EvalProjectOrgWaringAbility.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/ability/EvalProjectOrgWaringAbility.java new file mode 100644 index 00000000..08c7fba0 --- /dev/null +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/ability/EvalProjectOrgWaringAbility.java @@ -0,0 +1,29 @@ +package org.qinan.safetyeval.domain.waring.ability; + +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.domain.waring.gateway.EvalProjectOrgWaringGateway; +import org.springframework.stereotype.Service; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Service +@AllArgsConstructor +public class EvalProjectOrgWaringAbility { + /** + * 网关 + **/ + private final EvalProjectOrgWaringGateway evalProjectOrgWaringGateway; + + + public boolean deletedEvalProjectOrgWaringById(Long id) { + return evalProjectOrgWaringGateway.deletedEvalProjectOrgWaringById(id); + } + + public boolean deletedEvalProjectOrgWaringByIds(Long[] ids) { + return evalProjectOrgWaringGateway.deletedEvalProjectOrgWaringByIds(ids); + } +} diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/gateway/EvalProjectOrgWaringGateway.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/gateway/EvalProjectOrgWaringGateway.java new file mode 100644 index 00000000..103ca554 --- /dev/null +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/gateway/EvalProjectOrgWaringGateway.java @@ -0,0 +1,44 @@ +package org.qinan.safetyeval.domain.waring.gateway; + +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; + +/** + * 机构端-险预警网关 + * + * @Author: WGG + * @Date: 2022/3/22 16:49 + */ +public interface EvalProjectOrgWaringGateway { + + /** + * 新增机构端-险预警 + * + * @param evalProjectOrgWaringE 机构端-险预警 + * @return 结果 + */ + Boolean add(EvalProjectOrgWaringE evalProjectOrgWaringE); + + /** + * 修改机构端-险预警 + * + * @param evalProjectOrgWaringE 机构端-险预警 + * @return 结果 + */ + Boolean update(EvalProjectOrgWaringE evalProjectOrgWaringE); + + /** + * 删除机构端-险预警 + * + * @param id + * @return 结果 + */ + Boolean deletedEvalProjectOrgWaringById(Long id); + + /** + * 删除机构端-险预警 + * + * @param ids + * @return 结果 + */ + Boolean deletedEvalProjectOrgWaringByIds(Long[] ids); +} diff --git a/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/model/EvalProjectOrgWaringE.java b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/model/EvalProjectOrgWaringE.java new file mode 100644 index 00000000..36b76dd4 --- /dev/null +++ b/safety-eval-domain/src/main/java/org/qinan/safetyeval/domain/waring/model/EvalProjectOrgWaringE.java @@ -0,0 +1,64 @@ +package org.qinan.safetyeval.domain.waring.model; + +import cn.hutool.extra.spring.SpringUtil; +import com.alibaba.cola.domain.DomainFactory; +import com.alibaba.cola.domain.Entity; +import com.jjb.saas.framework.domain.model.BaseE; +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.qinan.safetyeval.domain.waring.gateway.EvalProjectOrgWaringGateway; + +/** + * 机构端-险预警领域模型 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +@Entity +@EqualsAndHashCode(callSuper = true) +public class EvalProjectOrgWaringE extends BaseE { + private static final long serialVersionUID = 1L; + + /** + * 项目id + */ + private Long projectId; + /** + * 预警类型 + */ + private String warningType; + /** + * 触发条件 + */ + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + private String handleStatus; + /** + * 证明材料 + */ + private String evidenceFileUrl; + /** + * 环境 + */ + private String env; + private transient EvalProjectOrgWaringGateway evalProjectOrgWaringGateway; + + public EvalProjectOrgWaringE() { + this.evalProjectOrgWaringGateway = SpringUtil.getBean(EvalProjectOrgWaringGateway.class); + } + + public static EvalProjectOrgWaringE of() { + return DomainFactory.create(EvalProjectOrgWaringE.class); + } + + public boolean add() { + return evalProjectOrgWaringGateway.add(this); + } + + public boolean update() { + return evalProjectOrgWaringGateway.update(this); + } +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/convertor/EvalProjectOrgWaringDoConvertor.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/convertor/EvalProjectOrgWaringDoConvertor.java new file mode 100644 index 00000000..fb778f4a --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/convertor/EvalProjectOrgWaringDoConvertor.java @@ -0,0 +1,53 @@ +package org.qinan.safetyeval.infrastructure.convertor; + +import org.mapstruct.Mapper; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; + +import java.util.List; + + +/** + * 机构端-险预警对象转换 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Mapper(componentModel = "spring") +public interface EvalProjectOrgWaringDoConvertor { + /** + * 领域对象转DO + * + * @param evalProjectOrgWaringE + * @return + */ + EvalProjectOrgWaringDO convertEeToDo(EvalProjectOrgWaringE evalProjectOrgWaringE); + + /** + * DO转Co + * + * @param evalProjectOrgWaringDo DO + * @return + */ + + EvalProjectOrgWaringCo converDoToCo(EvalProjectOrgWaringDO evalProjectOrgWaringDo); + + /** + * qry TO DO + * + * @param evalProjectOrgWaringPageQry + * @return + */ + + EvalProjectOrgWaringDO convertQryToDo(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry); + + /** + * DOs转Cos + * + * @param evalProjectOrgWaringDos dos + * @return + */ + List converDosToCos(List evalProjectOrgWaringDos); +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/EvalSurveyAttachDO.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/EvalSurveyAttachDO.java index b8d127a7..6f790783 100644 --- a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/EvalSurveyAttachDO.java +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/dataobject/EvalSurveyAttachDO.java @@ -12,4 +12,5 @@ public class EvalSurveyAttachDO { /** 附件类型编码(ProjectDocumentEnum.val) */ private String attachTypeCode; private String fileUrl; + private Integer checkbox; } diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gateway/EvalProjectOrgWaringGatewayImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gateway/EvalProjectOrgWaringGatewayImpl.java new file mode 100644 index 00000000..bfb7469e --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/gateway/EvalProjectOrgWaringGatewayImpl.java @@ -0,0 +1,48 @@ +package org.qinan.safetyeval.infrastructure.gateway; + +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.domain.waring.gateway.EvalProjectOrgWaringGateway; +import org.qinan.safetyeval.domain.waring.model.EvalProjectOrgWaringE; +import org.qinan.safetyeval.infrastructure.convertor.EvalProjectOrgWaringDoConvertor; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; +import org.qinan.safetyeval.infrastructure.persistence.repository.EvalProjectOrgWaringRepository; +import org.springframework.stereotype.Service; + +/** + * 机构端-险预警网关实现 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Service +@AllArgsConstructor +public class EvalProjectOrgWaringGatewayImpl implements EvalProjectOrgWaringGateway { + private final EvalProjectOrgWaringRepository evalProjectOrgWaringRepository; + private final EvalProjectOrgWaringDoConvertor evalProjectOrgWaringDoConvertor; + + @Override + public Boolean add(EvalProjectOrgWaringE evalProjectOrgWaringE) { + EvalProjectOrgWaringDO evalProjectOrgWaringDO = evalProjectOrgWaringDoConvertor.convertEeToDo(evalProjectOrgWaringE); + boolean res = evalProjectOrgWaringRepository.addEvalProjectOrgWaring(evalProjectOrgWaringDO); + if (res) { + evalProjectOrgWaringE.setId(evalProjectOrgWaringDO.getId()); + } + return res; + } + + @Override + public Boolean update(EvalProjectOrgWaringE evalProjectOrgWaringE) { + boolean res = evalProjectOrgWaringRepository.updateEvalProjectOrgWaring(evalProjectOrgWaringDoConvertor.convertEeToDo(evalProjectOrgWaringE)); + return res; + } + + @Override + public Boolean deletedEvalProjectOrgWaringById(Long id) { + return evalProjectOrgWaringRepository.deletedEvalProjectOrgWaringById(id); + } + + @Override + public Boolean deletedEvalProjectOrgWaringByIds(Long[] ids) { + return evalProjectOrgWaringRepository.deletedEvalProjectOrgWaringByIds(ids); + } +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectOrgWaringDO.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectOrgWaringDO.java new file mode 100644 index 00000000..b09eb8c6 --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/domainobject/EvalProjectOrgWaringDO.java @@ -0,0 +1,44 @@ +package org.qinan.safetyeval.infrastructure.persistence.domainobject; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.jjb.saas.framework.repository.basedo.BaseDO; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 机构端-险预警领域模型 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("eval_project_org_waring") +public class EvalProjectOrgWaringDO extends BaseDO { + private static final long serialVersionUID = 1L; + + /** + * 项目id + */ + private Long projectId; + /** + * 预警类型 + */ + private String warningType; + /** + * 触发条件 + */ + private String triggerCondition; + /** + * 处理状态 未处理(none),已处理(done) + */ + private String handleStatus; + /** + * 证明材料 + */ + private String evidenceFileUrl; + /** + * 环境 + */ + private String env; +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/mapper/EvalProjectOrgWaringMapper.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/mapper/EvalProjectOrgWaringMapper.java new file mode 100644 index 00000000..631f3519 --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/mapper/EvalProjectOrgWaringMapper.java @@ -0,0 +1,15 @@ +package org.qinan.safetyeval.infrastructure.persistence.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; + +/** + * 机构端-险预警Mapper + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Mapper +public interface EvalProjectOrgWaringMapper extends BaseMapper { +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/EvalProjectOrgWaringQueryService.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/EvalProjectOrgWaringQueryService.java new file mode 100644 index 00000000..79e64d0d --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/EvalProjectOrgWaringQueryService.java @@ -0,0 +1,31 @@ +package org.qinan.safetyeval.infrastructure.persistence.queryservice; + +import com.alibaba.cola.dto.PageResponse; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +public interface EvalProjectOrgWaringQueryService { + + /** + * 根据ID查找 + * + * @param id 机构端-险预警ID + * @return + */ + EvalProjectOrgWaringDO getById(Long id); + + /** + * 分页查询机构端-险预警 + * + * @param evalProjectOrgWaringPageQry 分页Qry + * @return + */ + PageResponse listEvalProjectOrgWaringPage(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry); +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/impl/EvalProjectOrgWaringQueryServiceImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/impl/EvalProjectOrgWaringQueryServiceImpl.java new file mode 100644 index 00000000..28150a5f --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/queryservice/impl/EvalProjectOrgWaringQueryServiceImpl.java @@ -0,0 +1,42 @@ +package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl; + +import com.alibaba.cola.dto.PageResponse; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.repository.common.PageHelper; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.client.waring.response.EvalProjectOrgWaringCo; +import org.qinan.safetyeval.infrastructure.convertor.EvalProjectOrgWaringDoConvertor; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; +import org.qinan.safetyeval.infrastructure.persistence.queryservice.EvalProjectOrgWaringQueryService; +import org.qinan.safetyeval.infrastructure.persistence.repository.EvalProjectOrgWaringRepository; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Service +@AllArgsConstructor +public class EvalProjectOrgWaringQueryServiceImpl implements EvalProjectOrgWaringQueryService { + + private final EvalProjectOrgWaringRepository evalProjectOrgWaringRepository; + private final EvalProjectOrgWaringDoConvertor evalProjectOrgWaringDoConvertor; + + @Override + public EvalProjectOrgWaringDO getById(Long id) { + return evalProjectOrgWaringRepository.getById(id); + } + + @Override + public PageResponse listEvalProjectOrgWaringPage(EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry) { + IPage evalProjectOrgWaringDoPage = evalProjectOrgWaringRepository.listEvalProjectOrgWaringPage(PageHelper.queryToPage(evalProjectOrgWaringPageQry), evalProjectOrgWaringPageQry); + List evalProjectOrgWaringCoS = evalProjectOrgWaringDoConvertor.converDosToCos(evalProjectOrgWaringDoPage.getRecords()); + return PageHelper.pageToResponse(evalProjectOrgWaringDoPage, evalProjectOrgWaringCoS); + } + +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/EvalProjectOrgWaringRepository.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/EvalProjectOrgWaringRepository.java new file mode 100644 index 00000000..e2a33a2e --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/EvalProjectOrgWaringRepository.java @@ -0,0 +1,65 @@ +package org.qinan.safetyeval.infrastructure.persistence.repository; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.repository.repo.BaseRepository; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +public interface EvalProjectOrgWaringRepository extends BaseRepository { + /** + * 根据ID查找 + * + * @param id 机构端-险预警ID + * @return + */ + EvalProjectOrgWaringDO getById(Long id); + + /** + * 分页查找机构端-险预警对象 + * + * @param iPage 分页对象 + * @param evalProjectOrgWaringPageQry 条件对象 + * @return ipage + */ + IPage listEvalProjectOrgWaringPage(IPage iPage, EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry); + + /** + * 新增机构端-险预警 + * + * @param evalProjectOrgWaringDO 机构端-险预警 + * @return 结果 + */ + Boolean addEvalProjectOrgWaring(EvalProjectOrgWaringDO evalProjectOrgWaringDO); + + /** + * 修改机构端-险预警 + * + * @param evalProjectOrgWaringDO 机构端-险预警 + * @return 结果 + */ + Boolean updateEvalProjectOrgWaring(EvalProjectOrgWaringDO evalProjectOrgWaringDO); + + + /** + * 删除机构端-险预警 + * + * @param id + * @return 结果 + */ + Boolean deletedEvalProjectOrgWaringById(Long id); + + /** + * 删除机构端-险预警 + * + * @param ids + * @return 结果 + */ + Boolean deletedEvalProjectOrgWaringByIds(Long[] ids); + +} diff --git a/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectOrgWaringRepositoryImpl.java b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectOrgWaringRepositoryImpl.java new file mode 100644 index 00000000..605422e6 --- /dev/null +++ b/safety-eval-infrastructure/src/main/java/org/qinan/safetyeval/infrastructure/persistence/repository/impl/EvalProjectOrgWaringRepositoryImpl.java @@ -0,0 +1,60 @@ +package org.qinan.safetyeval.infrastructure.persistence.repository.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.enums.enums.BooleanEnum; +import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import lombok.AllArgsConstructor; +import org.qinan.safetyeval.client.waring.request.EvalProjectOrgWaringPageQry; +import org.qinan.safetyeval.domain.constant.BooleanQAEnum; +import org.qinan.safetyeval.infrastructure.persistence.domainobject.EvalProjectOrgWaringDO; +import org.qinan.safetyeval.infrastructure.persistence.mapper.EvalProjectOrgWaringMapper; +import org.qinan.safetyeval.infrastructure.persistence.repository.EvalProjectOrgWaringRepository; +import org.springframework.stereotype.Service; + +import java.util.Arrays; + +/** + * 机构端-险预警 + * + * @Author: ltq + * @date 2026-08-13 15:49:16 + */ +@Service +@AllArgsConstructor +public class EvalProjectOrgWaringRepositoryImpl extends BaseRepositoryImpl implements EvalProjectOrgWaringRepository { + + private final EvalProjectOrgWaringMapper evalProjectOrgWaringMapper; + + @Override + public EvalProjectOrgWaringDO getById(Long id) { + return super.lambdaQuery().eq(EvalProjectOrgWaringDO::getId, id).eq(EvalProjectOrgWaringDO::getDeleteEnum, BooleanEnum.FALSE.getValue()).one(); + } + + @Override + public IPage listEvalProjectOrgWaringPage(IPage iPage, EvalProjectOrgWaringPageQry evalProjectOrgWaringPageQry) { + LambdaQueryWrapper evalProjectOrgWaringDoQueryWrapper = new LambdaQueryWrapper<>(); + evalProjectOrgWaringDoQueryWrapper.eq(EvalProjectOrgWaringDO::getDeleteEnum, BooleanQAEnum.FALSE.getValue()); + return evalProjectOrgWaringMapper.selectPage(iPage, evalProjectOrgWaringDoQueryWrapper); + } + + @Override + public Boolean addEvalProjectOrgWaring(EvalProjectOrgWaringDO evalProjectOrgWaringDO) { + return super.save(evalProjectOrgWaringDO); + } + + @Override + public Boolean updateEvalProjectOrgWaring(EvalProjectOrgWaringDO evalProjectOrgWaringDO) { + return super.updateById(evalProjectOrgWaringDO); + } + + @Override + public Boolean deletedEvalProjectOrgWaringById(Long id) { + return super.removeEnById(id); + } + + @Override + public Boolean deletedEvalProjectOrgWaringByIds(Long[] ids) { + return super.removeBatchEnByIds(Arrays.asList(ids)); + } +} diff --git a/safety-eval-infrastructure/src/main/resources/mapper/EvalProjectOrgWaringMapper.xml b/safety-eval-infrastructure/src/main/resources/mapper/EvalProjectOrgWaringMapper.xml new file mode 100644 index 00000000..7edd6d5e --- /dev/null +++ b/safety-eval-infrastructure/src/main/resources/mapper/EvalProjectOrgWaringMapper.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select id, project_id, warning_type, trigger_condition, handle_status, evidence_file_url, delete_enum, org_id, + remarks, create_name, update_name, tenant_id, version, create_time, update_time, create_id, update_id, env from + eval_project_org_waring + + \ No newline at end of file