using System; using System.Collections.Generic; using System.Linq; using System.Web; using Newtonsoft.Json; namespace FangYar.WebUI.ashx { /// /// ZYAlarmdataHandler 的摘要说明 /// public class ZYAlarmdataHandler : IHttpHandler { private FangYar.BLL.TBL_ALARMDATA bll = new FangYar.BLL.TBL_ALARMDATA(); public void ProcessRequest(HttpContext context) { // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Other, "报警信息操作请求", ""); context.Response.ContentType = "text/plain"; string action = context.Request.Params["Action"]; string returnstr = ""; switch (action) { case "List": returnstr = List(context); break; case "GetAlarmWeek": returnstr = GetAlarmWeek(context); break; } context.Response.Write(returnstr); } //查询 private string List(HttpContext context) { string returnstr = ""; try { string ORG_ID = context.Request.Params["ORG_ID"]; string type = context.Request.Params["TYPE"]; string page = context.Request.Params["page"]; string limit = context.Request.Params["limit"]; int pageIndex = 1; int pageSize = 10; if (!string.IsNullOrEmpty(page)) { pageIndex = int.Parse(page); } if (!string.IsNullOrEmpty(limit)) { pageSize = int.Parse(limit); } string where = "1=1"; where += " and (ORG_ID ='" + ORG_ID + "' or ORG_ID in (select o.org_id from fire_org o where o.pid = '" + ORG_ID + "') )"; if (!string.IsNullOrEmpty(type)) { where += " and TYPE='" + type + "' "; } returnstr = "{\"code\":0,\"msg\":\"\","; int count = bll.GetRecordCount(where); returnstr += "\"count\":" + count + ",\"data\":"; if (count == 0) { returnstr += "[]"; } else { string data = "["; List list = bll.QueryList(pageIndex, pageSize, where, " time desc"); for (int i = 0; i < list.Count; i++) { string pic1 = ""; if (list[i].PIC != null && list[i].PIC.ToString() != "") { pic1 = Convert.ToBase64String((byte[])list[i].PIC); } data += "{\"ID\":\"" + list[i].ID + "\",\"DVC_ID\":\"" + list[i].DVC_ID + "\",\"ORG_ID\":\"" + list[i].ORG_ID + "\",\"TYPE\":\"" + list[i].TYPE + "\","; data += "\"TIME\":\"" + list[i].TIME + "\",\"ADDR\":\"" + list[i].ADDR + "\","; data += "\"PICSRC\":\"" + list[i].PICSRC + "\",\"VALUE\":\"" + list[i].VALUE + "\","; data += "\"PIC\":\"" + pic1 + "\"}"; if (i != list.Count - 1) { data += ","; } } returnstr += data + "]"; } returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "报警信息操作请求", "查询异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "报警信息操作请求", "查询"); return returnstr; } ////添加 //private string Add(HttpContext context) //{ // string returnstr = ""; // int code = -1; // string msg = ""; // try // { // string id=Guid.NewGuid().ToString("N");//id // string dvc_id = context.Request.Params["dvc_id"];//设备编号 // string org_id = context.Request.Params["org_id"]; //机构 // string type = context.Request.Params["type"]; //报警类型 // string time = context.Request.Params["time"];//报警时间 // string addr = context.Request.Params["addr"];//报警地点 // byte[] pic = context.Request.Params["pic"];//图片 // string picsrc = context.Request.Params["picsrc"];//图片url // string value = context.Request.Params["value"];//报警值 // FangYar.Model.TBL_ALARMDATA model = new Model.TBL_ALARMDATA(); // model.ID = Guid.NewGuid().ToString("N"); // model.DVC_ID = dvc_id; // model.ORG_ID = org_id; // model.TYPE = type; // model.TIME = DateTime.Parse(time); // model.ADDR = addr; // model.PIC = pic; // model.PICSRC = picsrc; // model.VALUE = value; // if (bll.Add(model)) // { // msg = "添加成功!"; // code = 1; // } // else { msg = "添加失败!"; } // } // catch // { // msg = "添加失败!"; // } // returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}"; // return returnstr; //} //获取七天统计数据 private string GetAlarmWeek(HttpContext context) { string returnstr = ""; try { string ORG_ID = context.Request.Params["ORG_ID"]; string type = context.Request.Params["TYPE"]; returnstr = "{\"code\":1,\"msg\":\"\","; returnstr += "\"data\":"; string where = "1=1"; where += " and (ORG_ID ='" + ORG_ID + "' or ORG_ID in (select o.org_id from fire_org o where o.pid = '" + ORG_ID + "') )"; if (!(string.IsNullOrEmpty(type))) { where += " and TYPE='" + type + "' "; } returnstr += JsonConvert.SerializeObject(bll.TotalDaysAlarm(7, where)); returnstr += "}"; } catch (Exception e) { returnstr = "{\"code\":-1,\"msg\":\"\"}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "报警信息操作请求", "获取七天统计数据异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "报警信息操作请求", "获取七天统计数据"); return returnstr; } public bool IsReusable { get { return false; } } } }