BaseController.java 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.fdkankan.sale.controller;
  2. import com.auth0.jwt.JWT;
  3. import com.auth0.jwt.interfaces.DecodedJWT;
  4. import com.fdkankan.sale.common.ResultCode;
  5. import com.fdkankan.sale.entity.SysUser;
  6. import com.fdkankan.sale.exception.BusinessException;
  7. import com.fdkankan.sale.service.ISysUserService;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Component;
  10. import javax.servlet.http.HttpServletRequest;
  11. import javax.servlet.http.HttpServletResponse;
  12. import static com.baomidou.mybatisplus.core.toolkit.IdWorker.getId;
  13. @Component
  14. public class BaseController {
  15. @Autowired
  16. protected HttpServletRequest request;
  17. @Autowired
  18. ISysUserService sysUserService;
  19. @Autowired
  20. protected HttpServletResponse response;
  21. protected String getToken(){
  22. return request.getHeader("token");
  23. }
  24. protected Long getUserId(){
  25. String token = request.getHeader("token");
  26. DecodedJWT jwt = JWT.decode(token);
  27. Long userId = jwt.getClaim("userId").asLong();
  28. SysUser sysUser = sysUserService.getByManageId(userId);
  29. if(sysUser == null){
  30. throw new BusinessException(ResultCode.USER_NOT_LOGIN);
  31. }
  32. return sysUser.getId();
  33. }
  34. }