package cn.com.usky.iot.alarm.service; import java.io.BufferedReader; import java.sql.SQLException; import java.text.NumberFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import cn.com.usky.iot.admin.dao.YtiotTAdminDao; import cn.com.usky.iot.admin.dao.YtiotVUserCompanyDao; import cn.com.usky.iot.admin.dao.YtiotVUserphoneDao; import cn.com.usky.iot.alarm.dao.YtiotVAlarmDao; import cn.com.usky.iot.entity.*; import cn.com.usky.utils.DaoQuery; import cn.com.usky.utils.HttpClientUtils; import cn.com.usky.utils.MD5Util; import net.sf.json.JSONArray; import net.sf.json.JSONObject; import org.apache.commons.lang3.StringUtils; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.DefaultHttpClient; import org.hibernate.HibernateException; import org.hibernate.Query; import org.hibernate.Session; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.orm.hibernate3.HibernateCallback; import org.springframework.orm.hibernate3.HibernateTemplate; import org.apache.http.message.BasicNameValuePair; import org.apache.http.protocol.HTTP; public class YtiotVAlarmServiceImpl implements YtiotVAlarmService { private HibernateTemplate hibernateTemplate; public void setHibernateTemplate(HibernateTemplate hibernateTemplate) { this.hibernateTemplate = hibernateTemplate; } private YtiotVAlarmDao ytiotVAlarmDao; private YtiotVUserphoneDao ytiotVUserphoneDao; private YtiotTAdminDao ytiotTAdminDao; private YtiotVUserCompanyDao ytiotVUserCompanyDao; public YtiotVAlarmDao getYtiotVAlarmDao() { return ytiotVAlarmDao; } public void setYtiotVAlarmDao(YtiotVAlarmDao ytiotVAlarmDao) { this.ytiotVAlarmDao = ytiotVAlarmDao; } public YtiotVUserCompanyDao getYtiotVUserCompanyDao() { return ytiotVUserCompanyDao; } public void setYtiotVUserCompanyDao(YtiotVUserCompanyDao ytiotVUserCompanyDao) { this.ytiotVUserCompanyDao = ytiotVUserCompanyDao; } public YtiotVUserphoneDao getYtiotVUserphoneDao() { return ytiotVUserphoneDao; } public void setYtiotVUserphoneDao(YtiotVUserphoneDao ytiotVUserphoneDao) { this.ytiotVUserphoneDao = ytiotVUserphoneDao; } public YtiotTAdminDao getYtiotTAdminDao() { return ytiotTAdminDao; } public void setYtiotTAdminDao(YtiotTAdminDao ytiotTAdminDao) { this.ytiotTAdminDao = ytiotTAdminDao; } public boolean chk_string_param(String param) { if(param==null) return true; if(param.indexOf("=")>=0) return false; if(param.indexOf("\'")>=0) return false; if(param.indexOf("\"")>=0) return false; return true; } public String chkhw(String hqlwhere){ if(hqlwhere==null) return " where "; else return hqlwhere+" and "; } public String fieldname(String name) { if(name.equals("company_code")) return "companyCode"; if(name.equals("company_name")) return "companyName"; if(name.equals("device_code")) return "deviuceCode"; return name; } @Override public String getEFireVList(String queryJson, String page, String start, String limit, String sort) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String status = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null, hhwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getEFireVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { JSONObject s_json = Sort.getJSONObject(0); order = s_json.has("property")?s_json.getString("property"):order; dir = s_json.has("direction")?s_json.getString("direction"):dir; } json.put("sort", sort); } Start = start; Limit = limit; Page = page; if((V_LOGINNAME!=null)&&(company_code==null)&&(company_code_list==null)) { String where = " where u.id.agentid='"+V_LOGINNAME+"' "; List list = ytiotVUserCompanyDao.query(where, null, null, null, null); if(list.size()>0) { for(int i=0;i0)) { hqlwhere = chkhw(hqlwhere) + " clzt = "+clzt+" "; hhwhere = chkhw(hhwhere) + " u.id.clzt = "+clzt+" "; } if(Company_Code_List!=null) { hqlwhere = chkhw(hqlwhere) + " company_code in ("+Company_Code_List+") "; hhwhere = chkhw(hhwhere) + " u.id.companyCode in ("+Company_Code_List+") "; }else { if(company_code!=null) { hqlwhere = chkhw(hqlwhere) + " company_code = "+company_code+" "; hhwhere = chkhw(hhwhere) + " u.id.companyCode = "+company_code+" "; } if(company_code_list!=null) { hqlwhere = chkhw(hqlwhere) + " company_code in ("+company_code_list+") "; hhwhere = chkhw(hhwhere) + " u.id.companyCode in ("+company_code_list+") "; } } if(device_code!=null) { hqlwhere = chkhw(hqlwhere) + " device_code = "+device_code+" "; hhwhere = chkhw(hhwhere) + " u.id.deviceCode = "+device_code+" "; } if(device_code_list!=null) { hqlwhere = chkhw(hqlwhere) + " device_code in ("+device_code_list+") "; hhwhere = chkhw(hhwhere) + " u.id.deviceCode in ("+device_code_list+") "; } if(time_start!=null) { hqlwhere = chkhw(hqlwhere) + " time >= '"+time_start+"' "; hhwhere = chkhw(hhwhere) + " u.id.time >= '"+time_start+"' "; } if(time_end!=null) { hqlwhere = chkhw(hqlwhere) + " time <= '"+time_end+"' "; hhwhere = chkhw(hhwhere) + " u.id.time <= '"+time_end+"' "; } if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) { hqlwhere = chkhw(hqlwhere)+" data1 <> 'EF9' "; hhwhere = chkhw(hhwhere)+" u.id.data1 <> 'EF9' "; } else if(COMMSTATUS.equals("ONLY")) { hqlwhere = chkhw(hqlwhere)+" data1 = 'EF9' "; hhwhere = chkhw(hhwhere)+" u.id.data1 = 'EF9' "; } } if(order!=null) order_str = " order by "+order; else order_str = " order by id "; int totalCount = ytiotVAlarmDao.getEFireCount(hhwhere); // System.out.print("shazi"); // System.out.println(totalCount); json.put("totalCount", totalCount); if(Start!=null){ if(Integer.parseInt(Start)>totalCount){ Start = "0"; Page = "0"; }else if(page==null) Page="0"; }else{ Start = "0"; Page = "0"; } json.put("page", Page); json.put("start", Start); json.put("limit", Limit); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list1 = ytiotVAlarmDao.EFireQuery(hhwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list1.size()>0) { for(int i=0;i map = new HashMap(); if((company_code!=null)&&(i==0)) json.put("company_name", oid.getCompanyName()); map.put("orderIdx", Integer.parseInt(Start)+i+1); map.put("address", oid.getAddress()); map.put("cldh", oid.getCldh()); map.put("cllx", oid.getCllx()); map.put("cllxr", oid.getCllxr()); map.put("clnr", oid.getClnr()); map.put("clr", oid.getClr()); map.put("clwb", oid.getClwb()); map.put("clzt", oid.getClzt()==0?"未处理":"已处理"); map.put("company_code", oid.getCompanyCode()); map.put("company_name", oid.getCompanyName()); map.put("compartment", ""); map.put("data1", oid.getData1()); map.put("data2", oid.getData2()); map.put("data3", oid.getData3()); map.put("data4", oid.getData4()); map.put("data5", oid.getData5()); String dv = ""; if(oid.getData1().equals("EF0")) dv = "正常/报警撤销"; else if(oid.getData1().equals("EF1")) dv = "欠压报警"; else if(oid.getData1().equals("EF2")) dv = "过压报警"; else if(oid.getData1().equals("EF3")) dv = "过流报警"; else if(oid.getData1().equals("EF4")) dv = "漏电报警"; else if(oid.getData1().equals("EF5")) dv = "温度1超高报警"; else if(oid.getData1().equals("EF6")) dv = "温度2超高报警"; else if(oid.getData1().equals("EF7")) dv = "温度3超高报警"; else if(oid.getData1().equals("EF8")) dv = "温度4超高报警"; else if(oid.getData1().equals("EF9")) dv = "离线"; String dw = ""; if(oid.getData1().equals("EF0")) dw = ""; else if(oid.getData1().equals("EF1")) dw = "V"; else if(oid.getData1().equals("EF2")) dw = "V"; else if(oid.getData1().equals("EF3")) dw = "mA"; else if(oid.getData1().equals("EF4")) dw = "mA"; else if(oid.getData1().equals("EF5")) dw = "℃"; else if(oid.getData1().equals("EF6")) dw = "℃"; else if(oid.getData1().equals("EF7")) dw = "℃"; else if(oid.getData1().equals("EF8")) dw = "℃"; else if(oid.getData1().equals("EF9")) dw = ""; map.put("fullname", oid.getName()+","+dv+","+"告警值:"+oid.getData2()+dw); map.put("data", oid.getData1()); if(oid.getClzt()==1) map.put("clsj", df.format(oid.getClsj())); else map.put("clsj", ""); map.put("device_code", oid.getDeviceCode()); map.put("fireprocess", ""); map.put("id", oid.getId()); map.put("name", oid.getName()); map.put("ncmd", oid.getNcmd()); map.put("port", oid.getPort()); map.put("position", oid.getPosition()); map.put("status", dv); map.put("time", df.format(oid.getTime())); map.put("vidoe", oid.getVideo()); if((oid.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:oid.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("RESULT", jSONArray); } } return json.toString(); } } @Override public String getHjVList(String queryJson, String page, String start, String limit, String sort) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String status = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getHjVList"); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { JSONObject s_json = Sort.getJSONObject(0); order = s_json.has("property")?s_json.getString("property"):order; dir = s_json.has("direction")?s_json.getString("direction"):dir; } json.put("sort", sort); } Start = start; Limit = limit; Page = page; if((V_LOGINNAME!=null)&&(company_code==null)&&(company_code_list==null)) { String where = " where u.id.agentid='"+V_LOGINNAME+"' "; List list = ytiotVUserCompanyDao.query(where, null, null, null, null); if(list.size()>0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) { hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; }else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" = '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" = "+device_code+" "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if((time_start!=null)&&(time_start.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if((time_end!=null)&&(time_end.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; System.out.print("hanzhengyi"+hqlwhere); if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+" u.id.data1 <> 'U44' "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" u.id.data1 = 'U44' "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; int totalCount = ytiotVAlarmDao.getHJCount(hqlwhere); json.put("totalCount", totalCount); if(Start!=null){ if(Integer.parseInt(Start)>totalCount){ Start = "0"; Page = "0"; }else if(page==null) Page="0"; }else{ Start = "0"; Page = "0"; } json.put("page", Page); json.put("start", Start); json.put("limit", Limit); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list = ytiotVAlarmDao.HJQuery(hqlwhere, order_str, dir, Start, Limit); if(list.size()>0) { for(int i=0;i map = new HashMap(); if((company_code!=null)&&(i==0)) json.put("company_name", id.getCompanyName()); map.put("orderIdx", Integer.parseInt(Start)+i+1); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); map.put("clwb", id.getClwb()); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("compartment", id.getCompartment()); map.put("data1", id.getData1()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()); map.put("data5", id.getData5()); map.put("fullname", id.getName()+((id.getData4().length()>0) ?(","+id.getData4()):"")); map.put("data", id.getData2()); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("device_code", id.getDeviceCode()); map.put("fireprocess", id.getFireprocess()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); System.out.print("循环前"+i); if((id.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:id.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("RESULT", jSONArray); // System.out.print("RESULT"+jSONArray); } } return json.toString(); } } @Override public String getSyncfireAlarmFexcelList(String queryJson) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String status = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getHjVList"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { company_code = q_json.getString("company_code"); } } company_name = q_json.has("company_name")?q_json.getString("company_name"):null; if(q_json.has("device_code")) { if((q_json.optJSONObject("device_code")!=null) &&(q_json.optJSONObject("device_code").isArray())){ JSONArray j_tmp = q_json.getJSONArray("device_code"); for(int i=0;i0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) { hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; }else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" = '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" = "+device_code+" "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if((time_start!=null)&&(time_start.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if((time_end!=null)&&(time_end.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; System.out.print("hanzhengyi"+hqlwhere); if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+" u.id.data1 <> 'U44' "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" u.id.data1 = 'U44' "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; int totalCount = ytiotVAlarmDao.getHJCount(hqlwhere); json.put("totalCount", totalCount); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list = ytiotVAlarmDao.HJQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); if((company_code!=null)&&(i==0)) json.put("company_name", id.getCompanyName()); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); if(id.getClwb().equals("0")) map.put("clwb", "未误报"); else if(id.getClwb().equals("1")) map.put("clwb", "误报"); else map.put("clwb", ""); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("compartment", id.getCompartment()); map.put("data1", id.getData1()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()); map.put("data5", id.getData5()); map.put("data", id.getData2()); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("device_code", id.getDeviceCode()); map.put("fireprocess", id.getFireprocess()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("result", jSONArray); } } return json.toString(); } @Override public String getSyncEfireAlarmFexcelList(String queryJson) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String status = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null, hhwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getEFireVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { company_code = q_json.getString("company_code"); } } // company_name = q_json.has("company_name")?q_json.getString("company_name"):null; if(q_json.has("device_code")) { if((q_json.optJSONObject("device_code")!=null) &&(q_json.optJSONObject("device_code").isArray())){ JSONArray j_tmp = q_json.getJSONArray("device_code"); for(int i=0;i0) { for(int i=0;i0)) { hqlwhere = chkhw(hqlwhere) + " clzt = "+clzt+" "; hhwhere = chkhw(hhwhere) + " u.id.clzt = "+clzt+" "; } if(Company_Code_List!=null) { hqlwhere = chkhw(hqlwhere) + " company_code in ("+Company_Code_List+") "; hhwhere = chkhw(hhwhere) + " u.id.companyCode in ("+Company_Code_List+") "; }else { if(company_code!=null) { hqlwhere = chkhw(hqlwhere) + " company_code = "+company_code+" "; hhwhere = chkhw(hhwhere) + " u.id.companyCode = "+company_code+" "; } if(company_code_list!=null) { hqlwhere = chkhw(hqlwhere) + " company_code in ("+company_code_list+") "; hhwhere = chkhw(hhwhere) + " u.id.companyCode in ("+company_code_list+") "; } } if(device_code!=null) { hqlwhere = chkhw(hqlwhere) + " device_code = "+device_code+" "; hhwhere = chkhw(hhwhere) + " u.id.deviceCode = "+device_code+" "; } if(device_code_list!=null) { hqlwhere = chkhw(hqlwhere) + " device_code in ("+device_code_list+") "; hhwhere = chkhw(hhwhere) + " u.id.deviceCode in ("+device_code_list+") "; } if((time_start!=null)&&(time_start.length()>0)) { hqlwhere = chkhw(hqlwhere) + " time >= '"+time_start+"' "; hhwhere = chkhw(hhwhere) + " u.id.time >= '"+time_start+"' "; } if((time_end!=null)&&(time_start.length()>0)) { hqlwhere = chkhw(hqlwhere) + " time <= '"+time_end+"' "; hhwhere = chkhw(hhwhere) + " u.id.time <= '"+time_end+"' "; } if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) { hqlwhere = chkhw(hqlwhere)+" data1 <> 'EF9' "; hhwhere = chkhw(hhwhere)+" u.id.data1 <> 'EF9' "; } else if(COMMSTATUS.equals("ONLY")) { hqlwhere = chkhw(hqlwhere)+" data1 = 'EF9' "; hhwhere = chkhw(hhwhere)+" u.id.data1 = 'EF9' "; } } System.out.print("shazi"+hhwhere); if(order!=null) order_str = " order by "+order; else order_str = " order by id "; int totalCount = ytiotVAlarmDao.getEFireCount(hhwhere); // System.out.println(totalCount); json.put("totalCount", totalCount); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list1 = ytiotVAlarmDao.EFireQuery(hhwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list1.size()>0) { for(int i=0;i map = new HashMap(); if((company_code!=null)&&(i==0)) json.put("company_name", oid.getCompanyName()); map.put("address", oid.getAddress()); map.put("cldh", oid.getCldh()); map.put("cllx", oid.getCllx()); map.put("cllxr", oid.getCllxr()); map.put("clnr", oid.getClnr()); map.put("clr", oid.getClr()); if(oid.getClwb().equals("0")) map.put("clwb", "未误报"); else if(oid.getClwb().equals("1")) map.put("clwb", "误报"); else map.put("clwb", ""); map.put("clzt", oid.getClzt()==0?"未处理":"已处理"); map.put("company_code", oid.getCompanyCode()); map.put("company_name", oid.getCompanyName()); map.put("data2", oid.getData2()); map.put("data3", oid.getData3()); map.put("data4", oid.getData4()); map.put("data5", oid.getData5()); if(oid.getData1().equals("EF0")) map.put("data1", "正常/报警撤销"); else if(oid.getData1().equals("EF1")) map.put("data1", "欠压报警"); else if(oid.getData1().equals("EF2")) map.put("data1","过压报警"); else if(oid.getData1().equals("EF3")) map.put("data1","过流报警"); else if(oid.getData1().equals("EF4")) map.put("data1","漏电报警"); else if(oid.getData1().equals("EF5")) map.put("data1","温度1超高报警"); else if(oid.getData1().equals("EF6")) map.put("data1","温度2超高报警"); else if(oid.getData1().equals("EF7")) map.put("data1","温度3超高报警"); else if(oid.getData1().equals("EF8")) map.put("data1","温度4超高报警"); else if(oid.getData1().equals("EF9")) map.put("data1","离线"); // String dw = ""; // if(oid.getData1().equals("EF0")) // dw = ""; // else if(oid.getData1().equals("EF1")) // dw = "V"; // else if(oid.getData1().equals("EF2")) // dw = "V"; // else if(oid.getData1().equals("EF3")) // dw = "mA"; // else if(oid.getData1().equals("EF4")) // dw = "mA"; // else if(oid.getData1().equals("EF5")) // dw = "℃"; // else if(oid.getData1().equals("EF6")) // dw = "℃"; // else if(oid.getData1().equals("EF7")) // dw = "℃"; // else if(oid.getData1().equals("EF8")) // dw = "℃"; // else if(oid.getData1().equals("EF9")) // dw = ""; map.put("data", oid.getData1()); if(oid.getClzt()==1) map.put("clsj", df.format(oid.getClsj())); else map.put("clsj", ""); map.put("device_code", oid.getDeviceCode()); map.put("id", oid.getId()); map.put("name", oid.getName()); map.put("ncmd", oid.getNcmd()); map.put("port", oid.getPort()); map.put("position", oid.getPosition()); map.put("time", df.format(oid.getTime())); map.put("vidoe", oid.getVideo()); if((oid.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:oid.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("result", jSONArray); } } return json.toString(); } @Override public String getSyncWaterAlarmFexcelList(String queryJson) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getSjVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { company_code = q_json.getString("company_code"); } } company_name = q_json.has("company_name")?q_json.getString("company_name"):null; if(q_json.has("device_code")) { if((q_json.optJSONObject("device_code")!=null) &&(q_json.optJSONObject("device_code").isArray())){ JSONArray j_tmp = q_json.getJSONArray("device_code"); for(int i=0;i0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } // if(company_code!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = '"+company_code+"' "; // if(company_code_list!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" like '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" = '"+device_code+"' "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if((time_start!=null)&&(time_start.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if((time_end!=null)&&(time_end.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+"( u.id.data1 <> 'WP4' and u.id.data1 <> 'LL4' ) "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" ( u.id.data1 = 'WP4' or u.id.data1 = 'LL4' ) "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; int totalCount = ytiotVAlarmDao.getSJCount(hqlwhere); json.put("totalCount", totalCount); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list = ytiotVAlarmDao.SJQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); if(id.getClwb().equals("0")) map.put("clwb", "未误报"); else if(id.getClwb().equals("1")) map.put("clwb", "误报"); else map.put("clwb", ""); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); map.put("clsj", df.format(id.getClsj())); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()+(id.getData1().equals("WP1")?"MPa" :(id.getData1().equals("WP2")?"MPa" :(id.getData1().equals("WP3")?"MPa" :(id.getData1().equals("WP4")?"MPa" :(id.getData1().equals("WP0")?"MPa" :(id.getData1().equals("LL1")?"m" :(id.getData1().equals("LL2")?"m" :(id.getData1().equals("LL3")?"m" :(id.getData1().equals("LL0")?"m":"")))))))))); map.put("data5", id.getData5()); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("device_code", id.getDeviceCode()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); map.put("data1", id.getData1().equals("WP1")?"低压" :(id.getData1().equals("WP2")?"高压" :(id.getData1().equals("WP3")?"故障" :(id.getData1().equals("WP4")?"离线" :(id.getData1().equals("WP0")?"正常" :(id.getData1().equals("LL1")?"低水位" :(id.getData1().equals("LL2")?"高水位" :(id.getData1().equals("LL3")?"故障" :(id.getData1().equals("LL0")?"正常":id.getData1()))))))))); if((id.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:id.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("result", jSONArray); } } return json.toString(); } @Override public String getSyncRTUAlarmFexcelList(String queryJson) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String status = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getRTUVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { company_code = q_json.getString("company_code"); } } company_name = q_json.has("company_name")?q_json.getString("company_name"):null; if(q_json.has("device_code")) { if((q_json.optJSONObject("device_code")!=null) &&(q_json.optJSONObject("device_code").isArray())){ JSONArray j_tmp = q_json.getJSONArray("device_code"); for(int i=0;i0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) { hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; }else { if((company_code!=null)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" = '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" = "+device_code+" "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if((time_start!=null)&&(time_start.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if((time_end!=null)&&(time_end.length()>0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; // System.out.print("hanzhengyi"+COMMSTATUS); if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+" u.id.status <> '44' "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" u.id.status = '44' "; } System.out.print("han"+hqlwhere); if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; int totalCount = ytiotVAlarmDao.getRTUCount(hqlwhere); json.put("totalCount", totalCount); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list = ytiotVAlarmDao.RTUQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); if((company_code!=null)&&(i==0)) json.put("company_name", id.getCompanyName()); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); if(id.getClwb().equals("0")) map.put("clwb", "未误报"); else if(id.getClwb().equals("1")) map.put("clwb", "误报"); else map.put("clwb", ""); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("data1", id.getData1()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()); map.put("data5", id.getData5()); map.put("data", id.getData2()); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("device_code", id.getDeviceCode()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("result", jSONArray); } } return json.toString(); } /** * 获取监控视频告警信息 * @param queryJson * @param page * @param start * @param limit * @param sort * @return */ @Override public String getVideoLists(String queryJson, String page, String start, String limit, String sort) { { String address = null;//地址 String clzt = null;//处理状态 String company_code = null;//公司编号 String company_code_list = null;// String Company_Code_List = null; String company_name = null;//公司名 String device_code = null;//设备代码 String device_code_list = null; String time_start = null;//告警开始时间 String time_end = null;//告警结束时间 String COMMSTATUS = null; String V_LOGINNAME = null;//用户名 String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getVideoLists"); if(StringUtils.isNotBlank(queryJson)) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { JSONObject s_json = Sort.getJSONObject(0); order = s_json.has("property")?s_json.getString("property"):order; dir = s_json.has("direction")?s_json.getString("direction"):dir; } json.put("sort", sort); } Start = start; Limit = limit; Page = page; if((V_LOGINNAME!=null)&&(company_code==null)&&(company_code_list==null)) { String where = " where u.id.agentid='"+V_LOGINNAME+"' "; List list = ytiotVUserCompanyDao.query(where, null, null, null, null); if(list!=null && list.size()>=0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } // if(company_code!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" like '%"+company_code+"%' "; // if(company_code_list!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" like '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" like '%"+device_code+"%' "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if(time_start!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if(time_end!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+" u.id.status <> '44' "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" u.id.data = '44' "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; System.out.println(hqlwhere); //int totalCount = ytiotVAlarmDao.getRTUCount(hqlwhere); int totalCount = ytiotVAlarmDao.getVideoCount(hqlwhere); json.put("totalCount", totalCount); if(Start!=null){ if(Integer.parseInt(Start)>totalCount){ Start = "0"; Page = "0"; }else if(page==null) Page="0"; }else{ Start = "0"; Page = "0"; } json.put("page", Page); json.put("start", Start); json.put("limit", Limit); if(totalCount>0) { //获取用户手机号码 List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); //获取告警信息 List list = ytiotVAlarmDao.VideoAlarmQuery(hqlwhere, order_str, dir, Start, Limit); //ytiotVAlarmDao.RTUQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); map.put("orderIdx", Integer.parseInt(Start)+i+1); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); map.put("clwb", id.getClwb()); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("data1", id.getData1()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()); map.put("data5", id.getData5()); map.put("device_code", id.getDeviceCode()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); map.put("fullname", id.getName()+","+((id.getPort().equals("E6")) ?"模拟量":"开关量")+","+((id.getNcmd().length()>0) ?("端口号:"+id.getNcmd()):"") +((id.getPort().equals("E3")) ?"":(id.getData2().equals("高压")?(","+"告警值:"+id.getData1()+"MPa") :(id.getData2().equals("低压")?(","+"告警值:"+id.getData1()+"MPa") :(id.getData2().equals("高温")?(","+"告警值:"+id.getData1()+"℃") :(id.getData2().equals("低温")?(","+"告警值:"+id.getData1()+"℃") :(id.getData2().equals("高水位")?(","+"告警值:"+id.getData1()+"m") :(id.getData2().equals("低水位")?(","+"告警值:"+id.getData1()+"m") :(id.getData2().equals("高湿度")?(","+"告警值:"+id.getData1()+"%") :(id.getData2().equals("低湿度")?(","+"告警值:"+id.getData1()+"%") :"")))))))))); map.put("data", id.getData2()); if((id.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:id.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("RESULT", jSONArray); } } return json.toString(); } } /** * 获取监控视频告警信息 * @param queryJson * @param page * @param start * @param limit * @param sort * @return */ @Override public String getVideoOfflineList(String queryJson, String page, String start, String limit, String sort) { { String address = null;//地址 String clzt = null;//处理状态 String company_code = null;//公司编号 String company_code_list = null;// String Company_Code_List = null; String company_name = null;//公司名 String device_code = null;//设备代码 String device_code_list = null; String time_start = null;//告警开始时间 String time_end = null;//告警结束时间 String COMMSTATUS = null; String V_LOGINNAME = null;//用户名 String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getVideoLists"); if(StringUtils.isNotBlank(queryJson)) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { JSONObject s_json = Sort.getJSONObject(0); order = s_json.has("property")?s_json.getString("property"):order; dir = s_json.has("direction")?s_json.getString("direction"):dir; } json.put("sort", sort); } Start = start; Limit = limit; Page = page; if((V_LOGINNAME!=null)&&(company_code==null)&&(company_code_list==null)) { String where = " where u.id.agentid='"+V_LOGINNAME+"' "; List list = ytiotVUserCompanyDao.query(where, null, null, null, null); if(list!=null && list.size()>=0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } // if(company_code!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" like '%"+company_code+"%' "; // if(company_code_list!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" like '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" like '%"+device_code+"%' "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if(time_start!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if(time_end!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+" u.id.status <> '上线' "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" u.id.status = '离线' "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; System.out.println(hqlwhere); //int totalCount = ytiotVAlarmDao.getRTUCount(hqlwhere); int totalCount = ytiotVAlarmDao.getVideoCount(hqlwhere); json.put("totalCount", totalCount); if(Start!=null){ if(Integer.parseInt(Start)>totalCount){ Start = "0"; Page = "0"; }else if(page==null) Page="0"; }else{ Start = "0"; Page = "0"; } json.put("page", Page); json.put("start", Start); json.put("limit", Limit); if(totalCount>0) { //获取用户手机号码 List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); //获取告警信息 List list = ytiotVAlarmDao.videoOfflienQuery(hqlwhere, order_str, dir, Start, Limit); //ytiotVAlarmDao.RTUQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); map.put("orderIdx", Integer.parseInt(Start)+i+1); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); map.put("clwb", id.getClwb()); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("device_code", id.getDeviceCode()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); /*map.put("fullname", id.getName()+","+((id.getPort().equals("E6")) ?"模拟量":"开关量")+","+((id.getNcmd().length()>0) ?("端口号:"+id.getNcmd()):"") +((id.getPort().equals("E3")) ?"":(id.getData2().equals("高压")?(","+"告警值:"+id.getData1()+"MPa") :(id.getData2().equals("低压")?(","+"告警值:"+id.getData1()+"MPa") :(id.getData2().equals("高温")?(","+"告警值:"+id.getData1()+"℃") :(id.getData2().equals("低温")?(","+"告警值:"+id.getData1()+"℃") :(id.getData2().equals("高水位")?(","+"告警值:"+id.getData1()+"m") :(id.getData2().equals("低水位")?(","+"告警值:"+id.getData1()+"m") :(id.getData2().equals("高湿度")?(","+"告警值:"+id.getData1()+"%") :(id.getData2().equals("低湿度")?(","+"告警值:"+id.getData1()+"%") :""))))))))));*/ map.put("data", id.getData()); if((id.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:id.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("RESULT", jSONArray); } } return json.toString(); } } @Override public String getSjVList(String queryJson, String page, String start, String limit, String sort) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getSjVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null) &&(q_json.optJSONObject("company_code").isArray())) { JSONArray j_tmp = q_json.getJSONArray("company_code"); for(int i=0;i0)) { JSONObject s_json = Sort.getJSONObject(0); order = s_json.has("property")?s_json.getString("property"):order; dir = s_json.has("direction")?s_json.getString("direction"):dir; } json.put("sort", sort); } Start = start; Limit = limit; Page = page; if((V_LOGINNAME!=null)&&(company_code==null)&&(company_code_list==null)) { String where = " where u.id.agentid='"+V_LOGINNAME+"' "; List list = ytiotVUserCompanyDao.query(where, null, null, null, null); if(list.size()>0) { for(int i=0;i0)) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("clzt")+" = "+clzt+" "; if(Company_Code_List!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+Company_Code_List+") "; else { if(company_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = "+company_code+" "; if(company_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; } // if(company_code!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" = '"+company_code+"' "; // if(company_code_list!=null) // hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_code")+" in ("+company_code_list+") "; if(company_name!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("company_name")+" like '%"+company_name+"%' "; if(device_code!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" = '"+device_code+"' "; if(device_code_list!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("device_code")+" in ("+device_code_list+") "; if(time_start!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" >= '"+time_start+"' "; if(time_end!=null) hqlwhere = chkhw(hqlwhere) + " u.id."+fieldname("time")+" <= '"+time_end+"' "; if(COMMSTATUS!=null) { if(COMMSTATUS.equals("NO")) hqlwhere = chkhw(hqlwhere)+"( u.id.data1 <> 'WP4' and u.id.data1 <> 'LL4' ) "; else if(COMMSTATUS.equals("ONLY")) hqlwhere = chkhw(hqlwhere)+" ( u.id.data1 = 'WP4' or u.id.data1 = 'LL4' ) "; } if(order!=null) order_str = " order by u.id."+fieldname(order); else order_str = " order by u.id.id "; int totalCount = ytiotVAlarmDao.getSJCount(hqlwhere); json.put("totalCount", totalCount); if(Start!=null){ if(Integer.parseInt(Start)>totalCount){ Start = "0"; Page = "0"; }else if(page==null) Page="0"; }else{ Start = "0"; Page = "0"; } json.put("page", Page); json.put("start", Start); json.put("limit", Limit); if(totalCount>0) { List ulist = ytiotVUserphoneDao.query(null, null, null, null, null); List list = ytiotVAlarmDao.SJQuery(hqlwhere, order_str, dir, Start, Limit); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); if(list.size()>0) { for(int i=0;i map = new HashMap(); map.put("orderIdx", Integer.parseInt(Start)+i+1); map.put("address", id.getAddress()); map.put("cldh", id.getCldh()); map.put("cllx", id.getCllx()); map.put("cllxr", id.getCllxr()); map.put("clnr", id.getClnr()); map.put("clr", id.getClr()); map.put("clwb", id.getClwb()); map.put("clzt", id.getClzt()==0?"未处理":"已处理"); map.put("clsj", df.format(id.getClsj())); map.put("company_code", id.getCompanyCode()); map.put("company_name", id.getCompanyName()); map.put("data1", id.getData1()); map.put("data2", id.getData2()); map.put("data3", id.getData3()); map.put("data4", id.getData4()+(id.getData1().equals("WP1")?"MPa" :(id.getData1().equals("WP2")?"MPa" :(id.getData1().equals("WP3")?"MPa" :(id.getData1().equals("WP4")?"MPa" :(id.getData1().equals("WP0")?"MPa" :(id.getData1().equals("LL1")?"m" :(id.getData1().equals("LL2")?"m" :(id.getData1().equals("LL3")?"m" :(id.getData1().equals("LL0")?"m":"")))))))))); map.put("data5", id.getData5()); if(id.getClzt()==1) map.put("clsj", df.format(id.getClsj())); else map.put("clsj", ""); map.put("device_code", id.getDeviceCode()); map.put("id", id.getId()); map.put("name", id.getName()); map.put("ncmd", id.getNcmd()); map.put("port", id.getPort()); map.put("position", id.getPosition()); map.put("status", id.getStatus()); map.put("time", df.format(id.getTime())); map.put("vidoe", id.getVideo()); map.put("fullname", id.getName()); map.put("data", id.getData1().equals("WP1")?"低压" :(id.getData1().equals("WP2")?"高压" :(id.getData1().equals("WP3")?"故障" :(id.getData1().equals("WP4")?"离线" :(id.getData1().equals("WP0")?"正常" :(id.getData1().equals("LL1")?"低压" :(id.getData1().equals("LL2")?"高压" :(id.getData1().equals("LL3")?"故障" :(id.getData1().equals("LL0")?"正常":id.getData1()))))))))); if((id.getClr().length()>0) &&(ulist.size()>0)){ for(int j=0;j0?cl_name:id.getClr()); JSONObject jSONObject = JSONObject.fromObject(map); jSONArray.add(jSONObject); } json.put("RESULT", jSONArray); } } return json.toString(); } } @Override public String getRtuVList(String queryJson, String page, String start, String limit, String sort) throws Exception { // TODO Auto-generated method stub String address = null; String clzt = null; String company_code = null; String company_code_list = null; String Company_Code_List = null; String company_name = null; String device_code = null; String device_code_list = null; String time_start = null; String time_end = null; String COMMSTATUS = null; String V_LOGINNAME = null; String hqlwhere = null; String order = null; String dir = null; String Start = null; String Limit = null; String Page = null; String order_str = null; JSONObject q_json = null; JSONArray Sort = null; JSONArray jSONArray = new JSONArray(); JSONObject json = new JSONObject(); json.put("action", "getRtuVList"); if(queryJson!=null) { q_json = JSONObject.fromObject(queryJson); address = q_json.has("address")?q_json.getString("address"):null; V_LOGINNAME = q_json.has("V_LOGINNAME")?q_json.getString("V_LOGINNAME"):null; clzt = q_json.has("clzt")?q_json.getString("clzt"):null; COMMSTATUS = q_json.has("COMMSTATUS")?q_json.getString("COMMSTATUS"):null; if(q_json.has("company_code")) { if((q_json.optJSONObject("company_code")!=null)