From 665975f3a198a72c85668eae299f57ea030730df Mon Sep 17 00:00:00 2001 From: guojunyun Date: Wed, 15 Oct 2025 18:00:28 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=96=87=E4=BB=B6=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20=E9=99=84=E4=BB=B6=E5=AF=B9=E8=B1=A1=E5=AD=98?= =?UTF-8?q?=E5=82=A8=E5=AD=97=E6=AE=B5=E8=AF=B7=E6=B1=82=E7=B1=BB=E5=9E=8B?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/contract/ContractController.java | 6 ++--- .../vo/contract/ContractSaveReqVO.java | 2 +- .../service/contract/ContractService.java | 7 ++++++ .../service/contract/ContractServiceImpl.java | 24 +++++++++++++++++++ 4 files changed, 35 insertions(+), 4 deletions(-) diff --git a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java index 2509b20..cf602db 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/ContractController.java @@ -98,11 +98,11 @@ public class ContractController implements BusinessControllerMarker { return success(contractService.delete(ids)); } - // TODO @PostMapping("/download") - @Operation(summary = "下载文件 TODO") + @Operation(summary = "下载文件") @PreAuthorize("@ss.hasPermission('base:contract:download')") - public void download() { + public void download(@RequestBody List ids) { + contractService.download(ids); } // TODO 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/ContractSaveReqVO.java b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/ContractSaveReqVO.java index 0555c4b..738d3b9 100644 --- a/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/ContractSaveReqVO.java +++ b/zt-module-contract-order/zt-module-contract-order-server/src/main/java/com/zt/plat/module/contractorder/controller/admin/contract/vo/contract/ContractSaveReqVO.java @@ -32,7 +32,7 @@ public class ContractSaveReqVO { // 基础信息 @Schema(description = "附件对象存储") - private String fileObject; + private JSONArray fileObject; @Schema(description = "其它附件对象存储") private JSONArray fileObjectOther; 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 bae6e20..74b74e9 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 @@ -159,4 +159,11 @@ public interface ContractService { * @return 关联结果 */ Boolean relation(RelationReqVo reqVo); + + /** + * 下载文件 + * + * @param ids 合同ID集合 + */ + void download(List ids); } 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 a363f61..6b6c639 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 @@ -1,7 +1,9 @@ package com.zt.plat.module.contractorder.service.contract; +import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.zt.plat.framework.common.pojo.CommonResult; import com.zt.plat.framework.common.pojo.PageResult; import com.zt.plat.framework.common.util.object.BeanUtils; import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX; @@ -29,6 +31,8 @@ import com.zt.plat.module.erp.controller.admin.erp.vo.ErpContractSaveReqVO; import com.zt.plat.module.erp.dal.dataobject.erp.ErpContractDO; import com.zt.plat.module.erp.service.erp.ErpCompanyService; import com.zt.plat.module.erp.service.erp.ErpContractService; +import com.zt.plat.module.infra.api.file.FileApi; +import com.zt.plat.module.infra.api.file.dto.FileRespDTO; import com.zt.plat.module.system.api.user.AdminUserApi; import com.zt.plat.module.system.api.user.dto.AdminUserRespDTO; import jakarta.annotation.Resource; @@ -96,6 +100,8 @@ public class ContractServiceImpl implements ContractService { private ErpContractService erpContractService; @Resource private SystemRelativityMapper systemRelativityMapper; + @Resource + private FileApi fileApi; @Override public PageResult getContractPage(ContractPageReqVO pageReqVO) { @@ -1352,6 +1358,24 @@ public class ContractServiceImpl implements ContractService { return insert > 0; } + @Override + public void download(List ids) { + try { + // 遍历合同ID集合 + ids.forEach(id -> { + + // 查询合同信息 + ContractMainDO contractMainDO = contractMainMapper.selectById(id); + JSONArray fileObjectOther = new JSONArray(contractMainDO.getFileObjectOther()); + System.out.println(fileObjectOther); + CommonResult fileRespDTOResult = fileApi + .getFile(fileObjectOther.getJSONObject(0).getLong("id")); + }); + } catch (Exception e) { + e.printStackTrace(); + } + } + /** * 校验合同内容 *