From 53845f2875b57e46b0659f64688e02429f2d5986 Mon Sep 17 00:00:00 2001 From: whb <17803890193@163.com> Date: Mon, 1 Apr 2024 15:18:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E6=8E=A5=E6=94=B6=E6=95=B0?= =?UTF-8?q?=E5=AD=97=E5=80=BA=E6=9D=83=E5=87=AD=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../StuDigitalDebtVoucherController.java | 7 +- .../controller/StuSendApplyController.java | 68 ++++++++++++++++- .../mappers/StuUploadResourceInfoMapper.java | 4 +- .../service/StuSendApplyService.java | 11 +++ .../service/impl/StuSendApplyServiceImpl.java | 75 +++++++++++++++++++ 5 files changed, 157 insertions(+), 8 deletions(-) diff --git a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuDigitalDebtVoucherController.java b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuDigitalDebtVoucherController.java index 91d1484..c0874b7 100644 --- a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuDigitalDebtVoucherController.java +++ b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuDigitalDebtVoucherController.java @@ -29,11 +29,12 @@ import java.nio.file.Paths; @Api(tags = "生成数字债权凭证(核心企业)") public class StuDigitalDebtVoucherController { + @Value("${file.path}") private String filePath; - @Autowired + @Autowired private StuDigitalDebtVoucherService service; @@ -82,9 +83,9 @@ public class StuDigitalDebtVoucherController { @ApiOperation("签发方公钥") - @PostMapping("/InfoSec") + @PostMapping("/infoSec") @AnonymousAccess - public ResultEntity sigPky(@RequestBody @NotBlank StutInfoSecDto dto ) throws Exception { + public ResultEntity infoSec(@RequestBody @NotBlank StutInfoSecDto dto ) throws Exception { return service.sigPky(dto); diff --git a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuSendApplyController.java b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuSendApplyController.java index 044f23b..70c6b38 100644 --- a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuSendApplyController.java +++ b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/controller/StuSendApplyController.java @@ -1,14 +1,29 @@ package com.sztzjy.block_finance.controller; import com.sztzjy.block_finance.annotation.AnonymousAccess; +import com.sztzjy.block_finance.entity.StuUploadResourceInfo; +import com.sztzjy.block_finance.entity.StuUploadResourceInfoExample; +import com.sztzjy.block_finance.mappers.StuUploadResourceInfoMapper; import com.sztzjy.block_finance.service.StuSendApplyService; import com.sztzjy.block_finance.util.ResultEntity; +import com.sztzjy.block_finance.util.file.IFileUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.util.HashMap; +import java.util.List; + /** * @author 17803 * @date 2024-04-01 13:57 @@ -24,23 +39,68 @@ public class StuSendApplyController { private StuSendApplyService service; + @Value("${file.path}") + private String filePath; + + @Resource + private IFileUtil IFileUtil; + + @Autowired + private StuUploadResourceInfoMapper uploadResourceInfoMapper; + @ApiOperation("关联数字债权凭证上传") @GetMapping("/uploadDebt") @AnonymousAccess - public ResultEntity uploadDebt(@RequestParam(required = true) @RequestPart MultipartFile file, - @RequestParam(required = true) String userId){ + public void uploadDebt(@RequestParam(required = true) @RequestPart MultipartFile file, + @RequestParam(required = true) String userId,String fileName){ + -// return service.readVoucher(userId); + + service.uploadDebt(file,userId,fileName); + + } + + @GetMapping("/readByDebt") + @ApiOperation("发起保理申请预览:统一接口") + @AnonymousAccess + ResponseEntity readByDebt(String userId, String docName) throws IOException, IOException { + StuUploadResourceInfoExample example = new StuUploadResourceInfoExample(); + example.createCriteria().andUserIdEqualTo(userId).andModuleEqualTo(docName); + List uploadResourceInfos = uploadResourceInfoMapper.selectByExample(example); + if (uploadResourceInfos.isEmpty()){ + return null; + } - return null; + String fileUrl = uploadResourceInfos.get(0).getFileUrl(); + + + // 模拟加载公章图片的数据(假设在硬盘上的某个路径下) + String imagePath = filePath +fileUrl; +// 替换为你的实际路径 + byte[] sealBytes = Files.readAllBytes(Paths.get(imagePath)); + + // 构建HTTP响应,设置Content-Type为image/png + return ResponseEntity.ok().contentType(MediaType.APPLICATION_PDF).body(sealBytes); } + @GetMapping("/downloadByInfo") + @ApiOperation("模板下载") + @AnonymousAccess + public void downloadByInfo(@RequestParam String userId , HttpServletResponse response) { + + // TokenProvider.getJWTUser(TOKEN); + + IFileUtil.download(response,"/supply/部分3 采购订单1.pdf"); + + } + + diff --git a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/mappers/StuUploadResourceInfoMapper.java b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/mappers/StuUploadResourceInfoMapper.java index 3b96d2c..7ca3de2 100644 --- a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/mappers/StuUploadResourceInfoMapper.java +++ b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/mappers/StuUploadResourceInfoMapper.java @@ -3,8 +3,10 @@ package com.sztzjy.block_finance.mappers; import com.sztzjy.block_finance.entity.StuUploadResourceInfo; import com.sztzjy.block_finance.entity.StuUploadResourceInfoExample; import java.util.List; -import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +@Mapper public interface StuUploadResourceInfoMapper { long countByExample(StuUploadResourceInfoExample example); diff --git a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/StuSendApplyService.java b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/StuSendApplyService.java index 6547f99..8c837c7 100644 --- a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/StuSendApplyService.java +++ b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/StuSendApplyService.java @@ -1,8 +1,19 @@ package com.sztzjy.block_finance.service; +import com.sztzjy.block_finance.util.ResultEntity; +import org.springframework.web.multipart.MultipartFile; + /** * @author 17803 * @date 2024-04-01 14:05 */ public interface StuSendApplyService { + /** + * 关联数字债权凭证上传 + * @param file + * @param userId + * @return + */ + + void uploadDebt(MultipartFile file, String userId,String fileName); } diff --git a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/impl/StuSendApplyServiceImpl.java b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/impl/StuSendApplyServiceImpl.java index 118ce0b..2876fa5 100644 --- a/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/impl/StuSendApplyServiceImpl.java +++ b/BlockFinanceCentral/src/main/java/com/sztzjy/block_finance/service/impl/StuSendApplyServiceImpl.java @@ -3,9 +3,84 @@ package com.sztzjy.block_finance.service.impl;/** * @date 2024-04-01 14:19 */ +import cn.hutool.core.util.IdUtil; +import com.sztzjy.block_finance.entity.StuUploadResourceInfo; +import com.sztzjy.block_finance.entity.StuUploadResourceInfoExample; +import com.sztzjy.block_finance.mappers.StuUploadResourceInfoMapper; import com.sztzjy.block_finance.service.StuSendApplyService; +import com.sztzjy.block_finance.util.ResultEntity; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; @Service public class StuSendApplyServiceImpl implements StuSendApplyService { + + + @Autowired + private StuUploadResourceInfoMapper stuUploadResourceInfoMapper; + + + + @Resource + private com.sztzjy.block_finance.util.file.IFileUtil IFileUtil; + + /** + * 关联数字债权凭证上传 + * @param file + * @param userId + * @return + */ + + @Override + public void uploadDebt(MultipartFile file, String userId,String fileName) { + + + String originalFilename = file.getOriginalFilename(); + if (originalFilename == null && !originalFilename.toLowerCase().endsWith(".pdf")) { + return; + } + + + String url = IFileUtil.upload(file); + + + StuUploadResourceInfoExample example = new StuUploadResourceInfoExample(); + example.createCriteria().andUserIdEqualTo(userId); + List uploadResourceInfoList = stuUploadResourceInfoMapper.selectByExample(example); + if (!uploadResourceInfoList.isEmpty()) + { + + uploadResourceInfoList.get(0).setFileUrl(url); + uploadResourceInfoList.get(0).setFileName(originalFilename); + uploadResourceInfoList.get(0).setUpdateTime(new Date()); + uploadResourceInfoList.get(0).setFileSize(String.valueOf(file.getSize())); + stuUploadResourceInfoMapper.updateByPrimaryKeySelective(uploadResourceInfoList.get(0)); + + }else { + + StuUploadResourceInfo resourceInfo = new StuUploadResourceInfo(); + resourceInfo.setId(IdUtil.simpleUUID()); + resourceInfo.setCreateTime(new Date()); + resourceInfo.setFileName(originalFilename); + resourceInfo.setFileSize(String.valueOf(file.getSize())); + resourceInfo.setModule(fileName); + resourceInfo.setFileType("pdf"); + resourceInfo.setFileUrl(url); + + stuUploadResourceInfoMapper.insertSelective(resourceInfo); + + } + + + + + + + } }