tom.xu@informa.com vor 2 Jahren
Ursprung
Commit
04dea3a780

+ 8 - 16
src/main/java/ieven/server/webapp/api/AlipayController.java

@@ -8,9 +8,10 @@ import ieven.server.webapp.domain.data.DataMap;
 import ieven.server.webapp.domain.data.DataService;
 import ieven.server.webapp.domain.data.Fields;
 import ieven.server.webapp.domain.exporter.Exporter;
-import ieven.server.webapp.domain.file.LogicalFile;
+import ieven.server.webapp.domain.model.Model;
 import ieven.server.webapp.infrastructure.wrapper.Mapped;
 import ieven.server.webapp.service.alipay.AlipayService;
+import org.apache.commons.lang3.StringUtils;
 import org.bson.Document;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.mongodb.core.MongoTemplate;
@@ -161,20 +162,6 @@ public class AlipayController {
     } else {
       String filename = input.getFilename();
       String fileId = input.getFileId();
-      Query query =
-          new Query(
-              Criteria.where("modelId")
-                  .is(input.getModelId())
-                  .and("generated")
-                  .is(Boolean.TRUE)
-                  .and("filename")
-                  .in("反诈治安-交易明细", "五联单-账户明细", "财付通-交易明细"));
-      List<LogicalFile> resultList = this.mongoTemplate.find(query, LogicalFile.class);
-      List<String> fileids = new ArrayList<>();
-      for (LogicalFile logicalFile : resultList) {
-        fileids.add(logicalFile.getId());
-      }
-
       Criteria criteria = this.resolveDetailQuery(filename, fileId, null, null);
       if (criteria == null) {
         return Mapped.ERROR("未查询到明细");
@@ -188,7 +175,12 @@ public class AlipayController {
                 .cursor();
         Exporter exporter = new Exporter();
         List<String> fileIds = this.destFileId(fileId);
-        String exportFileId = exporter.export(cursor, fileIds.get(0), null);
+        if (StringUtils.isNotBlank(modelId) && filename == null) {
+          Model model =
+              mongoTemplate.findOne(new Query(Criteria.where("id").is(modelId)), Model.class);
+          filename = model.getModelName();
+        }
+        String exportFileId = exporter.export(cursor, fileIds.get(0), filename);
         Mapped mapped = Mapped.OK();
         mapped.put("result", exportFileId);
         return mapped;

+ 5 - 1
src/main/java/ieven/server/webapp/domain/data/DataService.java

@@ -269,8 +269,12 @@ public class DataService {
             .batchSize(1000)
             .noCursorTimeout(true)
             .cursor();
+
+    LogicalFile logicalFile =
+        mongoTemplate.findOne(
+            new Query(Criteria.where("id").is(param.getFileId())), LogicalFile.class);
     Exporter exporter = new Exporter();
-    String exportFileId = exporter.export(cursor, param.getFileId(), param.getModelId());
+    String exportFileId = exporter.export(cursor, param.getFileId(), logicalFile.getFilename());
     Mapped mapped = Mapped.OK();
     mapped.put("result", exportFileId);
     return mapped;

+ 2 - 15
src/main/java/ieven/server/webapp/domain/exporter/Exporter.java

@@ -2,12 +2,9 @@ package ieven.server.webapp.domain.exporter;
 
 import com.mongodb.client.MongoCursor;
 import ieven.server.webapp.domain.data.Fields;
-import ieven.server.webapp.domain.file.LogicalFile;
-import ieven.server.webapp.domain.model.Model;
 import ieven.server.webapp.infrastructure.SpringContextUtil;
 import ieven.server.webapp.util.DataUtils;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.streaming.SXSSFWorkbook;
 import org.bson.Document;
@@ -35,21 +32,11 @@ public class Exporter {
     this.gridFsTemplate = SpringContextUtil.getBean(GridFsTemplate.class);
   }
 
-  public String export(MongoCursor<Document> cursor, String fileId, String modelId) {
+  public String export(MongoCursor<Document> cursor, String fileId, String filename) {
     Fields fields =
         mongoTemplate.findOne(new Query(Criteria.where("fileId").is(fileId)), Fields.class);
     String date = DataUtils.currentDate().replaceAll(":", "_");
-    String filename = "查询结果" + date + ".xlsx";
-    LogicalFile logicalFile =
-        mongoTemplate.findOne(
-            new Query(Criteria.where("id").is(fields.getFileId())), LogicalFile.class);
-    if (logicalFile != null) {
-      filename = logicalFile.getFilename() + date + ".xlsx";
-    }
-    if (StringUtils.isNotBlank(modelId)) {
-      Model model = mongoTemplate.findOne(new Query(Criteria.where("id").is(modelId)), Model.class);
-      filename = model.getModelName() + date + ".xlsx";
-    }
+    filename = filename + date + ".xlsx";
     /*if (fields == null) {
       return "";
     }*/

+ 0 - 1
src/main/java/ieven/server/webapp/service/Ops.java

@@ -50,7 +50,6 @@ public class Ops {
     List<Fields> checked = new ArrayList<>();
     for (Fields fields : fieldsList) {
       List<String> headers = new ArrayList<>(fields.getFieldsReverse().keySet());
-      System.out.println(headers);
       // 字段完全一样就说明是需要查找的表
       if (headers.containsAll(requireHeaders) && requireHeaders.containsAll(headers)) {
         checked.add(fields);

+ 1 - 3
src/main/resources/props.json

@@ -255,8 +255,6 @@
     "财付通-账户透视": "true",
     "财付通-对手透视": "true",
     "反诈治安-交易明细": "true",
-    "五联单-转账分析": "true",
-    "五联单-账户明细": "true",
-    "财付通-交易明细": "true"
+    "五联单-转账分析": "true"
   }
 }