From fcc5194c1b671e76cb9054c9a14360139fe3be72 Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期二, 16 九月 2025 22:23:50 +0800
Subject: [PATCH] 新增了代码

---
 archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java
index 03e96eb..24d108e 100644
--- a/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java
+++ b/archiveManager/src/main/java/com/ruoyi/mapper/ArchiveRecordsMapper.java
@@ -1,9 +1,52 @@
 package com.ruoyi.mapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
 import com.ruoyi.domain.ArchiveRecords;
+import com.ruoyi.domain.vo.AnalysisResult;
+import com.ruoyi.domain.vo.ArchiveInfoVo;
+import com.ruoyi.domain.vo.ArchiveRecordSmall;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+
+import java.util.List;
 
 @Mapper
 public interface ArchiveRecordsMapper extends BaseMapper<ArchiveRecords> {
+
+
+    @Select({
+            "<script>",
+            "SELECT distinct c.*,a.archive_records_id, if(a.user_id=#{userId}, TRUE, FALSE) as tst,b.user_id FROM archiverecordstouser a inner join sys_user b ON a.user_id = b.user_id right join archive_records c on c.record_id=a.archive_records_id ${ew.customSqlSegment} ",
+            "<if test= \"userId !=1 \">",
+            "order by tst desc",
+            "</if>",
+            "</script>"
+    })
+    Page<ArchiveRecords> selectJoinUserPage(Page<ArchiveRecords> page, @Param("userId") Long userId, @Param("ew") LambdaQueryWrapper<ArchiveRecords> queryWrapper);
+
+    @Select("select max(id) from archive_records")
+    Long findMaxId();
+
+    @Select("UPDATE `archivesys`.`archive_records` SET  `inquiry_number` = '', `case_title` = NULL, `public_attribute` = NULL, `preparation_unit` = NULL, `preparation_date` = NULL, `retention_period` = NULL, `security_classification` = NULL, `page_count` = NULL, `filing_number` = NULL, `construction_unit` = NULL, `construction_address` = NULL, `project_name` = '', `project_number` = NULL, `scanning_company` = NULL, `archive_room_number` = NULL, `microfilm_number` = NULL, `remarks` = NULL, `historical_reference_number` = NULL, `record_status` = NULL, `every_project_name` = NULL WHERE `id` = #{id}")
+    Long updateAllInfoById(@Param("id") Long id);
+
+    @Select("select record_id,archive_room_number,microfilm_number,inquiry_number,case_title,preparation_date,preparation_unit,retention_period,security_classification from archive_records where id=#{id}")
+    ArchiveInfoVo findByRecordId(@Param("id") Long id);
+
+    @Select("SELECT every_project_name, count(*) as cnt, (select count(*) from archive_records as ac where ac.every_project_name=ar.every_project_name and record_status='鏈綍鍏�') as unfinished,\n" +
+            "(select count(*) from archive_records as ac where ac.every_project_name=ar.every_project_name and record_status='褰曞叆瀹屾垚') as finished \n" +
+            " from archive_records as ar GROUP BY every_project_name")
+    List<AnalysisResult> statisticAyasis();
+
+
+    @Select("update archive_records set record_status='褰曞叆瀹屾垚' where id=#{id}")
+    public void updateStatusById(@Param("id")Long id);
+
+    @Select("select ROW_NUMBER() OVER (ORDER BY record_id) AS num, filing_number, concat_ws(\" \", inquiry_number,record_id) as inqrid, case_title, public_attribute, (select count(*) as cnt from document_materials where record_id=ar.id) as cnt, remarks from archive_records as ar \n" +
+            "${ew.customSqlSegment}")
+    public List<ArchiveRecordSmall> selectByIds(@Param("ew") LambdaQueryWrapper<ArchiveRecords> queryWrapper);
 }

--
Gitblit v1.9.1