token相关类使用泛型,优化代码

This commit is contained in:
Chopper 2022-01-11 11:16:17 +08:00
parent eddcbc2ecb
commit b0843aa744
4 changed files with 8 additions and 19 deletions

View File

@ -11,7 +11,7 @@ import cn.lili.common.security.token.Token;
* @version v1.0
* 2020-11-13 10:13
*/
public abstract class AbstractTokenGenerate {
public abstract class AbstractTokenGenerate<T> {
/**
* 生成token
@ -20,7 +20,7 @@ public abstract class AbstractTokenGenerate {
* @param longTerm 是否长时间有效
* @return TOKEN对象
*/
public abstract Token createToken(Object user, Boolean longTerm);
public abstract Token createToken(T user, Boolean longTerm);
/**
* 刷新token

View File

@ -26,10 +26,7 @@ import java.util.Date;
* @since 2020/11/16 10:50
*/
@Component
public class MemberTokenGenerate extends AbstractTokenGenerate {
@Autowired
private MemberService memberService;
public class MemberTokenGenerate extends AbstractTokenGenerate<Member> {
@Autowired
private TokenUtil tokenUtil;
@Autowired
@ -39,9 +36,7 @@ public class MemberTokenGenerate extends AbstractTokenGenerate {
private RocketMQTemplate rocketMQTemplate;
@Override
public Token createToken(Object user, Boolean longTerm) {
Member member = (Member) user;
public Token createToken(Member member, Boolean longTerm) {
//获取客户端类型
String clientType = ThreadContextHolder.getHttpRequest().getHeader("clientType");

View File

@ -23,18 +23,14 @@ import org.springframework.stereotype.Component;
* @since 2020/11/16 10:51
*/
@Component
public class StoreTokenGenerate extends AbstractTokenGenerate {
@Autowired
private MemberService memberService;
public class StoreTokenGenerate extends AbstractTokenGenerate<Member> {
@Autowired
private StoreService storeService;
@Autowired
private TokenUtil tokenUtil;
@Override
public Token createToken(Object user, Boolean longTerm) {
//生成token
Member member = (Member) user;
public Token createToken(Member member, Boolean longTerm) {
if (!member.getHaveStore()) {
throw new ServiceException(ResultCode.STORE_NOT_OPEN);
}

View File

@ -29,7 +29,7 @@ import java.util.Map;
* @since 2020/11/16 10:51
*/
@Component
public class ManagerTokenGenerate extends AbstractTokenGenerate {
public class ManagerTokenGenerate extends AbstractTokenGenerate<AdminUser> {
@Autowired
private TokenUtil tokenUtil;
@ -40,9 +40,7 @@ public class ManagerTokenGenerate extends AbstractTokenGenerate {
@Override
public Token createToken(Object user, Boolean longTerm) {
//生成token
AdminUser adminUser = (AdminUser) user;
public Token createToken(AdminUser adminUser, Boolean longTerm) {
AuthUser authUser = new AuthUser(adminUser.getUsername(), adminUser.getId(), adminUser.getAvatar(), UserEnums.MANAGER, adminUser.getNickName(), adminUser.getIsSuper());