LifeCenterInterCeptor.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. package com.lemon.lifecenter.common;
  2. import java.io.IOException;
  3. import javax.servlet.http.HttpServletRequest;
  4. import javax.servlet.http.HttpServletResponse;
  5. import org.slf4j.Logger;
  6. import org.slf4j.LoggerFactory;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.mobile.device.Device;
  9. import org.springframework.mobile.device.DeviceUtils;
  10. import org.springframework.stereotype.Component;
  11. import org.springframework.web.servlet.ModelAndView;
  12. import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
  13. @Component
  14. public class LifeCenterInterCeptor extends HandlerInterceptorAdapter {
  15. @Autowired
  16. private LifeCenterConfigVO config;
  17. private final Logger logger = LoggerFactory.getLogger(this.getClass());
  18. @Override
  19. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws IOException {
  20. System.out.println("--------------------- InterCeptor Start --------------------- ");
  21. String url = request.getRequestURI().toString();
  22. String port = String.valueOf(request.getLocalPort());
  23. Device device = DeviceUtils.getCurrentDevice(request);
  24. logger.info("IP : " + LifeCenterFunction.getRemoteAddr(request) + " URL : " + url + " Port : " + port + " Device : " + device );
  25. Object session = request.getSession().getAttribute( "sesId" );
  26. Object groupIdx = request.getSession().getAttribute( "sesGroupIdx" );
  27. Object sesMId = request.getSession().getAttribute("sesMId");
  28. System.out.println( "######################## sesMId : " + sesMId );
  29. System.out.println( "######################## groupIDX : " + groupIdx );
  30. logger.error("url -- > " + url);
  31. logger.error("url -- > " + url.contains( "/mobile" ));
  32. if ( url.contains( "/error" ) || url.contains( "/nonface/wait" ) ||
  33. url.contains( "/store" ) || url.contains( "/favicon.ico" ) ) {
  34. return true;
  35. }
  36. if( url.contains( "/mobile" ) ) {
  37. if( !url.equals( "/mobile/login" ) && !url.equals( "/mobile/check" ) ) {
  38. if( sesMId == null ) {
  39. response.sendRedirect( "/mobile/login" );
  40. return false;
  41. } else {
  42. logger.info( "IP : " + LifeCenterFunction.getRemoteAddr( request ) + " ID : " + sesMId.toString() + " URL : " + url + " Port : " + port );
  43. }
  44. } else if( url.equals( "/mobile/login" ) ) {
  45. if( sesMId != null ) {
  46. response.sendRedirect( "/mobile/menu" );
  47. return false;
  48. }
  49. }
  50. } else {
  51. if( !url.equals( "/login/staff" ) && !url.equals( "/login/admin" ) && !url.equals( "/login/check" ) ) {
  52. if( session == null ) {
  53. response.sendRedirect( "/login/staff" );
  54. return false;
  55. } else {
  56. logger.info( "IP : " + LifeCenterFunction.getRemoteAddr( request ) + " ID : " + session.toString() + " URL : " + url + " Port : " + port );
  57. }
  58. } else if( url.equals( "/login/staff" ) || url.equals( "/login/admin" ) ) {
  59. if( session != null ) {
  60. if( groupIdx.equals( "1" ) ) {
  61. response.sendRedirect( "/center/list" );
  62. } else {
  63. response.sendRedirect( "/patient/list" );
  64. }
  65. return false;
  66. }
  67. }
  68. }
  69. return true;
  70. }
  71. @Override
  72. public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
  73. ModelAndView modelAndView) {
  74. //logger.info("Method Executed Time : postHandle");
  75. }
  76. @Override
  77. public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler,
  78. Exception ex) {
  79. //logger.info("Method Completed Time : afterCompletion");
  80. System.out.println("--------------------- InterCeptor afterCompletion ---------------------");
  81. }
  82. }