Commit 40911c25 authored by 麻笑宇's avatar 麻笑宇

Merge remote-tracking branch 'origin/develop_tzs_bugfix' into develop_tzs_bugfix

parents 47ac8b69 173927c6
...@@ -1023,6 +1023,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -1023,6 +1023,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResponseModel<?> importUserBatch(MultipartFile multipartFile) { public ResponseModel<?> importUserBatch(MultipartFile multipartFile) {
Map<Long, TzsUserInfo> userInfoMap = new HashMap<>();
try { try {
List<UserImportDto> userItems = ExcelUtil.readFirstSheetExcel(multipartFile, UserImportDto.class, 2); List<UserImportDto> userItems = ExcelUtil.readFirstSheetExcel(multipartFile, UserImportDto.class, 2);
// 1.数据检验 // 1.数据检验
...@@ -1038,10 +1039,21 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -1038,10 +1039,21 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
this.buildMergeFields(userItems, userSet); this.buildMergeFields(userItems, userSet);
// 3.数据入库 // 3.数据入库
// 3.1业务库入库 // 3.1业务库入库
Map<Long, TzsUserInfo> userInfoMap = this.saveImportData2Db(userSet); userInfoMap = this.saveImportData2Db(userSet);
// 3.2部分类型用户平台创建人员 // 3.2部分类型用户平台创建人员
this.createAmosUser(userInfoMap, userSet); this.createAmosUser(userInfoMap, userSet);
} catch (Exception e) { } catch (Exception e) {
if(!userInfoMap.values().isEmpty()){
List<String> userIds = userInfoMap.values().stream().map(TzsUserInfo::getAmosUserId).filter(StringUtils::isNotEmpty).collect(Collectors.toList());
for(String userId : userIds){
// 单个删除,平台接口删除时,判断了有才能删除,匹配删除可能存在某个用户不存在导致删除失败
try {
Privilege.agencyUserClient.multDeleteUser(userId);
} catch (Exception e1) {
log.error("删除用户:{},失败:{}!", userId, e1.getMessage());
}
}
}
throw new RuntimeException(e); throw new RuntimeException(e);
} }
return ResponseHelper.buildResponse("succese"); return ResponseHelper.buildResponse("succese");
...@@ -1071,25 +1083,26 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -1071,25 +1083,26 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
} }
private void bindUserToGroup(Collection<TzsUserInfo> values) { private void bindUserToGroup(Collection<TzsUserInfo> values) {
List<String> userIds =values.stream().map(TzsUserInfo::getAmosUserId).collect(Collectors.toList()); List<String> userIds =values.stream().map(TzsUserInfo::getAmosUserId).filter(StringUtils::isNotEmpty).collect(Collectors.toList());
try { try {
// 绑定企业整改用户组 if(!userIds.isEmpty()){
String roleGroupCode = "6596"; // 绑定企业整改用户组
DataDictionary roleGroup = iDataDictionaryService String roleGroupCode = "6596";
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, roleGroupCode).eq(DataDictionary::getType, ROLE_GROUP)); DataDictionary roleGroup = iDataDictionaryService
if (!ObjectUtils.isEmpty(roleGroup) && roleGroup.getExtend() != null) { .getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, roleGroupCode).eq(DataDictionary::getType, ROLE_GROUP));
Privilege.groupUserClient.create(Long.valueOf(roleGroup.getExtend()), userIds); if (!ObjectUtils.isEmpty(roleGroup) && roleGroup.getExtend() != null) {
} Privilege.groupUserClient.create(Long.valueOf(roleGroup.getExtend()), userIds);
// 绑定两个规定用户组 }
for(TzsUserInfo userInfo : values) { // 绑定两个规定用户组
String newPost = userInfo.getPost(); for(TzsUserInfo userInfo : values) {
List<String> posts = Optional.ofNullable(JSONArray.parseArray(newPost, String.class)).orElse(new ArrayList<>()); String newPost = userInfo.getPost();
for (String code : posts) { List<String> posts = Optional.ofNullable(JSONArray.parseArray(newPost, String.class)).orElse(new ArrayList<>());
bind2PermissionGroup(Collections.singletonList(userInfo.getAmosUserId()), code); for (String code : posts) {
bind2PermissionGroup(Collections.singletonList(userInfo.getAmosUserId()), code);
}
} }
} }
} catch (Exception e) { } catch (Exception e) {
Privilege.agencyUserClient.multDeleteUser(StringUtils.join(userIds, ","));
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
throw new BadRequest(e.getMessage()); throw new BadRequest(e.getMessage());
} }
...@@ -1245,6 +1258,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI ...@@ -1245,6 +1258,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
tzsUserInfoMapper.updateById(tzsUserInfo); tzsUserInfoMapper.updateById(tzsUserInfo);
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
// 防止 创建成功后tzsUserInfo.setAmosUserId(userResult.getResult().getUserId()) 报错导致外侧删除不成功,健壮性处理,正常不会出错
if (userResult != null && userResult.getResult() != null if (userResult != null && userResult.getResult() != null
&& StringUtils.isNotEmpty(userResult.getResult().getUserId())) { && StringUtils.isNotEmpty(userResult.getResult().getUserId())) {
Privilege.agencyUserClient.multDeleteUser(userResult.getResult().getUserId()); Privilege.agencyUserClient.multDeleteUser(userResult.getResult().getUserId());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment