소스 검색

修改问题

hankunkun 10 달 전
부모
커밋
48ef627c2b

+ 36 - 9
src/main/java/ieven/server/webapp/service/datastatic/DataStaticAnalysisTotal.java

@@ -1,5 +1,6 @@
 package ieven.server.webapp.service.datastatic;
 
+import cn.hutool.core.bean.BeanUtil;
 import com.mongodb.client.MongoCursor;
 import ieven.server.webapp.domain.alipay.AlipayHeaders;
 import ieven.server.webapp.domain.alipay.HeaderProperties;
@@ -45,17 +46,19 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
         log.info("数据分析-主体信息汇总开始");
         // 直接删除并创建表
         String newFileId = createLogicAndDeleteOld("数据分析-主体信息汇总", modelId, headerProperties.getStaticUserOutput(), mongoTemplate, fileService);
+        String newFileId1 = createLogicAndDeleteOld("数据分析-主体信息汇总网络关系图", modelId, headerProperties.getStaticUserOutput(), mongoTemplate, fileService);
         String newFileIdAll = "";
         String dateFileId = getFileId("数据分析-主体信息汇总明细", modelId, mongoTemplate);
         String cft = getFileId(TenpayHeaders.getGeneratedName(3), modelId, mongoTemplate);
         String wld = getFileId(AlipayHeaders.getGeneratedName(2), modelId, mongoTemplate);
