|
@@ -1,6 +1,7 @@
|
|
|
package com.citu.module.menduner.system.old;
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
+import com.citu.framework.common.util.date.DateUtils;
|
|
|
import com.citu.framework.common.util.object.ObjectUtils;
|
|
|
import com.citu.framework.mybatis.core.query.LambdaQueryWrapperX;
|
|
|
import com.citu.framework.tenant.core.aop.TenantIgnore;
|
|
@@ -52,6 +53,8 @@ import java.time.temporal.ChronoUnit;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
+import static com.citu.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
|
|
|
+
|
|
|
/**
|
|
|
* 门墩儿 老平台的数据同步
|
|
|
**/
|
|
@@ -139,14 +142,14 @@ public class MdeOldSyncService {
|
|
|
@Async
|
|
|
@TenantIgnore
|
|
|
public void run() {
|
|
|
-// // 同步区域
|
|
|
-// syncArea();
|
|
|
-// // 同步职位信息
|
|
|
-// syncPosition();
|
|
|
-// // 同步用户信息
|
|
|
-// syncUser();
|
|
|
-// // 同步vip企业信息
|
|
|
-// syncVipEnterprise();
|
|
|
+ // 同步区域
|
|
|
+ syncArea();
|
|
|
+ // 同步职位信息
|
|
|
+ syncPosition();
|
|
|
+ // 同步用户信息
|
|
|
+ syncUser();
|
|
|
+ // 同步vip企业信息
|
|
|
+ syncVipEnterprise();
|
|
|
// 同步发布职位
|
|
|
syncJob();
|
|
|
// 同步人才工作经历、教育经历
|
|
@@ -393,84 +396,87 @@ public class MdeOldSyncService {
|
|
|
);
|
|
|
userMap.putAll(userList.stream().collect(Collectors.toMap(OldMdeUser::getUserCode, v -> v)));
|
|
|
// 新增用户 or 人才基本信息
|
|
|
-// userList.stream().forEach(oldMdeUser -> {
|
|
|
-//
|
|
|
-// MdeUserDO userDO = null;
|
|
|
-// if (oldMdeUser.getIdentityFlag().equals("1")) {
|
|
|
-// // 企业用户,判断预留的手机号有没有注册过用户
|
|
|
-// if(StringUtils.hasText(oldMdeUser.getEntPhone())) {
|
|
|
-// // 手机号不为空
|
|
|
-// MdeUserDO enterpriseUser = mdeUserMapper.selectOne(MdeUserDO::getPhone, oldMdeUser.getEntPhone());
|
|
|
-// if (null != enterpriseUser) {
|
|
|
-// // 存在了,不再创建用户
|
|
|
-// return;
|
|
|
-// }
|
|
|
-// }else {
|
|
|
-// // 企业预留的手机号为空
|
|
|
-// }
|
|
|
-// } else {
|
|
|
-// // 求职端用户
|
|
|
-// userDO = mdeUserMapper.selectOne(MdeUserDO::getId, oldMdeUser.getUserCode());
|
|
|
-// if (null == userDO ) {
|
|
|
-// MdeUserDO userNameUserDO = mdeUserMapper.selectOne(MdeUserDO::getUsername, oldMdeUser.getUserName());
|
|
|
-// if (null != userNameUserDO) {
|
|
|
-// // 根据账号名也匹配到数据,说明是同一个用户,直接使用账号名(手机号)匹配到的数据
|
|
|
-// userDO = userNameUserDO;
|
|
|
-// }
|
|
|
-// }
|
|
|
-//
|
|
|
-// }
|
|
|
-//
|
|
|
-// // 账户信息
|
|
|
-// MdeUserDO insertionDO = MdeUserDO.builder()
|
|
|
-// .id(null == userDO ? oldMdeUser.getUserCode() : userDO.getId())
|
|
|
-// .username(oldMdeUser.getIdentityFlag().equals("0") ? oldMdeUser.getUserName() : oldMdeUser.getEntPhone())
|
|
|
-// // 重置密码手机号后6位
|
|
|
-// .password(passwordEncoder.encode("147258369"))
|
|
|
-// .email(oldMdeUser.getEmail())
|
|
|
-// // 有座机,大坑
|
|
|
-// // 个人用户getUserName是手机号,企业用户是邮箱,所以企业用户取getEntPhone
|
|
|
-// .phone(oldMdeUser.getIdentityFlag().equals("0") ? oldMdeUser.getUserName() : oldMdeUser.getEntPhone())
|
|
|
-// .avatar(null == oldMdeUser.getHeadPortrait() ? null : url + oldMdeUser.getHeadPortrait())
|
|
|
-// .status(MendunerStatusEnum.ENABLE.getStatus())
|
|
|
-// .build();
|
|
|
-//
|
|
|
-//
|
|
|
-// // 人才基本信息
|
|
|
-// PersonInfoDO personInfoDO = personInfoMapper.getByUserId(oldMdeUser.getUserCode());
|
|
|
-// personInfoDO = PersonInfoDO.builder()
|
|
|
-// .id(personInfoDO != null ? personInfoDO.getId() : null)
|
|
|
-// .userId(oldMdeUser.getUserCode())
|
|
|
-// .name(oldMdeUser.getName())
|
|
|
-// .foreignName(oldMdeUser.getForeignName())
|
|
|
-// .email(oldMdeUser.getEmail())
|
|
|
-// .firstWorkTime(null == oldMdeUser.getFirstWork() ? null : oldMdeUser.getFirstWork().atStartOfDay())
|
|
|
-// .jobType(JobTypeEnum.FULL_TIME.getType())
|
|
|
-// .jobStatus(oldMdeUser.getWorkStatus())
|
|
|
-// .advantage(oldMdeUser.getIntroduction())
|
|
|
-// .avatar(null == oldMdeUser.getHeadPortrait() ? null : url + oldMdeUser.getHeadPortrait())
|
|
|
-// .build();
|
|
|
-//
|
|
|
-//
|
|
|
-// if (oldMdeUser.getIdentityFlag().equals("0")) {
|
|
|
-// // 个人
|
|
|
-// insertionDO.setPhone(oldMdeUser.getUserName().contains("+") ? null : oldMdeUser.getUserName());
|
|
|
-// } else {
|
|
|
-// // 企业
|
|
|
-// insertionDO.setPhone(oldMdeUser.getEntPhone());
|
|
|
-// }
|
|
|
-//
|
|
|
-// if (null != oldMdeUser.getBirthday()) {
|
|
|
-// // 生日转换
|
|
|
-// personInfoDO.setBirthday(DateUtils.of(oldMdeUser.getBirthday(), FORMAT_YEAR_MONTH_DAY).atStartOfDay());
|
|
|
-// }
|
|
|
-//
|
|
|
-// setCommon(personInfoDO);
|
|
|
-// personInfoMapper.insertOrUpdate(personInfoDO);
|
|
|
-//
|
|
|
-// setCommon(insertionDO);
|
|
|
-// mdeUserMapper.insertOrUpdate(insertionDO);
|
|
|
-// });
|
|
|
+ userList.stream().forEach(oldMdeUser -> {
|
|
|
+
|
|
|
+ MdeUserDO userDO = null;
|
|
|
+ if (oldMdeUser.getIdentityFlag().equals("1")) {
|
|
|
+ // 企业用户,判断预留的手机号有没有注册过用户
|
|
|
+ if(StringUtils.hasText(oldMdeUser.getEntPhone())) {
|
|
|
+ // 手机号不为空
|
|
|
+ MdeUserDO enterpriseUser = mdeUserMapper.selectOne(MdeUserDO::getPhone, oldMdeUser.getEntPhone());
|
|
|
+ if (null != enterpriseUser) {
|
|
|
+ // 存在了,不再创建用户
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ // 企业预留的手机号为空
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ // 求职端用户
|
|
|
+ userDO = mdeUserMapper.selectOne(MdeUserDO::getId, oldMdeUser.getUserCode());
|
|
|
+ if (null == userDO ) {
|
|
|
+ MdeUserDO userNameUserDO = mdeUserMapper.selectOne(MdeUserDO::getUsername, oldMdeUser.getUserName());
|
|
|
+ if (null != userNameUserDO) {
|
|
|
+ // 根据账号名也匹配到数据,说明是同一个用户,直接使用账号名(手机号)匹配到的数据
|
|
|
+ userDO = userNameUserDO;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 账户信息
|
|
|
+ MdeUserDO insertionDO = MdeUserDO.builder()
|
|
|
+ .id(null == userDO ? oldMdeUser.getUserCode() : userDO.getId())
|
|
|
+ .username(oldMdeUser.getIdentityFlag().equals("0") ? oldMdeUser.getUserName() : oldMdeUser.getEntPhone())
|
|
|
+ // 重置密码手机号后6位
|
|
|
+ .password(passwordEncoder.encode("147258369"))
|
|
|
+ .email(oldMdeUser.getEmail())
|
|
|
+ // 有座机,大坑
|
|
|
+ // 个人用户getUserName是手机号,企业用户是邮箱,所以企业用户取getEntPhone
|
|
|
+ .phone(oldMdeUser.getIdentityFlag().equals("0") ? oldMdeUser.getUserName() : oldMdeUser.getEntPhone())
|
|
|
+ .avatar(null == oldMdeUser.getHeadPortrait() ? null : url + oldMdeUser.getHeadPortrait())
|
|
|
+ .status(MendunerStatusEnum.ENABLE.getStatus())
|
|
|
+ .build();
|
|
|
+
|
|
|
+
|
|
|
+ // 人才基本信息
|
|
|
+ PersonInfoDO personInfoDO = personInfoMapper.getByUserId(oldMdeUser.getUserCode());
|
|
|
+ personInfoDO = PersonInfoDO.builder()
|
|
|
+ .id(personInfoDO != null ? personInfoDO.getId() : null)
|
|
|
+ .userId(oldMdeUser.getUserCode())
|
|
|
+ .name(oldMdeUser.getName())
|
|
|
+ .foreignName(oldMdeUser.getForeignName())
|
|
|
+ .email(oldMdeUser.getEmail())
|
|
|
+ .firstWorkTime(null == oldMdeUser.getFirstWork() ? null : oldMdeUser.getFirstWork().atStartOfDay())
|
|
|
+ .jobType(JobTypeEnum.FULL_TIME.getType())
|
|
|
+ .jobStatus(oldMdeUser.getWorkStatus())
|
|
|
+ .advantage(oldMdeUser.getIntroduction())
|
|
|
+ .avatar(null == oldMdeUser.getHeadPortrait() ? null : url + oldMdeUser.getHeadPortrait())
|
|
|
+ .build();
|
|
|
+
|
|
|
+ if (null != oldMdeUser.getBirthday()) {
|
|
|
+ // 生日转换
|
|
|
+ personInfoDO.setBirthday(DateUtils.of(oldMdeUser.getBirthday(), FORMAT_YEAR_MONTH_DAY).atStartOfDay());
|
|
|
+ }
|
|
|
+
|
|
|
+ if (oldMdeUser.getIdentityFlag().equals("0")) {
|
|
|
+ // 企业基本信息 不新增人才信息,只有普通用户才新增
|
|
|
+ setCommon(personInfoDO);
|
|
|
+ personInfoMapper.insertOrUpdate(personInfoDO);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (oldMdeUser.getIdentityFlag().equals("0")) {
|
|
|
+ // 个人
|
|
|
+ insertionDO.setPhone(oldMdeUser.getUserName().contains("+") ? null : oldMdeUser.getUserName());
|
|
|
+ } else {
|
|
|
+ // 企业
|
|
|
+ insertionDO.setPhone(oldMdeUser.getEntPhone());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ setCommon(insertionDO);
|
|
|
+ mdeUserMapper.insertOrUpdate(insertionDO);
|
|
|
+ });
|
|
|
|
|
|
|
|
|
// 企业用户
|
|
@@ -568,7 +574,6 @@ public class MdeOldSyncService {
|
|
|
// 插入企业用户绑定信息
|
|
|
enterpriseUserBindMapper.insertOrUpdate(userInsertionDO);
|
|
|
|
|
|
-
|
|
|
setCommon(addressInsertionDO);
|
|
|
// 插入企业地址信息
|
|
|
enterpriseAddressMapper.insertOrUpdate(addressInsertionDO);
|