登陆代码迁移

This commit is contained in:
houjishuang
2025-06-10 16:42:41 +08:00
parent a32bed1495
commit 14319912b6
6 changed files with 77 additions and 110 deletions

View File

@ -47,7 +47,7 @@ public class LoginController {
@ApiOperation("账号登录") @ApiOperation("账号登录")
@PostMapping("/accountLogin") @PostMapping("/accountLogin")
public BaseResponse idcardLogin(HttpServletResponse response,@RequestBody LoginUserVo vo) { public BaseResponse idcardLogin(HttpServletResponse response,@RequestBody LoginUserVo vo) {
if(true||captchaGenerator.checkCaptcha(vo.getIdentifying(),vo.getEncryptValue())){ if(captchaGenerator.checkCaptcha(vo.getIdentifying(),vo.getEncryptValue())){
BaseSelf self = iBaseUserService.idcardLogin(vo.getAccount(), vo.getPassword()); BaseSelf self = iBaseUserService.idcardLogin(vo.getAccount(), vo.getPassword());
this.iBaseUserService.setCookie(response,"mall3_token",self.getToken()); this.iBaseUserService.setCookie(response,"mall3_token",self.getToken());
return BaseResponse.success(self); return BaseResponse.success(self);

View File

@ -5,13 +5,14 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.chinaunicom.mall.ebtp.cloud.security.starter.entity.AuthorityEntity; import com.chinaunicom.mall.ebtp.cloud.security.starter.entity.AuthorityEntity;
import com.chinaunicom.mall.ebtp.common.base.dao.IBaseMapper; import com.chinaunicom.mall.ebtp.common.base.dao.IBaseMapper;
import com.chinaunicom.mall.ebtp.login.entity.*; import com.chinaunicom.mall.ebtp.login.entity.*;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
@Repository @Repository
public interface BaseUserMapper extends IBaseMapper<BaseUser> { public interface BaseUserMapper extends IBaseMapper<SysUser> {
public IPage<BaseUserSelectVo> selectOrgnUser(IPage<BaseUserSelectVo> page, @Param("vo") BaseUserSelect vo); public IPage<BaseUserSelectVo> selectOrgnUser(IPage<BaseUserSelectVo> page, @Param("vo") BaseUserSelect vo);
public BaseUserSelectVo getUserById(@Param("id") String id, @Param("orgnId") String orgnId); public BaseUserSelectVo getUserById(@Param("id") String id, @Param("orgnId") String orgnId);
public List<BaseUserSelectVo> getUserByObject(@Param("vo") BaseUserSelectVo vo); public List<BaseUserSelectVo> getUserByObject(@Param("vo") BaseUserSelectVo vo);

View File

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.chinaunicom.mall.ebtp.login.dao.BaseUserMapper"> <mapper namespace="com.chinaunicom.mall.ebtp.login.dao.BaseUserMapper">
<resultMap id="sysResultMap" type="com.chinaunicom.mall.ebtp.login.entity.BaseUser"> <resultMap id="sysResultMap" type="com.coscoshipping.ebtp.project.user.entity.SysUser">
<result column="id" jdbcType="VARCHAR" property="id" /> <result column="id" jdbcType="VARCHAR" property="id" />
<result column="account" jdbcType="VARCHAR" property="account" /> <result column="account" jdbcType="VARCHAR" property="account" />
<result column="password" jdbcType="VARCHAR" property="password" /> <result column="password" jdbcType="VARCHAR" property="password" />
@ -23,31 +23,31 @@
<select id="selectOrgnUser" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" > <select id="selectOrgnUser" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT SELECT
u.id, u.user_id,
u.name, u.name,
u.phone, u.phone,
u.id_type, u.id_type,
u.idcard, u.idcard,
r.`name` AS role_name, r.role_name AS role_name,
o.name as orgn_name, o.name as orgn_name,
u.status, u.status,
ifnull(u.updatetime,u.createtime) as updatetime ifnull(u.updatetime,u.createtime) as updatetime
FROM FROM
base_user u, sys_user u,
base_role r, sys_role r,
base_orgn_user ou, sys_user_orgn ou,
base_orgn o sys_org o
WHERE WHERE
u.id = ou.userid u.user_id = ou.user_id
and ou.roleid = r.id and ou.roleid = r.role_id
and ou.orgnid = o.id and ou.orgnid = o.id
and r.id in (2,4) and r.role_id in (2,4)
and ou.orgnid = #{vo.orgnId} and ou.orgnid = #{vo.orgnId}
<if test="vo.name != null and vo.name != ''"> <if test="vo.name != null and vo.name != ''">
and u.name = #{vo.name} and u.name = #{vo.name}
</if> </if>
<if test="vo.type != null and vo.type != ''"> <if test="vo.type != null and vo.type != ''">
and ur.roleid = #{vo.type} and ur.role_id = #{vo.type}
</if> </if>
</select> </select>
@ -56,58 +56,58 @@
<select id="getUserById" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" > <select id="getUserById" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT SELECT
DISTINCT DISTINCT
u.id, u.user_id,
u.name, u.name,
u.phone, u.phone,
u.rsa, u.rsa,
u.id_type, u.id_type,
u.idcard, u.idcard,
r.id AS role_id, r.role_id AS role_id,
r.`name` AS role_name, r.role_name AS role_name,
r.id AS type, r.role_id AS type,
u.status, u.status,
ifnull(u.updatetime,u.createtime) as updatetime, ifnull(u.updatetime,u.createtime) as updatetime,
u.source_type, u.source_type,
u.unicom_email, u.unicom_email,
u.cuecp_account u.cuecp_account
FROM FROM
base_user u, sys_user u,
base_user_role ur, sys_user_role ur,
base_role r, sys_role r,
base_orgn_user ou sys_user_orgn ou
WHERE WHERE
u.id = ur.userid u.user_id = ur.user_id
AND ur.roleid = r.id AND ur.role_id = r.role_id
and u.id = ou.userid and u.user_id = ou.user_id
and ur.roleid = ou.roleid and ur.role_id = ou.roleid
and r.id in (2,4,99) and r.role_id in (2,4,99)
and u.id = #{id} and u.user_id = #{id}
and ou.orgnid = #{orgnId} and ou.orgnid = #{orgnId}
</select> </select>
<select id="getUserByObject" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" > <select id="getUserByObject" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT SELECT
u.id, u.user_id,
u.name, u.name,
u.phone, u.phone,
u.rsa, u.rsa,
u.id_type, u.id_type,
u.idcard, u.idcard,
r.`name` AS role_name, r.role_name AS role_name,
r.id AS type, r.role_id AS type,
u.status, u.status,
ifnull(u.updatetime,u.createtime) as updatetime ifnull(u.updatetime,u.createtime) as updatetime
FROM FROM
base_user u, sys_user u,
base_user_role ur, sys_user_role ur,
base_role r, sys_role r,
base_orgn_user ou sys_user_orgn ou
WHERE WHERE
u.id = ur.userid u.user_id = ur.user_id
AND ur.roleid = r.id AND ur.role_id = r.role_id
and u.id = ou.userid and u.user_id = ou.user_id
and r.id in (2,4) and r.role_id in (2,4)
<!-- <if test="vo.phone!=null and vo.phone !=''">--> <!-- <if test="vo.phone!=null and vo.phone !=''">-->
<!-- and u.phone = #{phone}--> <!-- and u.phone = #{phone}-->
<!-- </if>--> <!-- </if>-->
@ -118,36 +118,36 @@
<select id="selectRoleByUserId" resultType="com.chinaunicom.mall.ebtp.cloud.security.starter.entity.AuthorityEntity"> <select id="selectRoleByUserId" resultType="com.chinaunicom.mall.ebtp.cloud.security.starter.entity.AuthorityEntity">
SELECT SELECT
r.id AS roleId, r.role_id AS roleId,
r.NAME AS roleName, r.role_name AS roleName,
r.tag AS roleCode, r.role_code AS roleCode,
'EBTP' AS roleScope r.role_scope AS roleScope
FROM FROM
base_user u, sys_user u,
base_orgn_user ou, sys_user_role ou,
base_role r sys_role r
WHERE WHERE
u.id = ou.userid u.user_id = ou.user_id
AND ou.roleid = r.id AND ou.role_id = r.role_id
AND u.id = #{userId} AND u.user_id = #{userId}
</select> </select>
<select id="selectOrgnByUserId" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseRoleOrgnVo"> <select id="selectOrgnByUserId" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseRoleOrgnVo">
SELECT SELECT
r.id AS roleId, r.role_id AS roleId,
r.NAME AS roleName, r.role_name AS roleName,
r.tag AS roleCode, r.tag AS roleCode,
ou.orgnid as orgnId, ou.orgnid as orgnId,
o.name as orgnName o.name as orgnName
FROM FROM
base_user u, sys_user u,
base_orgn_user ou, sys_user_orgn ou,
base_role r, sys_role r,
base_orgn o sys_org o
WHERE WHERE
u.id = ou.userid u.user_id = ou.user_id
AND ou.roleid = r.id AND ou.roleid = r.role_id
and ou.orgnid = o.id and ou.orgnid = o.id
AND u.id = #{userId} AND u.user_id = #{userId}
</select> </select>
</mapper> </mapper>

View File

@ -1,6 +1,8 @@
package com.chinaunicom.mall.ebtp.login.entity; package com.chinaunicom.mall.ebtp.login.entity;
import com.coscoshipping.ebtp.project.org.entity.SysOrg;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;
@ -29,13 +31,13 @@ public class BaseSelf {
/** /**
* *
*/ */
private BaseUser user; //user private SysUser user; //user
/** /**
* 所属机构 * 所属机构
*/ */
private BaseOrgn orgn; private SysOrg orgn;
/** /**
* 所属机构 * 所属机构
*/ */
private List<BaseOrgn> orgnList; private List<SysOrg> orgnList;
} }

View File

@ -8,6 +8,7 @@ import com.chinaunicom.mall.ebtp.login.entity.BaseSelf;
import com.chinaunicom.mall.ebtp.login.entity.BaseUser; import com.chinaunicom.mall.ebtp.login.entity.BaseUser;
import com.chinaunicom.mall.ebtp.login.entity.BaseUserSelect; import com.chinaunicom.mall.ebtp.login.entity.BaseUserSelect;
import com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo; import com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
@ -17,7 +18,7 @@ import java.util.List;
* @author yss * @author yss
* *
*/ */
public interface BaseUserService extends IBaseService<BaseUser> { public interface BaseUserService extends IBaseService<SysUser> {
BaseSelf idcardLogin(String account, String password); BaseSelf idcardLogin(String account, String password);
String getUserHost(); String getUserHost();

View File

@ -16,6 +16,7 @@ import com.chinaunicom.mall.ebtp.login.dao.BaseUserMapper;
import com.chinaunicom.mall.ebtp.login.entity.*; import com.chinaunicom.mall.ebtp.login.entity.*;
import com.chinaunicom.mall.ebtp.login.service.BaseUserService; import com.chinaunicom.mall.ebtp.login.service.BaseUserService;
import com.chinaunicom.mall.ebtp.login.service.BaseUserTokenService; import com.chinaunicom.mall.ebtp.login.service.BaseUserTokenService;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -49,7 +50,7 @@ import java.util.stream.Collectors;
*/ */
@Slf4j @Slf4j
@Service @Service
public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUser> implements BaseUserService { public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser> implements BaseUserService {
@Autowired @Autowired
private BaseUserMapper baseUserMapper; private BaseUserMapper baseUserMapper;
@ -74,13 +75,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
public BaseSelf idcardLogin(String account, String password) { public BaseSelf idcardLogin(String account, String password) {
try { try {
List<BaseUser> userList = this.list(new LambdaQueryWrapper<BaseUser>().eq(BaseUser::getAccount, account).eq(BaseUser::getStatus,Constants.USER_STATUS_LIVE)); List<SysUser> userList = this.list(new LambdaQueryWrapper<SysUser>().eq(SysUser::getEmployeeNumber, account).eq(SysUser::getStatus,Integer.parseInt(Constants.USER_STATUS_LIVE)));
if (userList == null||userList.size()==0) { if (userList == null||userList.size()==0) {
throw new RuntimeException("无效用户!"); throw new RuntimeException("无效用户!");
} }
BaseUser user = userList.get(0); SysUser user = userList.get(0);
if(Constants.USER_STATUS_FREEZE.equals(user.getStatus())){ if(Constants.USER_STATUS_FREEZE.equals(user.getStatus().toString())){
throw new RuntimeException("账号已冻结!"); throw new RuntimeException("账号已冻结!");
} }
@ -105,9 +106,9 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
return null; return null;
} }
private BaseSelf userLogin(BaseUser user) { private BaseSelf userLogin(SysUser user) {
BaseSelf self = new BaseSelf(); BaseSelf self = new BaseSelf();
String token = getToken(user.getId()); String token = getToken(user.getUserId());
user.setPassword("****************************"); user.setPassword("****************************");
self.setUser(user); self.setUser(user);
String ip = getUserHost(); String ip = getUserHost();
@ -195,7 +196,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
}else{ }else{
BaseCacheUser user=iBaseCacheUserService.getCacheUser(); BaseCacheUser user=iBaseCacheUserService.getCacheUser();
CommonExceptionEnum.LOGIN_EXPIRATION.customValidName("账号不存在",user==null || StringUtils.isBlank(user.getUserId())); CommonExceptionEnum.LOGIN_EXPIRATION.customValidName("账号不存在",user==null || StringUtils.isBlank(user.getUserId()));
List<BaseUser> baseUserList = this.list((new LambdaQueryWrapper<BaseUser>().eq(BaseUser::getAccount,user.getUserId()))); List<SysUser> baseUserList = this.list((new LambdaQueryWrapper<SysUser>().eq(SysUser::getEmployeeNumber,user.getUserId())));
if(baseUserList!=null&&baseUserList.size()>0){ if(baseUserList!=null&&baseUserList.size()>0){
self = userLogin(baseUserList.get(0)); self = userLogin(baseUserList.get(0));
self.setToken(token); self.setToken(token);
@ -213,51 +214,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
public SecurityEntity getUserObjectByUserId(String userId){ public SecurityEntity getUserObjectByUserId(String userId){
SecurityEntity securityEntity = new SecurityEntity(); SecurityEntity securityEntity = new SecurityEntity();
SysUser baseUser = this.baseUserMapper.selectById(userId);
BaseUser baseUser = this.baseUserMapper.selectById(userId); securityEntity.setUserid(baseUser.getEmployeeNumber());
securityEntity.setUserid(baseUser.getAccount()); securityEntity.setStaffId(baseUser.getEmployeeNumber());
securityEntity.setStaffId(baseUser.getAccount());
securityEntity.setUsername(baseUser.getName()); securityEntity.setUsername(baseUser.getName());
securityEntity.setStaffName(baseUser.getName()); securityEntity.setStaffName(baseUser.getName());
List<AuthorityEntity> authorityList =this.baseUserMapper.selectRoleByUserId(baseUser.getUserId());;
List<BaseRoleOrgn> roleOrgnList = new ArrayList<>();
List<BaseRoleOrgnVo> roleOrgnVoList = this.baseUserMapper.selectOrgnByUserId(baseUser.getId());
roleOrgnVoList.forEach(ro->{
BaseRoleOrgn baseRoleOrgn = new BaseRoleOrgn();
BeanUtils.copyProperties(ro,baseRoleOrgn);
roleOrgnList.add(baseRoleOrgn);
});
List<BaseRoleOrgn> droleOrgnList = roleOrgnList.stream().distinct().collect(Collectors.toList());
List<Object> list = new ArrayList<>();
List<AuthorityEntity> authorityList = new ArrayList<>();
droleOrgnList.forEach(droleOrgn->{
List<BaseRoleOrgnVo> ro2List = roleOrgnVoList.stream().filter(ro2->ro2.getRoleId().equals(droleOrgn.getRoleId())).distinct().collect(Collectors.toList());
List<BaseOrgnR> baseOrgnRList = new ArrayList<>();
BaseRoleOrgnVo orgnVo = ro2List.get(0);
securityEntity.setOu(orgnVo.getOrgnId());
securityEntity.setOuName(orgnVo.getOrgnName());
securityEntity.setPartnerId(orgnVo.getOrgnId());
securityEntity.setPartnerName(orgnVo.getOrgnName());
ro2List.forEach(ro3->{
BaseOrgnR baseOrgnR = new BaseOrgnR();
BeanUtils.copyProperties(ro3,baseOrgnR);
baseOrgnRList.add(baseOrgnR);
});
droleOrgn.setBaseOrgnList(baseOrgnRList);
list.add(droleOrgn);
AuthorityEntity authorityEntity = new AuthorityEntity();
BeanUtils.copyProperties(droleOrgn,authorityEntity);
authorityEntity.setRoleScope("EBTP");
authorityList.add(authorityEntity);
});
securityEntity.setAuthorityList(authorityList); securityEntity.setAuthorityList(authorityList);
// securityEntity.setRoleOrgnList(list);
return securityEntity; return securityEntity;
} }