package com.cloud.attendance.service.impl;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.cloud.common.exception.ApplicationException;
|
|
import com.cloud.common.utils.RequestUtil;
|
import com.cloud.model.sys.LoginAppUser;
|
import com.cloud.attendance.service.TokenService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.data.redis.core.StringRedisTemplate;
|
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Service;
|
|
|
@Slf4j
|
@Component
|
@Service
|
public class TokenServiceImpl implements TokenService {
|
|
@Autowired
|
private StringRedisTemplate stringRedisTemplate;
|
|
|
@Override
|
public LoginAppUser currentUser() {
|
|
// 请求参数中包含access_token参数
|
String token = RequestUtil.getTokenByParam();
|
if(token == null){
|
throw new ApplicationException("not found token");
|
}
|
String s_user = stringRedisTemplate.opsForValue().get(token);
|
|
LoginAppUser user = JSONObject.parseObject(s_user, LoginAppUser.class);
|
|
return user;
|
}
|
|
@Override
|
public LoginAppUser currentUserByToken(String token) {
|
String s_user = stringRedisTemplate.opsForValue().get(token);
|
LoginAppUser user = JSONObject.parseObject(s_user, LoginAppUser.class);
|
|
return user;
|
}
|
|
|
|
}
|