Commit 9802536d authored by suhuiguang's avatar suhuiguang

1.人员导入开发联调

parent 349cabd5
......@@ -17,7 +17,7 @@ public class EquipTypeConverter implements Converter<String> {
CODE_MAP.put("压力容器", "2000");
CODE_MAP.put("电梯", "3000");
CODE_MAP.put("起重机械", "4000");
CODE_MAP.put("场(厂)内专用机动车辆", "5000");
CODE_MAP.put("场机动车辆", "5000");
CODE_MAP.put("大型游乐设施", "6000");
CODE_MAP.put("压力管道", "8000");
CODE_MAP.put("客运索道", "9000");
......
......@@ -7,7 +7,7 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Target({ElementType.FIELD,ElementType.ANNOTATION_TYPE})
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = CustomerEquipTypeValidator.class)
public @interface CustomerEquipTypeCheck {
......
......@@ -8,49 +8,46 @@ import com.yeejoin.amos.boot.module.tcm.api.customer.CustomerEquipTypeCheck;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Date;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.*;
@Data
@CustomerEquipTypeCheck(message = "设备类型不能为空")
public class UserImportDto {
@NotBlank(message = "单位名称不能为空")
@NotBlank(message = "单位名称不能为空")
@ExcelProperty(value = "单位名称")
private String unitName;
@NotBlank(message = "单位统一信用代码不能为空")
@NotBlank(message = "单位统一信用代码不能为空")
@ExcelProperty(value = "单位统一信用代码")
private String unitCode;
@NotBlank(message = "单位类型不能为空")
@NotBlank(message = "单位类型不能为空")
@ExcelProperty(value = "单位类型")
private String unitType;
@NotBlank(message = "姓名不能为空")
@NotBlank(message = "姓名不能为空")
@ExcelProperty(value = "姓名")
private String name;
@NotBlank(message = "联系电话不能为空")
@NotBlank(message = "联系电话不能为空")
@ExcelProperty(value = "联系电话")
private String phone;
@NotBlank(message = "证件类型不能为空")
@NotBlank(message = "证件类型不能为空")
@ExcelProperty(value = "证件类型", converter = CertificateTypeConverter.class)
private String certificateType;
@NotBlank(message = "证件编号不能为空")
@NotBlank(message = "证件编号不能为空")
@ExcelProperty(value = "证件编号")
private String certificateNum;
@NotBlank(message = "人员类型不能为空")
@NotBlank(message = "人员类型不能为空")
@ExcelProperty(value = "人员类型", converter = PostTypeConverter.class)
private String post;
@CustomerEquipTypeCheck(message = "设备类型不能为空")
@ExcelProperty(value = "设备类型", converter = EquipTypeConverter.class)
private String equipType;
......@@ -85,6 +82,9 @@ public class UserImportDto {
@ExcelProperty
private Long seq;
@ExcelIgnore
private Set<String> equipTypeList;
@Override
public boolean equals(Object o) {
if (this == o) return true;
......
......@@ -356,7 +356,7 @@ public class TzsUserInfoController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/import")
@ApiOperation(value = "人员导入",httpMethod = "POST")
@ApiOperation(value = "人员导入",httpMethod = "POST",notes = "导入已经存在公司的人员")
public ResponseModel<?> importUser(@RequestBody MultipartFile file) {
return tzsUserInfoService.importUserBatch(file);
}
......
......@@ -31,6 +31,7 @@ import com.yeejoin.amos.boot.module.tcm.api.service.ITzsUserInfoService;
import com.yeejoin.amos.boot.module.tcm.api.vo.TzsUserInfoVo;
import com.yeejoin.amos.boot.module.tcm.api.vo.UserInfoVo;
import com.yeejoin.amos.boot.module.tcm.flc.biz.service.impl.RegUnitInfoServiceImpl;
import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.Privilege;
......@@ -187,8 +188,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
LambdaQueryWrapper<DataDictionary> lambda = new QueryWrapper<DataDictionary>().lambda();
lambda.in(DataDictionary::getSequenceNbr, dictIds);
List<DataDictionary> dataDictionaries = iDataDictionaryService.getByTypeAndDesc(QYRYGW, QYRYGW_NAME);
JSONArray finalDictIds = dictIds;
List<DataDictionary> postDataList = dataDictionaries.stream().filter(d -> finalDictIds.stream().anyMatch(id -> id.toString().equals(d.getSequenceNbr().toString()))).collect(Collectors.toList());
List<DataDictionary> postDataList = dataDictionaries.stream().filter(d -> dictIds.stream().anyMatch(id -> id.toString().equals(d.getSequenceNbr().toString()))).collect(Collectors.toList());
return postDataList.stream().map(DataDictionary::getName).collect(Collectors.joining(","));
}
......@@ -351,15 +351,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
String post = tzsUserInfo.getPost();
if (post.contains(PersonManageRoleEnum.code.getId().toString())) {
String companyType = tzsUserInfoMapper.selectCompanyTypeById(companySeq);
if (companyType.contains(PersonManageRoleEnum.jyjc.getName())) {
roleIds.add(PersonManageRoleEnum.jyjc.getId());
}
if (companyType.contains(PersonManageRoleEnum.use.getName())) {
roleIds.add(PersonManageRoleEnum.use.getId());
}
if (companyType.contains(PersonManageRoleEnum.agw.getName())) {
roleIds.add(PersonManageRoleEnum.agw.getId());
}
setBizOperateUserRole(companyType, roleIds);
}
Map<Long, List<Long>> roleSeqMap = new HashMap<>();
......@@ -386,11 +378,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
// 绑定两个规定用户组
post = post.replace("[", "").replace("]", "").replace("\"", "");
for (String code : post.split(",")) {
DataDictionary groupId = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, code).likeRight(DataDictionary::getType, QYRYGW));
if (!ObjectUtils.isEmpty(groupId) && groupId.getExtend() != null) {
Privilege.groupUserClient.create(Long.valueOf(groupId.getExtend()), userIds);
}
bind2PermissionGroup(userIds, code);
}
tzsUserInfoMapper.updateById(tzsUserInfo);
}
......@@ -988,7 +976,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
UserImportDto userImportDto = userItems.get(i);
Set<ConstraintViolation<UserImportDto>> violations = validator.validate(userImportDto);
for (ConstraintViolation<UserImportDto> violation : violations) {
errors.add("非法数据,第" + i + "行" + violation.getMessage());
errors.add("非法数据,第" + (i + 1) + "行" + violation.getMessage());
}
}
if (!errors.isEmpty()) {
......@@ -1008,7 +996,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
phoneCheckRepeatCount.forEach(((k, v) -> {
if (v.size() > 1) {
String phone = k.split("_")[0];
errors.add(String.format("非法数据,手机号%s,在单位统一信用代码:%s下重复,请检查后进行上传!", phone, StringUtils.join(v, ",")));
errors.add(String.format("非法数据,存在手机号%s,在多个单位统一信用代码:%s下共用,请检查后进行上传!", phone, StringUtils.join(v, ",")));
}
}));
// 3.手机号重复检验,手机号全局唯一,不同单位下的手机号不能相同 todo 新写判断逻辑
......@@ -1026,7 +1014,7 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
certNoCheckRepeatCount.forEach(((k, v) -> {
if (v.size() > 1) {
String phone = k.split("_")[0];
errors.add(String.format("非法数据,存在手机号%s相同,但是证件号码不一样的数据:证件号码:%s,请检查后进行上传!", phone, StringUtils.join(v, ",")));
errors.add(String.format("非法数据,存在多个证件号码:%s,共用相同的手机号%s,请检查后进行上传!", StringUtils.join(v, ","), phone));
}
}));
return errors;
......@@ -1060,12 +1048,83 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
}
private void createAmosUser(Map<Long, TzsUserInfo> userInfoMap, Set<UserImportDto> userSet) {
// 公司缓存
// 1.公共数据处理
// 1.1公司缓存
Map<String, CompanyModel> companyCodeCompanyMap = new ConcurrentHashMap<>();
Map<Long, UserImportDto> userSeqImportDataMap = userSet.stream().collect(Collectors.toMap(UserImportDto::getSeq, Function.identity()))
Map<Long, UserImportDto> userSeqImportDataMap = userSet.stream().collect(Collectors.toMap(UserImportDto::getSeq, Function.identity()));
// 1.2单位类型下角色缓存
List<DataDictionary> unitTypeList = regUnitInfoService.setAndGetUnitTypeList();
Map<String, DataDictionary> dataDictionaryMap = unitTypeList.stream().collect(Collectors.toMap(DataDictionary::getName, Function.identity(), (k1, k2) -> k1));
// 1.3通用角色-普通用户处理
List<RoleModel> allRoleList = getCommonRoleModels();
// 2.用户创建
// 2.1创建前检验-单位类型是否合法(用户的单位类型不能大于所在公司的注册时的单位类型)
userInfoMap.forEach((k, v) -> {
checkOneUser(v, userSeqImportDataMap.get(k), companyCodeCompanyMap);
});
// 2.2创建
userInfoMap.forEach((k, v) -> {
createOneUser(v, userSeqImportDataMap.get(k), companyCodeCompanyMap);
createOneUser(v, userSeqImportDataMap.get(k), companyCodeCompanyMap, dataDictionaryMap, allRoleList);
});
// 3.绑定用户到用户组
this.bindUserToGroup(userInfoMap.values());
}
private void bindUserToGroup(Collection<TzsUserInfo> values) {
List<String> userIds =values.stream().map(TzsUserInfo::getAmosUserId).collect(Collectors.toList());
try {
// 绑定企业整改用户组
String roleGroupCode = "6596";
DataDictionary roleGroup = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, roleGroupCode).eq(DataDictionary::getType, ROLE_GROUP));
if (!ObjectUtils.isEmpty(roleGroup) && roleGroup.getExtend() != null) {
Privilege.groupUserClient.create(Long.valueOf(roleGroup.getExtend()), userIds);
}
// 绑定两个规定用户组
for(TzsUserInfo userInfo : values) {
String newPost = userInfo.getPost();
List<String> posts = Optional.ofNullable(JSONArray.parseArray(newPost, String.class)).orElse(new ArrayList<>());
for (String code : posts) {
bind2PermissionGroup(Collections.singletonList(userInfo.getAmosUserId()), code);
}
}
} catch (Exception e) {
Privilege.agencyUserClient.multDeleteUser(StringUtils.join(userIds, ","));
log.error(e.getMessage(), e);
throw new BadRequest(e.getMessage());
}
}
/**
* 两个规定用户组绑定
* @param userIds 用户id
* @param post 人员类型
*/
private void bind2PermissionGroup(List<String> userIds, String post) {
// post name 用户组id
// 6549 安全员 1712372048442978305
// 6548 主要负责人 1712372027123331074
// 6547 安全总监 1712372007611428865
// 6546 普通员工 1712371988107915266
// 6552 作业人员 1712372137114759170
// 6551 质量安全员 1712372116055158786
// 6550 质量安全总监 1712372080231608322
DataDictionary groupId = iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, post).likeRight(DataDictionary::getType, QYRYGW));
if (!ObjectUtils.isEmpty(groupId) && groupId.getExtend() != null) {
Privilege.groupUserClient.create(Long.valueOf(groupId.getExtend()), userIds);
}
}
private List<RoleModel> getCommonRoleModels() {
String commonRule = "1554";
List<RoleModel> allRoleList = new ArrayList<>();
DataDictionary unitType = iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, commonRule).eq(DataDictionary::getType, USER_ROLE));
String role = unitType.getExtend() != null ? unitType.getExtend() : "";
for (String s : role.split(",")) {
RoleModel roleModel = Privilege.roleClient.seleteOne(Long.valueOf(s)).getResult();
allRoleList.add(roleModel);
}
return allRoleList;
}
private Map<Long, TzsUserInfo> saveImportData2Db(Set<UserImportDto> userSet) {
......@@ -1079,106 +1138,97 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
userInfo.setEmail(dto.getEmail());
userInfo.setPhone(dto.getPhone());
userInfo.setAddress(dto.getAddress());
Set<String> postSet = dto.getUnitTypePostMap().values().stream().flatMap(Collection::stream).collect(Collectors.toSet());
// TODO 无资质导入,默认post = newPost
userInfo.setPost(JSON.toJSONString(dto.getPost().split(",")));
userInfo.setPost(JSON.toJSONString(postSet));
// TODO 无资质导入,默认post = newPost
userInfo.setNewPost(JSON.toJSONString(dto.getPost().split(",")));
userInfo.setNewPost(JSON.toJSONString(postSet));
String postName = this.setPostName(userInfo.getNewPost());
userInfo.setPostName(postName);
userInfo.setBirthday(dto.getBirthday());
userInfo.setEducation(dto.getEducation());
userInfo.setSpeciality(dto.getSpeciality());
userInfo.setUnitName(dto.getUnitName());
userInfo.setCertificateNum(dto.getCertificateNum());
userInfo.setCertificateType(dto.getCertificateType());
userInfo.setIsDelete(false);
userInfo.setLockStatus(UNLOCK);
userInfo.setUnitCode(dto.getUnitCode());
userInfo.setEquipType(dto.getEquipType());
userInfo.setJobTitle(dto.getJobTitle());
userInfo.setEquipType(JSON.toJSONString(dto.getEquipTypeList()));
return userInfo;
}).collect(Collectors.toList());
this.saveOrUpdateBatch(userInfos);
super.saveOrUpdateBatch(userInfos);
return userInfos.stream().collect(Collectors.toMap(BaseEntity::getSequenceNbr, Function.identity()));
}
private void buildMergeFields(List<UserImportDto> userItems, Set<UserImportDto> userSet) {
for (UserImportDto userImportDto : userSet) {
List<UserImportDto> distinctData = userItems.stream().filter(u -> u.getPhone().equals(userImportDto.getPhone())).collect(Collectors.toList());
for (UserImportDto user : distinctData) {
List<UserImportDto> oData = userItems.stream().filter(u -> u.getPhone().equals(userImportDto.getPhone())).collect(Collectors.toList());
for (UserImportDto user : oData) {
Map<String, Set<String>> map = userImportDto.getUnitTypePostMap();
if (map == null) {
map = new HashMap<>();
map.put(user.getUnitType(), Sets.newHashSet(user.getPost()));
userImportDto.setUnitTypePostMap(map);
} else {
map.get(user.getUnitType()).add(user.getPost());
}
Set<String> equipTypes = userImportDto.getEquipTypeList();
if (equipTypes == null) {
Set<String> equipTypesNew = new HashSet<>();
equipTypesNew.add(user.getEquipType());
userImportDto.setEquipTypeList(equipTypesNew);
} else {
equipTypes.add(user.getEquipType());
}
}
userImportDto.getEquipTypeList().remove(null);
userImportDto.getEquipTypeList().remove("");
userImportDto.setSeq(sequence.nextId());
}
}
public void createOneUser(TzsUserInfo tzsUserInfo, UserImportDto userImportDto, Map<String, CompanyModel> companyCodeCompanyMap) {
CompanyModel companyModel;
if (companyCodeCompanyMap.get(tzsUserInfo.getUnitCode()) != null) {
companyModel = companyCodeCompanyMap.get(tzsUserInfo.getUnitCode());
} else {
companyModel = baseEnterpriseInfoService.getBaseMapper().getOneByCompanyCode(tzsUserInfo.getUnitCode());
companyCodeCompanyMap.put(tzsUserInfo.getUnitCode(), companyModel);
}
public void checkOneUser(TzsUserInfo tzsUserInfo, UserImportDto userImportDto, Map<String, CompanyModel> companyCodeCompanyMap) {
CompanyModel companyModel = getCompanyModelUseCache(tzsUserInfo, companyCodeCompanyMap);
String companyType = companyModel.getCompanyType();
// 默认的密码
String passwd = DesUtil.encode("a_" + tzsUserInfo.getPhone(), "qaz");
// 默认都有:普通用户对应的角色、字在企业人员用户组下
String roles = "1554";
String roleGroupCode = "6596";
Set<String> appCodesSet = new HashSet<>();
List<DataDictionary> unitTypeList = regUnitInfoService.setAndGetUnitTypeList();
Map<String, DataDictionary> dataDictionaryMap = unitTypeList.stream().collect(Collectors.toMap(DataDictionary::getCode, Function.identity(), (k1, k2) -> k1));
userImportDto.getUnitTypePostMap().forEach((k, v) -> {
DataDictionary unitType = dataDictionaryMap.get(k);
String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : "";
String[] appCodes = appCode.split(",");
Collections.addAll(appCodesSet, appCodes);
});
// 增加约束,增加的人的单位类型不能大于单位的单位类型
boolean existIllegalUnitType = userImportDto.getUnitTypePostMap().keySet().stream().anyMatch(u -> !companyType.contains(u));
if(existIllegalUnitType){
throw new BadRequest("导入的用户:" + tzsUserInfo.getName() + ",手机号:" + tzsUserInfo.getPhone() + ",公司类型只能为:" + companyType + "之一!");
}
}
public void createOneUser(TzsUserInfo tzsUserInfo, UserImportDto userImportDto, Map<String, CompanyModel> companyCodeCompanyMap, Map<String, DataDictionary> dataDictionaryMap, List<RoleModel> allRoleList) {
FeignClientResult<AgencyUserModel> userResult = null;
try {
CompanyModel companyModel = getCompanyModelUseCache(tzsUserInfo, companyCodeCompanyMap);
String companyType = companyModel.getCompanyType();
// 默认的密码
String passwd = DesUtil.encode("a_" + tzsUserInfo.getPhone(), "qaz");
// 获取对应单位类型下的引用并去重
Set<String> appCodesSet = getAppKeys(userImportDto, dataDictionaryMap);
List<Long> roleIds = new ArrayList<>();
allRoleList.forEach(r -> {
if (!roleIds.contains(r.getSequenceNbr())) {
roleIds.add(r.getSequenceNbr());
}
});
AgencyUserModel agencyUserModel = new AgencyUserModel();
agencyUserModel.setUserName(tzsUserInfo.getPhone());
agencyUserModel.setRealName(tzsUserInfo.getName());
agencyUserModel.setLockStatus("UNLOCK");
agencyUserModel.setLockStatus(UNLOCK);
agencyUserModel.setPassword(passwd);
agencyUserModel.setRePassword(passwd);
agencyUserModel.setAgencyCode("tzs");
agencyUserModel.setMobile(tzsUserInfo.getPhone());
agencyUserModel.setEmail(tzsUserInfo.getEmail());
List<RoleModel> allRoleList = new ArrayList<>();
List<Long> roleIds = new ArrayList<>();
DataDictionary unitType = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, roles).eq(DataDictionary::getType, USER_ROLE));
String role = unitType.getExtend() != null ? unitType.getExtend() : "";
for (String s : role.split(",")) {
RoleModel roleModel = Privilege.roleClient.seleteOne(Long.valueOf(s)).getResult();
allRoleList.add(roleModel);
}
allRoleList.forEach(r -> {
if (!roleIds.contains(r.getSequenceNbr())) {
roleIds.add(r.getSequenceNbr());
}
});
// 添加人员管理角色
// 添加业务办理人员角色
String post = tzsUserInfo.getPost();
if (post.contains(PersonManageRoleEnum.code.getId().toString())) {
if (companyType.contains(PersonManageRoleEnum.jyjc.getName())) {
roleIds.add(PersonManageRoleEnum.jyjc.getId());
}
if (companyType.contains(PersonManageRoleEnum.use.getName())) {
roleIds.add(PersonManageRoleEnum.use.getId());
}
if (companyType.contains(PersonManageRoleEnum.agw.getName())) {
roleIds.add(PersonManageRoleEnum.agw.getId());
}
setBizOperateUserRole(companyType, roleIds);
}
Map<Long, List<Long>> roleSeqMap = new HashMap<>();
Map<Long, List<RoleModel>> orgRoles = new HashMap<>();
......@@ -1188,38 +1238,58 @@ public class TzsUserInfoServiceImpl extends BaseService<TzsUserInfoDto, TzsUserI
agencyUserModel.setOrgRoles(orgRoles);
agencyUserModel.setOrgRoleSeqs(roleSeqMap);
userResult = Privilege.agencyUserClient.create(agencyUserModel);
if (userResult.getStatus() == 200) {
tzsUserInfo.setAmosUserId(userResult.getResult().getUserId());
tzsUserInfo.setAmosUserName(userResult.getResult().getUserName());
tzsUserInfo.setLockStatus("UNLOCK");
// 绑定企业整改用户组
List<String> userIds = new ArrayList<>();
userIds.add(userResult.getResult().getUserId());
DataDictionary roleGroup = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, roleGroupCode).eq(DataDictionary::getType, ROLE_GROUP));
if (!ObjectUtils.isEmpty(roleGroup) && roleGroup.getExtend() != null) {
Privilege.groupUserClient.create(Long.valueOf(roleGroup.getExtend()), userIds);
}
// 绑定两个规定用户组
post = post.replace("[", "").replace("]", "").replace("\"", "");
for (String code : post.split(",")) {
DataDictionary groupId = iDataDictionaryService
.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getCode, code).likeRight(DataDictionary::getType, QYRYGW));
if (!ObjectUtils.isEmpty(groupId) && groupId.getExtend() != null) {
Privilege.groupUserClient.create(Long.valueOf(groupId.getExtend()), userIds);
}
}
tzsUserInfoMapper.updateById(tzsUserInfo);
}
tzsUserInfo.setAmosUserId(userResult.getResult().getUserId());
tzsUserInfo.setAmosUserName(userResult.getResult().getUserName());
tzsUserInfo.setLockStatus(UNLOCK);
tzsUserInfoMapper.updateById(tzsUserInfo);
} catch (Exception e) {
log.error(e.getMessage(), e);
if (userResult != null && userResult.getResult() != null
&& StringUtils.isNotEmpty(userResult.getResult().getUserId())) {
Privilege.agencyUserClient.multDeleteUser(userResult.getResult().getUserId());
}
log.error(e.getMessage(), e);
if(e instanceof InnerInvokException){
String message = e.getLocalizedMessage();
if(StringUtils.isNotEmpty(message) && message.contains("用户名已存在")){
throw new BadRequest("手机号:" + tzsUserInfo.getPhone() + "已经被使用,请更换!");
}
}
throw new BadRequest(e.getMessage());
}
}
private CompanyModel getCompanyModelUseCache(TzsUserInfo tzsUserInfo, Map<String, CompanyModel> companyCodeCompanyMap) {
CompanyModel companyModel;
if (companyCodeCompanyMap.get(tzsUserInfo.getUnitCode()) != null) {
companyModel = companyCodeCompanyMap.get(tzsUserInfo.getUnitCode());
} else {
companyModel = baseEnterpriseInfoService.getBaseMapper().getOneByCompanyCode(tzsUserInfo.getUnitCode());
companyCodeCompanyMap.put(tzsUserInfo.getUnitCode(), companyModel);
}
return companyModel;
}
private static Set<String> getAppKeys(UserImportDto userImportDto, Map<String, DataDictionary> dataDictionaryMap) {
Set<String> appCodesSet = new HashSet<>();
userImportDto.getUnitTypePostMap().forEach((k, v) -> {
DataDictionary unitType = dataDictionaryMap.get(k);
String appCode = unitType.getTypeDesc() != null ? unitType.getTypeDesc() : "";
String[] appCodes = appCode.split(",");
Collections.addAll(appCodesSet, appCodes);
});
return appCodesSet;
}
private void setBizOperateUserRole(String companyType, List<Long> roleIds) {
if (companyType.contains(PersonManageRoleEnum.jyjc.getName())) {
roleIds.add(PersonManageRoleEnum.jyjc.getId());
}
if (companyType.contains(PersonManageRoleEnum.use.getName())) {
roleIds.add(PersonManageRoleEnum.use.getId());
}
if (companyType.contains(PersonManageRoleEnum.agw.getName())) {
roleIds.add(PersonManageRoleEnum.agw.getId());
}
}
......
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