From cb703ae5b5afdd4a7d614a948ee4d4c457b77185 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期三, 21 一月 2026 09:07:42 +0800
Subject: [PATCH] 增加了签名和注解接口

---
 archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java                |    7 +
 archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java        |   45 +++++++++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java |   42 +++++++---
 archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java               |    7 +
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java  |   40 +++++++--
 archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java       |   47 +++++++++++
 6 files changed, 161 insertions(+), 27 deletions(-)

diff --git a/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java b/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java
index 949cfc4..d780e43 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java
@@ -3,6 +3,9 @@
 
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.domain.ArchiveAnnotation;
+import com.ruoyi.domain.ArchiveRecords;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 
@@ -21,7 +24,9 @@
      * @return 銆愯濉啓鍔熻兘鍚嶇О銆�
      */
     public ArchiveAnnotation selectArchiveAnnotationById(Long id);
-
+    public List<ArchiveAnnotation> selectArchiveRecordsByIds(Long[] ids);
+    @Transactional
+    public AjaxResult importExcel(MultipartFile file) ;
     /**
      * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
      *
diff --git a/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java b/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java
index 315f92b..eef3412 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java
@@ -2,8 +2,11 @@
 
 
 import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.domain.ArchiveAnnotation;
 import com.ruoyi.domain.ArchiveRecords;
 import com.ruoyi.domain.ArchiveSignature;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.util.List;
 
@@ -28,7 +31,8 @@
      * @return 銆愯濉啓鍔熻兘鍚嶇О銆�
      */
     public ArchiveSignature selectArchiveSignatureById(Long id);
-
+    @Transactional
+    public AjaxResult importExcel(MultipartFile file) ;
     /**
      * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
      *
@@ -36,6 +40,7 @@
      * @return 銆愯濉啓鍔熻兘鍚嶇О銆戦泦鍚�
      */
     public List<ArchiveSignature> selectArchiveSignatureList(ArchiveSignature archiveSignature);
