BaseController.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. package com.fdkankan.common.controller;
  2. import com.fdkankan.common.user.SSOLoginHelper;
  3. import com.fdkankan.common.user.SSOUser;
  4. import com.fdkankan.common.util.DateEditor;
  5. import java.util.Date;
  6. import java.util.Objects;
  7. import javax.servlet.http.HttpServletRequest;
  8. import javax.servlet.http.HttpServletResponse;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.beans.propertyeditors.StringTrimmerEditor;
  11. import org.springframework.web.bind.WebDataBinder;
  12. import org.springframework.web.bind.annotation.InitBinder;
  13. import javax.servlet.http.HttpServletRequest;
  14. import javax.servlet.http.HttpServletResponse;
  15. import java.io.*;
  16. import java.util.Date;
  17. import java.util.Objects;
  18. public class BaseController {
  19. @Autowired
  20. protected HttpServletRequest request;
  21. @Autowired
  22. protected HttpServletResponse response;
  23. @Autowired
  24. SSOLoginHelper ssoLoginHelper;
  25. @InitBinder
  26. protected void initBinder(WebDataBinder webDataBinder) {
  27. webDataBinder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
  28. webDataBinder.registerCustomEditor(Date.class, new DateEditor(true));
  29. }
  30. protected String getToken(){
  31. return request.getHeader("token");
  32. }
  33. protected Long getUserId(){
  34. SSOUser ssoUser = ssoLoginHelper.loginCheck(request.getHeader("token"));
  35. if(Objects.nonNull(ssoUser)){
  36. return ssoUser.getId();
  37. }
  38. return null;
  39. }
  40. protected com.fdkankan.common.model.SSOUser getSsoUserV3(){
  41. return ssoLoginHelper.loginCheckV3(request.getHeader("token"));
  42. }
  43. public static void output(HttpServletResponse resp, File file) {
  44. OutputStream os = null;
  45. BufferedInputStream bis = null;
  46. byte[] buff = new byte[1024];
  47. try {
  48. os = resp.getOutputStream();
  49. bis = new BufferedInputStream(new FileInputStream(file));
  50. int i = 0;
  51. while ((i = bis.read(buff)) != -1) {
  52. os.write(buff, 0, i);
  53. os.flush();
  54. }
  55. } catch (IOException e) {
  56. e.printStackTrace();
  57. } finally {
  58. try {
  59. bis.close();
  60. } catch (IOException e) {
  61. e.printStackTrace();
  62. }
  63. }
  64. }
  65. }