diff --git a/ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveImportServiceImpl.java b/ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveImportServiceImpl.java index 979c5531..844ebc10 100644 --- a/ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveImportServiceImpl.java +++ b/ruoyi-archives/src/main/java/com/ruoyi/archives/service/impl/ArchiveImportServiceImpl.java @@ -78,6 +78,7 @@ public class ArchiveImportServiceImpl implements ArchiveImportService { private RedisTemplate redisTemplate; private static String WS_FILE_NUM_EXAMPLE="^WS[0-9]{4}-\\w+-[0-9]+"; + private static String WS_FILE_NUM_SECOND_EXAMPLE="^D[0-9]{2}-[0-9]{4}+"; private static String WS_HISTORY_NUM_EXAMPLE="^W[0-9]+-[0-9]+"; // private static String DAYJ_FILE_NUM_EXAMPLE="^[0-9]{4}-\\w+-[0-9]+"; private static String JYWJ_FILE_NUM_EXAMPLE="^[0-9]{4}-\\w+-[0-9]+"; @@ -1079,6 +1080,8 @@ public class ArchiveImportServiceImpl implements ArchiveImportService { String fileNum =writArchivesModel.getFileNum().trim(); //校验档号 boolean flag = fileNum.matches(WS_FILE_NUM_EXAMPLE); + boolean secondFlag = fileNum.matches(WS_FILE_NUM_SECOND_EXAMPLE); + flag=(flag||secondFlag); boolean historyFlag = fileNum.matches(WS_HISTORY_NUM_EXAMPLE); if (Boolean.FALSE==flag&&Boolean.FALSE==historyFlag){ throw new RuntimeException("["+file.getOriginalFilename()+"——Sheet:1——行号" + (i + 3) + "]档号不符合标准,请检查后提交"); diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelListener.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelListener.java index 755af3ea..810588c0 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelListener.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/ExcelListener.java @@ -28,12 +28,13 @@ public class ExcelListener extends AnalysisEventListener { for (Field f : object.getClass().getDeclaredFields()) { f.setAccessible(true); if (f.getName().equals("year")) { - String regexp="[0-9]{4}"; + String regexp="([0-9]{4})|([0-9]{4}-[0-9]{4})"; String item=(String)f.get(object); if(item!=null&&!item.matches(regexp)){ throw new Exception("sheet:["+context.readSheetHolder().getSheetName()+"];[行号:"+(context.readRowHolder().getRowIndex()+1)+"]年份格式错误"); } - }else if (f.getName().equals("storageTime")) { + }else + if (f.getName().equals("storageTime")) { String regexp="^[A-Za-z0-9]+"; String item=(String)f.get(object); if(item!=null&&!item.matches(regexp)){