From 857a2c00d1c1fe388af449badf6c9d67d05c0bd9 Mon Sep 17 00:00:00 2001
From: 许鹏程 <1821349743@qq.com>
Date: 星期一, 17 二月 2025 22:13:34 +0800
Subject: [PATCH] 归档支持自定义文件夹路径(多层级)

---
 src/main/java/com/product/file/service/DocumentDirectoryService.java |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/product/file/service/DocumentDirectoryService.java b/src/main/java/com/product/file/service/DocumentDirectoryService.java
index 41396b5..d0fc329 100644
--- a/src/main/java/com/product/file/service/DocumentDirectoryService.java
+++ b/src/main/java/com/product/file/service/DocumentDirectoryService.java
@@ -124,7 +124,7 @@
 				}
 				fieldInfo = BaseUtil.getSingleInfoByCache("琛ㄥ瓧娈典俊鎭�", new String[]{functionUuid.getString("table_uuid"), fieldName});
 				i++;
-			} while (FieldSetEntity.isEmpty(fieldInfo));
+			} while (!FieldSetEntity.isEmpty(fieldInfo));
 			FieldSetEntity fs = new FieldSetEntity();
 			fs.setTableName(CmnConst.PRODUCT_SYS_DATAMODEL_FIELD);
 			fs.setValue("table_uuid", functionUuid.getString("table_uuid"));
@@ -250,7 +250,7 @@
 		for (int i = 0; i < businessValueField.size(); i++) {
 			sql.append("\tT1." + businessValueField.get(i) + " as val_").append(i).append("\n,");
 		}
-		sql.append("\tT2.uuid,T2.attachment_size,T2.file_name,T3.dict_label file_type\n");
+		sql.append("\tT2.uuid,T2.attachment_size,T2.file_name,T3.dict_label file_type,T4.record_uuid\n");
 		sql.append("FROM\n");
 		sql.append("\t").append(tableInfo.getString(CoreConst.FIELD_TABLE_NAME)).append(" T1\n");
 		sql.append("\tJOIN product_sys_flow_detail T4 ON T1.uuid=T4.record_uuid\n");
@@ -258,9 +258,9 @@
 		sql.append("\tJOIN product_sys_dict T3 ON T2.attachment_type_uuid=T3.uuid\n");
 		sql.append("WHERE\n");
 		sql.append("\tT1.flow_flag =2\n");
-		sql.append("\tAND T1." + archiveFlagField + " =1\n");
+		sql.append("\tAND T1.").append(archiveFlagField).append(" is null or ").append(archiveFlagField).append("!=1\n");
 		sql.append("\tAND T4.table_name='").append(tableInfo.getString(CoreConst.FIELD_TABLE_NAME)).append("'\n");
-		sql.append("\tGROUP BY 1,2,3,4 limit ").append(pageSize);
+		sql.append("\tGROUP BY 1,2,3,4,5 limit ").append(pageSize);
 
 		DataTableEntity files = null;
 		String filing_catalog = fs.getString("filing_catalog");
@@ -306,6 +306,7 @@
 				document.setValue("created_utc_datetime", new Date());
 				document.setValue("file_size", file.getString("attachment_size"));
 				baseDao.saveFieldSetEntity(document);
+				baseDao.executeUpdate(" update " + tableInfo.getString("table_name") + " set " + archiveFlagField + "= '1' where uuid=?", new Object[]{file.getString("record_uuid")});
 			}
 		} while (!DataTableEntity.isEmpty(files));
 

--
Gitblit v1.9.2