From 26a5fcd889f8650d28e56a87de3f9c3b48c5bbfb Mon Sep 17 00:00:00 2001
From: lishuai <260038442@qq.com>
Date: 星期三, 20 十二月 2023 17:12:22 +0800
Subject: [PATCH] 前端调试,字段调整
---
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java | 38 ++++++++++++++++++++++++++++++--------
1 files changed, 30 insertions(+), 8 deletions(-)
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 436a7bc..9e8b703 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
@@ -270,32 +270,47 @@
if(list !=null && list.size()>0) {
List<Member> addList = new ArrayList<>();
List<Member> updateList = new ArrayList<>();
- List<Integer> delIds = new ArrayList<>();
+ List<Integer> delIds = new ArrayList<>();
+ List<Member> delList = new ArrayList<>();
List<Member> allList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
.eq(Member::getIsdeleted,Constants.ZERO)
.eq(Member::getType, Constants.memberType.internal));
- dealUserChangeList(list,addList,updateList,delIds,allList);
+ dealUserChangeList(list,addList,updateList,delList,allList);
if(addList.size()>0){
+ for (Member member:addList) {
+ dealRoleEmpower(member,param.getStartTime(), param.getEndTime());
+ }
memberMapper.insertBatchSomeColumn(addList);
}
if(updateList.size()>0){
for(Member c : updateList){
+ dealRoleEmpower(c,param.getStartTime(), param.getEndTime());
memberMapper.updateById(c);
}
}
- if(delIds.size()>0){
- //鍒犻櫎鎵�鏈夐渶瑕佸垹闄ょ殑缁勭粐淇℃伅(閫昏緫鍒犻櫎锛�
+ if(delList.size()>0){
+ for (Member member:delList) {
+ dealRoleEmpower(member,param.getStartTime(), param.getEndTime());
+ }
+ delIds = delList.stream().map(m->m.getId()).collect(Collectors.toList());
memberMapper.update(null,new UpdateWrapper<Member>().lambda().set(Member::getHkStatus,Constants.ZERO)
.set(Member::getIsdeleted, Constants.ONE).in(Member::getId,delIds));
}
-
}else{
throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鍚屾ERP鏁版嵁涓虹┖锛�");
}
return null;
}
- private void dealUserChangeList(List<UserListRespone> list, List<Member> addList, List<Member> updateList, List<Integer> delIds, List<Member> allList) {
+ public void dealRoleEmpower(Member member,Date startTime , Date endTime){
+ List<Integer> doorIds = null;
+ doorIds = getRoleIdByParam(member.getRoleIds(),member);
+ //濡傛灉鏈夋巿鏉冮棬绂佹暟鎹紝杩涜鐢ㄦ埛鎺堟潈鏁版嵁涓嬪彂浠诲姟鍒涘缓
+ dealMemberRoleEmpower(member,doorIds,startTime,endTime);
+ }
+
+
+ private void dealUserChangeList(List<UserListRespone> list, List<Member> addList, List<Member> updateList,List<Member> delList, List<Member> allList) {
Date date = new Date();
for(UserListRespone response : list){
//鏍规嵁 erpId 鏌ヨ鐢ㄦ埛淇℃伅锛屽垽鏂槸鏂板杩樻槸鏇存柊
@@ -311,7 +326,10 @@
//濡傛灉鏄洿鏂�
if(Constants.formatIntegerNum(response.getIsdeleted()) == Constants.ONE){
//濡傛灉宸插垹闄わ紝鍔犲叆鍒犻櫎闆嗗悎涓�
- delIds.add(member.getId());
+ member.setRoleIds(response.getRoleIds());
+ delList.add(member);
+// delIds.add(member.getId());
+
continue;
}
updateList.add(addUpdateMemberModel(response,member,date));
@@ -320,7 +338,8 @@
if(allList!=null && allList.size()>0){
for(Member c : allList){
if(isUserDeleted(c,list)){
- delIds.add(c.getId());
+ delList.add(c);
+// delIds.add(c.getId());
}
}
}
@@ -341,6 +360,7 @@
member.setIdcardDecode(Constants.getTuominStr(param.getIdNo()));
member.setCompanyId(param.getOrgId());
member.setHkStatus(Constants.ZERO);
+ member.setRoleIds(param.getRoleIds());
return member;
}
@@ -353,12 +373,14 @@
member.setEditDate(new Date());
member.setErpDate(new Date());
member.setHkStatus(Constants.ZERO);
+ member.setRoleIds(param.getRoleIds());
return member;
}
private boolean isUserDeleted(Member c, List<UserListRespone> list) {
for(UserListRespone m : list){
if(StringUtils.equals(c.getErpId(),m.getId().toString())){
+ c.setRoleIds(m.getRoleIds());
return true;
}
}
--
Gitblit v1.9.3