人员同步修复
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.cool.store.dto.enterprise;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.CommonConstants;
|
||||
import com.cool.store.entity.EnterpriseUserDO;
|
||||
import com.cool.store.enums.FSEventTypeEnum;
|
||||
import com.cool.store.enums.UserStatusEnum;
|
||||
@@ -126,6 +127,10 @@ public class EnterpriseUserDTO implements Serializable {
|
||||
regionPaths.add(regionPathMap.get(departmentId));
|
||||
}
|
||||
}
|
||||
//挂跟节点
|
||||
if(CollectionUtils.isEmpty(regionPaths)){
|
||||
regionPaths.add(CommonConstants.ROOT_REGION_PATH);
|
||||
}
|
||||
Collection<String> deptIds = leaderDeptMap.get(user.getUserId());
|
||||
if(CollectionUtils.isNotEmpty(deptIds)){
|
||||
enterpriseUserDO.setIsLeader(Boolean.TRUE);
|
||||
@@ -162,9 +167,15 @@ public class EnterpriseUserDTO implements Serializable {
|
||||
List<String> regionPaths = new ArrayList<>();
|
||||
if(CollectionUtils.isNotEmpty(departmentLists)){
|
||||
for (String departmentId : departmentLists) {
|
||||
regionPaths.add(regionPathMap.get(departmentId));
|
||||
String regionPath = regionPathMap.get(departmentId);
|
||||
if(StringUtils.isNotBlank(regionPath)){
|
||||
regionPaths.add(regionPath);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(CollectionUtils.isEmpty(regionPaths)){
|
||||
regionPaths.add(CommonConstants.ROOT_REGION_PATH);
|
||||
}
|
||||
//创建的时候给个默认值
|
||||
if(FSEventTypeEnum.USER_CREATED.equals(eventType)){
|
||||
enterpriseUserDO.setIsLeader(Boolean.FALSE);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.cool.store.entity;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.CommonConstants;
|
||||
import com.cool.store.dto.enterprise.EnterpriseUserDTO;
|
||||
import com.cool.store.enums.DataSourceEnum;
|
||||
@@ -8,6 +9,7 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
@@ -88,4 +90,30 @@ public class UserRegionMappingDO implements Serializable {
|
||||
}
|
||||
return resultList;
|
||||
}
|
||||
|
||||
|
||||
public static List<UserRegionMappingDO> convertSyncDO(List<EnterpriseUserDO> userList){
|
||||
if(CollectionUtils.isEmpty(userList)){
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
List<UserRegionMappingDO> resultList = new ArrayList<>();
|
||||
for (EnterpriseUserDO user : userList) {
|
||||
List<String> userRegionIds = JSONObject.parseArray(user.getUserRegionIds(), String.class).stream().distinct().collect(Collectors.toList());
|
||||
for (String userRegionId : userRegionIds) {
|
||||
String[] split = userRegionId.split(CommonConstants.PATH_SPILT);
|
||||
if(split.length == 0){
|
||||
continue;
|
||||
}
|
||||
UserRegionMappingDO userRegion = new UserRegionMappingDO();
|
||||
userRegion.setRegionId(split[split.length-1]);
|
||||
userRegion.setUserId(user.getUserId());
|
||||
userRegion.setType(DataSourceEnum.SYNC.getCode());
|
||||
userRegion.setCreateTime(System.currentTimeMillis());
|
||||
userRegion.setUpdateTime(System.currentTimeMillis());
|
||||
userRegion.setDeleted(Boolean.FALSE);
|
||||
resultList.add(userRegion);
|
||||
}
|
||||
}
|
||||
return resultList;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user