From 830c17b5137c930b5e7682ee94868910050af3a5 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期一, 19 一月 2026 10:38:02 +0800
Subject: [PATCH] 增加了签名和注解

---
 archiveManager/src/main/java/com/ruoyi/mapper/ArchiveAnnotationMapper.java                  |   11 +
 archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java                |   71 ++++++
 archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java        |   84 +++++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java |  107 +++++++++
 archiveManager/src/main/java/com/ruoyi/domain/ArchiveSignature.java                         |   72 ++++++
 archiveManager/src/main/java/com/ruoyi/domain/ArchiveAnnotation.java                        |   73 ++++++
 archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java               |   63 +++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java  |  114 ++++++++++
 archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java       |   45 ++++
 archiveManager/src/main/java/com/ruoyi/mapper/ArchiveSignatureMapper.java                   |   12 +
 10 files changed, 652 insertions(+), 0 deletions(-)

diff --git a/archiveManager/src/main/java/com/ruoyi/domain/ArchiveAnnotation.java b/archiveManager/src/main/java/com/ruoyi/domain/ArchiveAnnotation.java
new file mode 100644
index 0000000..6c165a8
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/domain/ArchiveAnnotation.java
@@ -0,0 +1,73 @@
+package com.ruoyi.domain;
+
+
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.util.Date;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆戝璞� archive_annotation
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+@Data
+public class ArchiveAnnotation extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+    private Long id;
+
+    /** 娉ㄨВ鍚嶇О */
+    @Excel(name = "娉ㄨВ鍚嶇О")
+    private String name;
+
+    /** 鎺掑簭瀛楁 */
+    @Excel(name = "鎺掑簭瀛楁")
+    private Long srt;
+    private Date createTime;
+
+    public void setId(Long id)
+    {
+        this.id = id;
+    }
+
+    public Long getId()
+    {
+        return id;
+    }
+
+    public void setName(String name)
+    {
+        this.name = name;
+    }
+
+    public String getName()
+    {
+        return name;
+    }
+
+    public void setSrt(Long srt)
+    {
+        this.srt = srt;
+    }
+
+    public Long getSrt()
+    {
+        return srt;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("name", getName())
+                .append("srt", getSrt())
+                .toString();
+    }
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/domain/ArchiveSignature.java b/archiveManager/src/main/java/com/ruoyi/domain/ArchiveSignature.java
new file mode 100644
index 0000000..df94b29
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/domain/ArchiveSignature.java
@@ -0,0 +1,72 @@
+package com.ruoyi.domain;
+
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.util.Date;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆戝璞� archive_signature
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+@Data
+public class ArchiveSignature extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** $column.columnComment */
+    private Long id;
+
+    /** 绛惧悕鍚嶇О */
+    @Excel(name = "绛惧悕鍚嶇О")
+    private String sigaName;
+
+    /** 鎺掑簭瀛楁 */
+    @Excel(name = "鎺掑簭瀛楁")
+    private Long sot;
+    private Date createTime;
+
+    public void setId(Long id)
+    {
+        this.id = id;
+    }
+
+    public Long getId()
+    {
+        return id;
+    }
+
+    public void setSigaName(String sigaName)
+    {
+        this.sigaName = sigaName;
+    }
+
+    public String getSigaName()
+    {
+        return sigaName;
+    }
+
+    public void setSot(Long sot)
+    {
+        this.sot = sot;
+    }
+
+    public Long getSot()
+    {
+        return sot;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("sigaName", getSigaName())
+                .append("sot", getSot())
+                .toString();
+    }
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveAnnotationMapper.java b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveAnnotationMapper.java
new file mode 100644
index 0000000..a66c307
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveAnnotationMapper.java
@@ -0,0 +1,11 @@
+package com.ruoyi.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.domain.ArchiveAnnotation;
+import com.ruoyi.domain.DocumentMaterials;
+import lombok.Data;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ArchiveAnnotationMapper  extends BaseMapper<ArchiveAnnotation> {
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveSignatureMapper.java b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveSignatureMapper.java
new file mode 100644
index 0000000..4f50467
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveSignatureMapper.java
@@ -0,0 +1,12 @@
+package com.ruoyi.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.domain.ArchiveCategory;
+import com.ruoyi.domain.ArchiveSignature;
+import org.apache.ibatis.annotations.Mapper;
+
+import javax.annotation.ManagedBean;
+
+@Mapper
+public interface ArchiveSignatureMapper  extends BaseMapper<ArchiveSignature> {
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java b/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java
new file mode 100644
index 0000000..1ad4c54
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/service/IArchiveAnnotationService.java
@@ -0,0 +1,63 @@
+package com.ruoyi.service;
+
+
+import com.ruoyi.domain.ArchiveAnnotation;
+
+import java.util.List;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆慡ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+public interface IArchiveAnnotationService
+{
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param id 銆愯濉啓鍔熻兘鍚嶇О銆戜富閿�
+     * @return 銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    public ArchiveAnnotation selectArchiveAnnotationById(Long id);
+
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     *
+     * @param archiveAnnotation 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 銆愯濉啓鍔熻兘鍚嶇О銆戦泦鍚�
+     */
+    public List<ArchiveAnnotation> selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation);
+
+    /**
+     * 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param archiveAnnotation 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 缁撴灉
+     */
+    public int insertArchiveAnnotation(ArchiveAnnotation archiveAnnotation);
+
+    /**
+     * 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param archiveAnnotation 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 缁撴灉
+     */
+    public int updateArchiveAnnotation(ArchiveAnnotation archiveAnnotation);
+
+    /**
+     * 鎵归噺鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑銆愯濉啓鍔熻兘鍚嶇О銆戜富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deleteArchiveAnnotationByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆戜俊鎭�
+     *
+     * @param id 銆愯濉啓鍔熻兘鍚嶇О銆戜富閿�
+     * @return 缁撴灉
+     */
+    public int deleteArchiveAnnotationById(Long id);
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java b/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java
new file mode 100644
index 0000000..315f92b
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/service/IArchiveSignatureService.java
@@ -0,0 +1,71 @@
+package com.ruoyi.service;
+
+
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.domain.ArchiveRecords;
+import com.ruoyi.domain.ArchiveSignature;
+
+import java.util.List;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆慡ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+public interface IArchiveSignatureService
+{
+
+
+
+
+    AjaxResult selectDataList(ArchiveSignature archiveSignature, Integer pageNum, Integer pageSize);
+
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param id 銆愯濉啓鍔熻兘鍚嶇О銆戜富閿�
+     * @return 銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    public ArchiveSignature selectArchiveSignatureById(Long id);
+
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     *
+     * @param archiveSignature 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 銆愯濉啓鍔熻兘鍚嶇О銆戦泦鍚�
+     */
+    public List<ArchiveSignature> selectArchiveSignatureList(ArchiveSignature archiveSignature);
+
+    /**
+     * 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param archiveSignature 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 缁撴灉
+     */
+    public int insertArchiveSignature(ArchiveSignature archiveSignature);
+
+    /**
+     * 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param archiveSignature 銆愯濉啓鍔熻兘鍚嶇О銆�
+     * @return 缁撴灉
+     */
+    public int updateArchiveSignature(ArchiveSignature archiveSignature);
+
+    /**
+     * 鎵归噺鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑銆愯濉啓鍔熻兘鍚嶇О銆戜富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deleteArchiveSignatureByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆戜俊鎭�
+     *
+     * @param id 銆愯濉啓鍔熻兘鍚嶇О銆戜富閿�
+     * @return 缁撴灉
+     */
+    public int deleteArchiveSignatureById(Long id);
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
new file mode 100644
index 0000000..b8b8794
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
@@ -0,0 +1,45 @@
+package com.ruoyi.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.domain.ArchiveAnnotation;
+import com.ruoyi.domain.ArchiveCategory;
+import com.ruoyi.mapper.ArchiveAnnotationMapper;
+import com.ruoyi.mapper.ArchiveCategoryMapper;
+import com.ruoyi.service.IArchiveAnnotationService;
+import com.ruoyi.service.IArchiveCategoryService;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+@Service
+public class ArchiveAnnotationServiceImpl  extends ServiceImpl<ArchiveAnnotationMapper, ArchiveAnnotation> implements IArchiveAnnotationService {
+    @Override
+    public ArchiveAnnotation selectArchiveAnnotationById(Long id) {
+        return null;
+    }
+
+    @Override
+    public List<ArchiveAnnotation> selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation) {
+        return Collections.emptyList();
+    }
+
+    @Override
+    public int insertArchiveAnnotation(ArchiveAnnotation archiveAnnotation) {
+        return 0;
+    }
+
+    @Override
+    public int updateArchiveAnnotation(ArchiveAnnotation archiveAnnotation) {
+        return 0;
+    }
+
+    @Override
+    public int deleteArchiveAnnotationByIds(Long[] ids) {
+        return 0;
+    }
+
+    @Override
+    public int deleteArchiveAnnotationById(Long id) {
+        return 0;
+    }
+}
diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
new file mode 100644
index 0000000..e326d78
--- /dev/null
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveSignatureServiceImpl.java
@@ -0,0 +1,84 @@
+package com.ruoyi.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.MapUtils;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.domain.ArchiveCategory;
+import com.ruoyi.domain.ArchiveSignature;
+import com.ruoyi.domain.Archiverecordstouser;
+import com.ruoyi.mapper.ArchiveSignatureMapper;
+import com.ruoyi.mapper.ArchiverecordstouserMapper;
+import com.ruoyi.service.IArchiveSignatureService;
+import com.ruoyi.service.IArchiverecordstouserService;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+@Service
+public class ArchiveSignatureServiceImpl extends ServiceImpl<ArchiveSignatureMapper, ArchiveSignature> implements IArchiveSignatureService {
+
+
+    private LambdaQueryWrapper<ArchiveSignature> buildCondition(ArchiveSignature archiveSignature){
+        LambdaQueryWrapper<ArchiveSignature> lqw = new LambdaQueryWrapper<>();
+        lqw.like(!StringUtils.isEmpty(archiveSignature.getSigaName()), ArchiveSignature::getSigaName, archiveSignature.getSigaName());
+
+        lqw.orderByDesc(ArchiveSignature::getCreateTime);
+        System.out.println("ssssssssssssddd0000000000000000");
+        return lqw;
+
+    }
+
+    @Override
+    public AjaxResult selectDataList(ArchiveSignature archiveSignature, Integer pageNum, Integer pageSize) {
+        LambdaQueryWrapper<ArchiveSignature> lqw = buildCondition(archiveSignature);
+
+
+        Page<ArchiveSignature> archiveSignaturePage = new Page<>(pageNum, pageSize);
+        Page<ArchiveSignature> pageResult = page(archiveSignaturePage, lqw);
+
+        List<ArchiveSignature> beanRecords = pageResult.getRecords();//寰楀埌鏌ヨ鍑烘潵鐨勬暟鎹�
+
+
+
+        //  List<ArchiveRecords> beanRecords = list(lqw);
+        //   log.info("浠庢暟鎹簱涓煡鍒扮殑涓�:{}", beanRecords);
+        //    return markOwnData(familyId, fatherFaId, motherFaId, beanRecords);
+        HashMap<String, Object> data = MapUtils.getResult(pageResult, beanRecords);
+
+
+        return AjaxResult.success(data);      }
+
+    @Override
+    public ArchiveSignature selectArchiveSignatureById(Long id) {
+        return null;
+    }
+
+    @Override
+    public List<ArchiveSignature> selectArchiveSignatureList(ArchiveSignature archiveSignature) {
+        return Collections.emptyList();
+    }
+
+    @Override
+    public int insertArchiveSignature(ArchiveSignature archiveSignature) {
+        return 0;
+    }
+
+    @Override
+    public int updateArchiveSignature(ArchiveSignature archiveSignature) {
+        return 0;
+    }
+
+    @Override
+    public int deleteArchiveSignatureByIds(Long[] ids) {
+        return 0;
+    }
+
+    @Override
+    public int deleteArchiveSignatureById(Long id) {
+        return 0;
+    }
+}
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
new file mode 100644
index 0000000..21fca5f
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveAnnotationController.java
@@ -0,0 +1,107 @@
+package com.ruoyi.web.controller.archive;
+
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.domain.ArchiveAnnotation;
+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 com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆慍ontroller
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+@RestController
+@RequestMapping("/system/annotation")
+public class ArchiveAnnotationController extends BaseController
+{
+    @Autowired
+    private IArchiveAnnotationService archiveAnnotationService;
+
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(ArchiveAnnotation archiveAnnotation)
+    {
+        startPage();
+        List<ArchiveAnnotation> list = archiveAnnotationService.selectArchiveAnnotationList(archiveAnnotation);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:export')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ArchiveAnnotation archiveAnnotation)
+    {
+        List<ArchiveAnnotation> list = archiveAnnotationService.selectArchiveAnnotationList(archiveAnnotation);
+        ExcelUtil<ArchiveAnnotation> util = new ExcelUtil<ArchiveAnnotation>(ArchiveAnnotation.class);
+        util.exportExcel(response, list, "銆愯濉啓鍔熻兘鍚嶇О銆戞暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇銆愯濉啓鍔熻兘鍚嶇О銆戣缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(archiveAnnotationService.selectArchiveAnnotationById(id));
+    }
+
+    /**
+     * 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:add')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ArchiveAnnotation archiveAnnotation)
+    {
+        return toAjax(archiveAnnotationService.insertArchiveAnnotation(archiveAnnotation));
+    }
+
+    /**
+     * 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:edit')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ArchiveAnnotation archiveAnnotation)
+    {
+        return toAjax(archiveAnnotationService.updateArchiveAnnotation(archiveAnnotation));
+    }
+
+    /**
+     * 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:annotation:remove')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(archiveAnnotationService.deleteArchiveAnnotationByIds(ids));
+    }
+}
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
new file mode 100644
index 0000000..c4f2f81
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/archive/ArchiveSignatureController.java
@@ -0,0 +1,114 @@
+package com.ruoyi.web.controller.archive;
+
+
+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.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 com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+import static com.ruoyi.common.core.page.TableSupport.PAGE_NUM;
+import static com.ruoyi.common.core.page.TableSupport.PAGE_SIZE;
+
+/**
+ * 銆愯濉啓鍔熻兘鍚嶇О銆慍ontroller
+ *
+ * @author ruoyi
+ * @date 2026-01-19
+ */
+@RestController
+@RequestMapping("/system/signature")
+public class ArchiveSignatureController extends BaseController
+{
+    @Autowired
+    private IArchiveSignatureService archiveSignatureService;
+
+    /**
+     * 鏌ヨ銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:list')")
+    @GetMapping("/list")
+    public AjaxResult list(ArchiveSignature archiveSignature)
+    {
+        Integer pageNum = Convert.toInt(ServletUtils.getParameter(PAGE_NUM), 1);
+        Integer pageSize = Convert.toInt(ServletUtils.getParameter(PAGE_SIZE), 10);
+       return archiveSignatureService.selectDataList(archiveSignature, pageNum, pageSize);
+        // return archiveCategoryService.selectDataList(archiveCategory, pageNum, pageSize);
+
+    }
+
+    /**
+     * 瀵煎嚭銆愯濉啓鍔熻兘鍚嶇О銆戝垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:export')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, ArchiveSignature archiveSignature)
+    {
+        List<ArchiveSignature> list = archiveSignatureService.selectArchiveSignatureList(archiveSignature);
+        ExcelUtil<ArchiveSignature> util = new ExcelUtil<ArchiveSignature>(ArchiveSignature.class);
+        util.exportExcel(response, list, "銆愯濉啓鍔熻兘鍚嶇О銆戞暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇銆愯濉啓鍔熻兘鍚嶇О銆戣缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:query')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(archiveSignatureService.selectArchiveSignatureById(id));
+    }
+
+    /**
+     * 鏂板銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:add')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody ArchiveSignature archiveSignature)
+    {
+        return toAjax(archiveSignatureService.insertArchiveSignature(archiveSignature));
+    }
+
+    /**
+     * 淇敼銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:edit')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody ArchiveSignature archiveSignature)
+    {
+        return toAjax(archiveSignatureService.updateArchiveSignature(archiveSignature));
+    }
+
+    /**
+     * 鍒犻櫎銆愯濉啓鍔熻兘鍚嶇О銆�
+     */
+    @PreAuthorize("@ss.hasPermi('system:signature:remove')")
+    @Log(title = "銆愯濉啓鍔熻兘鍚嶇О銆�", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(archiveSignatureService.deleteArchiveSignatureByIds(ids));
+    }
+}

--
Gitblit v1.9.1