修改单点登录,保存企业信息
This commit is contained in:
@@ -73,6 +73,9 @@ public class CmsJobController extends BaseController
|
|||||||
{
|
{
|
||||||
if (RoleUtils.isCompanyAdmin()) {
|
if (RoleUtils.isCompanyAdmin()) {
|
||||||
Company company = companyService.queryCodeCompany(RoleUtils.getCurrentUseridCard());
|
Company company = companyService.queryCodeCompany(RoleUtils.getCurrentUseridCard());
|
||||||
|
if(company==null){
|
||||||
|
return getDataTable(new ArrayList<>());
|
||||||
|
}
|
||||||
job.setCompanyId(Objects.nonNull(company) ? company.getCompanyId() : null);
|
job.setCompanyId(Objects.nonNull(company) ? company.getCompanyId() : null);
|
||||||
}
|
}
|
||||||
startPage();
|
startPage();
|
||||||
|
|||||||
@@ -54,8 +54,7 @@ public class CompanyController extends BaseController
|
|||||||
if(StringUtils.isNotEmpty(RoleUtils.getCurrentUseridCard())){
|
if(StringUtils.isNotEmpty(RoleUtils.getCurrentUseridCard())){
|
||||||
company.setCode(RoleUtils.getCurrentUseridCard());
|
company.setCode(RoleUtils.getCurrentUseridCard());
|
||||||
}else{
|
}else{
|
||||||
List<Company> list = new ArrayList<>();
|
return getDataTable(new ArrayList<>());
|
||||||
return getDataTable(list);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
startPage();
|
startPage();
|
||||||
|
|||||||
@@ -129,13 +129,17 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
|
|||||||
}
|
}
|
||||||
int insert =companyMapper.insert(company);
|
int insert =companyMapper.insert(company);
|
||||||
if(insert>0){
|
if(insert>0){
|
||||||
company.getCompanyContactList().forEach(x->{
|
List<CompanyContact> contactList = company.getCompanyContactList();
|
||||||
|
if (contactList != null) {
|
||||||
|
Long companyId = company.getCompanyId();
|
||||||
|
contactList.forEach(x->{
|
||||||
CompanyContact companyContact=new CompanyContact();
|
CompanyContact companyContact=new CompanyContact();
|
||||||
BeanUtils.copyProperties(x,companyContact);
|
BeanUtils.copyProperties(x,companyContact);
|
||||||
companyContact.setCompanyId(company.getCompanyId());
|
companyContact.setCompanyId(companyId);
|
||||||
companyContactMapper.insert(companyContact);
|
companyContactMapper.insert(companyContact);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return insert;
|
return insert;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,10 +2,12 @@ package com.ruoyi.framework.web.service;
|
|||||||
|
|
||||||
import com.alibaba.fastjson2.JSONArray;
|
import com.alibaba.fastjson2.JSONArray;
|
||||||
import com.alibaba.fastjson2.JSONObject;
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
|
import com.ruoyi.cms.service.ICompanyService;
|
||||||
import com.ruoyi.cms.service.impl.AppUserServiceImpl;
|
import com.ruoyi.cms.service.impl.AppUserServiceImpl;
|
||||||
import com.ruoyi.cms.util.StringUtil;
|
import com.ruoyi.cms.util.StringUtil;
|
||||||
import com.ruoyi.common.constant.Constants;
|
import com.ruoyi.common.constant.Constants;
|
||||||
import com.ruoyi.common.core.domain.entity.AppUser;
|
import com.ruoyi.common.core.domain.entity.AppUser;
|
||||||
|
import com.ruoyi.common.core.domain.entity.Company;
|
||||||
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||||
import com.ruoyi.common.core.domain.model.LoginSiteUser;
|
import com.ruoyi.common.core.domain.model.LoginSiteUser;
|
||||||
import com.ruoyi.common.core.domain.model.LoginUser;
|
import com.ruoyi.common.core.domain.model.LoginUser;
|
||||||
@@ -40,6 +42,8 @@ import java.text.SimpleDateFormat;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author: chenyanchang
|
* @Author: chenyanchang
|
||||||
@@ -69,6 +73,8 @@ public class SsoService {
|
|||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private UserDetailsService userDetailsService;
|
private UserDetailsService userDetailsService;
|
||||||
|
@Autowired
|
||||||
|
private ICompanyService companyService;
|
||||||
|
|
||||||
//一体机,pc个人,企业
|
//一体机,pc个人,企业
|
||||||
@Value("${lc_web_auth.appId}")
|
@Value("${lc_web_auth.appId}")
|
||||||
@@ -230,6 +236,17 @@ public class SsoService {
|
|||||||
//获取身份证号
|
//获取身份证号
|
||||||
String personCardNo = null;
|
String personCardNo = null;
|
||||||
JSONObject info = null;
|
JSONObject info = null;
|
||||||
|
//判断是否是企业
|
||||||
|
boolean hasRecruitRole = Optional.ofNullable(userJson.getJSONArray("roles"))
|
||||||
|
.filter(arr -> !arr.isEmpty())
|
||||||
|
.map(JSONArray::stream)
|
||||||
|
.orElse(Stream.empty())
|
||||||
|
.anyMatch(obj -> {
|
||||||
|
JSONObject role = (JSONObject) obj;
|
||||||
|
Long roleCode = role.getLong("roleCode");
|
||||||
|
return roleCode != null && roleCode == 1102L;
|
||||||
|
});
|
||||||
|
//获取用户信息
|
||||||
if (userJson.containsKey("info")) {
|
if (userJson.containsKey("info")) {
|
||||||
info = userJson.getJSONObject("info");
|
info = userJson.getJSONObject("info");
|
||||||
if (ObjectUtils.isNotEmpty(info) && info.containsKey("personCardNo")) {
|
if (ObjectUtils.isNotEmpty(info) && info.containsKey("personCardNo")) {
|
||||||
@@ -240,7 +257,17 @@ public class SsoService {
|
|||||||
}
|
}
|
||||||
personCardNo = EncryptUtil.decryptByAppIdAndSecret(personCardNo, webAppId, webAppSecret);
|
personCardNo = EncryptUtil.decryptByAppIdAndSecret(personCardNo, webAppId, webAppSecret);
|
||||||
}else{
|
}else{
|
||||||
|
//保存企业信息
|
||||||
|
if(hasRecruitRole){
|
||||||
personCardNo=info.getString("entCreditCode");
|
personCardNo=info.getString("entCreditCode");
|
||||||
|
if (personCardNo != null) {
|
||||||
|
Company company=companyService.queryCodeCompany(personCardNo);
|
||||||
|
if(company==null){
|
||||||
|
JSONObject infoJson = userJson.getJSONObject("info");
|
||||||
|
saveCompany(infoJson);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -268,6 +295,21 @@ public class SsoService {
|
|||||||
return backJson;
|
return backJson;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存企业信息
|
||||||
|
* @param object
|
||||||
|
*/
|
||||||
|
public void saveCompany(JSONObject object){
|
||||||
|
Company company=new Company();
|
||||||
|
company.setCode(object.getString("entCreditCode"));
|
||||||
|
company.setName(object.getString("entName"));
|
||||||
|
company.setLegalPerson(object.getString("entLegalPersonName"));
|
||||||
|
company.setLegalIdCard(object.getString("entLegalPersonCardNo"));
|
||||||
|
company.setLegalPhone(object.getString("entLegalPersonPhone"));
|
||||||
|
company.setIndustry(object.getString("entIndustry"));
|
||||||
|
company.setRegisteredAddress(object.getString("entRegisteredAddress"));
|
||||||
|
companyService.insertCompany(company);
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* pc端监管端单点登录-code
|
* pc端监管端单点登录-code
|
||||||
* @param param
|
* @param param
|
||||||
|
|||||||
Reference in New Issue
Block a user