AuthInterceptor.java 1.66 KB
package com.bjivt.web.interceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import com.bjivt.entity.showtime.Manager;
import com.bjivt.service.showtime.ManagerService;
import com.bjivt.system.BlockAttribute;

/**
 * 管理员校验拦截器
 * @author sjf
 *
 */
public class AuthInterceptor implements HandlerInterceptor{
	private ManagerService managerService;
	@Override
	public void afterCompletion(HttpServletRequest arg0,
			HttpServletResponse arg1, Object arg2, Exception arg3)
			throws Exception {
		
	}

	@Override
	public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1,
			Object arg2, ModelAndView arg3) throws Exception {
		
	}

	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
			Object object) throws Exception {
		HttpSession session = request.getSession();
		Manager manager = (Manager)session.getAttribute(BlockAttribute.MANAGER);
		if(null == manager){
			response.sendRedirect("/mlogin.html");
			return false;
		}
		String uri = request.getRequestURI();
		boolean bool = managerService.getVerifyByUrl(request, uri);
		if(!bool){
			request.getRequestDispatcher("/admin/message.html?message="+"对不起,您无相关操作权限!请联系管理员.").forward(request, response);
			return false;
		}
		return true;
	}

	public ManagerService getManagerService() {
		return managerService;
	}

	public void setManagerService(ManagerService managerService) {
		this.managerService = managerService;
	}

}