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 {