From 98661dae111965b72b758a14d687b3218c2e2089 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 22 十二月 2023 15:38:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java | 96 ++++++++++++++++++++++++++++++++++-------------
1 files changed, 69 insertions(+), 27 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java
index 8635604..3ebd189 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java
@@ -78,6 +78,7 @@
return;
}
Date date = new Date();
+ List<OrgEditRequest> editHkList = new ArrayList<>();
List<OrgAddRequest> addList = new ArrayList<>();
List<Company> updateList = new ArrayList<>();
List<Integer> delIds = new ArrayList<>();
@@ -104,20 +105,21 @@
c.setHkId(m.getOrgIndexCode());
updateList.add(c);
}else{
- //鍒犻櫎鐨勬暟鎹紝杩涜鍒犻櫎
- delIds.add(c.getId());
- delHKIds.add(c.getHkId());
- //鍒犻櫎娴峰悍鍘熸湁鐨勬暟鎹紝鍐嶆柊澧炵粍缁�
- OrgAddRequest m = getOrgAddModel(c,rootOrgId);
- addList.add(m);
- c.setHkId(m.getOrgIndexCode());
+ if(Constants.equalsInteger(c.getIsdeleted(),Constants.ONE)){
+ //鍒犻櫎鐨勬暟鎹紝杩涜鍒犻櫎
+ delIds.add(c.getId());
+ delHKIds.add(c.getHkId());
+ }else{
+ //濡傛灉鏇存柊
+ editHkList.add(getOrgHkEditModel(c,rootOrgId));
+ }
updateList.add(c);
}
}
//澶勭悊鍒犻櫎鏁版嵁
doHkDeleteOrg(delIds,delHKIds,date);
//澶勭悊鏂板鏁版嵁
- doHkAddOrg(updateList,addList);
+ doHkAddOrg(updateList,addList,editHkList);
}catch (Exception e){
e.printStackTrace();
}finally {
@@ -131,24 +133,51 @@
* @param updateList
* @param addList
*/
- private void doHkAddOrg(List<Company> updateList, List<OrgAddRequest> addList) {
+ private void doHkAddOrg(List<Company> updateList, List<OrgAddRequest> addList, List<OrgEditRequest> editHkList) {
Date date = new Date();
-
- BaseResponse<OrgOrUserAddResponse> result = HKService.addBatchOrg(addList);
- if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
- OrgOrUserAddResponse data = result.getData();
- if(data.getSuccesses()!=null && data.getSuccesses().size()>0){
- //澶勭悊鏂板鎴愬姛鐨勬暟鎹紝淇敼娴峰悍鍚屾鐘舵��
- for(OrgOrUserAddSuccessResponse r :data.getSuccesses()){
- Integer index = getCompanyId(updateList,r.getOrgIndexCode());
- if(index!=null){
- companyMapper.update(null,new UpdateWrapper<Company>().lambda()
- .set(Company::getHkStatus,Constants.ONE)
- .set(Company::getHkDate,date)
- .set(Company::getHkId,r.getOrgIndexCode())
- .eq(Company::getId, index) );
- }
- }
+ if(addList!=null &&addList.size()>0){
+ //澶勭悊鏂板
+ BaseResponse<OrgOrUserAddResponse> result = HKService.addBatchOrg(addList);
+ if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
+ OrgOrUserAddResponse data = result.getData();
+ if(data.getSuccesses()!=null && data.getSuccesses().size()>0){
+ //澶勭悊鏂板鎴愬姛鐨勬暟鎹紝淇敼娴峰悍鍚屾鐘舵��
+ for(OrgOrUserAddSuccessResponse r :data.getSuccesses()){
+ Integer index = getCompanyId(updateList,r.getOrgIndexCode());
+ if(index!=null){
+ companyMapper.update(null,new UpdateWrapper<Company>().lambda()
+ .set(Company::getHkStatus,Constants.ONE)
+ .set(Company::getHkDate,date)
+ .set(Company::getHkId,r.getOrgIndexCode())
+ .eq(Company::getId, index) );
+ }
+ }
+ }
+ }
+ }
+ if(editHkList!=null){
+ //鎵ц鏇存柊鎿嶄綔
+ List<String> success = new ArrayList<>();
+ List<String> error = new ArrayList<>();
+ for(OrgEditRequest param : editHkList){
+ BaseResponse result = HKService.editOrg(param);
+ if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
+ success.add(param.getOrgIndexCode());
+ }else{
+ error.add(param.getOrgIndexCode());
+ }
+ }
+ if(success.size()>0){
+ companyMapper.update(null,new UpdateWrapper<Company>().lambda()
+ .set(Company::getHkStatus,Constants.ONE)
+ .set(Company::getHkDate,date)
+ .in(Company::getHkId, success) );
+ }
+ if(error.size()>0){
+ companyMapper.update(null,new UpdateWrapper<Company>().lambda()
+ .set(Company::getHkStatus,Constants.TWO)
+ .set(Company::getHkDate,date)
+ .in(Company::getHkId, error) );
}
}
}
@@ -173,6 +202,13 @@
return model;
}
+ private OrgEditRequest getOrgHkEditModel(Company c,String rootOrgId) {
+ OrgEditRequest model = new OrgEditRequest();
+ model.setOrgIndexCode(c.getHkId());
+ model.setOrgName(c.getName());
+ return model;
+
+ }
/**
* 瀵规捣搴峰垹闄ょ粍缁囦俊鎭�
@@ -186,11 +222,11 @@
OrgDelRequest request = new OrgDelRequest();
request.setIndexCodes( delHkIds.toArray(new String[]{}));
BaseResponse<List<OrgUpdateFailureResponse>> result = HKService.delBatchOrg(request);
- if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
+ if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE)){
List<String> fIds = new ArrayList<>();
if(result.getData()!=null){
for(OrgUpdateFailureResponse r : result.getData()){
- if(!r.getCode().equals("0x00072001")){
+ if(!r.getCode().equals("0x00052102")){
//涓嶅瓨鍦ㄧ殑涔熺畻鍒犻櫎鎴愬姛
fIds.add(r.getOrgIndexCode());//鍒犻櫎澶辫触鐨勬暟鎹泦鍚�
}
@@ -200,8 +236,14 @@
companyMapper.update(null,new UpdateWrapper<Company>().lambda()
.set(Company::getHkStatus,Constants.ONE)
.set(Company::getHkDate,date)
+ .set(Company::getHkId,null )
.in(Company::getId, delIds)
.notIn(fIds.size()>0,Company::getHkId, fIds));
+ companyMapper.update(null,new UpdateWrapper<Company>().lambda()
+ .set(Company::getHkStatus,Constants.TWO)
+ .set(Company::getHkDate,date)
+ .in(Company::getId, delIds)
+ .in(fIds.size()>0,Company::getHkId, fIds));
}
}
--
Gitblit v1.9.3