From 5e22559b6dff23ff58cabe635481956fcc8b80c0 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期四, 21 三月 2024 18:09:08 +0800
Subject: [PATCH] 整理
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java | 149 ++++++++++++++++++++++++++++++++-----------------
1 files changed, 96 insertions(+), 53 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
index a0b2d69..0ce7b6a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java
@@ -21,6 +21,7 @@
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
@@ -52,33 +53,29 @@
* 瀹氭椂鏌ヨ鏉冮檺涓嬪彂浠诲姟杩涘害鎵ц缁撴灉
*/
@Override
- public void syncEmpowerDetailData(){
- if(Constants.DEALING_HK_EMPOWER_DETAIL){
- return ;
- }
- Constants.DEALING_HK_EMPOWER_DETAIL = true;
- try {
+ public Integer syncEmpowerDetailData(Integer endId){
+// if(Constants.DEALING_HK_EMPOWER_DETAIL){
+// return ;
+// }
+// Constants.DEALING_HK_EMPOWER_DETAIL = true;
//鏌ヨ鎵�鏈夊畬鎴愪笅杞斤紝寰呮煡璇㈢粨鏋滅殑鏁版嵁璁板綍
- List<Empower> list = getDealListDetail();
+ List<Empower> list = getDealListDetail(endId);
if(list == null || list.size() ==0){
- return;
+ return null;
}
- Thread t1=new Thread(new Runnable() {
- @Override
- public void run() {
- try {
+ Thread t1=new Thread(new Runnable() {
+ @Override
+ public void run() {
+ try {
for(Empower c : list){
TaskPersonDetailRequest param = new TaskPersonDetailRequest();
param.setPageNo(1);
- param.setPageSize(100);
-// param.setPersonIds(new ArrayList<>());
-
+ param.setPageSize(10);
param.setPersonIds(new String[]{c.getMemberHkId()});
param.setTaskId(c.getHkId());
TaskDataAdditionResourceRequest rec = new TaskDataAdditionResourceRequest();
rec.setResourceIndexCode(c.getDeviceIndexCode());
rec.setResourceType(c.getDeviceType());
-// rec.setChannelNos(c.getDeviceChannelNo().split(","));
param.setResourceInfo(rec);
//鏌ヨ涓嬪彂鐘舵��
BaseResponse<TaskPersonDetailListResponse> response = HKService.taskPersoDetail(param);
@@ -123,15 +120,13 @@
//濡傛灉鏄凡鍒犻櫎鐨勬暟鎹紝涓嬪彂澶辫触锛堥槻姝㈣澶囩绾匡級锛屽垯灏濊瘯閲嶆柊涓嬪彂浠诲姟
if(Constants.equalsInteger(c.getIsdeleted(), Constants.ONE) ){
// && Constants.formatIntegerNum(c.getTryNum())+1 < tryNum ){
- empowerMapper.update(null, new UpdateWrapper<Empower>()
+ /* empowerMapper.update(null, new UpdateWrapper<Empower>()
.lambda()
.eq(Empower::getId, c.getId())
.set(Empower::getRemark, "涓嬪彂澶辫触锛岀瓑寰呴噸鏂板垹闄ゆ潈闄�")
-// .set(Empower::getHkId,null)
-// .set(Empower::getSendDate,null)
.set(Empower::getTryNum,Constants.formatIntegerNum(c.getTryNum())+1)
.set(Empower::getSendInfo, "涓嬪彂澶辫触锛岀瓑寰呴噸鏂板垹闄ゆ潈闄�")
- .set(Empower::getSendStatus, Constants.EmpowerStatus.wait));
+ .set(Empower::getSendStatus, Constants.EmpowerStatus.wait));*/
empowerMapper.update(null, new UpdateWrapper<Empower>()
.lambda()
.eq(Empower::getId, c.getId())
@@ -150,21 +145,19 @@
checkDelMemberTask(c.getMemberId());
}
}
- }catch (Exception e){
+ }catch (Exception e){
- }finally {
- Constants.DEALING_HK_EMPOWER_DETAIL=false;
- }
+ }finally {
+// Constants.DEALING_HK_EMPOWER_DETAIL=false;
}
- });
- t1.start();
-
-
- }catch (Exception e){
- e.printStackTrace();
- }
+ }
+ });
+ t1.start();
+ return list.get(list.size()-1).getId();
}
+
+
/**
* 瀵规捣搴峰垹闄ょ粍缁囦俊鎭�
* @param id
@@ -226,7 +219,7 @@
Constants.DEALING_HK_EMPOWER_DETAIL = true;
try {
//鏌ヨ鎵�鏈夊畬鎴愪笅杞斤紝寰呮煡璇㈢粨鏋滅殑鏁版嵁璁板綍
- List<Empower> list = getDealListDetail();
+ List<Empower> list = getDealListDetail(0);
if(list == null || list.size() ==0){
return;
}
@@ -272,16 +265,15 @@
* 瀹氭椂鏌ヨ鏉冮檺涓嬪彂浠诲姟杩涘害鎵ц缁撴灉
*/
@Override
- public void syncEmpowerResultData(){
- if(Constants.DEALING_HK_EMPOWER_RESULT){
- return ;
- }
- Constants.DEALING_HK_EMPOWER_RESULT=true;
- try {
+ public Integer syncEmpowerResultData(Integer endId){
+// if(Constants.DEALING_HK_EMPOWER_RESULT){
+// return null ;
+// }
+// Constants.DEALING_HK_EMPOWER_RESULT=true;
//鏌ヨ鎵�鏈夋墽琛屼腑寰楁暟鎹�
- List<Empower> list = getIngTaskListResult();
+ List<Empower> list = getIngTaskListResult(Constants.formatIntegerNum(endId));
if(list == null || list.size() ==0){
- return;
+ return null;
}
Thread t1=new Thread(new Runnable() {
@Override
@@ -315,13 +307,47 @@
}
});
t1.start();
- }catch (Exception e){
- e.printStackTrace();
- }
+ return list.get(list.size()-1).getId();
+
}
+ /**
+ * 澶勭悊浜哄憳鎺堟潈鏁版嵁锛屽畾鏃朵笅鍙�
+ */
+ @Override
+ public Integer syncEmpowerFailData(Integer endId) {
+ List<Empower> allList =getAllFailDealList( endId);
+ if(allList!=null && allList.size()>0){
+ Date date = new Date();
+ for(Empower empower:allList){
+ if(Constants.equalsObject(empower.getIsdeleted(),Constants.ONE)){
+ //濡傛灉鏄垹闄ょ殑鏉冮檺涓嬪彂锛屾煡璇㈡槸鍚︿己鍊欐湁涓嬪彂鎴愬姛鐨勬暟鎹紝濡傛灉鏈夛紝鍒欎笉澶勭悊
+ Empower param = empowerMapper.selectOne(new QueryWrapper<Empower>().lambda()
+ .eq(Empower::getMemberId,empower.getMemberId())
+ .eq(Empower::getDeviceId,empower.getDeviceId() )
+ .gt(Empower::getId,empower.getId())
+ .last("limit 1"));
+ if(empower ==null || Constants.equalsInteger(empower.getIsdeleted(),Constants.ONE)){
+// addIds.add(did);
+ }
+ }
+ //鏇存柊閲嶆柊涓嬪彂娆℃暟
+ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda()
+ .eq(Empower::getEditDate,date)
+ .setSql("try_num = ifnull(tyr_num,0) +1" )
+ .set(Empower::getSendStatus,Constants.EmpowerStatus.wait)
+ .set(Empower::getSendDate,null)
+ .set(Empower::getEditDate,date)
+ .set(Empower::getRemark,"涓嬪彂澶辫触锛屽緟閲嶆柊涓嬪彂~")
+ .set(Empower::getRemark,"涓嬪彂澶辫触锛屽緟閲嶆柊涓嬪彂~")
+ .eq(Empower::getId,empower.getId()));
+ }
+ return allList.get(allList.size()-1).getId();
+ }
+ return null;
+ }
/**
* 澶勭悊浜哄憳鎺堟潈鏁版嵁锛屽畾鏃朵笅鍙�
*/
@@ -331,7 +357,6 @@
// return null ;
// }
// Constants.DEALING_HK_EMPOWER =true;
- try {
//鍏堝垹闄ゆ墍鏈夐渶瑕佸彇娑堟巿鏉冪殑鏁版嵁
List<Empower> allList =getAllWaitDealList( endId);
if(allList !=null && allList.size()>0){
@@ -360,12 +385,6 @@
t1.start();
return allList.get(allList.size()-1).getId();
}
-
- }catch (Exception e){
- e.printStackTrace();
- }finally {
-// Constants.DEALING_HK_EMPOWER =false;
- }
return null;
}
@Override
@@ -378,6 +397,7 @@
}catch (Exception e){
e.printStackTrace();
}finally {
+
}
}
@@ -611,6 +631,23 @@
List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper);
return list;
}
+ private List<Empower> getAllFailDealList(int endId ) {
+ MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>();
+ queryWrapper.selectAll(Empower.class);
+ queryWrapper.selectAs(Device::getChannelNo,Empower::getDeviceChannelNo);
+ queryWrapper.selectAs(Member::getHkId,Empower::getMemberHkId);
+ queryWrapper.selectAs(Device::getHkId,Empower::getDeviceIndexCode);
+ queryWrapper.selectAs(Device::getResourceType,Empower::getDeviceType);
+ queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId);
+ queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId);
+ queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.fail);
+ queryWrapper.gt(Empower::getId,endId);
+ queryWrapper.orderByAsc(Empower::getId );
+// queryWrapper.orderByAsc(Empower::getCreateDate );
+ queryWrapper.last("limit 100");//姣忔闄愬埗涓嬪彂100涓�
+ List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper);
+ return list;
+ }
private List<Empower> getDealList(int del ,int start,int end) {
MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>();
@@ -631,7 +668,7 @@
List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper);
return list;
}
- private List<Empower> getDealListDetail() {
+ private List<Empower> getDealListDetail(int endId ) {
MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper.selectAll(Empower.class);
queryWrapper.selectAs(Device::getChannelNo,Empower::getDeviceChannelNo);
@@ -642,17 +679,23 @@
queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId);
queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.downloaded);
queryWrapper.isNotNull(Member::getHkId) ;
+ queryWrapper.gt(Empower::getId,endId);
queryWrapper.orderByAsc(Empower::getSendDate);
+ queryWrapper.last("limit 100");//姣忔闄愬埗涓嬪彂100涓�
List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper);
return list;
}
- private List<Empower> getIngTaskListResult() {
+ private List<Empower> getIngTaskListResult(int endId) {
MPJLambdaWrapper<Empower> queryWrapper = new MPJLambdaWrapper<>();
queryWrapper.selectAll(Empower.class);
queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.ing);
+ queryWrapper.gt(Empower::getId,endId);
queryWrapper.groupBy(Empower::getHkId);
- List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper);
+ queryWrapper.orderByAsc(Empower::getSendDate);
+ queryWrapper.last("limit 100");//姣忔闄愬埗涓嬪彂100涓�
+ List<Empower> list = empowerMapper.selectList(queryWrapper);
return list;
}
+
}
--
Gitblit v1.9.3