package com.hxzkoa.controller; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.net.InetAddress; import java.net.UnknownHostException; import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.hibernate.dialect.function.VarArgsSQLFunction; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; import com.hxzkoa.json.tb_achor; import com.hxzkoa.json.tb_department; import com.hxzkoa.json.tb_login; import com.hxzkoa.json.tb_person; import com.hxzkoa.json.tb_shebei; import com.hxzkoa.json.tb_shishi; import com.hxzkoa.json.tb_system; import com.hxzkoa.json.tb_tag; import com.hxzkoa.json.tb_user; import com.hxzkoa.json.vo_kaoqin_p; import com.hxzkoa.services.AnchorService; import com.hxzkoa.services.AttendanceService; import com.hxzkoa.services.BasicInfoService; import com.hxzkoa.services.LabelService; import com.hxzkoa.services.LoginService; import com.hxzkoa.services.SysSettingService; import com.hxzkoa.services.WarningService; import com.hxzkoa.services.ZhwService; /*import com.hxzkoa.udp.Udp_Receive;*/ import com.hxzkoa.util.Config; import com.hxzkoa.util.HttpUtil; import com.hxzkoa.util.ModifyConfig; import net.sf.json.JSONObject; @Controller public class ShowController { @Autowired private AnchorService anchorService; @Autowired private LabelService labelService; @Autowired private AttendanceService attendanceService; @Autowired private WarningService warningService; @Autowired private SysSettingService sysSettingService; @Autowired private LoginService loginService; @Autowired private ZhwService zhwService; @Autowired private BasicInfoService basicInfoService; /* Udp_Receive receive; */ // 清空文件内容 public void clearInfoForFile(String fileName) { File file = new File(fileName); try { if (!file.exists()) { file.createNewFile(); System.out.println("file"+file); } System.out.println("file"+file); FileWriter fileWriter = new FileWriter(file); fileWriter.write(""); fileWriter.flush(); fileWriter.close(); } catch (IOException e) { e.printStackTrace(); } } @RequestMapping(value = "/show.do", method = { RequestMethod.POST, RequestMethod.GET }) public String show(HttpServletRequest request) { // tb_user user = loginService.login("超级管理员"); HttpSession session = request.getSession(); // ServletContext application = session.getServletContext(); // application.setAttribute("username", user.getUsername()); // application.setAttribute("password", user.getPassword()); // application.setAttribute("superuser", user.getSuperuser()); // application.setAttribute("deleteq", user.getDeleteq()); // application.setAttribute("alertq", user.getAlertq()); // application.setAttribute("deleteall", user.getDeleteall()); // session.setAttribute("username", user.getUsername()); // session.setAttribute("password", user.getPassword()); // session.setAttribute("superuser", user.getSuperuser()); // session.setAttribute("deleteq", user.getDeleteq()); // session.setAttribute("alertq", user.getAlertq()); // session.setAttribute("deleteall", user.getDeleteall()); // session.setAttribute("fenceq", user.getFenceq()); // tb_system system = new tb_system(); // system.setUdpPort("8234"); // JSONObject jsonObject = JSONObject.fromObject(system); // String postUrl = Config.getPostUrl(); // String url_setting_bw = postUrl + "getSysSetting.do"; // JSONObject re_tb_setting = HttpUtil.doPost(url_setting_bw, jsonObject.toString(), "UTF-8"); // tb_system re_setting = (tb_system) JSONObject.toBean(JSONObject.fromObject(re_tb_setting.get("result").toString()), // tb_system.class); // String port = re_setting.getUdpPort(); // // 开启报文接收 // try { // receive = new Udp_Receive(port); // } catch (Exception e) { // e.printStackTrace(); // } // if (Config.getUdpRunning().equals("1")) { // try { // receive.startThread(); // } catch (Exception e) { // e.printStackTrace(); // } // } String toPage = "forward:/hxzk/index.jsp"; //String toPage = "forward:/hxzk/mapshow/mapShow.jsp"; String ip = request.getHeader("x-forwarded-for"); if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("X-Real-IP"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("X-Forwarded-For"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("Proxy-Client-IP"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("WL-Proxy-Client-IP"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("HTTP_CLIENT_IP"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getHeader("HTTP_X_FORWARDED_FOR"); } if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { ip = request.getRemoteAddr(); if (ip.equals("127.0.0.1") || ip.equals("0:0:0:0:0:0:0:1")) { //根据网卡取本机配置的IP InetAddress inet = null; try { inet = InetAddress.getLocalHost(); } catch (UnknownHostException e) { e.printStackTrace(); } ip = inet.getHostAddress(); } } if (ip != null && ip.length() > 15) { if (ip.indexOf(",") > 0) { ip = ip.substring(0, ip.indexOf(",")); } } String username=(String)session.getAttribute("username"); tb_login login = new tb_login(); login.setIp(ip); login.setUsername(username); loginService.login_add(login); // 基站信息 List anchorManagementList = anchorService.getAnchorManagementsi(); // List shebei = anchorService.getShebei(); /* * List reAnchorManagementList = new ArrayList(); if * (anchorManagementList.size()>5){ for (int i = 0; i < 5; i++) { String time * =anchorManagementList.get(i).getGreateTime(); time = time.split(" ")[1]; * anchorManagementList.get(i).setGreateTime(time); * reAnchorManagementList.add(anchorManagementList.get(i)); } } else { for (int * i = 0; i < anchorManagementList.size(); i++) { String time * =anchorManagementList.get(i).getGreateTime(); time = time.split(" ")[1]; * anchorManagementList.get(i).setGreateTime(time); * reAnchorManagementList.add(anchorManagementList.get(i)); } } */ // 标签信息 List labelManagementList = labelService.getLabelManagement(1); List reLabelManagementList = new ArrayList(); if (labelManagementList.size()>6){ for (int i = 0; i < 6; i++) { String time =labelManagementList.get(i).getAddtime(); time = time.split(" ")[1]; labelManagementList.get(i).setAddtime(time); reLabelManagementList.add(labelManagementList.get(i)); } } else { for (int i = 0; i < labelManagementList.size(); i++) { String time =labelManagementList.get(i).getAddtime(); time = time.split(" ")[1]; labelManagementList.get(i).setAddtime(time); reLabelManagementList.add(labelManagementList.get(i)); } } // 实时考勤 // List realAttendanceList = attendanceService.getRealAttendance(1); // List reRealAttendanceList = new ArrayList(); // if (realAttendanceList.size()>4){ // for (int i = 0; i < 4; i++) { // String time =realAttendanceList.get(i).getIntime(); // time = time.split(" ")[1]; // time = time.split("\\.")[0]; // realAttendanceList.get(i).setIntime(time); // reRealAttendanceList.add(realAttendanceList.get(i)); // } // } else { // for (int i = 0; i < realAttendanceList.size(); i++) { // String time =realAttendanceList.get(i).getIntime(); // time = time.split(" ")[1]; // time = time.split("\\.")[0]; // realAttendanceList.get(i).setIntime(time); // reRealAttendanceList.add(realAttendanceList.get(i)); // } // } // 告警汇总 Map warningSummaryTypeMap = warningService.getWarningSummaryType(); List reWarningSummary_k = new ArrayList(); List reWarningSummary_v = new ArrayList(); Iterator warningSummaryTypeIter = warningSummaryTypeMap.keySet().iterator(); while (warningSummaryTypeIter.hasNext()) { String key = warningSummaryTypeIter.next(); reWarningSummary_k.add(key); reWarningSummary_v.add((int) warningSummaryTypeMap.get(key)); } // 现场工种 List dapartments = basicInfoService.getDepartmentManagement(); List realAttendance_k = new ArrayList(); List realAttendance_v = new ArrayList(); for(int i=0;i shishilist = attendanceService.gettongjishuju(); List realtongji_k = (List)shishilist.get(0); List realtongji_v = (List)shishilist.get(1); // Map realtongjiTypeMap = attendanceService.getRealtongjiType(); // List realtongji_k = new ArrayList(); // List realtongji_v = new ArrayList(); // Iterator realtongjiTypeIter = realtongjiTypeMap.keySet().iterator(); // while (realtongjiTypeIter.hasNext()) { // String key = realtongjiTypeIter.next(); // realtongji_k.add(key); // realtongji_v.add((int) realtongjiTypeMap.get(key)); // } // 系统设置 List systemlist = sysSettingService.getSetting(); // 实时数据 // Map realshishiTypeMap = attendanceService.getRealshishiType(); // List realshishi_k = new ArrayList(); // List realshishi_v = new ArrayList(); // Iterator realshishiTypeIter = realshishiTypeMap.keySet().iterator(); // while (realshishiTypeIter.hasNext()) { // String key = realshishiTypeIter.next(); // realshishi_k.add(key); // realshishi_v.add((int) realshishiTypeMap.get(key)); // } // request.setAttribute("shebei", shebei); List persons = zhwService.getbumen(); request.setAttribute("persons", persons); request.setAttribute("anchorManagementList", anchorManagementList); request.setAttribute("labelManagementList", reLabelManagementList); // request.setAttribute("realAttendanceList", reRealAttendanceList); request.setAttribute("reWarningSummary_k", reWarningSummary_k); request.setAttribute("reWarningSummary_v", reWarningSummary_v); request.setAttribute("realAttendance_k", realAttendance_k); request.setAttribute("realAttendance_v", realAttendance_v); request.setAttribute("realtongji_k", realtongji_k); request.setAttribute("realtongji_v", realtongji_v); request.setAttribute("systemlist", systemlist); // request.setAttribute("realshishi_k", realshishi_k); // request.setAttribute("realshishi_v", realshishi_v); //初始化配置文件 File file = new File(Config.getBaowenConfig()); if (!file.exists()){ try { file.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } File file2 = new File(Config.getMapConfig()); if (!file2.exists()){ try { file2.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } String filePath = Config.getBaowenConfig(); ModifyConfig.writeData(filePath, "baowenSwitch", "0"); //System.out.print(filePath); ModifyConfig.writeData(filePath, "debugSwitch", "0"); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getYuanshiMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getHEXMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getGasMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getTCPMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getUDPMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getZhuceMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getDebugMessagePath()); clearInfoForFile(request.getServletContext().getRealPath("/")+Config.getMessagePath()); return toPage; } @RequestMapping(value = "/setshow.do", method = { RequestMethod.POST, RequestMethod.GET }) @ResponseBody public List setshow(HttpServletRequest request) { // 实时数据 List shishilist = attendanceService.getRealshishiType(); return shishilist; } @RequestMapping(value = "/setweizhi.do", method = { RequestMethod.POST, RequestMethod.GET }) @ResponseBody public String setweizhi(HttpServletRequest request) { // 实时数据 List shishilist = attendanceService.getRealshishiType(); String weizhi = shishilist.get(0).getNum(); return weizhi; } @RequestMapping(value = "/setshebei.do", method = { RequestMethod.POST, RequestMethod.GET }) @ResponseBody public List setshebei(HttpServletRequest request) { // 设备数据 List achorlist = anchorService.getjizhanshebei(); List taglist = anchorService.getbiaoqianshebei2(); for(int i = 0;i settongjishuju(HttpServletRequest request) { List shishilist = attendanceService.gettongjishuju(); return shishilist; } @RequestMapping(value = "/setgongzhongnum.do", method = { RequestMethod.POST, RequestMethod.GET }) @ResponseBody public List setgongzhongnum(){ List gongzhongnum = new ArrayList<>(); List dapartments = basicInfoService.getDepartmentManagement(); List gongzhongk = new ArrayList(); List gongzhong = new ArrayList(); for(int i=0;i gaojingnum = attendanceService.getgaojingnum(); // return gaojingnum; JSONObject jsons = new JSONObject(); Map warningSummaryTypeMap = warningService.getWarningSummaryType(); List reWarningSummary_k = new ArrayList(); List reWarningSummary_v = new ArrayList(); Iterator warningSummaryTypeIter = warningSummaryTypeMap.keySet().iterator(); while (warningSummaryTypeIter.hasNext()) { String key = warningSummaryTypeIter.next(); reWarningSummary_k.add(key); reWarningSummary_v.add((int) warningSummaryTypeMap.get(key)); } jsons.put("key", reWarningSummary_k); jsons.put("value", reWarningSummary_v); return jsons; } }