hankunkun 10 kuukautta sitten
vanhempi
sitoutus
b59a8e7d2e

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

@@ -1,6 +1,8 @@
 package ieven.server.webapp.service.datastatic;
 
 import com.google.common.collect.Lists;
+import com.mongodb.client.MongoCursor;
+import ieven.server.webapp.domain.alipay.AlipayHeaders;
 import ieven.server.webapp.domain.data.DataMap;
 import ieven.server.webapp.domain.data.StaticInput;
 import ieven.server.webapp.domain.data.StaticModelInput;
@@ -12,6 +14,7 @@ import ieven.server.webapp.util.excel.PublicStatic;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.bson.Document;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.mongodb.core.MongoTemplate;
 import org.springframework.data.mongodb.core.query.Criteria;
@@ -217,16 +220,51 @@ public class DataStaticService extends Ops {
         List<Map<String, Object>> partyDataList = new ArrayList<>();
         List<Map<String, Object>> relationshipGraphList = new ArrayList<>();
         List<Map<String, Object>> relationshipGraphListnew = new ArrayList<>();
-        List<DataMap> dataMapDetail = this.mongoTemplate.find(query, DataMap.class);
+
+        //List<DataMap> dataMapDetail = this.mongoTemplate.find(query, DataMap.class);
+
+        MongoCursor<Document> cursor =
+                mongoTemplate
+                        .getCollection("data")
+                        .find(query.getQueryObject())
+                        .batchSize(1000)
+                        .noCursorTimeout(true)
+                        .cursor();
 
         long d = System.currentTimeMillis();
         log.error("查询所有数据所需时间" + (d - c));
         //先去判断从是否有大于2的数据
-
+        Document originDoc;
         Map<String, List<DataMap>> dsMap = new HashMap<>();
-
         Map<String, Set<String>> zh = new HashMap<>();
-        for (DataMap map : dataMapDetail) {
+        while (cursor.hasNext()) {
+            // 写法1(建议)
+            try {
+                originDoc = cursor.next();
+                DataMap map = initWithOrigin(originDoc, dateFileId);
+                String jydszh = String.valueOf(map.get("交易对手账号"));
+                String jyzthm = String.valueOf(map.get("交易主体户名"));
+                if (PublicStatic.checkStr(jydszh) || PublicStatic.checkStr(jyzthm)) {
+                    continue;
+                }
+                Set<String> strings = zh.get(jydszh);
+                if (CollectionUtils.isEmpty(strings)) {
+                    strings = new HashSet<>();
+                    strings.add(jyzthm);
+                } else {
+                    strings.add(jyzthm);
+                }
+                zh.put(jydszh, strings);
+
+                List<DataMap> dataMaps1 = Optional.ofNullable(dsMap.get(jydszh)).orElse(new ArrayList<DataMap>());
+                dataMaps1.add(map);
+                dsMap.put(jydszh, dataMaps1);
+            } catch (Exception exception) {
+                log.error(exception.getMessage(), exception);
+            }
+        }
+
+  /*      for (DataMap map : dataMapDetail) {
             String jydszh = String.valueOf(map.get("交易对手账号"));
             String jyzthm = String.valueOf(map.get("交易主体户名"));
             if (PublicStatic.checkStr(jydszh) || PublicStatic.checkStr(jyzthm)) {
@@ -244,7 +282,7 @@ public class DataStaticService extends Ops {
             List<DataMap> dataMaps1 = Optional.ofNullable(dsMap.get(jydszh)).orElse(new ArrayList<DataMap>());
             dataMaps1.add(map);
             dsMap.put(jydszh, dataMaps1);
-        }
+        }*/
         if (dsMap == null) {
             return Mapped.ERROR("数据有误,请重新查询");
         }

+ 3 - 3
src/main/resources/static/index.html

@@ -1,8 +1,8 @@
-<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"><meta http-equiv=X-UA-Compatible content="IE=edge"><title>追迹者-三方支付数据分析</title><link href=/static/css/app.b456dd765f35856ac930a90e5d5d2d6e.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.3003545cb4fbb7457d7b.js></script><script type=text/javascript src=/static/js/vendor.4a30d08b867d4749cfcc.js></script><script type=text/javascript src=/static/js/app.97898cd44b90c755cf43.js></script></body></html>
+<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"><meta http-equiv=X-UA-Compatible content="IE=edge"><title>追迹者-三方支付数据分析</title><link href=/static/css/app.b456dd765f35856ac930a90e5d5d2d6e.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.a44cbd1a1a622780ed2b.js></script><script type=text/javascript src=/static/js/vendor.4a30d08b867d4749cfcc.js></script><script type=text/javascript src=/static/js/app.97898cd44b90c755cf43.js></script></body></html>
 <!-- 
  PROJECT_NAME: 三方支付数据分析;
- BUILD_TIME:Sat, 28 Sep 2024 16:25:59 GMT; 
+ BUILD_TIME:Mon, 30 Sep 2024 01:05:26 GMT; 
  GIT_BRANCH:master; 
- GIT_COMMIT:4b7c4cf738564cc28e561d3ceef32f21b54b0a19; 
+ GIT_COMMIT:7f2c2db41db75e75d12664e194337049b68ca56f; 
  TICK:3.2.0; 
  -->

Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
src/main/resources/static/static/js/1.341ea53e4a1236cc95e0.js


Tiedoston diff-näkymää rajattu, sillä se on liian suuri
+ 0 - 0
src/main/resources/static/static/js/1.63c619ec6cb3d5f2e0ad.js


+ 1 - 1
src/main/resources/static/static/js/manifest.3003545cb4fbb7457d7b.js → src/main/resources/static/static/js/manifest.a44cbd1a1a622780ed2b.js

@@ -1 +1 @@
-!function(e){function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}var r=window.webpackJsonp;window.webpackJsonp=function(t,c,a){for(var f,i,u,s=0,d=[];s<t.length;s++)i=t[s],o[i]&&d.push(o[i][0]),o[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(r&&r(t,c,a);d.length;)d.shift()();if(a)for(s=0;s<a.length;s++)u=n(n.s=a[s]);return u};var t={},o={11:0};n.e=function(e){function r(){f.onerror=f.onload=null,clearTimeout(i);var n=o[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),o[e]=void 0)}var t=o[e];if(0===t)return new Promise(function(e){e()});if(t)return t[2];var c=new Promise(function(n,r){t=o[e]=[n,r]});t[2]=c;var a=document.getElementsByTagName("head")[0],f=document.createElement("script");f.type="text/javascript",f.charset="utf-8",f.async=!0,f.timeout=12e4,n.nc&&f.setAttribute("nonce",n.nc),f.src=n.p+"static/js/"+({0:"vendor-async"}[e]||e)+"."+{0:"f97ed98272f8cf46d635",1:"341ea53e4a1236cc95e0",2:"210455a2ae704a802fad",3:"999d415be219396519eb",4:"2571522439317ff25e62",5:"8e82142563e6af4bb71b",6:"eedbbe55278fd36cf8c6",7:"83ecdc9548c3706f90ec",8:"1cfc86658a36840181e1"}[e]+".js";var i=setTimeout(r,12e4);return f.onerror=f.onload=r,a.appendChild(f),c},n.m=e,n.c=t,n.d=function(e,r,t){n.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:t})},n.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(r,"a",r),r},n.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},n.p="/",n.oe=function(e){throw console.error(e),e}}([]);
+!function(e){function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}var r=window.webpackJsonp;window.webpackJsonp=function(t,c,a){for(var f,i,u,s=0,d=[];s<t.length;s++)i=t[s],o[i]&&d.push(o[i][0]),o[i]=0;for(f in c)Object.prototype.hasOwnProperty.call(c,f)&&(e[f]=c[f]);for(r&&r(t,c,a);d.length;)d.shift()();if(a)for(s=0;s<a.length;s++)u=n(n.s=a[s]);return u};var t={},o={11:0};n.e=function(e){function r(){f.onerror=f.onload=null,clearTimeout(i);var n=o[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),o[e]=void 0)}var t=o[e];if(0===t)return new Promise(function(e){e()});if(t)return t[2];var c=new Promise(function(n,r){t=o[e]=[n,r]});t[2]=c;var a=document.getElementsByTagName("head")[0],f=document.createElement("script");f.type="text/javascript",f.charset="utf-8",f.async=!0,f.timeout=12e4,n.nc&&f.setAttribute("nonce",n.nc),f.src=n.p+"static/js/"+({0:"vendor-async"}[e]||e)+"."+{0:"f97ed98272f8cf46d635",1:"63c619ec6cb3d5f2e0ad",2:"210455a2ae704a802fad",3:"999d415be219396519eb",4:"2571522439317ff25e62",5:"8e82142563e6af4bb71b",6:"eedbbe55278fd36cf8c6",7:"83ecdc9548c3706f90ec",8:"1cfc86658a36840181e1"}[e]+".js";var i=setTimeout(r,12e4);return f.onerror=f.onload=r,a.appendChild(f),c},n.m=e,n.c=t,n.d=function(e,r,t){n.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:t})},n.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(r,"a",r),r},n.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},n.p="/",n.oe=function(e){throw console.error(e),e}}([]);

Kaikkia tiedostoja ei voida näyttää, sillä liian monta tiedostoa muuttui tässä diffissä