软测单独项目
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.
 
 
 
 
 
 

658 lines
28 KiB

using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Web;
namespace FangYar.WebUI.ashx
{
/// <summary>
/// FireLeaveHandler 的摘要说明
/// </summary>
public class FirePatrolSpotHandler : IHttpHandler
{
private FangYar.BLL.FIRE_PATROL_SPOT bll = new FangYar.BLL.FIRE_PATROL_SPOT();
private FangYar.BLL.TBL.SysEmpBLL ebll = new FangYar.BLL.TBL.SysEmpBLL();
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 = getSpotlist(context);
break;
case "AddHydSpot":
returnstr = AddHydSpot(context);
break;
case "AddCraneSpot":
returnstr = AddCraneSpot(context);
break;
case "EditHydSpot":
returnstr = EditHydSpot(context);
break;
case "EditCraneSpot":
returnstr = EditCraneSpot(context);
break;
case "getOrgTree":
returnstr = getOrgTree(context);
break;
case "IFIDGetModel":
returnstr = IFIDGetModel(context);
break;
case "IFIDGetModelLeave":
returnstr = IFIDGetModelLeave(context);
break;
case "getSpotHydModelBySpotId":
returnstr = getSpotHydModelBySpotId(context);
break;
case "getSpotCraneModelBySpotId":
returnstr = getSpotCraneModelBySpotId(context);
break;
}
context.Response.Write(returnstr);
}
//查询
private string getSpotlist(HttpContext context)
{
string returnstr = "";
try
{
string orgId = context.Request.Params["orgId"];
string keyword = context.Request.Params["keywords"];
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 = null;
where = " org_id in (select org_id from fire_org o,(select get_Org_child_list('" + orgId + "') cids ) s where find_in_set(org_id,cids)) ";
if (!string.IsNullOrEmpty(keyword))
{
where += " and NAME like '%" + keyword + "%' or ADDR like '%" + keyword + "%' ";
}
returnstr = "{\"code\":0,\"msg\":\"\",";
int count = bll.GetRecordCount(where);
returnstr += "\"count\":" + count + ",\"data\":";
if (count == 0)
{
returnstr += "[]";
}
else
{
List<FangYar.Model.FIRE_PATROL_SPOT> list = bll.QueryList(pageIndex, pageSize, where, "");
returnstr += FangYar.Common.JsonHelper.ToJson(list);
}
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 AddHydSpot(HttpContext context)
{
string returnstr = "";
int code = -1;
string msg = "";
try
{
string RFID = context.Request.Params["RFID"];
bool a = bll.ExistsSpotNo(RFID);
if (a == true)
{
msg = "对不起,该芯片编号已经存在";
}
else
{
string ID = Guid.NewGuid().ToString("N");
string ORG_ID = context.Request.Params["ORG_ID"];
string CITY = context.Request.Params["CITY"];
string NAME = context.Request.Params["NAME"];
string ADDR = context.Request.Params["ADDR"];
string POINT = context.Request.Params["POINT"];
//上传图片
string PHOTO = UploadFile(context, "Fire/Hydrant", ID);
//巡查点表
FangYar.Model.FIRE_PATROL_SPOT spotModel = new Model.FIRE_PATROL_SPOT();
spotModel.ID = ID;
spotModel.NAME = NAME;
spotModel.TYPE = "0";
spotModel.RFID = RFID;
spotModel.POINT = POINT;
spotModel.ADDR = ADDR;
spotModel.ORG_ID = ORG_ID;
spotModel.CITY = CITY;
spotModel.PHOTO = PHOTO;
string HYD_NO = context.Request.Params["HYD_NO"];
string STATE = context.Request.Params["STATE"];
string REMARKS = context.Request.Params["REMARKS"];
FangYar.Model.FIRE.FIRE_HYDRANT_BAK hydModel = new FangYar.Model.FIRE.FIRE_HYDRANT_BAK();
hydModel.ID = ID;
hydModel.HYD_NO = HYD_NO;
hydModel.NAME = NAME;
hydModel.ADDR = ADDR;
hydModel.ORG_ID = ORG_ID;
hydModel.CITY = CITY;
hydModel.STATE = STATE;
hydModel.POINT = POINT;
hydModel.REMARKS = REMARKS;
if (bll.addHydSpot(spotModel, hydModel))
{
msg = "添加成功!";
code = 1;
}
else { msg = "添加失败!"; }
}
}
catch (Exception e)
{
msg = "添加失败!";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "添加消防栓巡查点异常:" + e);
}
returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Add, "水资源巡查点操作请求", "添加消防栓巡查点");
return returnstr;
}
//添加消防水鹤巡查点
private string AddCraneSpot(HttpContext context)
{
string returnstr = "";
int code = -1;
string msg = "";
try
{
string RFID = context.Request.Params["RFID"];
bool a = bll.ExistsSpotNo(RFID);
if (a == true)
{
msg = "对不起,该芯片编号已经存在";
}
else
{
string ID = Guid.NewGuid().ToString("N");
string ORG_ID = context.Request.Params["ORG_ID"];
string CITY = context.Request.Params["CITY"];
string NAME = context.Request.Params["NAME"];
string ADDR = context.Request.Params["ADDR"];
string POINT = context.Request.Params["POINT"];
//上传图片
string PHOTO = UploadFile(context, "Fire/Crane", ID);
//巡查点表
FangYar.Model.FIRE_PATROL_SPOT spotModel = new Model.FIRE_PATROL_SPOT();
spotModel.ID = ID;
spotModel.NAME = NAME;
spotModel.TYPE = "1";
spotModel.RFID = RFID;
spotModel.POINT = POINT;
spotModel.ADDR = ADDR;
spotModel.ORG_ID = ORG_ID;
spotModel.CITY = CITY;
spotModel.PHOTO = PHOTO;
string CRA_NO = context.Request.Params["CRA_NO"];
string FOUND_DATE = context.Request.Params["FOUND_DATE"];
string FOUND_UNIT = context.Request.Params["FOUND_UNIT"];
string FOUND_STATE = context.Request.Params["FOUND_STATE"];
string STATE = context.Request.Params["STATE"];
string REMARKS = context.Request.Params["REMARKS"];
FangYar.Model.FIRE.FIRE_CRANE_BAK craneModel = new FangYar.Model.FIRE.FIRE_CRANE_BAK();
craneModel.ID = ID;
craneModel.CRA_NO = CRA_NO;
craneModel.ADDR = ADDR;
craneModel.ORG_ID = ORG_ID;
craneModel.CITY = CITY;
craneModel.STATE = STATE;
craneModel.FOUND_DATE = FOUND_DATE;
craneModel.FOUND_UNIT = FOUND_UNIT;
craneModel.FOUND_STATE = FOUND_STATE;
craneModel.POINT = POINT;
craneModel.REMARKS = REMARKS;
if (bll.addCraneSpot(spotModel, craneModel))
{
msg = "添加成功!";
code = 1;
}
else { msg = "添加失败!"; }
}
}
catch (Exception e)
{
msg = "添加失败!";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "添加消防水鹤巡查点异常:" + e);
}
returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Add, "水资源巡查点操作请求", "添加消防水鹤巡查点");
return returnstr;
}
//修改消防栓巡查点
private string EditHydSpot(HttpContext context)
{
string returnstr = "";
int code = -1;
string msg = "";
try
{
string ID = context.Request.Params["ID"];
string RFID = context.Request.Params["RFID"];
FangYar.Model.FIRE_PATROL_SPOT model = bll.RFIDGetModel(RFID);
if (model != null && model.ID != ID)
{
msg = "对不起,该芯片编号已经存在";
}
else
{
string ORG_ID = context.Request.Params["ORG_ID"];
string CITY = context.Request.Params["CITY"];
string NAME = context.Request.Params["NAME"];
string ADDR = context.Request.Params["ADDR"];
string POINT = context.Request.Params["POINT"];
//上传图片
string PHOTO = UploadFile(context, "Fire/Hydrant", ID);
//巡查点表
FangYar.Model.FIRE_PATROL_SPOT spotModel = bll.GetModel(ID);
spotModel.NAME = NAME;
spotModel.TYPE = "0";
spotModel.RFID = RFID;
spotModel.POINT = POINT;
spotModel.ADDR = ADDR;
spotModel.ORG_ID = ORG_ID;
spotModel.CITY = CITY;
spotModel.PHOTO = PHOTO;
string HYD_NO = context.Request.Params["HYD_NO"];
string STATE = context.Request.Params["STATE"];
string REMARKS = context.Request.Params["REMARKS"];
FangYar.BLL.FIRE.FIRE_HYDRANT_BAK hydbakbll = new FangYar.BLL.FIRE.FIRE_HYDRANT_BAK();
FangYar.Model.FIRE.FIRE_HYDRANT_BAK hydModel = hydbakbll.GetOriginalModel(ID);
hydModel.HYD_NO = HYD_NO;
hydModel.NAME = NAME;
hydModel.ADDR = ADDR;
hydModel.ORG_ID = ORG_ID;
hydModel.CITY = CITY;
hydModel.STATE = STATE;
hydModel.POINT = POINT;
hydModel.REMARKS = REMARKS;
if (bll.editHydSpot(spotModel, hydModel))
{
msg = "编辑成功!";
code = 1;
}
else { msg = "编辑失败!"; }
}
}
catch (Exception e)
{
msg = "编辑失败!";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "修改消防栓巡查点异常:" + e);
}
returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Update, "水资源巡查点操作请求", "修改消防栓巡查点");
return returnstr;
}
//修改消防水鹤巡查点
private string EditCraneSpot(HttpContext context)
{
string returnstr = "";
int code = -1;
string msg = "";
try
{
string ID = context.Request.Params["ID"];
string RFID = context.Request.Params["RFID"];
FangYar.Model.FIRE_PATROL_SPOT model = bll.RFIDGetModel(RFID);
if (model != null && model.ID != ID)
{
msg = "对不起,该芯片编号已经存在";
}
else
{
string ORG_ID = context.Request.Params["ORG_ID"];
string CITY = context.Request.Params["CITY"];
string NAME = context.Request.Params["NAME"];
string ADDR = context.Request.Params["ADDR"];
string POINT = context.Request.Params["POINT"];
//上传图片
string PHOTO = UploadFile(context, "Fire/Crane", ID);
//巡查点表
FangYar.Model.FIRE_PATROL_SPOT spotModel = bll.GetModel(ID);
spotModel.ID = ID;
spotModel.NAME = NAME;
spotModel.TYPE = "1";
spotModel.RFID = RFID;
spotModel.POINT = POINT;
spotModel.ADDR = ADDR;
spotModel.ORG_ID = ORG_ID;
spotModel.CITY = CITY;
spotModel.PHOTO = PHOTO;
string CRA_NO = context.Request.Params["CRA_NO"];
string FOUND_DATE = context.Request.Params["FOUND_DATE"];
string FOUND_UNIT = context.Request.Params["FOUND_UNIT"];
string FOUND_STATE = context.Request.Params["FOUND_STATE"];
string STATE = context.Request.Params["STATE"];
string REMARKS = context.Request.Params["REMARKS"];
FangYar.BLL.FIRE.FIRE_CRANE_BAK crabakbll = new FangYar.BLL.FIRE.FIRE_CRANE_BAK();
FangYar.Model.FIRE.FIRE_CRANE_BAK craneModel = crabakbll.GetOriginalModel(ID);
craneModel.ID = ID;
craneModel.CRA_NO = CRA_NO;
craneModel.ADDR = ADDR;
craneModel.ORG_ID = ORG_ID;
craneModel.CITY = CITY;
craneModel.STATE = STATE;
craneModel.FOUND_DATE = FOUND_DATE;
craneModel.FOUND_UNIT = FOUND_UNIT;
craneModel.FOUND_STATE = FOUND_STATE;
craneModel.POINT = POINT;
craneModel.REMARKS = REMARKS;
if (bll.editCraneSpot(spotModel, craneModel))
{
msg = "编辑成功!";
code = 1;
}
else { msg = "编辑失败!"; }
}
}
catch (Exception e)
{
msg = "编辑失败!";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "修改消防水鹤巡查点异常:" + e);
}
returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Update, "水资源巡查点操作请求", "修改消防水鹤巡查点");
return returnstr;
}
////修改消防栓巡查点状态
//private string EditSpot(HttpContext context)
//{
// string returnstr = "";
// int code = -1;
// string msg = "";
// try
// {
// string ID = context.Request.Params["ID"];
// string STATE = context.Request.Params["STATE"];
// //巡查点表
// FangYar.Model.FIRE_PATROL_SPOT spotModel = new Model.FIRE_PATROL_SPOT();
// spotModel.ID = ID;
// spotModel.STATE = STATE;
// if (STATE == "1") {
// }
// else if (STATE == "2") {
// string IS_COM = context.Request.Params["IS_COM"];
// string IS_ANT = context.Request.Params["IS_ANT"];
// string IS_LEAK = context.Request.Params["IS_LEAK"];
// string IS_IMP = context.Request.Params["IS_IMP"];
// string IS_DAM = context.Request.Params["IS_DAM"];
// string IS_ID = context.Request.Params["IS_ID"];
// string IS_PAINT = context.Request.Params["IS_PAINT"];
// FangYar.Model.FIRE.FIRE_HYDRANT_BAK hydModel = new FangYar.Model.FIRE.FIRE_HYDRANT_BAK();
// hydModel.IS_COM = IS_COM;
// hydModel.IS_ANT = IS_ANT;
// hydModel.IS_LEAK = IS_LEAK;
// hydModel.IS_IMP = IS_IMP;
// hydModel.IS_DAM = IS_DAM;
// hydModel.IS_ID = IS_ID;
// hydModel.IS_PAINT = IS_PAINT;
// }
// if (bll.Update(model))
// {
// msg = "修改成功!";
// code = 1;
// }
// else { msg = "修改失败!"; }
// }
// catch
// {
// msg = "修改失败!";
// }
// returnstr = "{\"msg\":\"" + msg + "\",\"code\":" + code + "}";
// return returnstr;
//}
//获取Tree 机构下的巡查点列表
private string getOrgTree(HttpContext context)
{
string returnstr = "";
try
{
string orgId = context.Request.Params["OrgId"];
string patrolSpotType = context.Request.Params["patrolSpotType"];
returnstr = "{\"code\":0,\"msg\":\"\",\"data\":";
DataTable data = bll.getOrgTree(orgId, patrolSpotType);
returnstr += FangYar.Common.JsonHelper.ToJson(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;
}
//根据IFID(芯片编号)得到一个对象实体
private string IFIDGetModel(HttpContext context)
{
string returnstr = "";
try
{
string ORG_ID = context.Request.Params["ORG_ID"];
string IFID = context.Request.Params["IFID"];
FangYar.Model.FIRE_PATROL_SPOT model = bll.IFIDGetModel(ORG_ID, IFID);
returnstr += FangYar.Common.JsonHelper.ToJson(model);
}
catch (Exception e)
{
returnstr = null;
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查点操作请求", "根据IFID(芯片编号)得到一个对象实体异常:" + e);
}
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查点操作请求", "根据IFID(芯片编号)得到一个对象实体");
return returnstr;
}
//根据IFID(芯片编号)得到一个对象实体(查铺查哨判断被查人是否在岗)
private string IFIDGetModelLeave(HttpContext context)
{
string returnstr = "";
try
{
string ORG_ID = context.Request.Params["ORG_ID"];
string IFID = context.Request.Params["IFID"];
FangYar.Model.FIRE_PATROL_SPOT model = bll.IFIDGetModel(ORG_ID, IFID);
JObject acc_ppl_s = JsonConvert.DeserializeObject<JObject>(model.EXTENDCODE2);
//JObject acc_ppl_s2 = new JObject();
//JObject acc_ppl_s2 = new JObject();
//JArray arr = new JArray();
string acc_ppl_s2 = "{\"data\":[";
int a = 0;
foreach (JObject obj in acc_ppl_s.Value<JArray>("data"))
{
FangYar.Model.TBL.TBL_SYS_EMP_Model emodel = ebll.GetModelByID((string)obj["ppl_Id"]);
if (a == 0)
{
acc_ppl_s2 += "{";
}
else
{
acc_ppl_s2 += ",{";
}
acc_ppl_s2 += "\"ppl_Id\":\"" + obj["ppl_Id"] + "\"";
acc_ppl_s2 += ",\"ppl_Name\":\"" + obj["ppl_Name"] + "\"";
acc_ppl_s2 += ",\"is_work\":\"" + emodel.IS_WORK + "\"";
acc_ppl_s2 += "}";
a++;
}
acc_ppl_s2 += "]}";
model.EXTENDCODE2 = acc_ppl_s2;
returnstr += FangYar.Common.JsonHelper.ToJson(model);
}
catch (Exception e)
{
returnstr = null;
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "根据IFID(芯片编号)得到一个对象实体异常:" + e);
}
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查点操作请求", "根据IFID(芯片编号)得到一个对象实体");
return returnstr;
}
//根据巡查点ID获取消防栓设备巡查点信息
private string getSpotHydModelBySpotId(HttpContext context)
{
string returnstr = "";
try
{
string spotId = context.Request.Params["spotId"];
returnstr = "{\"code\":0,\"msg\":\"\",\"data\":";
DataTable data = bll.getSpotHydModelBySpotId(spotId);
returnstr += FangYar.Common.JsonHelper.ToJson(data);
returnstr += "}";
}
catch (Exception e)
{
returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "根据巡查点ID获取消防栓设备巡查点信息异常:" + e);
}
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查点操作请求", "根据巡查点ID获取消防栓设备巡查点信息");
return returnstr;
}
//根据巡查点ID获取消防水鹤设备巡查点信息
private string getSpotCraneModelBySpotId(HttpContext context)
{
string returnstr = "";
try
{
string spotId = context.Request.Params["spotId"];
returnstr = "{\"code\":0,\"msg\":\"\",\"data\":";
DataTable data = bll.getSpotCraneModelBySpotId(spotId);
returnstr += FangYar.Common.JsonHelper.ToJson(data);
returnstr += "}";
}
catch (Exception e)
{
returnstr = "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "根据巡查点ID获取消防水鹤设备巡查点信息异常:" + e);
}
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查点操作请求", "根据巡查点ID获取消防水鹤设备巡查点信息");
return returnstr;
}
//上传图片
private static string UploadFile(HttpContext context, string type, string CONNMOD_ID)
{
string result = "";
if (context.Request.Files.Count > 0)
{
HttpPostedFile item = context.Request.Files[0];
string imageRootPath = "/Upload/" + type + "/";
string extensionStr = System.IO.Path.GetExtension(item.FileName);
string str = System.DateTime.Now.ToString("yyyyHHddHHmmss");
string fileName = str + CONNMOD_ID + extensionStr;
try
{
string rootPath = System.AppDomain.CurrentDomain.BaseDirectory + imageRootPath;
if (System.IO.Directory.Exists(rootPath))
{
item.SaveAs(rootPath + fileName);
result = imageRootPath + fileName;
}
else
{
System.IO.Directory.CreateDirectory(rootPath);
item.SaveAs(rootPath + fileName);
result = imageRootPath + fileName;
}
}
catch (Exception e)
{
result = "";
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查点操作请求", "上传图片异常:" + e);
}
}
// 记录操作日志
BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Add, "水资源巡查点操作请求", "上传图片");
return result;
}
public bool IsReusable
{
get
{
return false;
}
}
}
}