소스 검색

fix:扫描件直接去ai解析

wangzaijun 1 주 전
부모
커밋
ffedbc403d

+ 3 - 3
mo-daq/src/main/java/com/smppw/modaq/application/components/report/parser/pdf/AbstractPDReportParser.java

@@ -68,9 +68,9 @@ public abstract class AbstractPDReportParser<T extends ReportData> extends Abstr
             String text = stripper.getText(document);
             this.textList = StrUtil.split(text, System.lineSeparator());
             this.textList.removeIf(StrUtil::isBlank);
-            if (this.textList.isEmpty()) {
-                throw new ReportParseException(ReportParseStatus.REPORT_IS_SCAN, filename);
-            }
+//            if (this.textList.isEmpty()) {
+//                throw new ReportParseException(ReportParseStatus.REPORT_IS_SCAN, filename);
+//            }
             // 解析所有表格(单元格字符去水印)
             List<Table> tables = ListUtil.list(true);
             SpreadsheetExtractionAlgorithm spreadsheetExtractionAlgorithm = new SpreadsheetExtractionAlgorithm();

+ 2 - 2
mo-daq/src/main/java/com/smppw/modaq/application/components/report/parser/pdf/PDLetterReportParser.java

@@ -40,8 +40,8 @@ public class PDLetterReportParser extends AbstractPDReportParser<LetterReportDat
             int rowCount = table.getRowCount();
             int colCount = table.getColCount();
             // 根据特殊行和列处理字段映射关系
-            if (rowCount == 2 || colCount > 4) {
-                // 表格只有2行或者列数大于4列说明每列是一个字段和值
+            if (rowCount == 2 || colCount > 6) {
+                // 表格只有2行或者列数大于6列说明每列是一个字段和值
                 if (rowCount == 5) {
                     // 表格有5行说明是申万宏源证券的确认单
                     this.parseHisTable(colCount, table, 2, this.allInfoMap);

+ 3 - 0
mo-daq/src/main/java/com/smppw/modaq/infrastructure/util/ExcelUtil.java

@@ -65,6 +65,9 @@ public class ExcelUtil {
                     continue;
                 }
                 String zipFilename = FileUtil.getName(destFilePath);
+                if (name.contains("确认")) {
+                    zipFilename += "_确认单";
+                }
                 String ext = FileUtil.extName(name);
                 name = zipFilename + "_" + i + "." + ext;
                 File entryFile = FileUtil.file(destFilePath, name);