+    public List<ArchiveSignature> selectArchiveSignatureByIds(Long[] ids);
 
     /**
      * 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
index 6c3ea39..0507b09 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
@@ -7,12 +7,16 @@
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.MapUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.domain.ArchiveAnnotation;
+import com.ruoyi.domain.ArchivePlaceName;
+import com.ruoyi.domain.ArchiveRecords;
 import com.ruoyi.domain.ArchiveSignature;
 import com.ruoyi.mapper.ArchiveAnnotationMapper;
 import com.ruoyi.service.IArchiveAnnotationService;
 import com.ruoyi.util.ErrorcodeExceptionextends;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.time.LocalDateTime;
 import java.time.ZoneId;
@@ -41,6 +45,44 @@
     }
 
     @Override
+    public List<ArchiveAnnotation> selectArchiveRecordsByIds(Long[] ids) {
+
+        // 鍒涘缓鏌ヨ鏉′欢
+        LambdaQueryWrapper<ArchiveAnnotation> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+        // 鏍规嵁ids鏌ヨ
+        lambdaQueryWrapper.in(ArchiveAnnotation::getId, Arrays.asList(ids));
+
+        // 濡傛灉涓嶆槸绠$悊鍛橈紝闇�瑕佽�冭檻鏉冮檺杩囨护锛堝彲鏍规嵁瀹為檯鏉冮檺闇�姹傝皟鏁达級
+//        if (userid != 1) {
+//            // 杩欓噷鍙互娣诲姞鏉冮檺鐩稿叧鐨勮繃婊ゆ潯浠�
+//        }
+
+        List<ArchiveAnnotation> beanRecords = list(lambdaQueryWrapper);
+        return beanRecords;
+    }
+
+    @Override
+    public AjaxResult importExcel(MultipartFile file) {
+        ExcelUtil<ArchiveAnnotation> util = new ExcelUtil<>(ArchiveAnnotation.class);
+        List<ArchiveAnnotation> dataList = null;
+        try {
+            dataList = util.importExcel(file.getInputStream());
+        } catch (Exception e) {
+            throw new RuntimeException("娌℃湁鎸夌収瑙勫垯瀵煎叆鏁版嵁");
+        }
+
+        assert dataList != null;
+
+        for (ArchiveAnnotation archiveAnnotation : dataList) {
+            // physcialService.mySave(physcial);
+            this.insertArchiveAnnotation(archiveAnnotation);
+        }
+
+        return AjaxResult.success();
+    }
+
+    @Override
     public AjaxResult selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation, Integer pageNum, Integer pageSize) {
         LambdaQueryWrapper<ArchiveAnnotation> lqw = buildCondition(archiveAnnotation);
 
@@ -63,7 +105,10 @@
 
     @Override
     public List<ArchiveAnnotation> selectArchiveAnnoList(ArchiveAnnotation archiveAnnotation) {
-        return Collections.emptyList();
+        LambdaQueryWrapper<ArchiveAnnotation> lqw = new LambdaQueryWrapper<>();
+        LambdaQueryWrapper<ArchiveAnnotation> lambdaQueryWrapper = buildCondition(archiveAnnotation);
+        List<ArchiveAnnotation> beanRecords = list(lambdaQueryWrapper);
+        return beanRecords;
     }
 
     @Override
diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
index 9cd91b5..12b0432 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
@@ -7,6 +7,7 @@
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.MapUtils;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.domain.*;
 import com.ruoyi.mapper.ArchiveSignatureMapper;
 import com.ruoyi.mapper.ArchiverecordstouserMapper;
@@ -14,6 +15,7 @@
 import com.ruoyi.service.IArchiverecordstouserService;
 import com.ruoyi.util.ErrorcodeExceptionextends;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import java.time.LocalDateTime;
 import java.time.ZoneId;
@@ -65,8 +67,49 @@
     }
 
     @Override
+    public AjaxResult importExcel(MultipartFile file) {
+        ExcelUtil<ArchiveSignature> util = new ExcelUtil<>(ArchiveSignature.class);
+        List<ArchiveSignature> dataList = null;
+        try {
+            dataList = util.importExcel(file.getInputStream());
+        } catch (Exception e) {
+            throw new RuntimeException("娌℃湁鎸夌収瑙勫垯瀵煎叆鏁版嵁");
+        }
+
+        assert dataList != null;
+
+        for (ArchiveSignature archiveSignature : dataList) {
+            // physcialService.mySave(physcial);
+            this.insertArchiveSignature(archiveSignature);
+        }
+
+        return AjaxResult.success();
+    }
+
+    @Override
     public List<ArchiveSignature> selectArchiveSignatureList(ArchiveSignature archiveSignature) {
-        return Collections.emptyList();
+
+        LambdaQueryWrapper<ArchiveSignature> lqw = new LambdaQueryWrapper<>();
+        LambdaQueryWrapper<ArchiveSignature> lambdaQueryWrapper = buildCondition(archiveSignature);
+        List<ArchiveSignature> beanRecords = list(lambdaQueryWrapper);
+        return beanRecords;
+    }
+
+    @Override
+    public List<ArchiveSignature> selectArchiveSignatureByIds(Long[] ids) {
+        // 鍒涘缓鏌ヨ鏉′欢
+        LambdaQueryWrapper<ArchiveSignature> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+
+        // 鏍规嵁ids鏌ヨ
+        lambdaQueryWrapper.in(ArchiveSignature::getId, Arrays.asList(ids));
+
+        // 濡傛灉涓嶆槸绠$悊鍛橈紝闇�瑕佽�冭檻鏉冮檺杩囨护锛堝彲鏍规嵁瀹為檯鏉冮檺闇�姹傝皟鏁达級
+//        if (userid != 1) {
+//            // 杩欓噷鍙互娣诲姞鏉冮檺鐩稿叧鐨勮繃婊ゆ潯浠�
+//        }
+
+        List<ArchiveSignature> beanRecords = list(lambdaQueryWrapper);
+        return beanRecords;
     }
 
     @Override
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java
index 5c59ae2..02c90a7 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java
@@ -1,23 +1,18 @@
 package com.ruoyi.web.controller.archive;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
 import com.ruoyi.common.core.text.Convert;
 import com.ruoyi.common.utils.ServletUtils;
 import com.ruoyi.domain.ArchiveAnnotation;
+import com.ruoyi.domain.ArchiveSignature;
 import com.ruoyi.service.IArchiveAnnotationService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -25,12 +20,13 @@
 
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
 
 import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM;
 import static com.ruoyi.common.core.page.TableSupport.PAGE_SIZE;
 
 /**
- * 銆愯濉啓鍔熻兘鍚嶇О銆慍ontroller
+ * 銆愭敞閲婄殑鎺ュ彛銆慍ontroller
  *
  * @author ruoyi
  * @date 2026-01-19
@@ -61,13 +57,35 @@
     @PreAuthorize("@ss.hasPermi('system:annotation:export')")
     @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public void export(HttpServletResponse response, ArchiveAnnotation archiveAnnotation)
+    public void export(HttpServletResponse response, ArchiveAnnotation archiveAnnotation, @RequestParam(value = "ids", required = false) Long[] ids)
     {
-        List<ArchiveAnnotation> list = archiveAnnotationService.selectArchiveAnnoList(archiveAnnotation);
+
+
+        List<ArchiveAnnotation> list = new ArrayList<>();
+        // 濡傛灉鎻愪緵浜唅ds鍙傛暟锛屽垯鏍规嵁ids瀵煎嚭鎸囧畾璁板綍
+        if (ids != null && ids.length > 0) {
+            list = archiveAnnotationService.selectArchiveRecordsByIds(ids);
+        } else {
+            // 鍚﹀垯鏍规嵁鏌ヨ鏉′欢瀵煎嚭
+            list = archiveAnnotationService.selectArchiveAnnoList(archiveAnnotation);
+        }
+
         ExcelUtil<ArchiveAnnotation> util = new ExcelUtil<ArchiveAnnotation>(ArchiveAnnotation.class);
         util.exportExcel(response, list, "銆愯濉啓鍔熻兘鍚嶇О銆戞暟鎹�");
     }
-
+    @PreAuthorize("@ss.hasPermi('system:annotation:list')")
+    @GetMapping("/listAll")
+    public AjaxResult selectAllAnnotation(ArchiveAnnotation archiveAnnotation )
+    {
+        List<ArchiveAnnotation> list = archiveAnnotationService.selectArchiveAnnoList(archiveAnnotation);
+        return new AjaxResult(200, "",list);
+    }
+    @PreAuthorize("@ss.hasPermi('system:annotation:edit')")
+    @Log(title = "娉ㄩ噴璁板綍瀵煎叆", businessType = BusinessType.IMPORT)
+    @PostMapping("/importData")
+    public AjaxResult importData(@RequestParam("excelImport") MultipartFile file) throws Exception {
+        return archiveAnnotationService.importExcel(file);
+    }
     /**
      * 鑾峰彇銆愯濉啓鍔熻兘鍚嶇О銆戣缁嗕俊鎭�
      */
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java
index d370152..bc8dec4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java
@@ -1,23 +1,18 @@
 package com.ruoyi.web.controller.archive;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
 import com.ruoyi.common.core.text.Convert;
 import com.ruoyi.common.utils.ServletUtils;
