From 98e5d1fa0546922b52e81c419235cf8f0923ba2f Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 14 五月 2026 14:36:31 +0800
Subject: [PATCH] feat(seal): 添加用印申请管理的文件上传功能
---
src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java | 22 ++++++++++++++++++++--
src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java | 9 ++++++++-
src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java | 8 ++++++++
3 files changed, 36 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java b/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
index 6a3824d..dc6a64e 100644
--- a/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
+++ b/src/main/java/com/ruoyi/collaborativeApproval/controller/SealApplicationManagementController.java
@@ -2,6 +2,10 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.approve.pojo.KnowledgeBase;
+import com.ruoyi.basic.enums.ApplicationTypeEnum;
+import com.ruoyi.basic.enums.RecordTypeEnum;
+import com.ruoyi.basic.utils.FileUtil;
+import com.ruoyi.collaborativeApproval.dto.SealApplicationManagementDTO;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import com.ruoyi.collaborativeApproval.service.SealApplicationManagementService;
import com.ruoyi.common.utils.SecurityUtils;
@@ -27,6 +31,7 @@
public class SealApplicationManagementController {
private SealApplicationManagementService sealApplicationManagementService;
private ISysNoticeService sysNoticeService;
+ private FileUtil fileUtil;
@GetMapping("/getList")
@Operation(summary = "鍒嗛〉鏌ヨ")
@@ -36,8 +41,13 @@
@PostMapping("/add")
@Operation(summary = "鏂板")
- public AjaxResult add(@RequestBody SealApplicationManagement sealApplicationManagement){
+ public AjaxResult add(@RequestBody SealApplicationManagementDTO sealApplicationManagement){
sealApplicationManagementService.save(sealApplicationManagement);
+ // 5. 淇濆瓨閿�鍞彴璐﹂檮浠�
+ fileUtil.saveStorageAttachment(ApplicationTypeEnum.FILE,
+ RecordTypeEnum.SEAL_APPLICATION_MANAGEMENT,
+ sealApplicationManagement.getId(),
+ sealApplicationManagement.getStorageBlobDTOs());
//娑堟伅閫氱煡
sysNoticeService.simpleNoticeByUser("鐢ㄥ嵃瀹℃壒",
"鐢宠缂栧彿锛�"+sealApplicationManagement.getApplicationNum()+"\t"
@@ -49,7 +59,12 @@
@PostMapping("/update")
@Operation(summary = "淇敼")
- public AjaxResult update(@RequestBody SealApplicationManagement sealApplicationManagement){
+ public AjaxResult update(@RequestBody SealApplicationManagementDTO sealApplicationManagement){
+ // 5. 淇濆瓨閿�鍞彴璐﹂檮浠�
+ fileUtil.saveStorageAttachment(ApplicationTypeEnum.FILE,
+ RecordTypeEnum.SEAL_APPLICATION_MANAGEMENT,
+ sealApplicationManagement.getId(),
+ sealApplicationManagement.getStorageBlobDTOs());
return AjaxResult.success(sealApplicationManagementService.updateById(sealApplicationManagement));
}
@@ -59,6 +74,9 @@
if (CollectionUtils.isEmpty(ids)) {
throw new RuntimeException("璇蜂紶鍏ヨ鍒犻櫎鐨処D");
}
+ fileUtil.deleteStorageAttachmentsByApplicationAndRecordTypeAndRecordIds(ApplicationTypeEnum.FILE,
+ RecordTypeEnum.SEAL_APPLICATION_MANAGEMENT,
+ ids);
return AjaxResult.success(sealApplicationManagementService.removeBatchByIds(ids));
}
diff --git a/src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java b/src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java
index 8dc8454..7757490 100644
--- a/src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java
+++ b/src/main/java/com/ruoyi/collaborativeApproval/dto/SealApplicationManagementDTO.java
@@ -1,7 +1,11 @@
package com.ruoyi.collaborativeApproval.dto;
+import com.ruoyi.basic.dto.StorageBlobDTO;
+import com.ruoyi.basic.dto.StorageBlobVO;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
import lombok.Data;
+
+import java.util.List;
@Data
public class SealApplicationManagementDTO extends SealApplicationManagement {
@@ -11,4 +15,8 @@
//瀹℃壒浜�
private String approveUserName;
+
+ private List<StorageBlobDTO> storageBlobDTOs;
+ private List<StorageBlobVO> storageBlobVOList;
+
}
diff --git a/src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java b/src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java
index d63f2d2..ba20ae2 100644
--- a/src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java
+++ b/src/main/java/com/ruoyi/collaborativeApproval/service/impl/SealApplicationManagementServiceImpl.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.basic.enums.RecordTypeEnum;
+import com.ruoyi.basic.utils.FileUtil;
import com.ruoyi.collaborativeApproval.dto.SealApplicationManagementDTO;
import com.ruoyi.collaborativeApproval.mapper.SealApplicationManagementMapper;
import com.ruoyi.collaborativeApproval.pojo.SealApplicationManagement;
@@ -14,9 +16,14 @@
@RequiredArgsConstructor
public class SealApplicationManagementServiceImpl extends ServiceImpl<SealApplicationManagementMapper, SealApplicationManagement> implements SealApplicationManagementService {
private final SealApplicationManagementMapper sealApplicationManagementMapper;
+ private final FileUtil fileUtil;
@Override
public IPage<SealApplicationManagementDTO> listPage(Page page, SealApplicationManagement sealApplicationManagement) {
- return sealApplicationManagementMapper.listPage(page, sealApplicationManagement);
+ IPage<SealApplicationManagementDTO> sealApplicationManagementDTOIPage = sealApplicationManagementMapper.listPage(page, sealApplicationManagement);
+ sealApplicationManagementDTOIPage.getRecords().forEach(item -> {
+ item.setStorageBlobVOList(fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.SEAL_APPLICATION_MANAGEMENT, item.getId()));
+ });
+ return sealApplicationManagementDTOIPage;
}
}
--
Gitblit v1.9.3