| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- package com.punchsettle.server.service.manager.impl;
- import com.punchsettle.server.common.exception.BusinessException;
- import com.punchsettle.server.common.utils.Assert;
- import com.punchsettle.server.core.config.BizConfig;
- import com.punchsettle.server.service.manager.ITokenManager;
- import com.punchsettle.server.utiis.TokenUtils;
- import com.punchsettle.server.utiis.UserUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.util.Calendar;
- import java.util.Optional;
- /**
- * @author myou
- * @version 1.0.0
- * @date 2024/12/28 21:24
- * @description Json Web Token 管理类
- */
- @Service
- public class TokenManagerImpl implements ITokenManager {
- @Autowired
- private BizConfig bizConfig;
- @Override
- public String createToken(Long userId) {
- Assert.isNullInBusiness(userId, "请传入用户ID");
- Calendar instance = Calendar.getInstance();
- instance.add(Calendar.DATE, bizConfig.getTokenExpire());
- return TokenUtils.createToken(userId, instance.getTime());
- }
- @Override
- public String refreshToken() {
- // 获取用户信息
- Long currentUserId =
- Optional.ofNullable(UserUtils.getCurrentUserId()).orElseThrow(() -> BusinessException.fail("无法获取当前用户ID"));
- return createToken(currentUserId);
- }
- }
|