创建本地线程存储用户信息,修改token加密方式
This commit is contained in:
parent
010eb97a26
commit
0a1616fd53
|
|
@ -30,7 +30,9 @@ public class UserController {
|
||||||
|
|
||||||
@ApiOperation(value="编辑用户信息",notes = "")
|
@ApiOperation(value="编辑用户信息",notes = "")
|
||||||
@PutMapping("/updateUser")
|
@PutMapping("/updateUser")
|
||||||
public ElectromagneticResult<?> updateUser(@RequestBody UserModiRequest userModiRequest){ return userFacade.modifyUser(userModiRequest);}
|
public ElectromagneticResult<?> updateUser(@RequestBody UserModiRequest userModiRequest){
|
||||||
|
return userFacade.modifyUser(userModiRequest);
|
||||||
|
}
|
||||||
|
|
||||||
@ApiOperation(value = "发布用户信息", notes = "")
|
@ApiOperation(value = "发布用户信息", notes = "")
|
||||||
@RequestMapping(value = "/publish", method = RequestMethod.POST)
|
@RequestMapping(value = "/publish", method = RequestMethod.POST)
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,13 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.interceptor;
|
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.interceptor;
|
||||||
|
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
||||||
|
import electromagnetic.data.framework.share.constants.UserConstants;
|
||||||
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
|
import electromagnetic.data.framework.share.util.TokenUtil;
|
||||||
|
import electromagnetic.data.framework.share.util.UserThreadLocal;
|
||||||
|
import io.jsonwebtoken.Claims;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.servlet.HandlerInterceptor;
|
import org.springframework.web.servlet.HandlerInterceptor;
|
||||||
import org.springframework.web.servlet.ModelAndView;
|
import org.springframework.web.servlet.ModelAndView;
|
||||||
|
|
@ -12,6 +19,8 @@ import javax.servlet.http.HttpServletResponse;
|
||||||
@Component
|
@Component
|
||||||
public class LoginInterceptor implements HandlerInterceptor {
|
public class LoginInterceptor implements HandlerInterceptor {
|
||||||
|
|
||||||
|
private static Logger LOGGER = LoggerFactory.getLogger("LOGIN_INTERCEPTOR");
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
TokenService tokenService;
|
TokenService tokenService;
|
||||||
|
|
||||||
|
|
@ -19,17 +28,31 @@ public class LoginInterceptor implements HandlerInterceptor {
|
||||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
||||||
|
|
||||||
String token = request.getHeader("Authorization");
|
String token = request.getHeader("Authorization");
|
||||||
if (token==null || !token.startsWith("Bearer ")) {
|
if (token==null) {
|
||||||
|
LOGGER.error("Authorization header is null");
|
||||||
response.setStatus(401);
|
response.setStatus(401);
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
//token = token.substring(7);
|
token = token.substring(7);
|
||||||
}
|
}
|
||||||
boolean result = tokenService.isTokenValid(token.substring(7));
|
boolean result = tokenService.isTokenValid(token);
|
||||||
if (!result) {
|
if (!result) {
|
||||||
|
LOGGER.error("Invalid token");
|
||||||
response.setStatus(401);
|
response.setStatus(401);
|
||||||
return false;
|
return false;
|
||||||
} else {
|
} else {
|
||||||
|
Claims claims = TokenUtil.getLoginInfo(token);
|
||||||
|
if (claims==null) {
|
||||||
|
LOGGER.error("User info is missing");
|
||||||
|
response.setStatus(401);
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
UserLoginInfo userLoginInfo = new UserLoginInfo();
|
||||||
|
userLoginInfo.setUserId(claims.get(UserConstants.LOGIN_USER_ID, String.class));
|
||||||
|
userLoginInfo.setUsername(claims.get(UserConstants.LOGIN_USER_NAME, String.class));
|
||||||
|
userLoginInfo.setWorkNumber(claims.get(UserConstants.LOGIN_WORK_NUMBER, String.class));
|
||||||
|
UserThreadLocal.set(userLoginInfo);
|
||||||
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -41,6 +64,6 @@ public class LoginInterceptor implements HandlerInterceptor {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
|
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
|
||||||
|
UserThreadLocal.remove();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service;
|
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service;
|
||||||
|
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
|
|
||||||
public interface TokenService {
|
public interface TokenService {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,10 +4,10 @@ import cn.hutool.core.date.DateTime;
|
||||||
import cn.hutool.core.date.SystemClock;
|
import cn.hutool.core.date.SystemClock;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.Token;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.Token;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.TokenRepository;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.repository.TokenRepository;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant;
|
import electromagnetic.data.framework.share.constants.UserConstants;
|
||||||
import io.jsonwebtoken.Jwts;
|
import io.jsonwebtoken.Jwts;
|
||||||
import io.jsonwebtoken.SignatureAlgorithm;
|
import io.jsonwebtoken.SignatureAlgorithm;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
@ -16,7 +16,6 @@ import javax.annotation.Resource;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
|
||||||
|
|
||||||
import static cn.hutool.core.date.SystemClock.now;
|
import static cn.hutool.core.date.SystemClock.now;
|
||||||
|
|
||||||
|
|
@ -33,15 +32,15 @@ public class TokenServiceImpl implements TokenService {
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String createToken(UserLoginInfo loginInfo){
|
public String createToken(UserLoginInfo loginInfo){
|
||||||
String token = UUID.randomUUID().toString();
|
|
||||||
loginInfo.setToken(token);
|
|
||||||
Map<String, Object> claims = new HashMap<>();
|
Map<String, Object> claims = new HashMap<>();
|
||||||
claims.put(UserConstant.LOGIN_USER_KEY, loginInfo);
|
claims.put(UserConstants.LOGIN_USER_ID, loginInfo.getUserId());
|
||||||
Jwts.builder()
|
claims.put(UserConstants.LOGIN_USER_NAME, loginInfo.getUsername());
|
||||||
|
claims.put(UserConstants.LOGIN_WORK_NUMBER, loginInfo.getWorkNumber());
|
||||||
|
return Jwts.builder()
|
||||||
.addClaims(claims)
|
.addClaims(claims)
|
||||||
.signWith(SignatureAlgorithm.HS512, UserConstant.SECRET_KEY)
|
.setIssuedAt(DateTime.now())
|
||||||
|
.signWith(SignatureAlgorithm.HS512, UserConstants.SECRET_KEY)
|
||||||
.compact();
|
.compact();
|
||||||
return token;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -55,7 +54,7 @@ public class TokenServiceImpl implements TokenService {
|
||||||
Token token = new Token();
|
Token token = new Token();
|
||||||
token.setUserId(user.getUserId());
|
token.setUserId(user.getUserId());
|
||||||
token.setToken(tokenStr);
|
token.setToken(tokenStr);
|
||||||
token.setExpireAt(new DateTime(now()+UserConstant.DEFAULT_EXPIRE_TIME));
|
token.setExpireAt(new DateTime(now()+ UserConstants.DEFAULT_EXPIRE_TIME));
|
||||||
return tokenRepository.insert(token)>0;
|
return tokenRepository.insert(token)>0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util;
|
package electromagnetic.data.framework.share.constants;
|
||||||
|
|
||||||
public class UserConstant {
|
public class UserConstants {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 默认初始密码
|
* 默认初始密码
|
||||||
|
|
@ -25,5 +25,7 @@ public class UserConstant {
|
||||||
/**
|
/**
|
||||||
* 令牌前缀
|
* 令牌前缀
|
||||||
*/
|
*/
|
||||||
public static final String LOGIN_USER_KEY = "login_user_key";
|
public static final String LOGIN_USER_NAME = "userName";
|
||||||
|
public static final String LOGIN_WORK_NUMBER = "workNumber";
|
||||||
|
public static final String LOGIN_USER_ID = "userId";
|
||||||
}
|
}
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model;
|
package electromagnetic.data.framework.share.model;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
@ -10,6 +10,16 @@ public class UserLoginInfo {
|
||||||
*/
|
*/
|
||||||
private String workNumber;
|
private String workNumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户名
|
||||||
|
*/
|
||||||
|
private String username;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户编号
|
||||||
|
*/
|
||||||
|
private String userId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 用户密码
|
* 用户密码
|
||||||
*/
|
*/
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
package electromagnetic.data.framework.share.util;
|
||||||
|
|
||||||
|
import electromagnetic.data.framework.share.constants.UserConstants;
|
||||||
|
import io.jsonwebtoken.Claims;
|
||||||
|
import io.jsonwebtoken.Jwts;
|
||||||
|
|
||||||
|
public class TokenUtil {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取Claim
|
||||||
|
*
|
||||||
|
* @param token
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static Claims getLoginInfo(String token) {
|
||||||
|
return Jwts.parser()
|
||||||
|
.setSigningKey(UserConstants.SECRET_KEY)
|
||||||
|
.parseClaimsJws(token)
|
||||||
|
.getBody();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
package electromagnetic.data.framework.share.util;
|
||||||
|
|
||||||
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
|
|
||||||
|
public class UserThreadLocal {
|
||||||
|
/**
|
||||||
|
* 存储用户信息
|
||||||
|
*/
|
||||||
|
private static ThreadLocal<UserLoginInfo> userThread = new ThreadLocal<>();
|
||||||
|
|
||||||
|
public static void set(UserLoginInfo userLoginInfo) {
|
||||||
|
userThread.set(userLoginInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static UserLoginInfo getUser() {
|
||||||
|
return userThread.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getUsername() {
|
||||||
|
return userThread.get().getUsername();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getUserId() {
|
||||||
|
return userThread.get().getUserId();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void remove() {
|
||||||
|
userThread.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -16,13 +16,4 @@ public class UserDeleteRequest extends BaseRequest implements Serializable {
|
||||||
*/
|
*/
|
||||||
private String userId;
|
private String userId;
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新人姓名
|
|
||||||
*/
|
|
||||||
private String modifier;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 更新人工号
|
|
||||||
*/
|
|
||||||
private String modifierName;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -57,14 +57,4 @@ public class UserModiRequest extends BaseRequest implements Serializable {
|
||||||
* 实习截止日期
|
* 实习截止日期
|
||||||
*/
|
*/
|
||||||
private Date internshipEndDate;
|
private Date internshipEndDate;
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建者
|
|
||||||
*/
|
|
||||||
private String modifier;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建者姓名
|
|
||||||
*/
|
|
||||||
private String modifierName;
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,4 @@ public class UserPublishRequest extends BaseRequest implements Serializable {
|
||||||
*/
|
*/
|
||||||
private List<String> userIds;
|
private List<String> userIds;
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑者
|
|
||||||
*/
|
|
||||||
private String modifier;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑者姓名
|
|
||||||
*/
|
|
||||||
private String modifierName;
|
|
||||||
}
|
}
|
||||||
|
|
@ -53,24 +53,4 @@ public class UserRequest extends BaseRequest implements Serializable {
|
||||||
*/
|
*/
|
||||||
private Date internshipEndDate;
|
private Date internshipEndDate;
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建者
|
|
||||||
*/
|
|
||||||
private String creator;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 创建者姓名
|
|
||||||
*/
|
|
||||||
private String creatorName;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑者userId
|
|
||||||
*/
|
|
||||||
private String modifier;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 编辑者姓名
|
|
||||||
*/
|
|
||||||
private String modifierName;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -82,6 +82,7 @@
|
||||||
<if test="internshipEndDate != null">internship_end_date = #{internshipEndDate},</if>
|
<if test="internshipEndDate != null">internship_end_date = #{internshipEndDate},</if>
|
||||||
<if test="modifier != null and modifier != ''">modifier = #{modifier},</if>
|
<if test="modifier != null and modifier != ''">modifier = #{modifier},</if>
|
||||||
<if test="modifierName != null and modifierName != ''">modifier_name = #{modifierName},</if>
|
<if test="modifierName != null and modifierName != ''">modifier_name = #{modifierName},</if>
|
||||||
|
gmt_modified=now()
|
||||||
</set>
|
</set>
|
||||||
where user_id= #{userId}
|
where user_id= #{userId}
|
||||||
</update>
|
</update>
|
||||||
|
|
@ -93,6 +94,7 @@
|
||||||
is_published = 1,
|
is_published = 1,
|
||||||
<if test="modifier != null and modifier != ''">modifier = #{modifier},</if>
|
<if test="modifier != null and modifier != ''">modifier = #{modifier},</if>
|
||||||
<if test="modifierName != null and modifierName != ''">modifier_name = #{modifierName},</if>
|
<if test="modifierName != null and modifierName != ''">modifier_name = #{modifierName},</if>
|
||||||
|
gmt_modified = now()
|
||||||
</trim>
|
</trim>
|
||||||
where user_id IN
|
where user_id IN
|
||||||
<foreach collection="userIds" item="userId" open="(" separator="," close=")">
|
<foreach collection="userIds" item="userId" open="(" separator="," close=")">
|
||||||
|
|
@ -202,7 +204,8 @@
|
||||||
<set>
|
<set>
|
||||||
effect_flag=0,
|
effect_flag=0,
|
||||||
modifier=#{modifier},
|
modifier=#{modifier},
|
||||||
modifier_name=#{modifierName}
|
modifier_name=#{modifierName},
|
||||||
|
gmt_modified = now()
|
||||||
</set>
|
</set>
|
||||||
where user_id = #{userId}
|
where user_id = #{userId}
|
||||||
</update>
|
</update>
|
||||||
|
|
|
||||||
|
|
@ -2,13 +2,13 @@ package com.electromagnetic.industry.software.data.manage.service.facade.user;
|
||||||
|
|
||||||
import com.electromagnetic.industry.software.data.manage.common.ElectromagneticErrorEnum;
|
import com.electromagnetic.industry.software.data.manage.common.ElectromagneticErrorEnum;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.UserDeleteKeyWords;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.UserDeleteKeyWords;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.TokenService;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.service.UserService;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.util.UserConstant;
|
import electromagnetic.data.framework.share.constants.UserConstants;
|
||||||
import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade;
|
import com.electromagnetic.industry.software.data.manage.facade.user.UserFacade;
|
||||||
import com.electromagnetic.industry.software.data.manage.request.user.*;
|
import com.electromagnetic.industry.software.data.manage.request.user.*;
|
||||||
import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse;
|
import com.electromagnetic.industry.software.data.manage.response.user.SingleUserResponse;
|
||||||
|
|
@ -20,11 +20,12 @@ import electromagnetic.data.framework.share.model.ElectromagneticResult;
|
||||||
import electromagnetic.data.framework.share.model.ElectromagneticResultUtil;
|
import electromagnetic.data.framework.share.model.ElectromagneticResultUtil;
|
||||||
import electromagnetic.data.framework.share.sign.AESUtils;
|
import electromagnetic.data.framework.share.sign.AESUtils;
|
||||||
import electromagnetic.data.framework.share.util.SignUtils;
|
import electromagnetic.data.framework.share.util.SignUtils;
|
||||||
|
import electromagnetic.data.framework.share.util.TokenUtil;
|
||||||
|
import electromagnetic.data.framework.share.util.UserThreadLocal;
|
||||||
import org.apache.commons.lang3.RandomStringUtils;
|
import org.apache.commons.lang3.RandomStringUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
|
@ -43,8 +44,10 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
@Override
|
@Override
|
||||||
public ElectromagneticResult<UserLoginResponse> login(UserLoginRequest loginRequest) {
|
public ElectromagneticResult<UserLoginResponse> login(UserLoginRequest loginRequest) {
|
||||||
UserLoginInfo info = UserMappers.INSTANCE.getUserLoginRequestToModel(loginRequest);
|
UserLoginInfo info = UserMappers.INSTANCE.getUserLoginRequestToModel(loginRequest);
|
||||||
String decodePwd = AESUtils.decrypt(info.getUserPwd(), UserConstant.SECRET_KEY);
|
String decodePwd = AESUtils.decrypt(info.getUserPwd(), UserConstants.SECRET_KEY);
|
||||||
User user = userService.getUserByWorkNumber(info.getWorkNumber());
|
User user = userService.getUserByWorkNumber(info.getWorkNumber());
|
||||||
|
info.setUserId(user.getUserId());
|
||||||
|
info.setUsername(user.getUserName());
|
||||||
if ( userService.checkUserValid(user) && userService.matchPassword(user, decodePwd)) {
|
if ( userService.checkUserValid(user) && userService.matchPassword(user, decodePwd)) {
|
||||||
String tokenStr = tokenService.createToken(info);
|
String tokenStr = tokenService.createToken(info);
|
||||||
tokenService.createUserToken(user, tokenStr);
|
tokenService.createUserToken(user, tokenStr);
|
||||||
|
|
@ -66,8 +69,10 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
User user = UserMappers.INSTANCE.getUserRequestToModel(userRequest);
|
User user = UserMappers.INSTANCE.getUserRequestToModel(userRequest);
|
||||||
user.setSalt(RandomStringUtils.randomAlphanumeric(16));
|
user.setSalt(RandomStringUtils.randomAlphanumeric(16));
|
||||||
user.setUserId(IdWorker.getSnowFlakeIdString());
|
user.setUserId(IdWorker.getSnowFlakeIdString());
|
||||||
user.setUserPwd(SignUtils.MD5(UserConstant.DEFAULT_PASSWORD+user.getSalt()));
|
user.setUserPwd(SignUtils.MD5(UserConstants.DEFAULT_PASSWORD+user.getSalt()));
|
||||||
user.setIsPublished(UserConstant.DEFAULT_PUBLISH_STATUS);
|
user.setIsPublished(UserConstants.DEFAULT_PUBLISH_STATUS);
|
||||||
|
user.setCreator(UserThreadLocal.getUserId());
|
||||||
|
user.setCreatorName(UserThreadLocal.getUsername());
|
||||||
return ElectromagneticResultUtil.success(userService.createUser(user));
|
return ElectromagneticResultUtil.success(userService.createUser(user));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,6 +85,8 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
public ElectromagneticResult<Boolean> modifyUser(UserModiRequest userModiRequest) {
|
public ElectromagneticResult<Boolean> modifyUser(UserModiRequest userModiRequest) {
|
||||||
// 将请求对象转换为模型对象
|
// 将请求对象转换为模型对象
|
||||||
User user = UserMappers.INSTANCE.getUserModiRequestToModel(userModiRequest);
|
User user = UserMappers.INSTANCE.getUserModiRequestToModel(userModiRequest);
|
||||||
|
user.setModifier(UserThreadLocal.getUserId());
|
||||||
|
user.setModifierName(UserThreadLocal.getUsername());
|
||||||
//根据操作结果构建 BaseResult 对象并返回
|
//根据操作结果构建 BaseResult 对象并返回
|
||||||
return ElectromagneticResultUtil.success(userService.modifyUser(user));
|
return ElectromagneticResultUtil.success(userService.modifyUser(user));
|
||||||
}
|
}
|
||||||
|
|
@ -92,6 +99,8 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
@Override
|
@Override
|
||||||
public ElectromagneticResult<Boolean> publishUser(UserPublishRequest userPublishRequest){
|
public ElectromagneticResult<Boolean> publishUser(UserPublishRequest userPublishRequest){
|
||||||
PublishParam model = UserMappers.INSTANCE.getUserPublishRequestToModel(userPublishRequest);
|
PublishParam model = UserMappers.INSTANCE.getUserPublishRequestToModel(userPublishRequest);
|
||||||
|
model.setModifier(UserThreadLocal.getUserId());
|
||||||
|
model.setModifierName(UserThreadLocal.getUsername());
|
||||||
return ElectromagneticResultUtil.success(userService.publishUser(model));
|
return ElectromagneticResultUtil.success(userService.publishUser(model));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -179,6 +188,8 @@ public class UserFacadeImpl implements UserFacade {
|
||||||
public ElectromagneticResult<?> deleteUser(UserDeleteRequest userDeleteRequest) {
|
public ElectromagneticResult<?> deleteUser(UserDeleteRequest userDeleteRequest) {
|
||||||
// 将请求对象转换为模型对象
|
// 将请求对象转换为模型对象
|
||||||
UserDeleteKeyWords userDeleteKeyWords = UserMappers.INSTANCE.getUserDeleteRequestToModel(userDeleteRequest);
|
UserDeleteKeyWords userDeleteKeyWords = UserMappers.INSTANCE.getUserDeleteRequestToModel(userDeleteRequest);
|
||||||
|
userDeleteKeyWords.setModifier(UserThreadLocal.getUserId());
|
||||||
|
userDeleteKeyWords.setModifierName(UserThreadLocal.getUsername());
|
||||||
|
|
||||||
// 检查用户是否已经被逻辑删除
|
// 检查用户是否已经被逻辑删除
|
||||||
User existingUser = userService.getSingleUser(userDeleteKeyWords.getUserId());
|
User existingUser = userService.getSingleUser(userDeleteKeyWords.getUserId());
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
package com.electromagnetic.industry.software.data.manage.service.mappers;
|
package com.electromagnetic.industry.software.data.manage.service.mappers;
|
||||||
|
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.User;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.model.UserLoginInfo;
|
import electromagnetic.data.framework.share.model.UserLoginInfo;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.PublishParam;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.SearchKeyWords;
|
||||||
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.UserDeleteKeyWords;
|
import com.electromagnetic.industry.software.data.manage.domain.boardservice.user.params.UserDeleteKeyWords;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue