添加部分方法,调整修改包名后的问题
This commit is contained in:
14
Dockerfile
Normal file
14
Dockerfile
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
# 使用官方Java基础镜像
|
||||||
|
FROM openjdk:8-jdk-alpine
|
||||||
|
|
||||||
|
# 设置工作目录
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# 复制构建好的jar包到容器中
|
||||||
|
COPY target/sys_manager_ebtp_project-0.0.1.jar app.jar
|
||||||
|
|
||||||
|
# 暴露应用端口(与application.yml中的server.port一致)
|
||||||
|
EXPOSE 18030
|
||||||
|
|
||||||
|
# 启动应用
|
||||||
|
ENTRYPOINT ["java","-jar","app.jar"]
|
@ -92,4 +92,9 @@ public class LoginController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ApiOperation("重置密码")
|
||||||
|
@PostMapping("/resetPassword")
|
||||||
|
public BaseResponse<Boolean> resetPassword(@RequestBody LoginUserVo vo) {
|
||||||
|
return BaseResponse.success(iBaseUserService.resetPassword(vo.getAccount()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
package com.coscoshipping.ebtp.system.login.entity;
|
package com.coscoshipping.ebtp.system.login.entity;
|
||||||
|
|
||||||
|
|
||||||
import com.coscoshipping.ebtp.system.org.entity.SysOrg;
|
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
||||||
|
import com.coscoshipping.ebtp.system.org.entity.SysOrg;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
@ -28,4 +28,11 @@ public interface BaseUserService extends IBaseService<SysUser> {
|
|||||||
SecurityEntity bdCheckToken(String token);
|
SecurityEntity bdCheckToken(String token);
|
||||||
|
|
||||||
Boolean logout(HttpServletRequest request);
|
Boolean logout(HttpServletRequest request);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 重置用户密码
|
||||||
|
* @param account 用户账号(工号)
|
||||||
|
* @return 是否重置成功
|
||||||
|
*/
|
||||||
|
boolean resetPassword(String account);
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,30 @@
|
|||||||
package com.coscoshipping.ebtp.system.login.service.impl;
|
package com.coscoshipping.ebtp.system.login.service.impl;
|
||||||
|
|
||||||
|
import static com.chinaunicom.mall.ebtp.cloud.security.starter.common.Constants.REDIS_USER_KEY;
|
||||||
|
|
||||||
|
import java.math.BigInteger;
|
||||||
|
import java.security.MessageDigest;
|
||||||
|
import java.security.NoSuchAlgorithmException;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.UUID;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.crypto.BadPaddingException;
|
||||||
|
import javax.servlet.http.Cookie;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.data.redis.core.RedisTemplate;
|
||||||
|
import org.springframework.security.core.context.SecurityContextHolder;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.web.context.request.RequestContextHolder;
|
||||||
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
@ -11,44 +36,25 @@ import com.chinaunicom.mall.ebtp.common.base.entity.BaseCacheUser;
|
|||||||
import com.chinaunicom.mall.ebtp.common.base.service.IBaseCacheUserService;
|
import com.chinaunicom.mall.ebtp.common.base.service.IBaseCacheUserService;
|
||||||
import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl;
|
import com.chinaunicom.mall.ebtp.common.base.service.impl.BaseServiceImpl;
|
||||||
import com.chinaunicom.mall.ebtp.common.exception.common.CommonExceptionEnum;
|
import com.chinaunicom.mall.ebtp.common.exception.common.CommonExceptionEnum;
|
||||||
|
|
||||||
|
import com.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
||||||
|
import com.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
||||||
import com.coscoshipping.ebtp.system.login.common.Constants;
|
import com.coscoshipping.ebtp.system.login.common.Constants;
|
||||||
import com.coscoshipping.ebtp.system.login.common.RSA;
|
import com.coscoshipping.ebtp.system.login.common.RSA;
|
||||||
import com.coscoshipping.ebtp.system.login.dao.BaseUserMapper;
|
import com.coscoshipping.ebtp.system.login.dao.BaseUserMapper;
|
||||||
import com.coscoshipping.ebtp.system.login.entity.*;
|
import com.coscoshipping.ebtp.system.login.entity.BaseSelf;
|
||||||
|
import com.coscoshipping.ebtp.system.login.entity.BaseUserToken;
|
||||||
import com.coscoshipping.ebtp.system.login.service.BaseUserService;
|
import com.coscoshipping.ebtp.system.login.service.BaseUserService;
|
||||||
import com.coscoshipping.ebtp.system.login.service.BaseUserTokenService;
|
import com.coscoshipping.ebtp.system.login.service.BaseUserTokenService;
|
||||||
import com.coscoshipping.ebtp.system.org.entity.SysOrg;
|
import com.coscoshipping.ebtp.system.org.entity.SysOrg;
|
||||||
import com.coscoshipping.ebtp.system.org.service.SysOrgService;
|
import com.coscoshipping.ebtp.system.org.service.SysOrgService;
|
||||||
import com.coscoshipping.ebtp.system.user.dao.SysExpertUserMapper;
|
import com.coscoshipping.ebtp.system.user.dao.SysExpertUserMapper;
|
||||||
import com.coscoshipping.ebtp.system.user.dao.SysSupplierUserMapper;
|
import com.coscoshipping.ebtp.system.user.dao.SysSupplierUserMapper;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
||||||
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.lang.StringUtils;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
|
||||||
import org.springframework.data.redis.core.RedisTemplate;
|
|
||||||
import org.springframework.security.core.context.SecurityContextHolder;
|
|
||||||
import org.springframework.stereotype.Service;
|
|
||||||
import org.springframework.web.context.request.RequestContextHolder;
|
|
||||||
import org.springframework.web.context.request.ServletRequestAttributes;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
;
|
||||||
import javax.crypto.BadPaddingException;
|
|
||||||
import javax.servlet.http.Cookie;
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
import java.math.BigInteger;
|
|
||||||
import java.security.MessageDigest;
|
|
||||||
import java.security.NoSuchAlgorithmException;
|
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.UUID;
|
|
||||||
import java.util.concurrent.TimeUnit;
|
|
||||||
|
|
||||||
import static com.chinaunicom.mall.ebtp.cloud.security.starter.common.Constants.REDIS_USER_KEY;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 对数据表 base_user 操作的 serviceImpl
|
* 对数据表 base_user 操作的 serviceImpl
|
||||||
@ -72,6 +78,8 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
private String publickey;
|
private String publickey;
|
||||||
@Value("${login.token.time_limit}")
|
@Value("${login.token.time_limit}")
|
||||||
private String valid_time_limit;
|
private String valid_time_limit;
|
||||||
|
@Value("${login.reset_password}")
|
||||||
|
private String resetPassword;
|
||||||
@Resource
|
@Resource
|
||||||
private IBaseCacheUserService iBaseCacheUserService;
|
private IBaseCacheUserService iBaseCacheUserService;
|
||||||
@Resource
|
@Resource
|
||||||
@ -90,12 +98,12 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
@Qualifier("userinfoRedisTemplate")
|
@Qualifier("userinfoRedisTemplate")
|
||||||
private RedisTemplate<String, Object> userinfoRedisTemplate;
|
private RedisTemplate<String, Object> userinfoRedisTemplate;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseSelf idcardLogin(String account, String password) {
|
public BaseSelf idcardLogin(String account, String password) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
List<SysUser> userList = this.list(new LambdaQueryWrapper<SysUser>().eq(SysUser::getEmployeeNumber, account).eq(SysUser::getStatus, Integer.parseInt(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("无效用户!");
|
||||||
}
|
}
|
||||||
@ -109,12 +117,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
String pw = new String(decode);
|
String pw = new String(decode);
|
||||||
|
|
||||||
|
|
||||||
if (!this.encode(pw).equals(user.getPassword())) {
|
if (!this.encode(pw).equals(user.getPassword())) {
|
||||||
throw new RuntimeException("用户名或密码错误!");
|
throw new RuntimeException("用户名或密码错误!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BaseSelf baseSelf = userLogin(user);
|
BaseSelf baseSelf = userLogin(user);
|
||||||
|
|
||||||
// 1. 查询角色信息
|
// 1. 查询角色信息
|
||||||
@ -138,7 +144,8 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
if (authorityList != null && !authorityList.isEmpty()) {
|
if (authorityList != null && !authorityList.isEmpty()) {
|
||||||
StringBuilder roleIds = new StringBuilder();
|
StringBuilder roleIds = new StringBuilder();
|
||||||
for (AuthorityEntity ae : authorityList) {
|
for (AuthorityEntity ae : authorityList) {
|
||||||
if (roleIds.length() > 0) roleIds.append(",");
|
if (roleIds.length() > 0)
|
||||||
|
roleIds.append(",");
|
||||||
roleIds.append(ae.getRoleId());
|
roleIds.append(ae.getRoleId());
|
||||||
}
|
}
|
||||||
baseCacheUser.setRoleIds(roleIds.toString());
|
baseCacheUser.setRoleIds(roleIds.toString());
|
||||||
@ -150,8 +157,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
REDIS_USER_KEY + token,
|
REDIS_USER_KEY + token,
|
||||||
baseCacheUser,
|
baseCacheUser,
|
||||||
Long.parseLong(valid_time_limit),
|
Long.parseLong(valid_time_limit),
|
||||||
TimeUnit.HOURS
|
TimeUnit.HOURS);
|
||||||
);
|
|
||||||
|
|
||||||
return baseSelf;
|
return baseSelf;
|
||||||
} catch (BadPaddingException e) {
|
} catch (BadPaddingException e) {
|
||||||
@ -164,11 +170,14 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseSelf idcardSupplierLogin(String account, String password) {
|
public BaseSelf idcardSupplierLogin(String account, String password) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
List<SysSupplierUser> userList = sysSupplierUserMapper.selectList(new LambdaQueryWrapper<SysSupplierUser>().eq(SysSupplierUser::getUsername, account).eq(SysSupplierUser::getStatus, Integer.parseInt(Constants.USER_STATUS_LIVE)));
|
List<SysSupplierUser> userList = sysSupplierUserMapper
|
||||||
|
.selectList(new LambdaQueryWrapper<SysSupplierUser>().eq(SysSupplierUser::getUsername, account)
|
||||||
|
.eq(SysSupplierUser::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("无效用户!");
|
||||||
}
|
}
|
||||||
@ -182,12 +191,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
String pw = new String(decode);
|
String pw = new String(decode);
|
||||||
|
|
||||||
|
|
||||||
if (!this.encode(pw).equals(user.getPassword())) {
|
if (!this.encode(pw).equals(user.getPassword())) {
|
||||||
throw new RuntimeException("用户名或密码错误!");
|
throw new RuntimeException("用户名或密码错误!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BaseSelf baseSelf = userSupplierLogin(user);
|
BaseSelf baseSelf = userSupplierLogin(user);
|
||||||
// String token = baseSelf.getToken();
|
// String token = baseSelf.getToken();
|
||||||
//
|
//
|
||||||
@ -210,11 +217,14 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseSelf idcardExpertLogin(String account, String password) {
|
public BaseSelf idcardExpertLogin(String account, String password) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
List<SysExpertUser> userList = sysExpertUserMapper.selectList(new LambdaQueryWrapper<SysExpertUser>().eq(SysExpertUser::getUsername, account).eq(SysExpertUser::getStatus, Integer.parseInt(Constants.USER_STATUS_LIVE)));
|
List<SysExpertUser> userList = sysExpertUserMapper
|
||||||
|
.selectList(new LambdaQueryWrapper<SysExpertUser>().eq(SysExpertUser::getUsername, account)
|
||||||
|
.eq(SysExpertUser::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("无效用户!");
|
||||||
}
|
}
|
||||||
@ -228,12 +238,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
String pw = new String(decode);
|
String pw = new String(decode);
|
||||||
|
|
||||||
|
|
||||||
if (!this.encode(pw).equals(user.getPassword())) {
|
if (!this.encode(pw).equals(user.getPassword())) {
|
||||||
throw new RuntimeException("用户名或密码错误!");
|
throw new RuntimeException("用户名或密码错误!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
BaseSelf baseSelf = userExpertLogin(user);
|
BaseSelf baseSelf = userExpertLogin(user);
|
||||||
// String token = baseSelf.getToken();
|
// String token = baseSelf.getToken();
|
||||||
//
|
//
|
||||||
@ -256,6 +264,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private BaseSelf userLogin(SysUser user) {
|
private BaseSelf userLogin(SysUser user) {
|
||||||
BaseSelf self = new BaseSelf();
|
BaseSelf self = new BaseSelf();
|
||||||
String token = getToken(user.getUserId());
|
String token = getToken(user.getUserId());
|
||||||
@ -267,6 +276,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
private BaseSelf userExpertLogin(SysExpertUser user) {
|
private BaseSelf userExpertLogin(SysExpertUser user) {
|
||||||
BaseSelf self = new BaseSelf();
|
BaseSelf self = new BaseSelf();
|
||||||
String token = getExpertToken(String.valueOf(user.getUserId().longValue()));
|
String token = getExpertToken(String.valueOf(user.getUserId().longValue()));
|
||||||
@ -285,6 +295,7 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
|
|
||||||
private BaseSelf userSupplierLogin(SysSupplierUser user) {
|
private BaseSelf userSupplierLogin(SysSupplierUser user) {
|
||||||
BaseSelf self = new BaseSelf();
|
BaseSelf self = new BaseSelf();
|
||||||
String token = getSupplierToken(String.valueOf(user.getUserId().longValue()));
|
String token = getSupplierToken(String.valueOf(user.getUserId().longValue()));
|
||||||
@ -306,8 +317,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
private String getToken(String userId) {
|
private String getToken(String userId) {
|
||||||
|
|
||||||
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>().eq(BaseUserToken::getUserId, userId)
|
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>()
|
||||||
.gt(BaseUserToken::getValidTime, LocalDateTime.now()).eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
.eq(BaseUserToken::getUserId, userId)
|
||||||
|
.gt(BaseUserToken::getValidTime, LocalDateTime.now())
|
||||||
|
.eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
||||||
String token = UUID.randomUUID().toString();
|
String token = UUID.randomUUID().toString();
|
||||||
BaseUserToken tokenObj = new BaseUserToken();
|
BaseUserToken tokenObj = new BaseUserToken();
|
||||||
if (tokenList != null && tokenList.size() > 0) {
|
if (tokenList != null && tokenList.size() > 0) {
|
||||||
@ -325,10 +338,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
baseUserTokenService.refreshToken(tokenObj);
|
baseUserTokenService.refreshToken(tokenObj);
|
||||||
return token;
|
return token;
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getSupplierToken(String userId) {
|
private String getSupplierToken(String userId) {
|
||||||
|
|
||||||
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>().eq(BaseUserToken::getUserId, userId)
|
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>()
|
||||||
.gt(BaseUserToken::getValidTime, LocalDateTime.now()).eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
.eq(BaseUserToken::getUserId, userId)
|
||||||
|
.gt(BaseUserToken::getValidTime, LocalDateTime.now())
|
||||||
|
.eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
||||||
String token = UUID.randomUUID().toString();
|
String token = UUID.randomUUID().toString();
|
||||||
BaseUserToken tokenObj = new BaseUserToken();
|
BaseUserToken tokenObj = new BaseUserToken();
|
||||||
if (tokenList != null && tokenList.size() > 0) {
|
if (tokenList != null && tokenList.size() > 0) {
|
||||||
@ -346,10 +362,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
baseUserTokenService.refreshToken(tokenObj);
|
baseUserTokenService.refreshToken(tokenObj);
|
||||||
return token;
|
return token;
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getExpertToken(String userId) {
|
private String getExpertToken(String userId) {
|
||||||
|
|
||||||
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>().eq(BaseUserToken::getUserId, userId)
|
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>()
|
||||||
.gt(BaseUserToken::getValidTime, LocalDateTime.now()).eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
.eq(BaseUserToken::getUserId, userId)
|
||||||
|
.gt(BaseUserToken::getValidTime, LocalDateTime.now())
|
||||||
|
.eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
||||||
String token = UUID.randomUUID().toString();
|
String token = UUID.randomUUID().toString();
|
||||||
BaseUserToken tokenObj = new BaseUserToken();
|
BaseUserToken tokenObj = new BaseUserToken();
|
||||||
if (tokenList != null && tokenList.size() > 0) {
|
if (tokenList != null && tokenList.size() > 0) {
|
||||||
@ -410,7 +429,8 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseSelf getRequestUser() {
|
public BaseSelf getRequestUser() {
|
||||||
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
|
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes())
|
||||||
|
.getRequest();
|
||||||
|
|
||||||
BaseSelf self = new BaseSelf();
|
BaseSelf self = new BaseSelf();
|
||||||
try {
|
try {
|
||||||
@ -423,8 +443,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
redisTemplate.expire(token, 15, TimeUnit.MINUTES);
|
redisTemplate.expire(token, 15, TimeUnit.MINUTES);
|
||||||
} else {
|
} else {
|
||||||
BaseCacheUser user = iBaseCacheUserService.getCacheUser();
|
BaseCacheUser user = iBaseCacheUserService.getCacheUser();
|
||||||
CommonExceptionEnum.LOGIN_EXPIRATION.customValidName("账号不存在", user == null || StringUtils.isBlank(user.getUserId()));
|
CommonExceptionEnum.LOGIN_EXPIRATION.customValidName("账号不存在",
|
||||||
List<SysUser> baseUserList = this.list((new LambdaQueryWrapper<SysUser>().eq(SysUser::getEmployeeNumber, user.getUserId())));
|
user == null || StringUtils.isBlank(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);
|
||||||
@ -455,10 +477,12 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
securityEntity.setOrgName(company.getOrgName());
|
securityEntity.setOrgName(company.getOrgName());
|
||||||
}
|
}
|
||||||
securityEntity.setUserSource("0");// 账号类型中远
|
securityEntity.setUserSource("0");// 账号类型中远
|
||||||
List<AuthorityEntity> authorityList =this.baseUserMapper.selectRoleByUserId(baseUser.getUserId());;
|
List<AuthorityEntity> authorityList = this.baseUserMapper.selectRoleByUserId(baseUser.getUserId());
|
||||||
|
;
|
||||||
securityEntity.setAuthorityList(authorityList);
|
securityEntity.setAuthorityList(authorityList);
|
||||||
return securityEntity;
|
return securityEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SecurityEntity getUserObjectByExpertUserId(String userId) {
|
public SecurityEntity getUserObjectByExpertUserId(String userId) {
|
||||||
|
|
||||||
SecurityEntity securityEntity = new SecurityEntity();
|
SecurityEntity securityEntity = new SecurityEntity();
|
||||||
@ -475,10 +499,13 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
// securityEntity.setOrgName(company.getOrgName());
|
// securityEntity.setOrgName(company.getOrgName());
|
||||||
// }
|
// }
|
||||||
securityEntity.setUserSource("1");// 账号类型专家库
|
securityEntity.setUserSource("1");// 账号类型专家库
|
||||||
List<AuthorityEntity> authorityList =this.sysExpertUserMapper.selectRoleByUserId(String.valueOf(baseUser.getUserId()));;
|
List<AuthorityEntity> authorityList = this.sysExpertUserMapper
|
||||||
|
.selectRoleByUserId(String.valueOf(baseUser.getUserId()));
|
||||||
|
;
|
||||||
securityEntity.setAuthorityList(authorityList);
|
securityEntity.setAuthorityList(authorityList);
|
||||||
return securityEntity;
|
return securityEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
public SecurityEntity getUserObjectBySupplierUserId(String userId) {
|
public SecurityEntity getUserObjectBySupplierUserId(String userId) {
|
||||||
|
|
||||||
SecurityEntity securityEntity = new SecurityEntity();
|
SecurityEntity securityEntity = new SecurityEntity();
|
||||||
@ -495,7 +522,9 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
// securityEntity.setOrgName(company.getOrgName());
|
// securityEntity.setOrgName(company.getOrgName());
|
||||||
// }
|
// }
|
||||||
securityEntity.setUserSource("2");// 账号类型供应商
|
securityEntity.setUserSource("2");// 账号类型供应商
|
||||||
List<AuthorityEntity> authorityList =this.sysSupplierUserMapper.selectRoleByUserId(String.valueOf(baseUser.getUserId().longValue()));;
|
List<AuthorityEntity> authorityList = this.sysSupplierUserMapper
|
||||||
|
.selectRoleByUserId(String.valueOf(baseUser.getUserId().longValue()));
|
||||||
|
;
|
||||||
securityEntity.setAuthorityList(authorityList);
|
securityEntity.setAuthorityList(authorityList);
|
||||||
return securityEntity;
|
return securityEntity;
|
||||||
}
|
}
|
||||||
@ -508,8 +537,10 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public SecurityEntity bdCheckToken(String token) {
|
public SecurityEntity bdCheckToken(String token) {
|
||||||
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>().eq(BaseUserToken::getToken, token)
|
List<BaseUserToken> tokenList = baseUserTokenService.list((new LambdaQueryWrapper<BaseUserToken>()
|
||||||
.gt(BaseUserToken::getValidTime, LocalDateTime.now()).eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
.eq(BaseUserToken::getToken, token)
|
||||||
|
.gt(BaseUserToken::getValidTime, LocalDateTime.now())
|
||||||
|
.eq(BaseUserToken::getState, Constants.USER_TOKEN_STATUS_E).orderByDesc(BaseUserToken::getValidTime)));
|
||||||
CommonExceptionEnum.LOGIN_EXPIRATION.assertListNotNullByName("", tokenList);
|
CommonExceptionEnum.LOGIN_EXPIRATION.assertListNotNullByName("", tokenList);
|
||||||
BaseUserToken userToken = tokenList.get(0);
|
BaseUserToken userToken = tokenList.get(0);
|
||||||
CommonExceptionEnum.LOGIN_EXPIRATION.assertStringNotNullByKey("", tokenList.get(0).getUserObject());
|
CommonExceptionEnum.LOGIN_EXPIRATION.assertStringNotNullByKey("", tokenList.get(0).getUserObject());
|
||||||
@ -525,12 +556,11 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
public Boolean logout(HttpServletRequest request) {
|
public Boolean logout(HttpServletRequest request) {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
String token = request.getHeader(com.chinaunicom.mall.ebtp.cloud.security.starter.common.Constants.AUTHORIZATION_HEADER);
|
String token = request
|
||||||
|
.getHeader(com.chinaunicom.mall.ebtp.cloud.security.starter.common.Constants.AUTHORIZATION_HEADER);
|
||||||
if (StringUtils.isNotBlank(token)) {
|
if (StringUtils.isNotBlank(token)) {
|
||||||
token = token.replaceAll("Bearer ", "");
|
token = token.replaceAll("Bearer ", "");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 更新数据库中的token状态为失效
|
// 更新数据库中的token状态为失效
|
||||||
List<BaseUserToken> tokenList = baseUserTokenService.list(
|
List<BaseUserToken> tokenList = baseUserTokenService.list(
|
||||||
new LambdaQueryWrapper<BaseUserToken>()
|
new LambdaQueryWrapper<BaseUserToken>()
|
||||||
@ -558,14 +588,41 @@ public class BaseUserServiceImpl extends BaseServiceImpl<BaseUserMapper, SysUser
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 重置用户密码
|
||||||
|
* @param account 用户账号(工号)
|
||||||
|
* @return 是否重置成功
|
||||||
|
*/
|
||||||
|
public boolean resetPassword(String account) {
|
||||||
|
// 查找用户
|
||||||
|
SysUser user = this.getOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getEmployeeNumber, account));
|
||||||
|
if (user == null) {
|
||||||
|
throw new RuntimeException("无效用户!");
|
||||||
|
}
|
||||||
|
// 加密新密码
|
||||||
|
String encodedPassword = this.encode(resetPassword);
|
||||||
|
|
||||||
|
// 更新数据库
|
||||||
|
SysUser updateUser = new SysUser();
|
||||||
|
updateUser.setPassword(encodedPassword);
|
||||||
|
updateUser.setUserId(user.getUserId());
|
||||||
|
|
||||||
|
return this.updateById(updateUser);
|
||||||
|
}
|
||||||
|
|
||||||
public static void main(String args[]) throws Exception {
|
public static void main(String args[]) throws Exception {
|
||||||
// String rsa = "ObMojRm4G31O91lJDyV7rT7fmkJ0x/tMz+t2gZa1M5RtZm6cTiaAT6eblAQzjuMbNNU6DoD/YloITzn2jnQH4g2nMj1Y8TXdSEK/q8QSoLb8QVb26SuMt1xuv1hklU0yzkqCtGW7GnRArMMlgQjh04GwAcj6TikEFjKvEGGETm4=";
|
// String rsa =
|
||||||
// String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCThndxa2d5wd1XgZw/OoRHyqqhEKn2Vj8esINcPHRDKz/eDxrHT874ssYfRdkQPU4d13yLhywu30D0J/IusB1Aay0Kl7fszYztP1Yg7Y8Gmiwynj4bFooIFZk5l0wJdxciXA4FgjK+oD4Un/LhP20k5OSQ+QLMDBHBJTD/uk9cxQIDAQAB";
|
// "ObMojRm4G31O91lJDyV7rT7fmkJ0x/tMz+t2gZa1M5RtZm6cTiaAT6eblAQzjuMbNNU6DoD/YloITzn2jnQH4g2nMj1Y8TXdSEK/q8QSoLb8QVb26SuMt1xuv1hklU0yzkqCtGW7GnRArMMlgQjh04GwAcj6TikEFjKvEGGETm4=";
|
||||||
|
// String publicKey =
|
||||||
|
// "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCThndxa2d5wd1XgZw/OoRHyqqhEKn2Vj8esINcPHRDKz/eDxrHT874ssYfRdkQPU4d13yLhywu30D0J/IusB1Aay0Kl7fszYztP1Yg7Y8Gmiwynj4bFooIFZk5l0wJdxciXA4FgjK+oD4Un/LhP20k5OSQ+QLMDBHBJTD/uk9cxQIDAQAB";
|
||||||
String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvLBkALIYR/x9Rv5TiXQGWAXTzraN/He80r9gQovSQ5oTP8qllL9+Oc1LdTijPFRsddHWg37umvFliwhmukU1NT+o2loGcKpyMHFkc/UPNjQLvd+YFR4nYhgP8l+dmRNOtQWawOt5dbksRKTghMjA+FKT2+itMsawSs1+Ic+zoIwIDAQAB";
|
String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvLBkALIYR/x9Rv5TiXQGWAXTzraN/He80r9gQovSQ5oTP8qllL9+Oc1LdTijPFRsddHWg37umvFliwhmukU1NT+o2loGcKpyMHFkc/UPNjQLvd+YFR4nYhgP8l+dmRNOtQWawOt5dbksRKTghMjA+FKT2+itMsawSs1+Ic+zoIwIDAQAB";
|
||||||
// String privateKey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAJOGd3FrZ3nB3VeBnD86hEfKqqEQqfZWPx6wg1w8dEMrP94PGsdPzviyxh9F2RA9Th3XfIuHLC7fQPQn8i6wHUBrLQqXt+zNjO0/ViDtjwaaLDKePhsWiggVmTmXTAl3FyJcDgWCMr6gPhSf8uE/bSTk5JD5AswMEcElMP+6T1zFAgMBAAECgYAk2fsuTukbRi03db4FIWX31Q2IjHQYf/TmgqtduBBG0x/yJY3H6gzGnUnWeAlAAEBqPfDzncGQt94u32ek+ANmN161r22eBqoihHJQsCD3n3uFw8fdCRzpP9fiJVUFf3Yf/Di2G6cHKJ1Bs8H2GtmajeUUgjNNvJdQXLsTU2DBoQJBAPV9Luzcb62BO9GsL/C6nrxOEPnfTOvpQpBDjb4JnnS8G4CRoEERB8y0p/npD7wrhwG1aEpOj/6XUUz8yAqrA50CQQCZ139/lX0W6TGxZF5RQu9PlKW5/K74Ysd6tvuom93bwLG4zpCgfIoH3mSkWtKENvob7CV07T/irYppa/bIpRlJAkARnsqfdbMOYRhKFHHcdYivO2s8hCqhRDzi3fZujYIyHs5ajBlUkkRdDRqBdZkLiJRIKx0xODJds77CJ+Kz4VKBAkAUf14Bhc1w7Aku9YyLjzuLgubB7STy+1ZQx2iognwA95+2W+9xMqbBfaQzMdayvxB7/+7NsX69mRnEChqLiVPhAkEA6W9YOoZQlL6yCYE4GE3W38g0m7lq68XuVFgCpULEfR3s5bsPcqxC4xM29Ry80cEv6fAE+jht7JUq0ar/tRqfNA==";
|
// String privateKey =
|
||||||
|
// "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAJOGd3FrZ3nB3VeBnD86hEfKqqEQqfZWPx6wg1w8dEMrP94PGsdPzviyxh9F2RA9Th3XfIuHLC7fQPQn8i6wHUBrLQqXt+zNjO0/ViDtjwaaLDKePhsWiggVmTmXTAl3FyJcDgWCMr6gPhSf8uE/bSTk5JD5AswMEcElMP+6T1zFAgMBAAECgYAk2fsuTukbRi03db4FIWX31Q2IjHQYf/TmgqtduBBG0x/yJY3H6gzGnUnWeAlAAEBqPfDzncGQt94u32ek+ANmN161r22eBqoihHJQsCD3n3uFw8fdCRzpP9fiJVUFf3Yf/Di2G6cHKJ1Bs8H2GtmajeUUgjNNvJdQXLsTU2DBoQJBAPV9Luzcb62BO9GsL/C6nrxOEPnfTOvpQpBDjb4JnnS8G4CRoEERB8y0p/npD7wrhwG1aEpOj/6XUUz8yAqrA50CQQCZ139/lX0W6TGxZF5RQu9PlKW5/K74Ysd6tvuom93bwLG4zpCgfIoH3mSkWtKENvob7CV07T/irYppa/bIpRlJAkARnsqfdbMOYRhKFHHcdYivO2s8hCqhRDzi3fZujYIyHs5ajBlUkkRdDRqBdZkLiJRIKx0xODJds77CJ+Kz4VKBAkAUf14Bhc1w7Aku9YyLjzuLgubB7STy+1ZQx2iognwA95+2W+9xMqbBfaQzMdayvxB7/+7NsX69mRnEChqLiVPhAkEA6W9YOoZQlL6yCYE4GE3W38g0m7lq68XuVFgCpULEfR3s5bsPcqxC4xM29Ry80cEv6fAE+jht7JUq0ar/tRqfNA==";
|
||||||
String privateKey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAK8sGQAshhH/H1G/lOJdAZYBdPOto38d7zSv2BCi9JDmhM/yqWUv345zUt1OKM8VGx10daDfu6a8WWLCGa6RTU1P6jaWgZwqnIwcWRz9Q82NAu935gVHidiGA/yX52ZE061BZrA63l1uSxEpOCEyMD4UpPb6K0yxrBKzX4hz7OgjAgMBAAECgYAT/jx8QJisxSmV8v/TNjpQHKp0hYT7pTcAFHHctDylrSnLci7TVbt2TsNObvVJbWdC3V/vlJmeVjD9jJnRytO/pgc+p8I3Q3pfF7ACiBAz1+4VZM40vFz0RfQKJ/kZB3DiGohprOw60kRR0eMtHuaA07luhBCbne6700Paf+OOAQJBAP9THm3KEcnChnRBC6yPdNHLN/XplgGaIJU2Wo0biI8Oz2bM3eJGPSwrVCqObOwVPNYJIfEQRhlWlB9kpBS0ECECQQCvorUUJwJhV+Fx6bhUK5aa1/rDTODPmS1MycvLtjOp7ig1sGcb4g9Vl8uRPzsvQZ6Z+sNTD4mFFnYFneCvPL/DAkAMZo4QyQKqKO98z/fwLpt+4P7by7eEZmb0uEoXlmHAiPibxpF0PvMTpRsWYgp6QOHOh20Fl0PAUUsqZyns833hAkBEzV9UIqfrDCsTnbQIvP6FcAAay53xlRbK0u5Twe9hLRtxVMY/hQHuzMUBBB0iOPlxZmtnuVls2kynjJ4853ZTAkEAu+lLTmM7DBV9jDEc9sNM7UNa0MvAUb6r9DsTKHGLLRqB7ljQ1R2RiLRknFaegUPEVsvdMszH2rdy3CaIWkC5OQ==";
|
String privateKey = "MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAK8sGQAshhH/H1G/lOJdAZYBdPOto38d7zSv2BCi9JDmhM/yqWUv345zUt1OKM8VGx10daDfu6a8WWLCGa6RTU1P6jaWgZwqnIwcWRz9Q82NAu935gVHidiGA/yX52ZE061BZrA63l1uSxEpOCEyMD4UpPb6K0yxrBKzX4hz7OgjAgMBAAECgYAT/jx8QJisxSmV8v/TNjpQHKp0hYT7pTcAFHHctDylrSnLci7TVbt2TsNObvVJbWdC3V/vlJmeVjD9jJnRytO/pgc+p8I3Q3pfF7ACiBAz1+4VZM40vFz0RfQKJ/kZB3DiGohprOw60kRR0eMtHuaA07luhBCbne6700Paf+OOAQJBAP9THm3KEcnChnRBC6yPdNHLN/XplgGaIJU2Wo0biI8Oz2bM3eJGPSwrVCqObOwVPNYJIfEQRhlWlB9kpBS0ECECQQCvorUUJwJhV+Fx6bhUK5aa1/rDTODPmS1MycvLtjOp7ig1sGcb4g9Vl8uRPzsvQZ6Z+sNTD4mFFnYFneCvPL/DAkAMZo4QyQKqKO98z/fwLpt+4P7by7eEZmb0uEoXlmHAiPibxpF0PvMTpRsWYgp6QOHOh20Fl0PAUUsqZyns833hAkBEzV9UIqfrDCsTnbQIvP6FcAAay53xlRbK0u5Twe9hLRtxVMY/hQHuzMUBBB0iOPlxZmtnuVls2kynjJ4853ZTAkEAu+lLTmM7DBV9jDEc9sNM7UNa0MvAUb6r9DsTKHGLLRqB7ljQ1R2RiLRknFaegUPEVsvdMszH2rdy3CaIWkC5OQ==";
|
||||||
// String p = "jxsnmqYTsskthlKdpffZ/q/gKfPp9kQpmiNaLg2LqNvyoTnsm+cu7q1ZhmcuK/QH6BKV38dXFgqw3kmEu4X/CKoMHP83vwBSxZhF/uk0SQixRBtpvIIJ/M7XFzyZnUD1u3beEiwbuoWjhtjqq/ImWn7nB54ldc3T/S/lyMS4+Jc=";
|
// String p =
|
||||||
// String p2 ="jxsnmqYTsskthlKdpffZ/q/gKfPp9kQpmiNaLg2LqNvyoTnsm+cu7q1ZhmcuK/QH6BKV38dXFgqw3kmEu4X/CKoMHP83vwBSxZhF/uk0SQixRBtpvIIJ/M7XFzyZnUD1u3beEiwbuoWjhtjqq/ImWn7nB54ldc3T/S/lyMS4+Jc=";
|
// "jxsnmqYTsskthlKdpffZ/q/gKfPp9kQpmiNaLg2LqNvyoTnsm+cu7q1ZhmcuK/QH6BKV38dXFgqw3kmEu4X/CKoMHP83vwBSxZhF/uk0SQixRBtpvIIJ/M7XFzyZnUD1u3beEiwbuoWjhtjqq/ImWn7nB54ldc3T/S/lyMS4+Jc=";
|
||||||
|
// String p2
|
||||||
|
// ="jxsnmqYTsskthlKdpffZ/q/gKfPp9kQpmiNaLg2LqNvyoTnsm+cu7q1ZhmcuK/QH6BKV38dXFgqw3kmEu4X/CKoMHP83vwBSxZhF/uk0SQixRBtpvIIJ/M7XFzyZnUD1u3beEiwbuoWjhtjqq/ImWn7nB54ldc3T/S/lyMS4+Jc=";
|
||||||
// System.out.println(URLEncoder.encode(p,"utf-8"));
|
// System.out.println(URLEncoder.encode(p,"utf-8"));
|
||||||
// System.out.println(RSA.decrypt(p2,privateKey));
|
// System.out.println(RSA.decrypt(p2,privateKey));
|
||||||
|
|
||||||
|
@ -3,7 +3,6 @@ package com.coscoshipping.ebtp.system.user.controller;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo;
|
|
||||||
import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO;
|
import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
@ -129,4 +128,16 @@ public class SysUserController{
|
|||||||
return BaseResponse.success(iSysUserService.getInnerUserInfo(employeeNumber));
|
return BaseResponse.success(iSysUserService.getInnerUserInfo(employeeNumber));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据用户ID集合查询所有用户信息
|
||||||
|
* @param ids 用户ID集合
|
||||||
|
* @return 用户信息列表
|
||||||
|
*/
|
||||||
|
@ApiOperation("根据用户ID集合查询所有用户信息")
|
||||||
|
@PostMapping("/getUsersByIds")
|
||||||
|
public BaseResponse<List<SysUser>> getUsersByIds(@RequestBody List<String> ids) {
|
||||||
|
List<SysUser> users = iSysUserService.getUsersByIds(ids);
|
||||||
|
return BaseResponse.success(users);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
package com.coscoshipping.ebtp.system.user.dao;
|
package com.coscoshipping.ebtp.system.user.dao;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
|
||||||
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.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysExpertUser;
|
||||||
import org.apache.ibatis.annotations.Param;
|
|
||||||
import org.springframework.stereotype.Repository;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface SysExpertUserMapper extends IBaseMapper<SysExpertUser> {
|
public interface SysExpertUserMapper extends IBaseMapper<SysExpertUser> {
|
||||||
|
@ -2,9 +2,9 @@ package com.coscoshipping.ebtp.system.user.dao;
|
|||||||
|
|
||||||
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.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
|
import com.coscoshipping.ebtp.system.user.entity.SysSupplierUser;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -4,7 +4,14 @@ package com.coscoshipping.ebtp.system.user.dao;
|
|||||||
import com.chinaunicom.mall.ebtp.common.base.dao.IBaseMapper;
|
import com.chinaunicom.mall.ebtp.common.base.dao.IBaseMapper;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Repository
|
@Repository
|
||||||
public interface SysUserMapper extends IBaseMapper<SysUser> {
|
public interface SysUserMapper extends IBaseMapper<SysUser> {
|
||||||
|
/**
|
||||||
|
* 根据用户ID集合查询所有用户信息
|
||||||
|
* @param ids 用户ID集合
|
||||||
|
* @return 用户信息列表
|
||||||
|
*/
|
||||||
|
List<SysUser> getUsersByIds(List<String> ids);
|
||||||
}
|
}
|
||||||
|
@ -34,4 +34,11 @@
|
|||||||
delete_flag="1"
|
delete_flag="1"
|
||||||
where ID=#{id }
|
where ID=#{id }
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<select id="getUsersByIds" resultMap="userResultMap" parameterType="java.util.List">
|
||||||
|
SELECT * FROM sys_user WHERE user_id IN
|
||||||
|
<foreach collection="list" item="id" open="(" separator="," close=")">
|
||||||
|
#{id}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -7,6 +7,8 @@ import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
|||||||
import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo;
|
import com.coscoshipping.ebtp.system.user.entity.dto.SysInnerUserInfo;
|
||||||
import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO;
|
import com.coscoshipping.ebtp.system.user.entity.vo.SysUserVO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 对数据表 sys_user 操作的 service
|
* 对数据表 sys_user 操作的 service
|
||||||
* @author yss
|
* @author yss
|
||||||
@ -36,5 +38,10 @@ public interface SysUserService extends IBaseService<SysUser>{
|
|||||||
|
|
||||||
public SysInnerUserInfo getInnerUserInfo(String employeeNumber);
|
public SysInnerUserInfo getInnerUserInfo(String employeeNumber);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据用户ID集合查询所有用户信息
|
||||||
|
* @param ids 用户ID集合
|
||||||
|
* @return 用户信息列表
|
||||||
|
*/
|
||||||
|
List<SysUser> getUsersByIds(List<String> ids);
|
||||||
}
|
}
|
||||||
|
@ -24,6 +24,7 @@ import com.coscoshipping.ebtp.system.user.entity.SysUser;
|
|||||||
import com.coscoshipping.ebtp.system.user.service.SysUserService;
|
import com.coscoshipping.ebtp.system.user.service.SysUserService;
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 对数据表 sys_user 操作的 serviceImpl
|
* 对数据表 sys_user 操作的 serviceImpl
|
||||||
@ -49,6 +50,10 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
|
|||||||
//查询
|
//查询
|
||||||
IPage<SysUser> result = new Page<>(sysUserVO.getBasePageRequest().getPageNo(), sysUserVO.getBasePageRequest().getPageSize());
|
IPage<SysUser> result = new Page<>(sysUserVO.getBasePageRequest().getPageNo(), sysUserVO.getBasePageRequest().getPageSize());
|
||||||
result = this.page(result, query);
|
result = this.page(result, query);
|
||||||
|
|
||||||
|
// 处理分页结果中的 password 字段(置空)
|
||||||
|
result.getRecords().forEach(user -> user.setPassword(null));
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -74,6 +79,15 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser>
|
|||||||
return this.removeById(userId);
|
return this.removeById(userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SysUser> getUsersByIds(List<String> ids) {
|
||||||
|
// 查询原始用户列表
|
||||||
|
List<SysUser> userList = baseMapper.getUsersByIds(ids);
|
||||||
|
// 处理 password
|
||||||
|
userList.forEach(user -> user.setPassword(null));
|
||||||
|
return userList;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存前的数据校验
|
* 保存前的数据校验
|
||||||
*/
|
*/
|
||||||
|
@ -87,8 +87,8 @@ public class UserInfoController {
|
|||||||
log.error("access token is empty");
|
log.error("access token is empty");
|
||||||
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).build();
|
return ResponseEntity.status(HttpStatus.UNAUTHORIZED).build();
|
||||||
}
|
}
|
||||||
// return ResponseEntity.ok(cacheUserService.getCacheUser());
|
return ResponseEntity.ok(cacheUserService.getCacheUser());
|
||||||
return ResponseEntity.ok(userInfoService.getUserInfo(token));
|
// return ResponseEntity.ok(userInfoService.getUserInfo(token));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -13,8 +13,7 @@ spring:
|
|||||||
writeTimeout: 35000
|
writeTimeout: 35000
|
||||||
nacos:
|
nacos:
|
||||||
discovery:
|
discovery:
|
||||||
server-addr: 127.0.0.1:18848
|
server-addr: 192.168.110.109:8848
|
||||||
group: EBTP_GROUP # 例如:EBTP_GROUP
|
|
||||||
aop:
|
aop:
|
||||||
auto: true #开启spring的aop配置
|
auto: true #开启spring的aop配置
|
||||||
proxy-target-class: true
|
proxy-target-class: true
|
||||||
@ -263,6 +262,7 @@ login:
|
|||||||
privateKey: MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAK8sGQAshhH/H1G/lOJdAZYBdPOto38d7zSv2BCi9JDmhM/yqWUv345zUt1OKM8VGx10daDfu6a8WWLCGa6RTU1P6jaWgZwqnIwcWRz9Q82NAu935gVHidiGA/yX52ZE061BZrA63l1uSxEpOCEyMD4UpPb6K0yxrBKzX4hz7OgjAgMBAAECgYAT/jx8QJisxSmV8v/TNjpQHKp0hYT7pTcAFHHctDylrSnLci7TVbt2TsNObvVJbWdC3V/vlJmeVjD9jJnRytO/pgc+p8I3Q3pfF7ACiBAz1+4VZM40vFz0RfQKJ/kZB3DiGohprOw60kRR0eMtHuaA07luhBCbne6700Paf+OOAQJBAP9THm3KEcnChnRBC6yPdNHLN/XplgGaIJU2Wo0biI8Oz2bM3eJGPSwrVCqObOwVPNYJIfEQRhlWlB9kpBS0ECECQQCvorUUJwJhV+Fx6bhUK5aa1/rDTODPmS1MycvLtjOp7ig1sGcb4g9Vl8uRPzsvQZ6Z+sNTD4mFFnYFneCvPL/DAkAMZo4QyQKqKO98z/fwLpt+4P7by7eEZmb0uEoXlmHAiPibxpF0PvMTpRsWYgp6QOHOh20Fl0PAUUsqZyns833hAkBEzV9UIqfrDCsTnbQIvP6FcAAay53xlRbK0u5Twe9hLRtxVMY/hQHuzMUBBB0iOPlxZmtnuVls2kynjJ4853ZTAkEAu+lLTmM7DBV9jDEc9sNM7UNa0MvAUb6r9DsTKHGLLRqB7ljQ1R2RiLRknFaegUPEVsvdMszH2rdy3CaIWkC5OQ==
|
privateKey: MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAK8sGQAshhH/H1G/lOJdAZYBdPOto38d7zSv2BCi9JDmhM/yqWUv345zUt1OKM8VGx10daDfu6a8WWLCGa6RTU1P6jaWgZwqnIwcWRz9Q82NAu935gVHidiGA/yX52ZE061BZrA63l1uSxEpOCEyMD4UpPb6K0yxrBKzX4hz7OgjAgMBAAECgYAT/jx8QJisxSmV8v/TNjpQHKp0hYT7pTcAFHHctDylrSnLci7TVbt2TsNObvVJbWdC3V/vlJmeVjD9jJnRytO/pgc+p8I3Q3pfF7ACiBAz1+4VZM40vFz0RfQKJ/kZB3DiGohprOw60kRR0eMtHuaA07luhBCbne6700Paf+OOAQJBAP9THm3KEcnChnRBC6yPdNHLN/XplgGaIJU2Wo0biI8Oz2bM3eJGPSwrVCqObOwVPNYJIfEQRhlWlB9kpBS0ECECQQCvorUUJwJhV+Fx6bhUK5aa1/rDTODPmS1MycvLtjOp7ig1sGcb4g9Vl8uRPzsvQZ6Z+sNTD4mFFnYFneCvPL/DAkAMZo4QyQKqKO98z/fwLpt+4P7by7eEZmb0uEoXlmHAiPibxpF0PvMTpRsWYgp6QOHOh20Fl0PAUUsqZyns833hAkBEzV9UIqfrDCsTnbQIvP6FcAAay53xlRbK0u5Twe9hLRtxVMY/hQHuzMUBBB0iOPlxZmtnuVls2kynjJ4853ZTAkEAu+lLTmM7DBV9jDEc9sNM7UNa0MvAUb6r9DsTKHGLLRqB7ljQ1R2RiLRknFaegUPEVsvdMszH2rdy3CaIWkC5OQ==
|
||||||
publicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvLBkALIYR/x9Rv5TiXQGWAXTzraN/He80r9gQovSQ5oTP8qllL9+Oc1LdTijPFRsddHWg37umvFliwhmukU1NT+o2loGcKpyMHFkc/UPNjQLvd+YFR4nYhgP8l+dmRNOtQWawOt5dbksRKTghMjA+FKT2+itMsawSs1+Ic+zoIwIDAQAB
|
publicKey: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCvLBkALIYR/x9Rv5TiXQGWAXTzraN/He80r9gQovSQ5oTP8qllL9+Oc1LdTijPFRsddHWg37umvFliwhmukU1NT+o2loGcKpyMHFkc/UPNjQLvd+YFR4nYhgP8l+dmRNOtQWawOt5dbksRKTghMjA+FKT2+itMsawSs1+Ic+zoIwIDAQAB
|
||||||
time_limit: 2 #Minutes
|
time_limit: 2 #Minutes
|
||||||
|
reset_password: cosco2025
|
||||||
|
|
||||||
user:
|
user:
|
||||||
auth:
|
auth:
|
||||||
|
@ -28,10 +28,13 @@ check:
|
|||||||
unifast:
|
unifast:
|
||||||
sso:
|
sso:
|
||||||
getCode:
|
getCode:
|
||||||
url: 1
|
url: http://sso.example.com/getCode # 示例获取授权码URL,需替换为实际地址
|
||||||
redirectUrl: 1
|
redirectUrl: http://client.example.com/callback # 示例回调URL,需替换为下游系统回调地址
|
||||||
clientId: 1
|
clientId: sso-client-123 # SSO客户端ID
|
||||||
public-key: 1
|
clientSecret: encrypted:${jasypt.encryptor.bean} # 使用jasypt加密的客户端密钥(实际值需通过jasypt加密后配置)
|
||||||
|
public-key: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQE # 用于JWT验签的公钥(示例,需替换为实际公钥)
|
||||||
|
signing-key: classpath:keystore.jks # 签名密钥库路径(需放置在resources目录下)
|
||||||
|
token-validity-seconds: 3600 # access token有效时间(单位:秒,示例为1小时)
|
||||||
|
|
||||||
jury:
|
jury:
|
||||||
loginCheck:
|
loginCheck:
|
||||||
|
Reference in New Issue
Block a user