using System; using System.Collections.Generic; using System.Data; using System.Web; namespace FangYar.WebUI.ashx { /// /// FirePatrolTaskHandler 的摘要说明 /// public class FirePatrolTaskHandler : IHttpHandler { private FangYar.BLL.FIRE_PATROL_TASK bll = new FangYar.BLL.FIRE_PATROL_TASK(); 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 = getTasklist(context); break; case "Add": returnstr = AddTask(context); break; case "Edit": returnstr = EditTask(context); break; case "UserIdList": returnstr = getUserIdTasklist(context); break; case "Del": returnstr = DelTask(context); break; case "upPatrolTaskPer": returnstr = upPatrolTaskPer(context); break; } context.Response.Write(returnstr); } //查询 private string getTasklist(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 o.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 USERS_NAME like '%" + keyword + "%' "; } returnstr = "{\"code\":0,\"msg\":\"\","; int count = bll.GetRecordCount(where); returnstr += "\"count\":" + count + ",\"data\":"; if (count == 0) { returnstr += "[]"; } else { List list = bll.QueryList(pageIndex, pageSize, where, "S_TIME DESC "); 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; } //根据User_ID查询 private string getUserIdTasklist(HttpContext context) { string returnstr = ""; try { string orgId = context.Request.Params["orgId"]; string userid = context.Request.Params["userId"]; string state = context.Request.Params["state"]; //FangYar.BLL.TBL.SysEmpBLL ebll = new FangYar.BLL.TBL.SysEmpBLL(); //FangYar.Model.TBL.TBL_SYS_EMP_Model empModel = ebll.GetModelByUserID(orgId, userid); 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 = '" + orgId + "' "; //if (!string.IsNullOrEmpty(empModel.ID)) //{ // where += " and USERS_UID = '"+ empModel.ID + "' "; //}else //{ // return "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]"; //} if (!string.IsNullOrEmpty(userid)) { where += " and instr(','||USERS_UID||',',','||'" + userid + "'||',')<>0"; } else { return "{\"code\":0,\"msg\":\"error\",\"count\":0,\"data\":[]}"; } if (!string.IsNullOrEmpty(state)) { if (state.Contains(",")) { string[] state_s = state.Split(','); string states = ""; for (int i = 0; i < state_s.Length; i++) { if (i == 0) { states = "('" + state_s[i] + "'"; } states += ",'" + state_s[i] + "'"; } states += ")"; where += " and state in " + states + " "; } else { where += " and state = '" + state + "' "; } } returnstr = "{\"code\":0,\"msg\":\"\","; int count = bll.GetRecordCount(where); returnstr += "\"count\":" + count + ",\"data\":"; if (count == 0) { returnstr += "[]"; } else { List list = bll.QueryList(pageIndex, pageSize, where, " S_TIME DESC "); 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, "水资源巡查任务操作请求", "根据User_ID查询异常:" + e); } // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Query, "水资源巡查任务操作请求", "根据User_ID查询"); return returnstr; } //添加巡查任务 private string AddTask(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string taskId = Guid.NewGuid().ToString("N"); string USER_ID = context.Request.Params["UserId"]; string orgId = context.Request.Params["orgId"]; string PLAN_ID = context.Request.Params["PLAN_ID"]; string NAME = context.Request.Params["NAME"]; string S_TIME = context.Request.Params["S_TIME"]; string E_TIME = context.Request.Params["E_TIME"]; string USERS_UID = context.Request.Params["USERS_UID"]; string USERS_NAME = context.Request.Params["USERS_NAME"]; string SPOTS = context.Request.Params["SPOTS"]; string SPOT_IDS = context.Request.Params["SPOT_IDS"]; string SPOT_NAMES = context.Request.Params["SPOT_NAMES"]; string CITY = context.Request.Params["CITY"]; string STATE = context.Request.Params["STATE"]; //巡查任务表 FangYar.Model.FIRE_PATROL_TASK model = new Model.FIRE_PATROL_TASK(); model.ID = taskId; model.PLAN_ID = PLAN_ID; model.NAME = NAME; model.S_TIME = S_TIME; model.E_TIME = E_TIME; model.USERS_UID = USERS_UID; model.USERS_NAME = USERS_NAME; model.SPOTS = SPOTS; model.SPOT_IDS = SPOT_IDS; model.SPOT_NAMES = SPOT_NAMES; model.A_PER = USER_ID; model.CITY = CITY; model.ORG_ID = orgId; model.STATE = STATE; if (bll.Add(model)) { 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 EditTask(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string ID = context.Request.Params["ID"]; string USER_ID = context.Request.Params["UserId"]; string orgId = context.Request.Params["orgId"]; string PLAN_ID = context.Request.Params["PLAN_ID"]; string NAME = context.Request.Params["NAME"]; string S_TIME = context.Request.Params["S_TIME"]; string E_TIME = context.Request.Params["E_TIME"]; string USERS_UID = context.Request.Params["USERS_UID"]; string USERS_NAME = context.Request.Params["USERS_NAME"]; string SPOT_IDS = context.Request.Params["SPOT_IDS"]; string SPOT_NAMES = context.Request.Params["SPOT_NAMES"]; string STATE = context.Request.Params["STATE"]; //巡查任务表 FangYar.Model.FIRE_PATROL_TASK model = new Model.FIRE_PATROL_TASK(); model.ID = ID; model.NAME = NAME; model.PLAN_ID = PLAN_ID; model.S_TIME = S_TIME; model.E_TIME = E_TIME; model.USERS_UID = USERS_UID; model.USERS_NAME = USERS_NAME; model.SPOT_IDS = SPOT_IDS; model.SPOT_NAMES = SPOT_NAMES; model.ORG_ID = orgId; model.STATE = STATE; model.U_PER = USER_ID; if (bll.Update(model)) { 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 DelTask(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string TaskList = context.Request.Params["TaskList"]; string[] TaskArray = TaskList.Split(','); string TaskListString = ""; for (int i = 0; i < TaskArray.Length; i++) { if (i == 0) { TaskListString = "'" + TaskArray[i] + "'"; } else { TaskListString += ",'" + TaskArray[i] + "'"; } } if (bll.DeleteList(TaskListString)) { msg = "删除成功!"; code = 1; } else { msg = "删除失败!"; } } catch (Exception e) { msg = "删除失败!"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Error, "水资源巡查任务操作请求", "删除巡查任务异常:" + e); } returnstr = "{\"code\":" + code + ",\"msg\":\"" + msg + "\"}"; // 记录操作日志 BLL.SysOperationLogHelp.AddSysOperationLog(context, Common.EnumOperationLogType.Delete, "水资源巡查任务操作请求", "删除巡查任务"); return returnstr; } //修改 此次巡查任务是由谁巡查的 private string upPatrolTaskPer(HttpContext context) { string returnstr = ""; int code = -1; string msg = ""; try { string taskId = context.Request.Params["taskId"]; //巡查任务ID string personName = context.Request.Params["EXTENDCODE2"]; //巡查员姓名 //巡查任务表 FangYar.Model.FIRE_PATROL_TASK model = bll.GetModel(taskId); model.EXTENDCODE2 = personName; DateTime t1 = Convert.ToDateTime(model.E_TIME); DateTime t2 = DateTime.Now; if (t1 < t2) { msg = "任务已超时无法在巡查!"; } else { if (personName != "" && personName != null) { if (bll.Update(model)) { FangYar.BLL.FIRE_PATROL_TRAJECTORY ptbll = new FangYar.BLL.FIRE_PATROL_TRAJECTORY(); DataTable data = ptbll.GetTraList(taskId); foreach (DataRow dr in data.Rows) { string state = dr["STATE"].ToString(); if (state == "0") { string id = dr["ID"].ToString(); ptbll.UpdateByIdYToState(id, personName); } } 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; } public bool IsReusable { get { return false; } } } }