package edu.sjtu.infosec.ismp.manager.BSAM.servlet; import java.io.IOException; import java.io.PrintWriter; import java.text.ParseException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.context.ApplicationContext; import org.springframework.dao.DataAccessResourceFailureException; import org.springframework.web.context.support.WebApplicationContextUtils; import edu.sjtu.infosec.ismp.manager.BSAM.model.MachineRoom; import edu.sjtu.infosec.ismp.manager.BSAM.service.MachineRoomService; import edu.sjtu.infosec.ismp.manager.BSAM.service.SubUnitSituationService; import edu.sjtu.infosec.ismp.util.EscapeUnescape; public class JiFangServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse resp)throws ServletException, IOException { ApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(req.getSession().getServletContext()); MachineRoomService machineRoomService = (MachineRoomService) ctx.getBean("machineRoomService"); SubUnitSituationService subUnitSituationService = (SubUnitSituationService) ctx.getBean("subUnitSituationService"); // JiFangRemoteService remoteJiFangService = (JiFangRemoteService) ctx.getBean("remoteJiFangService"); // MachineRoomSituationManager machineRoomSituationManager = (MachineRoomSituationManager) ctx.getBean("machineRoomSituationManager"); PrintWriter out = resp.getWriter(); String value = ""; String oper = req.getParameter("oper"); String id = req.getParameter("name");///机房这里的name指的是机房id id = id == null ? "1" : id; id = EscapeUnescape.unescape(id); // Integer id = 0; // List<MachineRoom> machineRoomList = machineRoomService.getMachineRoomByName(name); // if(null != machineRoomList && null != machineRoomList.get(0)){ // id = machineRoomList.get(0).getId(); // } if(oper.equals("getInitValue")){ //value = remoteJiFangService.getInitValues(new Integer(locationIdentify) , name); try { value = subUnitSituationService.getInitValues(Integer.parseInt(id),"JiFang"); // value = "ColorRange{red:80;yellow:60;green:40} SubNodes{默认机柜:0;E4机柜:0;C7机柜:0;C4机柜:0;D4机柜:0;A4机柜:0;7号楼3楼:0;6号楼2楼203:0;6号楼2层-1:0;6号楼2层52:0;6号楼2楼22:0;59:0;6号楼2楼6:0;1号楼7楼:0;6号楼2层-5:0;6号楼2层61:0;6号楼2层-9:0;1号楼712:0;6号楼2层039:0;6号楼2楼24:0;6号楼2层-7:0;054:0;4号楼1楼:0;6号楼2层-4:0;6号楼2楼32:0;6号楼2层-57:0;4-1:0;6号楼2层-40:0;6号楼2层53:0;6号楼2层-19:0;1号楼2楼:0;6号楼2层-60:0;6号楼2层-29:0;6号楼2层-66:0;5号楼4楼:0;6号楼2层-48:0;6号楼2楼56:0;6号搂2层-8:0;6号楼2楼20:0;6号楼2楼12:0;6号楼2楼:0;54:0;6号楼2层-74:0;45:0;6号楼2层201:0;73:0;4号楼113:0;6号楼2层42:0;9号楼2楼:0;411:0} HistoryValue{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}"; } catch (DataAccessResourceFailureException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (ParseException e) { e.printStackTrace(); } }else if(oper.equals("getCurrentValue")){ value = subUnitSituationService.getCurrentValues(Integer.parseInt(id), "JiFang"); //value = remoteJiFangService.getCurrentValues(new Integer(locationIdentify), name); // value = machineRoomSituationManager.getCurrentValues(name); // value = "ColorRange{red:80;yellow:60;green:40} SubNodes{默认机柜:0;E4机柜:0;C7机柜:0;C4机柜:0;D4机柜:0;A4机柜:0;7号楼3楼:0;6号楼2楼203:0;6号楼2层-1:0;6号楼2层52:0;6号楼2楼22:0;59:0;6号楼2楼6:0;1号楼7楼:0;6号楼2层-5:0;6号楼2层61:0;6号楼2层-9:0;1号楼712:0;6号楼2层039:0;6号楼2楼24:0;6号楼2层-7:0;054:0;4号楼1楼:0;6号楼2层-4:0;6号楼2楼32:0;6号楼2层-57:0;4-1:0;6号楼2层-40:0;6号楼2层53:0;6号楼2层-19:0;1号楼2楼:0;6号楼2层-60:0;6号楼2层-29:0;6号楼2层-66:0;5号楼4楼:0;6号楼2层-48:0;6号楼2楼56:0;6号搂2层-8:0;6号楼2楼20:0;6号楼2楼12:0;6号楼2楼:0;54:0;6号楼2层-74:0;45:0;6号楼2层201:0;73:0;4号楼113:0;6号楼2层42:0;9号楼2楼:0;411:0} HistoryValue{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}"; }else if(oper.equals("getHistoryValue")){ //value = remoteJiFangService.getHistoryValue(null, null, new Integer(locationIdentify), name, 1); String beginTime = req.getParameter("beginTime"); String endTime = req.getParameter("endTime"); beginTime = EscapeUnescape.unescape(beginTime); endTime = EscapeUnescape.unescape(endTime); String firstIndex = req.getParameter("firstIndex"); firstIndex = (firstIndex == null) ? "0" : firstIndex; try { value = subUnitSituationService.getHistoryValue(beginTime, endTime, Integer.parseInt(id), "JiFang", new Integer(firstIndex)); // value = machineRoomSituationManager.getHistoryValue(beginTime, endTime, name, new Integer(firstIndex)); // value = "ColorRange{red:80;yellow:60;green:40} SubNodes{默认机柜:0;E4机柜:0;C7机柜:0;C4机柜:0;D4机柜:0;A4机柜:0;7号楼3楼:0;6号楼2楼203:0;6号楼2层-1:0;6号楼2层52:0;6号楼2楼22:0;59:0;6号楼2楼6:0;1号楼7楼:0;6号楼2层-5:0;6号楼2层61:0;6号楼2层-9:0;1号楼712:0;6号楼2层039:0;6号楼2楼24:0;6号楼2层-7:0;054:0;4号楼1楼:0;6号楼2层-4:0;6号楼2楼32:0;6号楼2层-57:0;4-1:0;6号楼2层-40:0;6号楼2层53:0;6号楼2层-19:0;1号楼2楼:0;6号楼2层-60:0;6号楼2层-29:0;6号楼2层-66:0;5号楼4楼:0;6号楼2层-48:0;6号楼2楼56:0;6号搂2层-8:0;6号楼2楼20:0;6号楼2楼12:0;6号楼2楼:0;54:0;6号楼2层-74:0;45:0;6号楼2层201:0;73:0;4号楼113:0;6号楼2层42:0;9号楼2楼:0;411:0} HistoryValue{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}"; } catch (DataAccessResourceFailureException e) { e.printStackTrace(); } catch (NumberFormatException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (ParseException e) { e.printStackTrace(); } } // System.out.println(value); out.println(EscapeUnescape.escape(value)); } }