From 5d91a329768a2a86e01e4b9b6bc6a2b939b87adb Mon Sep 17 00:00:00 2001
From: fei <791364011@qq.com>
Date: 星期五, 16 一月 2026 22:48:51 +0800
Subject: [PATCH] 修改了对应代码
---
archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java | 178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 174 insertions(+), 4 deletions(-)
diff --git a/archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java b/archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java
index 089753a..57a32ab 100644
--- a/archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java
+++ b/archiveManager/src/main/java/com/ruoyi/service/impl/DocumentMaterialsServiceImpl.java
@@ -129,6 +129,8 @@
// 鍏朵粬琛岋細鐩存帴浣跨敤pageNumber鐨勫��
item.setPageNumberFormatted(pageNumber != null ? pageNumber.toString() : "");
}
+ if(item.getSecurityLevel().equals("璇ラ〉鍙﹀瓨"))
+ item.setSecurityLevel("鏅��");
}
return beanRecords;
}
@@ -136,7 +138,17 @@
@Override
public List<DocumentMaterialsVoLarge> selectDocumentMaterialsAllByRecordId(Long id) {
- return this.baseMapper.getDocumentMaterialsvoLarge(Math.toIntExact(id));
+ List<DocumentMaterialsVoLarge> lists = this.baseMapper.getDocumentMaterialsvoLarge(Math.toIntExact(id));
+ // 閬嶅巻鎵�鏈夋潯鐩紝璁剧疆pageNumberFormatted
+ for (int i = 0; i < lists.size(); i++) {
+ DocumentMaterialsVoLarge item = lists.get(i);
+ Long pageNumber = item.getPageNumber();
+
+
+ if(item.getSecurityLevel().equals("璇ラ〉鍙﹀瓨"))
+ item.setSecurityLevel("鏅��");
+ }
+ return lists;
}
@Override
@@ -187,6 +199,15 @@
}
List<DocumentMaterials> beanRecords = list(lambdaQueryWrapper);
+ // 閬嶅巻鎵�鏈夋潯鐩紝璁剧疆pageNumberFormatted
+ for (int i = 0; i < beanRecords.size(); i++) {
+ DocumentMaterials item = beanRecords.get(i);
+ Long pageNumber = item.getPageNumber();
+
+
+ if(item.getSecurityLevel().equals("璇ラ〉鍙﹀瓨"))
+ item.setSecurityLevel("鏅��");
+ }
return beanRecords;
}
@@ -281,12 +302,13 @@
}
@Override
- public List<DocumentMaterialsVo> findArchMInfo(String recordId) {
+ public List<DocumentMaterialsVo> findArchMInfo(String recordId, long pageCount) {
// 鑾峰彇鍘熷鏁版嵁鍒楄〃
List<DocumentMaterialsVo> dataList = this.baseMapper.getArchiveMatInfo(Integer.parseInt(recordId));
// 鑾峰彇璇ユ鍗风殑鏈�澶ч〉鍙凤紙鎬婚〉鏁帮級
- Long totalPages = this.baseMapper.getMaxPageNumber(Integer.parseInt(recordId));
+ Long totalPages = (long) pageCount;
+ //this.baseMapper.getMaxPageNumber(Integer.parseInt(recordId));
// 濡傛灉鏁版嵁鍒楄〃涓嶄负绌�
if (dataList != null && !dataList.isEmpty() && totalPages != null) {
@@ -307,6 +329,37 @@
}
}
+ return dataList;
+ }
+
+ @Override
+ public List<DocumentMaterialsVoMid> findArchMInfoAll(String recordId, long pageCount) {
+ // 鑾峰彇鍘熷鏁版嵁鍒楄〃
+ List<DocumentMaterialsVoMid> dataList = this.baseMapper.getArchiveMatInfoAll(Integer.parseInt(recordId));
+
+ // 鑾峰彇璇ユ鍗风殑鏈�澶ч〉鍙凤紙鎬婚〉鏁帮級
+ Long totalPages = (long) pageCount;
+ //this.baseMapper.getMaxPageNumber(Integer.parseInt(recordId));
+
+ // 濡傛灉鏁版嵁鍒楄〃涓嶄负绌�
+ if (dataList != null && !dataList.isEmpty() && totalPages != null) {
+ int size = dataList.size();
+
+ // 閬嶅巻鎵�鏈夋潯鐩紝璁剧疆pageNumberFormatted
+ for (int i = 0; i < size; i++) {
+ DocumentMaterialsVoMid item = dataList.get(i);
+ Long pageNumber = item.getPageNumber();
+
+ if (i == size - 1) {
+ // 鏈�鍚庝竴琛岋細鏍煎紡鍖栭〉鍙蜂负"鏈�鍚庝竴椤甸〉鍙�-鎬婚〉鏁�"鐨勫舰寮�
+ item.setPageNumberFormatted(pageNumber + "-" + totalPages);
+ } else {
+ // 鍏朵粬琛岋細鐩存帴浣跨敤pageNumber鐨勫��
+ item.setPageNumberFormatted(pageNumber != null ? pageNumber.toString() : "");
+ }
+ }
+ }
+
return dataList;
}
@@ -359,6 +412,16 @@
if (StringUtils.isEmpty(documentMaterials.getIsCanceled())) {
throw new ErrorcodeExceptionextends(400, "鏄惁娉ㄩ攢涓嶈兘涓虹┖");
}
+ // 鎵嬪姩杞崲瀵嗙骇瀛楁
+// if ("绉樺瘑".equals(documentMaterials.getSecurityLevel())) {
+// documentMaterials.setSecurityLevel("璇ラ〉鍙﹀瓨");
+// }
+// if ("鍐呴儴鐢ㄥ浘".equals(documentMaterials.getSecurityLevel())) {
+// documentMaterials.setSecurityLevel("璇ラ〉鍙﹀瓨");
+// }
+// if ("鍐呴儴鐢ㄩ��".equals(documentMaterials.getSecurityLevel())) {
+// documentMaterials.setSecurityLevel("璇ラ〉鍙﹀瓨");
+// }
this.insertDocumentMaterials(documentMaterials);
}
@@ -385,7 +448,114 @@
public int getFileCount(Integer recordId) {
return this.baseMapper.getCount(recordId);
}
-
+
+ public List<DocumentMaterials> SelectAllRecordsByPageNumbersToList(Long recordId, Long maxPageNumber) {
+ // 鑾峰彇鎸囧畾recordId涓嬬殑鎵�鏈夎褰曪紝鎸夐〉鍙峰崌搴忔帓鍒�
+ LambdaQueryWrapper<DocumentMaterials> lqw = new LambdaQueryWrapper<>();
+ lqw.eq(DocumentMaterials::getRecordId, recordId);
+ lqw.ne(DocumentMaterials::getFileStyle, "鍏朵粬鏉愭枡");
+ lqw.orderByAsc(DocumentMaterials::getPageNumber);
+ List<DocumentMaterials> records = this.list(lqw);
+
+ if (records == null || records.isEmpty()) {
+ // return AjaxResult.success("娌℃湁鎵惧埌鎸囧畾璁板綍");
+ return null;
+ }
+
+ List<DocumentMaterials> middleRecords = new ArrayList<>();
+ int startFileNumber = 1;
+ // 閬嶅巻璁板綍锛屾壘鍑洪渶瑕佹坊鍔犱腑闂撮〉鍙风殑浣嶇疆
+ for (int i = 0; i < records.size() - 1; i++) {
+ // startFileNumber = 1;
+ int pageOrderNumber = 1;
+ DocumentMaterials currentRecord = records.get(i);
+ DocumentMaterials nextRecord = records.get(i + 1);
+ currentRecord.setFileNumber((long) startFileNumber);
+ currentRecord.setPageOrder((long) pageOrderNumber++);
+ middleRecords.add(currentRecord);
+ long currentPage = currentRecord.getPageNumber();
+ long nextPage = nextRecord.getPageNumber();
+
+ // 濡傛灉褰撳墠椤靛彿鍜屼笅涓�椤靛彿涔嬮棿鏈夐棿闅�
+ if (nextPage - currentPage > 1) {
+ // 娣诲姞涓棿椤靛彿鐨勮褰曪紝淇℃伅涓庡綋鍓嶈褰曚繚鎸佷竴鑷�
+ for (long page = currentPage + 1; page < nextPage; page++) {
+ DocumentMaterials newRecord = new DocumentMaterials();
+ // 澶嶅埗褰撳墠璁板綍鐨勬墍鏈夊睘鎬�
+ BeanUtils.copyBeanProp(newRecord, currentRecord);
+ // 璁剧疆鏂扮殑椤靛彿
+ newRecord.setPageNumber(page);
+ // 娓呴櫎ID锛岀‘淇濇槸鏂拌褰�
+ newRecord.setMaterialId(null);
+ // 璁剧疆鍒涘缓鏃堕棿
+ newRecord.setCreatedAt(new Date());
+ // 閲嶇疆鏂囦欢鏉愭枡搴忓彿涓簄ull锛岃绯荤粺鑷姩鐢熸垚
+ newRecord.setFileNumber((long) startFileNumber);
+ // 閲嶇疆椤垫涓簄ull锛岃绯荤粺鑷姩鐢熸垚
+ newRecord.setPageOrder((long) pageOrderNumber++);
+ // 閲嶇疆鍥惧儚鐩稿叧瀛楁锛屼互渚夸笂浼犳枃浠舵椂鏇存柊
+ newRecord.setSizeType(null);
+ newRecord.setWidth(null);
+ newRecord.setHeight(null);
+ newRecord.setHorizontalResolution(null);
+ newRecord.setVerticalResolution(null);
+ newRecord.setFileSize(null);
+ newRecord.setFormat(null);
+ newRecord.setUrl(null);
+ //涓嶅湪鍓嶇鏄剧ず
+ newRecord.setVisible(0);
+ // 娣诲姞鍒颁腑闂磋褰曞垪琛�
+ middleRecords.add(newRecord);
+ }
+ }
+ //涓嬩竴娆″姞1
+ startFileNumber++;
+ }
+
+ // 澶勭悊鏈�鍚庝竴鏉¤褰曞埌maxPageNumber涔嬮棿鐨勯棿闅�
+ // int startLastFileNumber = 1;
+ DocumentMaterials lastRecord = records.get(records.size() - 1);
+ lastRecord.setFileNumber((long) startFileNumber);
+ int lastpageordernumber = 1;
+ lastRecord.setPageOrder((long) lastpageordernumber);
+ long lastPage = lastRecord.getPageNumber();
+ middleRecords.add(lastRecord);
+ if (maxPageNumber > lastPage) {
+ // 娣诲姞浠巐astPage+1鍒癿axPageNumber涔嬮棿鐨勪腑闂磋褰�
+ for (long page = lastPage + 1; page <= maxPageNumber; page++) {
+ DocumentMaterials newRecord = new DocumentMaterials();
+ // 澶嶅埗鏈�鍚庝竴鏉¤褰曠殑鎵�鏈夊睘鎬�
+ BeanUtils.copyBeanProp(newRecord, lastRecord);
+ // 璁剧疆鏂扮殑椤靛彿
+ newRecord.setPageNumber(page);
+ // 娓呴櫎ID锛岀‘淇濇槸鏂拌褰�
+ newRecord.setMaterialId(null);
+ // 璁剧疆鍒涘缓鏃堕棿
+ newRecord.setCreatedAt(new Date());
+ // 閲嶇疆鏂囦欢鏉愭枡搴忓彿涓簄ull锛岃绯荤粺鑷姩鐢熸垚
+ newRecord.setFileNumber((long) startFileNumber);
+ // 閲嶇疆椤垫涓簄ull锛岃绯荤粺鑷姩鐢熸垚
+ newRecord.setPageOrder((long) lastpageordernumber++);
+ // 閲嶇疆鍥惧儚鐩稿叧瀛楁锛屼互渚夸笂浼犳枃浠舵椂鏇存柊
+ newRecord.setSizeType(null);
+ newRecord.setWidth(null);
+ newRecord.setHeight(null);
+ newRecord.setHorizontalResolution(null);
+ newRecord.setVerticalResolution(null);
+ newRecord.setFileSize(null);
+ newRecord.setFormat(null);
+ newRecord.setUrl(null);
+ newRecord.setVisible(0);
+
+ // 娣诲姞鍒颁腑闂磋褰曞垪琛�
+ middleRecords.add(newRecord);
+ }
+ }
+
+ return middleRecords;
+
+ }
+
@Override
public AjaxResult addMiddleRecordsByPageNumbers(Long recordId, Long maxPageNumber) {
try {
--
Gitblit v1.9.1