From 9b1b0782ecb77d6ee958774da94606478482b063 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期二, 20 一月 2026 22:41:32 +0800
Subject: [PATCH] 增加了签名和注解接口

---
 archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java |  116 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 102 insertions(+), 14 deletions(-)

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 b8b8794..6c3ea39 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/ArchiveAnnotationServiceImpl.java
@@ -1,45 +1,133 @@
 package com.ruoyi.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+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.ArchiveAnnotation;
-import com.ruoyi.domain.ArchiveCategory;
+import com.ruoyi.domain.ArchiveSignature;
 import com.ruoyi.mapper.ArchiveAnnotationMapper;
-import com.ruoyi.mapper.ArchiveCategoryMapper;
 import com.ruoyi.service.IArchiveAnnotationService;
-import com.ruoyi.service.IArchiveCategoryService;
+import com.ruoyi.util.ErrorcodeExceptionextends;
 import org.springframework.stereotype.Service;
 
-import java.util.Collections;
-import java.util.List;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.*;
+
 @Service
-public class ArchiveAnnotationServiceImpl  extends ServiceImpl<ArchiveAnnotationMapper, ArchiveAnnotation> implements IArchiveAnnotationService {
-    @Override
-    public ArchiveAnnotation selectArchiveAnnotationById(Long id) {
-        return null;
+public class ArchiveAnnotationServiceImpl extends ServiceImpl<ArchiveAnnotationMapper, ArchiveAnnotation> implements IArchiveAnnotationService {
+
+    private LambdaQueryWrapper<ArchiveAnnotation> buildCondition(ArchiveAnnotation archiveAnnotation) {
+        LambdaQueryWrapper<ArchiveAnnotation> lqw = new LambdaQueryWrapper<>();
+        lqw.like(!StringUtils.isEmpty(archiveAnnotation.getName()), ArchiveAnnotation::getName, archiveAnnotation.getName());
+        
+        lqw.orderByDesc(ArchiveAnnotation::getSrt);
+        return lqw;
     }
 
     @Override
-    public List<ArchiveAnnotation> selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation) {
+    public ArchiveAnnotation selectArchiveAnnotationById(Long id) {
+        LambdaQueryWrapper<ArchiveAnnotation> lqw = new LambdaQueryWrapper<>();
+        lqw.eq(id != null, ArchiveAnnotation::getId, id);
+        List<ArchiveAnnotation> lists = this.list(lqw);
+        if (!lists.isEmpty())
+            return lists.get(0);
+        else
+            return null;
+    }
+
+    @Override
+    public AjaxResult selectArchiveAnnotationList(ArchiveAnnotation archiveAnnotation, Integer pageNum, Integer pageSize) {
+        LambdaQueryWrapper<ArchiveAnnotation> lqw = buildCondition(archiveAnnotation);
+
+
+        Page<ArchiveAnnotation> archiveSignaturePage = new Page<>(pageNum, pageSize);
+        Page<ArchiveAnnotation> pageResult = page(archiveSignaturePage, lqw);
+
+        List<ArchiveAnnotation> 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 List<ArchiveAnnotation> selectArchiveAnnoList(ArchiveAnnotation archiveAnnotation) {
         return Collections.emptyList();
     }
 
     @Override
     public int insertArchiveAnnotation(ArchiveAnnotation archiveAnnotation) {
-        return 0;
+        LocalDateTime time = LocalDateTime.now();
+        if (archiveAnnotation.getName() == null || StringUtils.isEmpty(archiveAnnotation.getName()))
+            throw new RuntimeException("娉ㄨВ鍚嶇О涓嶈兘涓虹┖锛�");
+        Date date = Date.from(time.atZone(ZoneId.systemDefault()).toInstant());
+        archiveAnnotation.setCreateTime(date);
+        
+        // 鏍规嵁娉ㄨВ鍚嶇О鏌ヨ锛屾槸鍚﹀凡缁忓瓨鍦紝瀛樺湪鐨勮瘽涓嶈鎻掑叆
+        LambdaQueryWrapper<ArchiveAnnotation> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(!StringUtils.isEmpty(archiveAnnotation.getName()), ArchiveAnnotation::getName, 
+                archiveAnnotation.getName());
+        List<ArchiveAnnotation> lis = list(lambdaQueryWrapper);
+        if (!lis.isEmpty()) {
+            return 0;
+        }
+        
+        boolean res = this.save(archiveAnnotation);
+        
+        // 0琛ㄧず澶辫触锛�1琛ㄧず鎴愬姛
+        if (res)
+            return 1;
+        else
+            return 0;
     }
 
     @Override
     public int updateArchiveAnnotation(ArchiveAnnotation archiveAnnotation) {
-        return 0;
+        boolean result = false;
+        try {
+            // 浣跨敤LambdaUpdateWrapper鏋勯�犳洿鏂版潯浠讹紝纭繚null鍊间篃鑳芥洿鏂板埌鏁版嵁搴�
+            LambdaUpdateWrapper<ArchiveAnnotation> updateWrapper = new LambdaUpdateWrapper<>();
+            updateWrapper.eq(ArchiveAnnotation::getId, archiveAnnotation.getId());
+
+            // 鏄庣‘璁剧疆闇�瑕佹洿鏂扮殑瀛楁
+            updateWrapper.set(ArchiveAnnotation::getName, archiveAnnotation.getName());
+            updateWrapper.set(ArchiveAnnotation::getSrt, archiveAnnotation.getSrt());
+            updateWrapper.set(ArchiveAnnotation::getCreateTime, archiveAnnotation.getCreateTime());
+
+            // 鎵ц鏇存柊鎿嶄綔
+            result = update(updateWrapper);
+        } catch (Exception e) {
+            System.out.println(e);
+            throw new ErrorcodeExceptionextends(500, "涓嶅厑璁告敞瑙e悕绉伴噸澶嶏紒");
+        }
+        if (result)
+            return 1;
+        else
+            return 0;
     }
 
     @Override
     public int deleteArchiveAnnotationByIds(Long[] ids) {
-        return 0;
+        if (this.removeByIds(Arrays.asList(ids))) {
+            return 1;
+        } else {
+            return 0;
+        }
     }
 
     @Override
     public int deleteArchiveAnnotationById(Long id) {
-        return 0;
+        return this.baseMapper.deleteById(id);
     }
 }

--
Gitblit v1.9.1