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

View File

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

View File

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

View File

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