From ad6dfb8323ab40ca8fe4fed94722c755d89c3203 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 28 二月 2024 15:14:47 +0800 Subject: [PATCH] 整理 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncEmpowerServiceImpl.java | 170 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 137 insertions(+), 33 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 d400e2e..a326513 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 @@ -57,20 +57,84 @@ return; } for(Empower c : list){ + TaskPersonDetailRequest param = new TaskPersonDetailRequest(); + param.setPageNo(1); + param.setPageSize(100); +// param.setPersonIds(new ArrayList<>()); + + 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); + if(response!=null + && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE) + && response.getData()!=null + && response.getData().getList() != null + && response.getData().getList().size()>0 ){ + TaskPersonDetailResponse model = response.getData().getList().get(0); + if(model != null && StringUtils.equals(model.getPersondownloadResult(),"0")){ + //鏇存柊宸插畬鎴愪笅杞戒换鍔� + String remark = ""; + String cardInfo = "鍗$墖涓嬪彂澶辫触"; + TaskPersonDetailCardFaceResponse d = model.getPersonDownloadDetail(); + if(d.getCards() !=null && d.getCards().size()>0){ + cardInfo = "鍗$墖锛氥��" ; + for(TaskPersonDetailCardInfoResponse card : d.getCards()){ + cardInfo +=card.getId()+" "; + } + cardInfo += "銆戜笅鍙戞垚鍔�"; + } + if(d.getFaces() == null || d.getFaces().size() ==0){ + remark = cardInfo+"锛� 涓嶆敮鎸佷汉鑴歌澶囷紒"; + }else{ + remark = ""+cardInfo+"锛屼汉鑴镐笅鍙戞垚鍔燂紒"; + } + empowerMapper.update(null,new UpdateWrapper<Empower>() + .lambda() + .eq(Empower::getId,c.getId() ) + .set(Empower::getRemark,remark ) + .set(Empower::getSendInfo,remark ) + .set(Empower::getSendStatus,Constants.EmpowerStatus.pass) ); + } + + } + } + }catch (Exception e){ + e.printStackTrace(); + }finally { + Constants.DEALING_HK_EMPOWER_DETAIL=false; + } + + } + public void syncEmpowerDetailDataOld(){ + if(Constants.DEALING_HK_EMPOWER_DETAIL){ + return ; + } + Constants.DEALING_HK_EMPOWER_DETAIL = true; + try { + //鏌ヨ鎵�鏈夊畬鎴愪笅杞斤紝寰呮煡璇㈢粨鏋滅殑鏁版嵁璁板綍 + List<Empower> list = getDealListDetail(); + if(list == null || list.size() ==0){ + return; + } + for(Empower c : list){ AuthItemListRequest param = new AuthItemListRequest(); param.setPageNo(1); param.setPageSize(100); // param.setPersonIds(new ArrayList<>()); -// AuthItemListPersonRequest p = new AuthItemListPersonRequest(); -// p.setPersonIds(c.getMemberHkId()); + param.setPersonIds(new String[]{c.getMemberHkId()}); - param.setQueryType(c.getDeviceType()); + param.setQueryType(c.getDeviceType()); TaskDataAdditionResourceRequest rec = new TaskDataAdditionResourceRequest(); rec.setResourceIndexCode(c.getDeviceIndexCode()); rec.setResourceType(c.getDeviceType()); - rec.setChannelNos(c.getDeviceChannelNo().split(",")); +// rec.setChannelNos(c.getDeviceChannelNo().split(",")); List<TaskDataAdditionResourceRequest> resourceRequests = new ArrayList<>(); - resourceRequests.add(rec); // param.setResourceInfos(resourceRequests); //鏌ヨ宸蹭笅杞� @@ -85,7 +149,7 @@ //鏇存柊宸插畬鎴愪笅杞戒换鍔� empowerMapper.update(null,new UpdateWrapper<Empower>() .lambda() - .eq(Empower::getHkId,c.getHkId() ) + .eq(Empower::getId,c.getId() ) .set(Empower::getSendStatus,Constants.EmpowerStatus.pass) ); } } @@ -151,7 +215,7 @@ try { //鍏堝垹闄ゆ墍鏈夐渶瑕佸彇娑堟巿鏉冪殑鏁版嵁 dealDelListTask(getDealList(Constants.ONE)); - //鏌ヨ鎵�鏈夐渶瑕佸悓姝ョ殑鏁版嵁 + //鏌ヨ鎵�鏈夐渶瑕佸悓姝ョ殑鏁版嵁,閲嶆柊涓嬪彂鏈�鏂颁汉鍛樻潈闄愬嵆鍙� dealNewListTask(getDealList(Constants.ZERO)); }catch (Exception e){ e.printStackTrace(); @@ -160,7 +224,28 @@ } } + /** + * 鍒嗘璇锋眰涓嬪彂鏉冮檺 + * @param list + */ private void dealDelListTask(List<Empower> list) { + int sublistSize = 100; + int startIndex = 0; + int endIndex = sublistSize; + + while (startIndex < list.size()) { + if (endIndex > list.size()) { + endIndex = list.size(); + } + List<Empower> sublist = list.subList(startIndex, endIndex); + if(sublist.size()>0){ + dealDelListTaskDo(sublist); + } + startIndex = endIndex; + endIndex += sublistSize; + } + } + private void dealDelListTaskDo(List<Empower> list) { //鎸夌収鐖剁骇鐢宠鍒嗘壒澶勭悊姣忔鐢宠鏁版嵁 if(list ==null || list.size()==0){ return; @@ -168,41 +253,41 @@ Date date = new Date(); //鍒涘缓浠诲姟 String taskId = hkTaskAddtion(); - List<Empower> successList = new ArrayList<>(); - List<Empower> errorList = new ArrayList<>(); + List<Integer> successList = new ArrayList<>(); + List<Integer> errorList = new ArrayList<>(); for(Empower c : list) { //鍚戜换鍔℃坊鍔犱汉鍛樸�佽澶囦俊鎭暟鎹� if(addTaskData(c,taskId,HKConstants.OPERA_TYPE.DEL.getKey())){ - successList.add(c); + successList.add(c.getId()); }else{ - errorList.add(c); + errorList.add(c.getId()); } } if(successList.size()>0){ //寮�濮嬫墽琛屼笅鍙� boolean status = startTask(taskId); - for(Empower model : successList){ - Empower update = new Empower(); - update.setId(model.getId()); - update.setSendDate(date); - update.setEditDate(date); - update.setHkId(taskId); - update.setRemark(status?"涓嬪彂浠诲姟鎵ц鎴愬姛":"涓嬪彂浠诲姟鎵ц澶辫触"); - //涓嬪彂涓� - update.setSendStatus(status?Constants.EmpowerStatus.ing:Constants.EmpowerStatus.fail); - empowerMapper.updateById(update); - } + empowerMapper.update(null,new UpdateWrapper<Empower>() + .lambda() + .set(Empower::getSendDate,date) + .set(Empower::getEditDate,date) + .set(Empower::getSendStatus,status?Constants.EmpowerStatus.ing:Constants.EmpowerStatus.fail) + .set(Empower::getHkId,taskId) + .set(Empower::getSendInfo,status?"涓嬪彂浠诲姟鎵ц鎴愬姛":"涓嬪彂浠诲姟鎵ц澶辫触") + .set(Empower::getRemark,status?"涓嬪彂浠诲姟鎵ц鎴愬姛":"涓嬪彂浠诲姟鎵ц澶辫触") + .set(Empower::getEditDate,date) + .in(Empower::getId,successList)); } - for(Empower model : errorList){ - Empower update = new Empower(); - update.setId(model.getId()); - update.setSendDate(date); - update.setEditDate(date); - update.setHkId(taskId); - update.setSendStatus(Constants.EmpowerStatus.fail); -// update.setRemark( "娣诲姞涓嬪彂浠诲姟鏁版嵁鍒櫎鎺堟潈澶辫触"); - empowerMapper.updateById(update); - } + + empowerMapper.update(null,new UpdateWrapper<Empower>() + .lambda() + .set(Empower::getSendStatus,Constants.EmpowerStatus.fail) + .set(Empower::getSendDate,date) + .set(Empower::getEditDate,date) + .set(Empower::getHkId,taskId) + .set(Empower::getSendInfo, "娣诲姞涓嬪彂浠诲姟鏁版嵁鍒櫎鎺堟潈澶辫触") + .set(Empower::getRemark, "娣诲姞涓嬪彂浠诲姟鏁版嵁鍒櫎鎺堟潈澶辫触") + .set(Empower::getEditDate,date) + .in(Empower::getId,errorList)); } private void dealNewListTask(List<Empower> list) { @@ -234,6 +319,7 @@ update.setEditDate(date); update.setHkId(taskId); update.setRemark(status?"涓嬪彂浠诲姟鎴愬姛":"涓嬪彂浠诲姟澶辫触"); + update.setSendInfo(status?"涓嬪彂浠诲姟鎴愬姛":"涓嬪彂浠诲姟澶辫触"); //涓嬪彂涓� update.setSendStatus(status?Constants.EmpowerStatus.ing:Constants.EmpowerStatus.fail); empowerMapper.updateById(update); @@ -248,6 +334,7 @@ update.setHkId(taskId); update.setSendStatus(Constants.EmpowerStatus.fail); update.setRemark( "娣诲姞涓嬪彂浠诲姟鏁版嵁澶辫触"); + update.setSendInfo( "娣诲姞涓嬪彂浠诲姟鏁版嵁澶辫触"); empowerMapper.updateById(update); } @@ -272,6 +359,7 @@ ||StringUtils.isBlank(c.getDeviceType()) ||StringUtils.isBlank(c.getDeviceIndexCode())){ //蹇呭~鍙傛暟鏍¢獙 + c.setSendInfo("璁惧淇℃伅涓嶆敮鎸佹巿鏉冧笅鍙戯紝妫�鏌ヤ汉鍛樻槸鍚﹀凡涓嬪彂娴峰悍鎴栬�呰澶囨槸鍚︺�愯澶囩被鍨嬨�侀�氶亾鍙枫�戞槸鍚﹀畬鍠�"); c.setRemark("璁惧淇℃伅涓嶆敮鎸佹巿鏉冧笅鍙戯紝妫�鏌ヤ汉鍛樻槸鍚﹀凡涓嬪彂娴峰悍鎴栬�呰澶囨槸鍚︺�愯澶囩被鍨嬨�侀�氶亾鍙枫�戞槸鍚﹀畬鍠�"); return false; } @@ -293,12 +381,26 @@ personInfos.add(pinfo);// param.setResourceInfos(resourceInfos); param.setPersonInfos(personInfos); + + //--------------鍗$墖娣诲姞---------- + /* if(StringUtils.isNotBlank(c.getCardNos())){ + List<TaskDataAdditionCardRequest> cards = new ArrayList<>(); + for(String s : c.getCardNos().split(",")){ + TaskDataAdditionCardRequest tc = new TaskDataAdditionCardRequest(); + tc.setCard(s); + tc.setStatus(HKConstants.OPERA_TYPE.ADD.getKey()); + tc.setCardType(HKConstants.CARD_TYPE.NORMAL.getKey()); + cards.add(tc); + } + param.setCards(cards); + }*/ BaseResponse response = HKService.taskDataAddition(param); if(response!=null && StringUtils.equals(response.getCode(),HKConstants.RESPONSE_SUCCEE)){ return true; }else{ c.setRemark("娣诲姞浜哄憳銆佽澶囬�氶亾鏉冮檺涓嬪彂鏁版嵁澶辫触"+(response!=null?response.getMsg():"")); + c.setSendInfo("娣诲姞浜哄憳銆佽澶囬�氶亾鏉冮檺涓嬪彂鏁版嵁澶辫触"+(response!=null?response.getMsg():"")); return false; } } @@ -324,11 +426,13 @@ queryWrapper.selectAll(Empower.class); queryWrapper.selectAs(Device::getChannelNo,Empower::getDeviceChannelNo); queryWrapper.selectAs(Member::getHkId,Empower::getMemberHkId); - queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId); queryWrapper.selectAs(Device::getHkId,Empower::getDeviceIndexCode); queryWrapper.selectAs(Device::getResourceType,Empower::getDeviceType); + queryWrapper.leftJoin(Member.class,Member::getId,Empower::getMemberId); queryWrapper.leftJoin(Device.class,Device::getId,Empower::getDeviceId); queryWrapper.eq(Empower::getSendStatus,Constants.EmpowerStatus.downloaded); + queryWrapper.isNotNull(Member::getHkId) ; + queryWrapper.orderByAsc(Empower::getSendDate); List<Empower> list = empowerMapper.selectJoinList(Empower.class,queryWrapper); return list; } -- Gitblit v1.9.3