package org.springblade.modules.interceptor; import org.springblade.modules.equipment.service.IEquipmentService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; import javax.annotation.PostConstruct; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 设备管理拦截器,管理设备的在线状态 * @author zhongrj * @time 2021-5-7 */ @Component public class EquipmentInterceptor implements HandlerInterceptor { @Autowired private IEquipmentService iEquipmentService; public static EquipmentInterceptor equipmentInterceptor; @PostConstruct public void init(){ equipmentInterceptor = this; } /** * 拦截所有的设备查询操作,在此之前做更新设备状态的操作 * @param request 请求域 * @param response 响应域 * @param handler 处理器 * @return * @throws Exception 异常 */ @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { //更新设备状态 equipmentInterceptor.iEquipmentService.updateEquipmentDtype(); //放行 return true; } @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { } }