people-用户同步bug修改

This commit is contained in:
liyawei
2022-07-14 18:58:06 +08:00
parent b2af5ace67
commit 4b68f8ddf3
3 changed files with 12 additions and 14 deletions
@@ -15,8 +15,8 @@ public class PPEmployee {
private String data_difference; //数据来源[WORKDAY,XPT,NIOCAPITAL]
private String employee_difference; // 员工来源[CN, EU_US,EU]
private String employee_id; // 员工编号(员工唯一标识) ----workNo
private String worker_user_id; //WD帐号创建SSO账号 / AD账户 ----thirdId
private String user_name; // WD同步到people的域帐号 ----username
private String worker_user_id; //WD帐号创建SSO账号 / AD账户 ----thirdId, username
private String user_name; // WD同步到people的域帐号
// private String foreign_employee_id; // 兼职公司对应的员工编号
private String name; // 全名
private String formatted_name; // 全名-拼音及中文 ----realname
@@ -1,7 +1,6 @@
package com.jero.modules.system.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.jero.common.constant.CommonConstant;
@@ -25,7 +24,6 @@ import org.springframework.transaction.annotation.Transactional;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -202,25 +200,25 @@ public class SyncDataServiceImpl implements ISyncDataService{
List<SysUser> sysUserList = sysUserService.getPPEmployeeList();
// log.info("查询到的用户信息结果集为:"+JSONObject.toJSONString(userEOList));
for(SysUser user:sysUserList){
localUserMap.put(user.getUsername(),user);
localUserMap.put(user.getThirdId(),user);
}
// log.info("将用户信息集合转换为的用户MAP为:"+JSONObject.toJSONString(localUserMap));
log.info("开始更新数据库信息");
for(PPEmployee ppEmployee:ppEmployeeList){
try {
PPEmployeeMap.put(ppEmployee.getUser_name(), ppEmployee);
PPEmployeeMap.put(ppEmployee.getWorker_user_id(), ppEmployee);
//1.判断当前账号是否已添加到用户中
if (!localUserMap.containsKey(ppEmployee.getUser_name())) {
if (!localUserMap.containsKey(ppEmployee.getWorker_user_id())) {
//删除数据库中与该账户相同的数据
if(StringUtils.isNotBlank(ppEmployee.getUser_name())) {
if(StringUtils.isNotBlank(ppEmployee.getWorker_user_id())) {
// sysUserService.removeById(ppEmployee.getId()); // 这个为什么是逻辑删除
log.info("需要新增的用户信息为:" + JSONObject.toJSONString(ppEmployee));
SysUser newUser = sysUserService.addPPUserInfo(ppEmployee);
localUserMap.put(ppEmployee.getUser_name(), newUser);
localUserMap.put(ppEmployee.getWorker_user_id(), newUser);
}
} else {
SysUser userEO = localUserMap.get(ppEmployee.getUser_name());
SysUser userEO = localUserMap.get(ppEmployee.getWorker_user_id());
log.info("需要更新的用户信息为:" + JSONObject.toJSONString(userEO) + " " + JSONObject.toJSONString(ppEmployee));
if(userEO != null) {
sysUserService.updatePPUserInfo(userEO, ppEmployee);
@@ -487,11 +487,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
SysUser sysUser = new SysUser();
// 基本信息
sysUser.setId(ppEmployee.getId());
sysUser.setUsername(ppEmployee.getUser_name());
sysUser.setUsername(ppEmployee.getWorker_user_id());
sysUser.setRealname(ppEmployee.getFormatted_name());
sysUser.setStatus("Active".equals(ppEmployee.getEmployee_status())? CommonConstant.USER_UNFREEZE : CommonConstant.USER_FREEZE);
sysUser.setDelFlag("1".equals(ppEmployee.getDelete_flag())? CommonConstant.DEL_FLAG_0 : CommonConstant.DEL_FLAG_1);
sysUser.setThirdId(ppEmployee.getUser_name());
sysUser.setThirdId(ppEmployee.getWorker_user_id());
sysUser.setActivitiSync(CommonConstant.ACT_SYNC_1);
sysUser.setWorkNo(ppEmployee.getEmployee_id());
sysUser.setWorkerType("Employee".equals(ppEmployee.getWorker_type())? CommonConstant.WORKER_TYPE_1 : CommonConstant.WORKER_TYPE_2);
@@ -531,11 +531,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
public void updatePPUserInfo(SysUser sysUser, PPEmployee ppEmployee) {
// 基本信息
sysUser.setUsername(ppEmployee.getUser_name());
sysUser.setUsername(ppEmployee.getWorker_user_id());
sysUser.setRealname(ppEmployee.getFormatted_name());
sysUser.setStatus("Active".equals(ppEmployee.getEmployee_status())? CommonConstant.USER_UNFREEZE : CommonConstant.USER_FREEZE);
sysUser.setDelFlag("1".equals(ppEmployee.getDelete_flag())? CommonConstant.DEL_FLAG_0 : CommonConstant.DEL_FLAG_1);
sysUser.setThirdId(ppEmployee.getUser_name());
sysUser.setThirdId(ppEmployee.getWorker_user_id());
sysUser.setWorkNo(ppEmployee.getEmployee_id());
sysUser.setWorkerType("Employee".equals(ppEmployee.getWorker_type())? CommonConstant.WORKER_TYPE_1 : CommonConstant.WORKER_TYPE_2);
sysUser.setCreateTime(ppEmployee.getCreation_time());