From c467370d8741bc05ca7c22d4253c58ac0a979ef5 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期二, 09 六月 2026 09:46:25 +0800
Subject: [PATCH] 功能优化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java |   71 +++++++++++++++++------------------
 1 files changed, 34 insertions(+), 37 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
index 77e9960..c797984 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
@@ -24,12 +24,14 @@
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.concurrent.Executor;
 
 /**
  * 娴峰悍闂ㄧ鎺堟潈涓氬姟Service瀹炵幇
@@ -50,12 +52,17 @@
     @Autowired
     private MemberCardMapper memberCardMapper;
 
+    @Autowired
+    @Qualifier("asyncExecutor")
+    private Executor asyncExecutor;
+
     /**
      * 瀹氭椂鏌ヨ鏉冮檺涓嬪彂浠诲姟杩涘害鎵ц缁撴灉
      */
     @Override
     public  Integer   syncEmpowerDetailData(Integer endId){
-        log.error("");
+        long startTime = System.currentTimeMillis();
+        log.info("syncEmpowerDetailData鎵ц寮�濮�, endId={}", endId);
 //        if(Constants.DEALING_HK_EMPOWER_DETAIL){
 //            return   ;
 //        }
@@ -63,13 +70,12 @@
             //鏌ヨ鎵�鏈夊畬鎴愪笅杞斤紝寰呮煡璇㈢粨鏋滅殑鏁版嵁璁板綍
             List<Empower>  list = getDealListDetail(endId);
            if(list == null || list.size() ==0){
+               log.info("syncEmpowerDetailData鏃犲緟澶勭悊鏁版嵁, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
                return null;
            }
-        Thread t1=new Thread(new Runnable() {
-            @Override
-            public void run() {
-                try {
-                    for(Empower c : list){
+        asyncExecutor.execute(() -> {
+            try {
+                for(Empower c : list){
                         AuthResultPageRequest param = new AuthResultPageRequest();
                         param.setPageNo(1);
                         param.setPageSize(999);
@@ -201,11 +207,10 @@
                         }
                     }
                 }catch (Exception e){
-                    e.printStackTrace();
+                    log.error("syncEmpowerDetailData鎵ц寮傚父", e);
                 }
-            }
         });
-        t1.start();
+         log.info("syncEmpowerDetailData鎵ц缁撴潫, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
          return list.get(list.size()-1).getId();
 
     }
@@ -345,18 +350,15 @@
      */
     @Override
     public  Integer syncEmpowerResultData(Integer endId){
-//        if(Constants.DEALING_HK_EMPOWER_RESULT){
-//            return  null ;
-//        }
-//        Constants.DEALING_HK_EMPOWER_RESULT=true;
+        long startTime = System.currentTimeMillis();
+        log.info("syncEmpowerResultData鎵ц寮�濮�, endId={}", endId);
             //鏌ヨ鎵�鏈夋墽琛屼腑寰楁暟鎹�
          List<Empower>  list = getIngTaskListResult(Constants.formatIntegerNum(endId));
            if(list == null || list.size() ==0){
+               log.info("syncEmpowerResultData鏃犲緟澶勭悊鏁版嵁, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
                return null;
            }
-            Thread t1=new Thread(new Runnable() {
-                @Override
-                public void run() {
+            asyncExecutor.execute(() -> {
                     try {
                         for(Empower c : list){
                             TaskProgressRequest param = new TaskProgressRequest();
@@ -389,13 +391,10 @@
                             }
                         }
                     }catch (Exception e1){
-                        e1.printStackTrace();
-                    }finally {
-                        Constants.DEALING_HK_EMPOWER_RESULT =false;
+                        log.error("syncEmpowerResultData鎵ц寮傚父", e1);
                     }
-                }
-            });
-            t1.start();
+                });
+            log.info("syncEmpowerResultData鎵ц缁撴潫, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
             return list.get(list.size()-1).getId();
 
     }
@@ -407,6 +406,8 @@
      */
     @Override
     public  Integer syncEmpowerFailData(Integer endId) {
+        long startTime = System.currentTimeMillis();
+        log.info("syncEmpowerFailData鎵ц寮�濮�, endId={}", endId);
         List<Empower> allList =getAllFailDealList( endId);
         if(allList!=null && allList.size()>0){
             Date date = new Date();
@@ -446,6 +447,7 @@
             }
             return allList.get(allList.size()-1).getId();
         }
+        log.info("syncEmpowerFailData鎵ц缁撴潫, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
         return null;
     }
     /**
@@ -453,33 +455,28 @@
      */
     @Override
     public  Integer syncEmpowerData(Integer endId) {
-//        if(Constants.DEALING_HK_EMPOWER){
-//            return  null ;
-//        }
-//        Constants.DEALING_HK_EMPOWER =true;
+        long startTime = System.currentTimeMillis();
+        log.info("syncEmpowerData鎵ц寮�濮�, endId={}", endId);
             //鍏堝垹闄ゆ墍鏈夐渶瑕佸彇娑堟巿鏉冪殑鏁版嵁
             if(empowerMapper.selectCount(new QueryWrapper<Empower>().lambda()
                     .eq(Empower::getSendStatus,Constants.EmpowerStatus.ing)) > 1000){
-                //濡傛灉褰撳墠浠诲姟澶т簬1000涓紙澶ф10涓换鍔★級
+                log.info("syncEmpowerData浠诲姟闃熷垪宸叉弧(>1000), 璺宠繃, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
                 return endId;
             }
             List<Empower> allList =getAllWaitDealList( endId);
             if(allList !=null && allList.size()>0){
                 //鏌ヨ鎵�鏈夐渶瑕佸悓姝ョ殑鏁版嵁,閲嶆柊涓嬪彂鏈�鏂颁汉鍛樻潈闄愬嵆鍙�
-                Thread t1=new Thread(new Runnable() {
-                    @Override
-                    public void run() {
-                        try {
-                            dealAllListTask(allList);
-                        }catch (Exception e){
-                            log.info("======================涓嬪彂鎺堟潈寮傚父锛�"+e.getMessage());
-                            e.printStackTrace();
-                        }
+                asyncExecutor.execute(() -> {
+                    try {
+                        dealAllListTask(allList);
+                    }catch (Exception e){
+                        log.error("======================涓嬪彂鎺堟潈寮傚父", e);
                     }
                 });
-                t1.start();
+                log.info("syncEmpowerData鎻愪氦{}鏉℃暟鎹�, 鑰楁椂{}ms", allList.size(), System.currentTimeMillis() - startTime);
                 return allList.get(allList.size()-1).getId();
             }
+        log.info("syncEmpowerData鏃犲緟澶勭悊鏁版嵁, 鑰楁椂{}ms", System.currentTimeMillis() - startTime);
         return null;
     }
     @Override

--
Gitblit v1.9.3