-        boolean flag=false;
+        boolean cftFlag=false;
+        boolean wldFlag=false;
         // 插入记录用户后续查询明细
         if (StringUtils.isNotBlank(cft)) {
             MongoCursor<Document> cursor = getCursor(cft, mongoTemplate);
             List<DataMap> needToSave = new ArrayList<>(1000);
             Document origin;
-            flag=true;
+            cftFlag=true;
             while (cursor.hasNext()){
                 origin = cursor.next();
                 DataMap dataMap=new DataMap();
@@ -82,7 +85,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
         if (StringUtils.isNotBlank(wld)) {
             MongoCursor<Document> cursor = getCursor(wld, mongoTemplate);
 
-            flag=true;
+            wldFlag=true;
             Document origin;
             List<DataMap> needToSave = new ArrayList<>(1000);
             while (cursor.hasNext()){
@@ -107,6 +110,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
                 saveLines(needToSave, mongoTemplate);
             }
         }
+
         if (StringUtils.isNotBlank(dateFileId)) {
             MongoCursor<Document> cursor = getCursor(dateFileId, mongoTemplate);
             if (cursor.hasNext()) {
@@ -148,7 +152,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
                         dataMap.put("fileId", newFileId);
                         dataMap.put("交易主体账号", alipayId);
                         dataMap.put("交易主体户名", "");
-                        getData(dataMap, origin, dateFileId2,flag);
+                        getData(dataMap, origin, dateFileId2);
                         idToData.put(alipayId, dataMap);
                     }
                     String alipayUsername = origin.getString("交易主体户名");
@@ -172,15 +176,36 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
                     log.error(exception.getMessage(), exception);
                 }
             }
+
+            List<String>ids=new ArrayList<>();
+            ids.add(newFileId);
+            ids.add(newFileId1);
             if (CollectionUtils.isNotEmpty(idToData.values())) {
                 for (Map.Entry<String, DataMap> entry : idToData.entrySet()) {
                     DataMap dataMap = entry.getValue();
                     String id = (String) dataMap.get("交易主体账号");
+                    String type = (String) dataMap.get("类型");
                     Set<String> namesSet = idToNames.get(id);
                     if (CollectionUtils.isNotEmpty(namesSet)) {
                         dataMap.put("交易主体户名", StringUtils.join(namesSet, ";"));
                     }
-                    needToSave.add(dataMap);
+
+                    //将filedId 替换然后给网络关系图用
+                    DataMap dataMap1=new DataMap();
+                    BeanUtil.copyProperties(dataMap,dataMap1);
+                    dataMap1.put("fileId", newFileId1);
+                    needToSave.add(dataMap1);
+
+                    if(cftFlag&&"反诈".equals(type)){
+                        needToSave.add(dataMap);
+                    }else if(wldFlag&&"反诈".equals(type)){
+                        needToSave.add(dataMap);
+                    }else if(!cftFlag){
+                        needToSave.add(dataMap);
+                    }else if(!wldFlag){
+                        needToSave.add(dataMap);
+                    }
+
                     if (needToSave.size() >= 1000) {
                         saveLines(new ArrayList<>(needToSave), mongoTemplate);
                         needToSave.clear();
@@ -200,7 +225,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
         log.info("数据分析-主体信息汇总开始");
     }
 
-    public void getData(DataMap dataMap, Document origin, String dateFileId2,boolean flag) {
+    public void getData(DataMap dataMap, Document origin, String dateFileId2) {
         String type = origin.getString("类型");
         String account = origin.getString("交易主体账号");
         String zjha = "";
@@ -208,7 +233,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
         String khyhmc = "";
         String bdsjh = "";
         String zcsj = "";
-        if ("财付通".equals(type)&&!flag) {
+        if ("财付通".equals(type)) {
             //账户状态", "账号", "注册姓名", "注册时间", "注册身份证号", "绑定手机", "绑定状态", "开户行信息", "银行账号"
             if (StringUtils.isNotBlank(dateFileId2)) {
                 List<DataMap> dataMaps = this.mongoTemplate.find((new Query(
@@ -226,7 +251,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
                 }
             }
         }
-        else if ("五联单".equals(type)&&!flag) {
+        else if ("五联单".equals(type)) {
 //       "用户ID", "登录邮箱", "登录手机", "账户名称", "证件类型", "证件号", "可用余额", "注册时间", "绑定手机", "绑定银行卡", "对应的协查数据"));
             if (StringUtils.isNotBlank(dateFileId2)) {
                 List<DataMap> dataMaps = this.mongoTemplate.find((new Query(
@@ -242,7 +267,8 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
                     zcsj = String.valueOf(dataMaps.get(0).get("注册时间"));
                 }
             }
-        }else if("反诈".equals(type)){
+        }
+        else if("反诈".equals(type)){
             bdyhkh = origin.getString("交易主体银行卡号");
             khyhmc = origin.getString("交易主体银行名称");
         }
@@ -252,6 +278,7 @@ public class DataStaticAnalysisTotal extends Ops implements Runnable {
         dataMap.put("开户银行名称", khyhmc);
         dataMap.put("绑定手机号", bdsjh);
         dataMap.put("注册时间", zcsj);
+        dataMap.put("类型", type);
     }
 
     public void getDataAll(List<DataMap> needToSaveall, Document origin, Set<String> alipayIdsAll, String newFileIdAll, Map<String, Object> userMap, Map<String, DataMap> havedUser, String dateFileId2) {

+ 1 - 1
src/main/java/ieven/server/webapp/service/datastatic/DataStaticService.java

@@ -100,7 +100,7 @@ public class DataStaticService extends Ops {
         String modelId = staticModelInput.getModelId();
         String dateFileId = getFileId("数据分析-主体信息汇总明细", modelId, mongoTemplate);
         String dateFileIdUser = getFileId("数据分析-所有主体信息汇总", modelId, mongoTemplate);
-        String dateFileIdUserTotal = getFileId("数据分析-主体信息汇总", modelId, mongoTemplate);
+        String dateFileIdUserTotal = getFileId("数据分析-主体信息汇总网络关系图", modelId, mongoTemplate);
         String dateFileIdDs = getFileId("数据分析-对手透视", modelId, mongoTemplate);
         if (StringUtils.isBlank(dateFileId)) {
             return Mapped.ERROR("数据分析-主体信息汇总明细不存在");