|
|
@@ -1333,6 +1333,28 @@ public class HpUserService extends CrudService<HpUserMapper, HpUser> {
|
|
|
String userIds = requestMap.get("userIds");//废弃的用户id集
|
|
|
String loginType = requestMap.get("login_type"); //0:小程序;1:微信授权;2:手机号
|
|
|
HpUser hpUser = this.get(userId);
|
|
|
+ //更新用户新信息
|
|
|
+ hpUser = upDateHpUser(hpUser, userIds, loginType);
|
|
|
+ //合并用户信息
|
|
|
+ HpMember hpMember = checkMember(hpUser, phone, userIds);
|
|
|
+ returnMap.put("hpUser", hpUser);
|
|
|
+ returnMap.put("hpMember", hpMember);
|
|
|
+ //返回用户简历信息
|
|
|
+ HpResume hpResume = this.getResume(hpMember);
|
|
|
+ returnMap.put("userResume", hpResume);
|
|
|
+ //返回用户的企业信息
|
|
|
+ DpEnterpriseAuthentication dpEnterpriseAuthentication = this.getDpEnterpriseAuthentication(hpMember);
|
|
|
+ returnMap.put("dpEnterpriseAuthentication", dpEnterpriseAuthentication);
|
|
|
+ return returnMap;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 选择之后更新用户信息到选中的用户
|
|
|
+ *
|
|
|
+ * @param hpUser
|
|
|
+ * @param userIds
|
|
|
+ */
|
|
|
+ private HpUser upDateHpUser(HpUser hpUser, String userIds, String loginType) {
|
|
|
//没有微信unionid等信息则从废弃的数据里获取
|
|
|
if (StringUtils.isBlank(hpUser.getUnionid())) {
|
|
|
String[] userIdArray = userIds.split(",");
|
|
|
@@ -1375,7 +1397,6 @@ public class HpUserService extends CrudService<HpUserMapper, HpUser> {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- //更新用户信息
|
|
|
switch (loginType) {
|
|
|
case "0":
|
|
|
//如果登录方式不包含小程序授权,则添加
|
|
|
@@ -1410,17 +1431,7 @@ public class HpUserService extends CrudService<HpUserMapper, HpUser> {
|
|
|
hpUser.setUserType("0");
|
|
|
}
|
|
|
this.save(hpUser);
|
|
|
- //合并用户信息
|
|
|
- HpMember hpMember = checkMember(hpUser, phone, userIds);
|
|
|
- returnMap.put("hpUser", hpUser);
|
|
|
- returnMap.put("hpMember", hpMember);
|
|
|
- //返回用户简历信息
|
|
|
- HpResume hpResume = this.getResume(hpMember);
|
|
|
- returnMap.put("userResume", hpResume);
|
|
|
- //返回用户的企业信息
|
|
|
- DpEnterpriseAuthentication dpEnterpriseAuthentication = this.getDpEnterpriseAuthentication(hpMember);
|
|
|
- returnMap.put("dpEnterpriseAuthentication", dpEnterpriseAuthentication);
|
|
|
- return returnMap;
|
|
|
+ return hpUser;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -1611,58 +1622,77 @@ public class HpUserService extends CrudService<HpUserMapper, HpUser> {
|
|
|
}
|
|
|
}
|
|
|
hpUser.setPhone(phone);
|
|
|
- //判断手机号是否存在
|
|
|
- hpUserList = this.findByPhone_new(hpUser);
|
|
|
- hpUserList.add(hpUser);//将当前准备绑定手机号的用户添加到该集合去做合并处理
|
|
|
- if (hpUserList != null && hpUserList.size() > 0) {
|
|
|
- //如果该用户有多条记录,则提示选择一条用户,其余则遗弃不再使用
|
|
|
- if (hpUserList.size() > 1) {
|
|
|
- for (int i = 0; i < hpUserList.size(); i++) {
|
|
|
- Map map = getUserLists(hpUserList.get(i));
|
|
|
- HpResume hpResume = (HpResume) map.get("hpResume");
|
|
|
- if (hpResume == null) {
|
|
|
- //没有简历,该条用户记录自动被视为放弃,数据绑定到另外的用户上
|
|
|
- if (i == 0) {
|
|
|
- HpUser hpUserOth = hpUserList.get(1);
|
|
|
- HpUser hpUserOld = hpUserList.get(0);
|
|
|
- hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
- userIds = hpUserOld.getId();
|
|
|
+ //查看member表是否存在该手机号用户
|
|
|
+ HpMember hpMember = new HpMember();
|
|
|
+ hpMember.setPhone(phone);
|
|
|
+ List<HpMember> hpMemberList = hpMemberService.findListByPhone(hpMember);
|
|
|
+ if (hpMemberList != null && hpMemberList.size() > 0) {
|
|
|
+ userIds = hpUser.getId();//此登录的微信用户自动被遗弃
|
|
|
+ //该手机号存在于member表中,以此用户为唯一
|
|
|
+ hpUser = hpMemberList.get(0).getHpUser();
|
|
|
+ //进行数据合并
|
|
|
+ hpUser = upDateHpUser(hpUser, userIds, "1");
|
|
|
+ //逻辑删除掉当前登录的用户
|
|
|
+ if (StringUtils.isNotBlank(userIds)) {
|
|
|
+ String[] arr = userIds.split(",");
|
|
|
+ for (int i = 0; i < arr.length; i++) {
|
|
|
+ this.deleteByUserId(arr[i]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //判断手机号是否存在
|
|
|
+ hpUserList = this.findByPhone_new(hpUser);
|
|
|
+ hpUserList.add(hpUser);//将当前准备绑定手机号的用户添加到该集合去做合并处理
|
|
|
+ if (hpUserList != null && hpUserList.size() > 0) {
|
|
|
+ //如果该用户有多条记录,则提示选择一条用户,其余则遗弃不再使用
|
|
|
+ if (hpUserList.size() > 1) {
|
|
|
+ for (int i = 0; i < hpUserList.size(); i++) {
|
|
|
+ Map map = getUserLists(hpUserList.get(i));
|
|
|
+ HpResume hpResume = (HpResume) map.get("hpResume");
|
|
|
+ if (hpResume == null) {
|
|
|
+ //没有简历,该条用户记录自动被视为放弃,数据绑定到另外的用户上
|
|
|
+ if (i == 0) {
|
|
|
+ HpUser hpUserOth = hpUserList.get(1);
|
|
|
+ HpUser hpUserOld = hpUserList.get(0);
|
|
|
+ hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
+ userIds = hpUserOld.getId();
|
|
|
+ } else {
|
|
|
+ HpUser hpUserOth = hpUserList.get(0);
|
|
|
+ HpUser hpUserOld = hpUserList.get(1);
|
|
|
+ hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
+ userIds = hpUserOld.getId();
|
|
|
+ }
|
|
|
+ break;
|
|
|
} else {
|
|
|
- HpUser hpUserOth = hpUserList.get(0);
|
|
|
- HpUser hpUserOld = hpUserList.get(1);
|
|
|
- hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
- userIds = hpUserOld.getId();
|
|
|
+ list2.add(map);
|
|
|
}
|
|
|
- break;
|
|
|
- } else {
|
|
|
- list2.add(map);
|
|
|
}
|
|
|
+ } else {
|
|
|
+ hpUser = hpUserList.get(0);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getWxOpenid())) {
|
|
|
+ hpUser.setWxOpenid(openId);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getUnionid())) {
|
|
|
+ hpUser.setUnionid(unionId);
|
|
|
}
|
|
|
- } else {
|
|
|
- hpUser = hpUserList.get(0);
|
|
|
}
|
|
|
- if (StringUtils.isBlank(hpUser.getWxOpenid())) {
|
|
|
- hpUser.setWxOpenid(openId);
|
|
|
+
|
|
|
+ //如果登录方式不包含微信授权,则添加
|
|
|
+ if (!hpUser.getLoginType().contains(AppLoginsEnum.WX_AUTH.getType())) {
|
|
|
+ String loginType = hpUser.getLoginType() + "," + AppLoginsEnum.WX_AUTH.getType();
|
|
|
+ hpUser.setLoginType(loginType);
|
|
|
}
|
|
|
- if (StringUtils.isBlank(hpUser.getUnionid())) {
|
|
|
- hpUser.setUnionid(unionId);
|
|
|
+ if (StringUtils.isBlank(hpUser.getUserToken())) {
|
|
|
+ //用户token作为请求的标准
|
|
|
+ long t1 = System.currentTimeMillis();
|
|
|
+ String timestamp = String.valueOf(t1);
|
|
|
+ String user_token = Md5Encrypt.md5(hpUser.getId() + timestamp);
|
|
|
+ hpUser.setUserToken(user_token);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getUserType())) {
|
|
|
+ hpUser.setUserType("0");
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- //如果登录方式不包含微信授权,则添加
|
|
|
- if (!hpUser.getLoginType().contains(AppLoginsEnum.WX_AUTH.getType())) {
|
|
|
- String loginType = hpUser.getLoginType() + "," + AppLoginsEnum.WX_AUTH.getType();
|
|
|
- hpUser.setLoginType(loginType);
|
|
|
- }
|
|
|
- if (StringUtils.isBlank(hpUser.getUserToken())) {
|
|
|
- //用户token作为请求的标准
|
|
|
- long t1 = System.currentTimeMillis();
|
|
|
- String timestamp = String.valueOf(t1);
|
|
|
- String user_token = Md5Encrypt.md5(hpUser.getId() + timestamp);
|
|
|
- hpUser.setUserToken(user_token);
|
|
|
- }
|
|
|
- if (StringUtils.isBlank(hpUser.getUserType())) {
|
|
|
- hpUser.setUserType("0");
|
|
|
}
|
|
|
} else {
|
|
|
//绑不绑定手机号
|
|
|
@@ -2120,57 +2150,76 @@ public class HpUserService extends CrudService<HpUserMapper, HpUser> {
|
|
|
}
|
|
|
}
|
|
|
hpUser.setPhone(phone);
|
|
|
- //判断手机号是否存在
|
|
|
- hpUserList = this.findByPhone_new(hpUser);
|
|
|
- hpUserList.add(hpUser);//将当前准备绑定手机号的用户添加到该集合去做合并处理
|
|
|
- if (hpUserList != null && hpUserList.size() > 0) {
|
|
|
- //如果该用户有多条记录,则提示选择一条用户,其余则遗弃不再使用
|
|
|
- if (hpUserList.size() > 1) {
|
|
|
- for (int i = 0; i < hpUserList.size(); i++) {
|
|
|
- Map map = getUserLists(hpUserList.get(i));
|
|
|
- HpResume hpResume = (HpResume) map.get("hpResume");
|
|
|
- if (hpResume == null) {
|
|
|
- //没有简历,该条用户记录自动被视为放弃,数据绑定到另外的用户上
|
|
|
- if (i == 0) {
|
|
|
- HpUser hpUserOth = hpUserList.get(1);
|
|
|
- HpUser hpUserOld = hpUserList.get(0);
|
|
|
- hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
- userIds = hpUserOld.getId();
|
|
|
+ //查看member表是否存在该手机号用户
|
|
|
+ HpMember hpMember = new HpMember();
|
|
|
+ hpMember.setPhone(phone);
|
|
|
+ List<HpMember> hpMemberList = hpMemberService.findListByPhone(hpMember);
|
|
|
+ if (hpMemberList != null && hpMemberList.size() > 0) {
|
|
|
+ userIds = hpUser.getId();//此登录的微信用户自动被遗弃
|
|
|
+ //该手机号存在于member表中,以此用户为唯一
|
|
|
+ hpUser = hpMemberList.get(0).getHpUser();
|
|
|
+ //进行数据合并
|
|
|
+ hpUser = upDateHpUser(hpUser, userIds, "1");
|
|
|
+ //逻辑删除掉当前登录的用户
|
|
|
+ if (StringUtils.isNotBlank(userIds)) {
|
|
|
+ String[] arr = userIds.split(",");
|
|
|
+ for (int i = 0; i < arr.length; i++) {
|
|
|
+ this.deleteByUserId(arr[i]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //判断手机号是否存在
|
|
|
+ hpUserList = this.findByPhone_new(hpUser);
|
|
|
+ hpUserList.add(hpUser);//将当前准备绑定手机号的用户添加到该集合去做合并处理
|
|
|
+ if (hpUserList != null && hpUserList.size() > 0) {
|
|
|
+ //如果该用户有多条记录,则提示选择一条用户,其余则遗弃不再使用
|
|
|
+ if (hpUserList.size() > 1) {
|
|
|
+ for (int i = 0; i < hpUserList.size(); i++) {
|
|
|
+ Map map = getUserLists(hpUserList.get(i));
|
|
|
+ HpResume hpResume = (HpResume) map.get("hpResume");
|
|
|
+ if (hpResume == null) {
|
|
|
+ //没有简历,该条用户记录自动被视为放弃,数据绑定到另外的用户上
|
|
|
+ if (i == 0) {
|
|
|
+ HpUser hpUserOth = hpUserList.get(1);
|
|
|
+ HpUser hpUserOld = hpUserList.get(0);
|
|
|
+ hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
+ userIds = hpUserOld.getId();
|
|
|
+ } else {
|
|
|
+ HpUser hpUserOth = hpUserList.get(0);
|
|
|
+ HpUser hpUserOld = hpUserList.get(1);
|
|
|
+ hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
+ userIds = hpUserOld.getId();
|
|
|
+ }
|
|
|
+ break;
|
|
|
} else {
|
|
|
- HpUser hpUserOth = hpUserList.get(0);
|
|
|
- HpUser hpUserOld = hpUserList.get(1);
|
|
|
- hpUser = changeHpUserData(hpUserOth, hpUserOld);
|
|
|
- userIds = hpUserOld.getId();
|
|
|
+ list2.add(map);
|
|
|
}
|
|
|
- break;
|
|
|
- } else {
|
|
|
- list2.add(map);
|
|
|
}
|
|
|
+ } else {
|
|
|
+ hpUser = hpUserList.get(0);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getMinaOpenid())) {
|
|
|
+ hpUser.setMinaOpenid(openId);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getUnionid())) {
|
|
|
+ hpUser.setUnionid(unionId);
|
|
|
}
|
|
|
- } else {
|
|
|
- hpUser = hpUserList.get(0);
|
|
|
}
|
|
|
- if (StringUtils.isBlank(hpUser.getMinaOpenid())) {
|
|
|
- hpUser.setMinaOpenid(openId);
|
|
|
+ //如果登录方式不包含小程序授权,则添加
|
|
|
+ if (!hpUser.getLoginType().contains(AppLoginsEnum.MINA.getType())) {
|
|
|
+ String loginType = hpUser.getLoginType() + "," + AppLoginsEnum.MINA.getType();
|
|
|
+ hpUser.setLoginType(loginType);
|
|
|
}
|
|
|
- if (StringUtils.isBlank(hpUser.getUnionid())) {
|
|
|
- hpUser.setUnionid(unionId);
|
|
|
+ if (StringUtils.isBlank(hpUser.getUserToken())) {
|
|
|
+ //用户token作为请求的标准
|
|
|
+ long t1 = System.currentTimeMillis();
|
|
|
+ String timestamp = String.valueOf(t1);
|
|
|
+ String user_token = Md5Encrypt.md5(hpUser.getId() + timestamp);
|
|
|
+ hpUser.setUserToken(user_token);
|
|
|
+ }
|
|
|
+ if (StringUtils.isBlank(hpUser.getUserType())) {
|
|
|
+ hpUser.setUserType("0");
|
|
|
}
|
|
|
- }
|
|
|
- //如果登录方式不包含小程序授权,则添加
|
|
|
- if (!hpUser.getLoginType().contains(AppLoginsEnum.MINA.getType())) {
|
|
|
- String loginType = hpUser.getLoginType() + "," + AppLoginsEnum.MINA.getType();
|
|
|
- hpUser.setLoginType(loginType);
|
|
|
- }
|
|
|
- if (StringUtils.isBlank(hpUser.getUserToken())) {
|
|
|
- //用户token作为请求的标准
|
|
|
- long t1 = System.currentTimeMillis();
|
|
|
- String timestamp = String.valueOf(t1);
|
|
|
- String user_token = Md5Encrypt.md5(hpUser.getId() + timestamp);
|
|
|
- hpUser.setUserToken(user_token);
|
|
|
- }
|
|
|
- if (StringUtils.isBlank(hpUser.getUserType())) {
|
|
|
- hpUser.setUserType("0");
|
|
|
}
|
|
|
} else {
|
|
|
//绑不绑定手机号
|