登陆代码迁移

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("账号登录")
@PostMapping("/accountLogin")
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());
this.iBaseUserService.setCookie(response,"mall3_token",self.getToken());
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.common.base.dao.IBaseMapper;
import com.chinaunicom.mall.ebtp.login.entity.*;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@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 BaseUserSelectVo getUserById(@Param("id") String id, @Param("orgnId") String orgnId);
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">
<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="account" jdbcType="VARCHAR" property="account" />
<result column="password" jdbcType="VARCHAR" property="password" />
@ -23,31 +23,31 @@
<select id="selectOrgnUser" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT
u.id,
u.user_id,
u.name,
u.phone,
u.id_type,
u.idcard,
r.`name` AS role_name,
r.role_name AS role_name,
o.name as orgn_name,
u.status,
ifnull(u.updatetime,u.createtime) as updatetime
FROM
base_user u,
base_role r,
base_orgn_user ou,
base_orgn o
sys_user u,
sys_role r,
sys_user_orgn ou,
sys_org o
WHERE
u.id = ou.userid
and ou.roleid = r.id
u.user_id = ou.user_id
and ou.roleid = r.role_id
and ou.orgnid = o.id
and r.id in (2,4)
and r.role_id in (2,4)
and ou.orgnid = #{vo.orgnId}
<if test="vo.name != null and vo.name != ''">
and u.name = #{vo.name}
</if>
<if test="vo.type != null and vo.type != ''">
and ur.roleid = #{vo.type}
and ur.role_id = #{vo.type}
</if>
</select>
@ -56,58 +56,58 @@
<select id="getUserById" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT
DISTINCT
u.id,
u.user_id,
u.name,
u.phone,
u.rsa,
u.id_type,
u.idcard,
r.id AS role_id,
r.`name` AS role_name,
r.id AS type,
r.role_id AS role_id,
r.role_name AS role_name,
r.role_id AS type,
u.status,
ifnull(u.updatetime,u.createtime) as updatetime,
u.source_type,
u.unicom_email,
u.cuecp_account
FROM
base_user u,
base_user_role ur,
base_role r,
base_orgn_user ou
sys_user u,
sys_user_role ur,
sys_role r,
sys_user_orgn ou
WHERE
u.id = ur.userid
AND ur.roleid = r.id
and u.id = ou.userid
and ur.roleid = ou.roleid
and r.id in (2,4,99)
and u.id = #{id}
u.user_id = ur.user_id
AND ur.role_id = r.role_id
and u.user_id = ou.user_id
and ur.role_id = ou.roleid
and r.role_id in (2,4,99)
and u.user_id = #{id}
and ou.orgnid = #{orgnId}
</select>
<select id="getUserByObject" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo" >
SELECT
u.id,
u.user_id,
u.name,
u.phone,
u.rsa,
u.id_type,
u.idcard,
r.`name` AS role_name,
r.id AS type,
r.role_name AS role_name,
r.role_id AS type,
u.status,
ifnull(u.updatetime,u.createtime) as updatetime
FROM
base_user u,
base_user_role ur,
base_role r,
base_orgn_user ou
sys_user u,
sys_user_role ur,
sys_role r,
sys_user_orgn ou
WHERE
u.id = ur.userid
AND ur.roleid = r.id
and u.id = ou.userid
and r.id in (2,4)
u.user_id = ur.user_id
AND ur.role_id = r.role_id
and u.user_id = ou.user_id
and r.role_id in (2,4)
<!-- <if test="vo.phone!=null and vo.phone !=''">-->
<!-- and u.phone = #{phone}-->
<!-- </if>-->
@ -118,36 +118,36 @@
<select id="selectRoleByUserId" resultType="com.chinaunicom.mall.ebtp.cloud.security.starter.entity.AuthorityEntity">
SELECT
r.id AS roleId,
r.NAME AS roleName,
r.tag AS roleCode,
'EBTP' AS roleScope
r.role_id AS roleId,
r.role_name AS roleName,
r.role_code AS roleCode,
r.role_scope AS roleScope
FROM
base_user u,
base_orgn_user ou,
base_role r
sys_user u,
sys_user_role ou,
sys_role r
WHERE
u.id = ou.userid
AND ou.roleid = r.id
AND u.id = #{userId}
u.user_id = ou.user_id
AND ou.role_id = r.role_id
AND u.user_id = #{userId}
</select>
<select id="selectOrgnByUserId" resultType="com.chinaunicom.mall.ebtp.login.entity.BaseRoleOrgnVo">
SELECT
r.id AS roleId,
r.NAME AS roleName,
r.role_id AS roleId,
r.role_name AS roleName,
r.tag AS roleCode,
ou.orgnid as orgnId,
o.name as orgnName
FROM
base_user u,
base_orgn_user ou,
base_role r,
base_orgn o
sys_user u,
sys_user_orgn ou,
sys_role r,
sys_org o
WHERE
u.id = ou.userid
AND ou.roleid = r.id
u.user_id = ou.user_id
AND ou.roleid = r.role_id
and ou.orgnid = o.id
AND u.id = #{userId}
AND u.user_id = #{userId}
</select>
</mapper>

View File

@ -1,6 +1,8 @@
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 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.BaseUserSelect;
import com.chinaunicom.mall.ebtp.login.entity.BaseUserSelectVo;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@ -17,7 +18,7 @@ import java.util.List;
* @author yss
*
*/
public interface BaseUserService extends IBaseService<BaseUser> {
public interface BaseUserService extends IBaseService<SysUser> {
BaseSelf idcardLogin(String account, String password);
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.service.BaseUserService;
import com.chinaunicom.mall.ebtp.login.service.BaseUserTokenService;
import com.coscoshipping.ebtp.project.user.entity.SysUser;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeanUtils;
@ -49,7 +50,7 @@ import java.util.stream.Collectors;
*/
@Slf4j
@Service
public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUser> implements BaseUserService {
public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser> implements BaseUserService {
@Autowired
private BaseUserMapper baseUserMapper;
@ -74,13 +75,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
public BaseSelf idcardLogin(String account, String password) {
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) {
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("账号已冻结!");
}
@ -105,9 +106,9 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
return null;
}
private BaseSelf userLogin(BaseUser user) {
private BaseSelf userLogin(SysUser user) {
BaseSelf self = new BaseSelf();
String token = getToken(user.getId());
String token = getToken(user.getUserId());
user.setPassword("****************************");
self.setUser(user);
String ip = getUserHost();
@ -195,7 +196,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
}else{
BaseCacheUser user=iBaseCacheUserService.getCacheUser();
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){
self = userLogin(baseUserList.get(0));
self.setToken(token);
@ -213,51 +214,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, BaseUse
public SecurityEntity getUserObjectByUserId(String userId){
SecurityEntity securityEntity = new SecurityEntity();
BaseUser baseUser = this.baseUserMapper.selectById(userId);
securityEntity.setUserid(baseUser.getAccount());
securityEntity.setStaffId(baseUser.getAccount());
SysUser baseUser = this.baseUserMapper.selectById(userId);
securityEntity.setUserid(baseUser.getEmployeeNumber());
securityEntity.setStaffId(baseUser.getEmployeeNumber());
securityEntity.setUsername(baseUser.getName());
securityEntity.setStaffName(baseUser.getName());
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);
});
List<AuthorityEntity> authorityList =this.baseUserMapper.selectRoleByUserId(baseUser.getUserId());;
securityEntity.setAuthorityList(authorityList);
// securityEntity.setRoleOrgnList(list);
return securityEntity;
}