From 0b159891df20f0ef58cef05293b02d42f221a0b2 Mon Sep 17 00:00:00 2001 From: guojunyun Date: Wed, 22 Oct 2025 10:01:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E5=90=88=E5=90=8CID=E8=8E=B7?= =?UTF-8?q?=E5=BE=97=E5=85=B3=E8=81=94=E5=90=88=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contract/vo/contract/RelationRespVO.java | 15 +++++++++++ .../service/contract/ContractService.java | 8 ++++++ .../service/contract/ContractServiceImpl.java | 26 +++++++++++++++++++ 3 files changed, 49 insertions(+) create mode 100644 zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/RelationRespVO.java diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/RelationRespVO.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/RelationRespVO.java new file mode 100644 index 0000000..9e87427 --- /dev/null +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/RelationRespVO.java @@ -0,0 +1,15 @@ +package com.zt.plat.module.contractorder.controller.admin.contract.vo.contract; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - 合同关联 Response VO") +@Data +public class RelationRespVO { + + @Schema(description = "上游主键") + private Long upId; + + @Schema(description = "下游主键") + private Long downId; +} diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java index e758493..7a3b35c 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractService.java @@ -163,6 +163,14 @@ public interface ContractService { */ Boolean relation(RelationReqVo reqVo); + /** + * 根据合同ID获得关联合同 + * + * @param id 上合同ID + * @return 上下游合同ID + */ + RelationRespVO getRelation(Long id); + /** * 下载文件 * diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java index 91f33c9..765a864 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/service/contract/ContractServiceImpl.java @@ -1386,6 +1386,32 @@ public class ContractServiceImpl implements ContractService { return insert > 0; } + @Override + public RelationRespVO getRelation(Long id) { + + // 返回结果 + RelationRespVO resp = new RelationRespVO(); + + // 获得上游合同关联 + SystemRelativityDO upSystemRelativityDO = systemRelativityMapper + .selectOne(new LambdaQueryWrapperX() + .eq(SystemRelativityDO::getDownId, id) + ); + + // 获得下游合同关联 + SystemRelativityDO downSystemRelativityDO = systemRelativityMapper + .selectOne(new LambdaQueryWrapperX() + .eq(SystemRelativityDO::getUpId, id) + ); + + // 上游合同ID + if (upSystemRelativityDO != null) resp.setUpId(upSystemRelativityDO.getId()); + // 下游合同ID + if (downSystemRelativityDO != null) resp.setDownId(downSystemRelativityDO.getId()); + + return resp; + } + @Override public ResponseEntity download(List ids) { try {