+import com.ruoyi.domain.ArchiveAnnotation;
 import com.ruoyi.domain.ArchiveSignature;
 import com.ruoyi.service.IArchiveSignatureService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
@@ -25,6 +20,7 @@
 
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.common.core.page.TableDataInfo;
+import org.springframework.web.multipart.MultipartFile;
 
 import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM;
 import static com.ruoyi.common.core.page.TableSupport.PAGE_SIZE;
@@ -55,16 +51,38 @@
         // return archiveCategoryService.selectDataList(archiveCategory, pageNum, pageSize);
 
     }
-
+    @PreAuthorize("@ss.hasPermi('system:signature:edit')")
+    @Log(title = "绛惧悕璁板綍瀵煎叆", businessType = BusinessType.IMPORT)
+    @PostMapping("/importData")
+    public AjaxResult importData(@RequestParam("excelImport") MultipartFile file) throws Exception {
+        return archiveSignatureService.importExcel(file);
+    }
+    @PreAuthorize("@ss.hasPermi('system:signature:list')")
+    @GetMapping("/listAll")
+    public AjaxResult selectAllSignature(ArchiveSignature archiveSignature)
+    {
+        List<ArchiveSignature> list = archiveSignatureService.selectArchiveSignatureList(archiveSignature);
+        return new AjaxResult(200, "",list);
+    }
     /**
      * 瀵煎嚭绛惧悕鍒楄〃
      */
     @PreAuthorize("@ss.hasPermi('system:signature:export')")
     @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    public void export(HttpServletResponse response, ArchiveSignature archiveSignature)
+    public void export(HttpServletResponse response, ArchiveSignature archiveSignature, @RequestParam(value = "ids", required = false) Long[] ids)
     {
-        List<ArchiveSignature> list = archiveSignatureService.selectArchiveSignatureList(archiveSignature);
+
+
+        List<ArchiveSignature> list = new ArrayList<>();
+        // 濡傛灉鎻愪緵浜唅ds鍙傛暟锛屽垯鏍规嵁ids瀵煎嚭鎸囧畾璁板綍
+        if (ids != null && ids.length > 0) {
+            list = archiveSignatureService.selectArchiveSignatureByIds(ids);
+        } else {
+            // 鍚﹀垯鏍规嵁鏌ヨ鏉′欢瀵煎嚭
+            list = archiveSignatureService.selectArchiveSignatureList(archiveSignature);
+        }
+
         ExcelUtil<ArchiveSignature> util = new ExcelUtil<ArchiveSignature>(ArchiveSignature.class);
         util.exportExcel(response, list, "銆愯濉啓鍔熻兘鍚嶇О銆戞暟鎹�");
     }

--
Gitblit v1.9.1