Эх сурвалжийг харах

Merge remote-tracking branch 'origin/dev' into dev

LHB 1 долоо хоног өмнө
parent
commit
ebd17df729

+ 21 - 3
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java

@@ -210,7 +210,7 @@ public class ArchivesAutoController extends BladeController {
 		String templatePath = "/mnt/sdc/Users/hongchuangyanfa/Desktop/excel/archiveTemplate.xlsx";
 		//String templatePath="C:\\Users\\hc01\\Desktop\\archiveTemplate.xlsx";
 		InputStream templateStream = new FileInputStream(new File(templatePath));
-		org.apache.poi.ss.usermodel.Workbook workbook = WorkbookFactory.create(templateStream);
+		Workbook workbook = WorkbookFactory.create(templateStream);
 		Sheet sheet = workbook.getSheetAt(0);
 
 		// 创建带边框的单元格样式
@@ -632,8 +632,26 @@ public class ArchivesAutoController extends BladeController {
 			return R.fail("请选择多个案卷进行合并");
 		}
 		archivesAutoList.sort(Comparator.comparingInt(a -> {
-			String[] parts = a.getFileNumber().split("_");
-			return Integer.parseInt(parts[parts.length - 1]); // 取最后一个部分作为数字
+			String fileNumber = a.getFileNumber();
+			if (fileNumber == null || fileNumber.isEmpty()) {
+				return Integer.MAX_VALUE;
+			}
+			String[] parts;
+			if (fileNumber.indexOf("_") > 0) {
+				parts = fileNumber.split("_");
+			} else if (fileNumber.indexOf("-") > 0) {
+				parts = fileNumber.split("-");
+			} else {
+				return Integer.MAX_VALUE;
+			}
+			if (parts.length > 0) {
+				try {
+					return Integer.parseInt(parts[parts.length - 1]);
+				} catch (NumberFormatException e) {
+					return Integer.MAX_VALUE;
+				}
+			}
+			return Integer.MAX_VALUE;
 		}));
 		//根据档号后缀排序 拿到第一个
 		ArchivesAuto auto = archivesAutoList.get(0);