This commit is contained in:
chenyanchang
2026-06-17 18:07:04 +08:00
parent 008dbea894
commit 68a6d653b4
2 changed files with 19 additions and 48 deletions

View File

@@ -225,6 +225,11 @@ public class SsoService {
if (ObjectUtils.isEmpty(userJson)) {
throw new RuntimeException("获取用户信息失败");
}
//用身份证号查询用户 用户类型01个人02企业
// 转换成本地app角色0企业1求职者2网格员 3内部政府人员 4其他浪潮用
//userType对应appuser的isCompanyUser
String isCompanyUser = userJson.getString("userType");
isCompanyUser = "01".equals(isCompanyUser) ? "1" : "0";
//获取身份证号
String personCardNo = null;
JSONObject info = null;
@@ -238,36 +243,18 @@ public class SsoService {
Long roleCode = role.getLong("roleCode");
return roleCode != null && roleCode == 1102L;
});
//获取用户信息
if (userJson.containsKey("info")) {
info = userJson.getJSONObject("info");
if (ObjectUtils.isNotEmpty(info) && info.containsKey("personCardNo")) {
personCardNo = info.getString("personCardNo");
//解密处理
if (StringUtils.isEmpty(personCardNo)) {
throw new RuntimeException("获取用户证件信息失败");
}
personCardNo = EncryptUtil.decryptByAppIdAndSecret(personCardNo, webAppId, webAppSecret);
}else{
//保存企业信息
if(hasRecruitRole){
personCardNo=info.getString("entCreditCode");
if (personCardNo != null) {
Company company=companyService.queryCodeCompany(personCardNo);
if(company==null){
JSONObject infoJson = userJson.getJSONObject("info");
saveCompany(infoJson);
}
}
//保存企业信息
if("0".equals(isCompanyUser) && hasRecruitRole){
personCardNo=info.getString("entCreditCode");
if (personCardNo != null) {
Company company=companyService.queryCodeCompany(personCardNo);
if(company==null){
JSONObject infoJson = userJson.getJSONObject("info");
saveCompany(infoJson);
}
}
}
//用身份证号查询用户 用户类型01个人02企业
// 转换成本地app角色0企业1求职者2网格员 3内部政府人员 4其他浪潮用
//userType对应appuser的isCompanyUser
String isCompanyUser = userJson.getString("userType");
isCompanyUser = "01".equals(isCompanyUser) ? "1" : "0";
//1.先查appuser,不存在,则新增
AppUser appUser = saveAppUser(userJson, isCompanyUser);
//2.再查sysuser,不存在,则新增
@@ -322,20 +309,6 @@ public class SsoService {
if (ObjectUtils.isEmpty(userJson)) {
throw new RuntimeException("获取用户信息失败");
}
//获取身份证号
String personCardNo = null;
JSONObject info = null;
if (userJson.containsKey("info")) {
info = userJson.getJSONObject("info");
if (ObjectUtils.isNotEmpty(info) && info.containsKey("personCardNo")) {
personCardNo = info.getString("personCardNo");
//解密处理
if (StringUtils.isEmpty(personCardNo)) {
throw new RuntimeException("获取用户证件信息失败");
}
personCardNo = EncryptUtil.decryptByAppIdAndSecret(personCardNo, cmsAppId, cmsAppSecret);
}
}
//用身份证号查询用户 用户类型01个人02企业
// 转换成本地app角色0企业1求职者2网格员 3内部政府人员 4其他浪潮用
@@ -467,10 +440,10 @@ public class SsoService {
appUser.setDomicileAddress(info.getString("entRegisteredAddress"));
personCardNo = info.getString("entCreditCode");
appUser.setAddress(info.getString("entRegisteredAddress"));
String phone = userJson.getString("phonenumber");
String phone = info.getString("entAdminPhone");
//解密电话号码
if (StringUtils.isNotEmpty(phone)) {
phone = EncryptUtil.decryptByAppIdAndSecret(phone, webAppId, webAppSecret);
phone = EncryptUtil.decryptByAppIdAndSecret(phone, cmsAppId, cmsAppSecret);
appUser.setPhone(phone);
}
@@ -538,10 +511,10 @@ public class SsoService {
//0.企业 1.求职者 2.风格员
if("0".equals(isCompanyUser)){
personCardNo = info.getString("entCreditCode");
String phone = userJson.getString("phonenumber");
String phone = info.getString("entAdminPhone");
//解密电话号码
if (StringUtils.isNotEmpty(phone)) {
phone = EncryptUtil.decryptByAppIdAndSecret(phone, webAppId, webAppSecret);
phone = EncryptUtil.decryptByAppIdAndSecret(phone, cmsAppId, cmsAppSecret);
sysUser.setPhonenumber(phone);
}
} else {