From e7b486f54ecee830749151e0fd8feae726fd4107 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 22 十二月 2023 13:45:21 +0800
Subject: [PATCH] 海康接口对接开发
---
server/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java | 1
server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/request/erp/UserFailRequest.java | 2
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 6 +-
server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java | 4 +-
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java | 94 ++++++++++++++++++++++++++++++++++-------------
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java | 5 +-
6 files changed, 78 insertions(+), 34 deletions(-)
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/request/erp/UserFailRequest.java b/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/request/erp/UserFailRequest.java
index 0282a76..fa678e2 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/request/erp/UserFailRequest.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/erp/model/openapi/request/erp/UserFailRequest.java
@@ -10,7 +10,7 @@
*/
@Data
@ApiModel(value = "鍛樺伐鍚屾澶辫触鎺ㄩ�佽姹傚弬鏁�" )
-public class UserFailRequest {
+public class UserFailRequest {
@ApiModelProperty(value = "鍛樺伐id" )
private String userId;
diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
index 825ab86..8ea609a 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -84,8 +84,8 @@
String res = HKTools.delOrg(JSONObject.toJSONString(param));
TypeReference typeReference =
- new TypeReference< BaseResponse >(){};
- BaseResponse result = JSONObject.parseObject(res, typeReference.getType());
+ new TypeReference< BaseResponse<List<OrgUpdateFailureResponse>> >(){};
+ BaseResponse<List<OrgUpdateFailureResponse>> result = JSONObject.parseObject(res, typeReference.getType());
logResult(result,"娴峰悍鍒犻櫎缁勭粐");
return result;
}catch (Exception e){
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index ced2d99..f99f148 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -542,8 +542,8 @@
@Override
public PageData<MemberInfoDTO> findMemberInfoPage(PageWrap<MemberQuery> pageWrap) {
- /* //鏄惁鏄暟瀛�
- boolean number = Validator.isNumber(pageWrap.getModel().getKeyWords());
+ //鏄惁鏄暟瀛�
+ /* boolean number = Validator.isNumber(pageWrap.getModel().getKeyWords());
//鏄惁鍖呭惈涓枃
boolean b = Validator.hasChinese(pageWrap.getModel().getKeyWords());
//鏄惁鍖呭惈鑻辨枃
@@ -637,7 +637,7 @@
queryWrapper.selectAll(Member.class)
.selectAs(Company::getName,MemberInfoDTO::getCompanyName)
.select(" (select ua.CREATE_DATE from user_action ua where ua.MEMBER_ID=t.id and ua.ISDELETED=0 and ua.type=1 order by ua.CREATE_DATE limit 1) as userActionType1")
- .select(" (select su.USERNAME from user_action uac left join system_user su on su.id=uac.CREATOR where uac.MEMBER_ID=t.id and uac.ISDELETED=0 and uac.type=1 order by uac.CREATE_DATE limit 1) as creatorName")
+ .select(" (select concat(su.USERNAME,'&&',uac.create_date) from user_action uac left join system_user su on su.id=uac.CREATOR where uac.MEMBER_ID=t.id and uac.ISDELETED=0 and uac.type=1 order by uac.CREATE_DATE limit 1) as creatorName")
/* .select(" (select count(v.id) from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0) as visitsCount")*/
.select(" (select STARTTIME from visits v where v.MEMBER_ID=t.id and v.ISDELETED=0 order by CREATE_DATE limit 1) as visitsLastDate");
diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
index 8f6c7b0..c57b877 100644
--- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
+++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java
@@ -110,7 +110,7 @@
public int initHkConfig(){
ErpConstants.approveUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_APPROVE_URL).getCode();
ErpConstants.orgListUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_ORGLIST_URL).getCode();
- ErpConstants.userListUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_USERSTATUS_RL).getCode();
+ ErpConstants.userListUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_USERLIST_URL).getCode();
ErpConstants.userStatusUrl=systemDictDataBiz.queryByCode(Constants.ERP,Constants.ERP_USERSTATUS_RL).getCode();
return 0;
}
@@ -292,10 +292,11 @@
.set(Member::getHkStatus,Constants.ZERO)
.set(Member::getIsdeleted, Constants.ONE).in(Member::getId,delIds));
}
+ return "鍚屾鏁版嵁锛氭柊澧炪��"+addList.size()+"銆戞潯锛屾洿鏂般��"+updateList.size()+"銆戞潯锛屽垹闄ゃ��"+delIds.size()+"銆戞潯";
}else{
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鍚屾ERP鏁版嵁涓虹┖锛�");
}
- return null;
+
}
public void dealRoleEmpower(Member member,Date startTime , Date endTime){
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 03fafb7..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;
+
+ }
/**
* 瀵规捣搴峰垹闄ょ粍缁囦俊鎭�
@@ -190,7 +226,7 @@
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));
}
}
diff --git a/server/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java b/server/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
index cc8cb5e..4266fda 100644
--- a/server/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
+++ b/server/openapi/src/main/java/com/doumee/api/web/ErpResourceController.java
@@ -72,6 +72,7 @@
r.setId(ids[i]);
r.setName(names[i-1]);
r.setCode( ids[i]);
+ r.setIdNo("34112219880427042"+i);
r.setIsdeleted(Constants.ONE);
r.setName(names[i]);
r.setFaceImg("/20223402/"+r.getId()+".png");
--
Gitblit v1.9.3