软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

188 lines
7.3 KiB

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Newtonsoft.Json;
namespace FangYar.WebUI.ashx
{
/// <summary>
/// ZYAlarmdataHandler 的摘要说明
/// </summary>
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<FangYar.Model.OA.TBL_ALARMDATA> 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;
}
}
}
}