using MESClassLibrary.BLL; using MESClassLibrary.BLL.Keep; using MESClassLibrary.EFModel; using MESWebSite.CommonClass; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; namespace MESWebSite.HttpHandlers { /// /// KeepVersionHandler 的摘要说明 /// public class KeepVersionHandler : IHttpHandler { HttpRequest Request = null; HttpResponse Response = null; public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; Request = context.Request; Response = context.Response; string method = Request.Params["method"]; switch (method) { case "QueryList": QueryList(); break; case "SaveInfo": SaveInfo(); break; case "DelInfo": DelInfo(); break; case "QueryCheckList": QueryCheckList(); break; case "OpenInfo": OpenInfo(); break; case "CloseInfo": CloseInfo(); break; case "QueryForCombobox": QueryForCombobox(); break; default: break; } } public bool IsReusable { get { return false; } } void QueryList() { string page = Request.Params["page"]; string pagesize = Request.Params["rows"]; string DeviceID = Request.Params["DeviceID"];//查询条件 if (string.IsNullOrEmpty(page)) { page = "0"; } if (string.IsNullOrEmpty(pagesize)) { pagesize = "15"; } if (string.IsNullOrEmpty(DeviceID)) { DeviceID = ""; } KeepVersionBLL bll = new KeepVersionBLL(); Response.Write(bll.SearchInfo(page, pagesize, DeviceID)); Response.End(); } public class parmSave { public string ID { get; set; } public string KeepItemsVersionID { get; set; } public string DeviceID { get; set; } public string KeepItemsID { get; set; } public string Version { get; set; } public string Description { get; set; } public string UserID { get; set; } public string arrid { get; set; } } void SaveInfo() { string ID = Request.Params["ID"]; string KeepItemsID = Request.Params["KeepItemsID"]; string DeviceID = Request.Params["DeviceID"]; string Version = Request.Params["Version"]; string Description = Request.Params["Description"]; string UserID = Request.Params["UserID"]; KeepVersionBLL bll = new KeepVersionBLL(); tb_KeepVersion md = new tb_KeepVersion(); md.DeviceID = DeviceID; md.Version = Version; md.Description = Description; if (ID == "") { md.ID = Guid.NewGuid().ToString(); md.CreateUserID = UserID; md.CreateTime = DateTime.Now; md.IsUseing = 0; Response.Write(bll.AddInfo(md, KeepItemsID) == true ? "true" : "false"); } else { md.ID = ID; parmSave model = new parmSave(); string sql_qrecord = @"select a.KeepItemsVersionID from tb_KeepRecord a left join tb_KeepItemsVersion b on a.KeepItemsVersionID= b.ID left join tb_KeepVersion c on c.ID = b.VersionID where c.ID=@ID "; string sql_insert1 = @"INSERT INTO [tb_KeepItemsVersion] ([ID],[VersionID],[KeepItemsID],[CreateUserID]) VALUES (@KeepItemsVersionID,@ID,@arrid,@UserID)"; string sql_update = @" UPDATE tb_KeepVersion SET [DeviceID] = @DeviceID, [Version] = @Version, [Description] = @Description, [UpdateUserID] = @UserID, [UpdateTime] = getdate() WHERE [ID] = @ID"; string sqldel = @"delete from [tb_KeepItemsVersion] where VersionID=@ID"; model.ID = Request.Params["ID"]; model.DeviceID = Request.Params["DeviceID"]; model.Description = Request.Params["Description"]; model.KeepItemsID = Request.Params["KeepItemsID"]; model.Version = Request.Params["Version"]; model.UserID = HttpContext.Current.Request.Cookies["LoginUserInfo"]["UserID"].ToString(); try { DataSet ds = SQLHelper.QueryDataSet(CommandType.Text, sql_qrecord, SQLHelper.ModelToParameterList(model).ToArray()); if (ds.Tables[0].Rows.Count > 0) { Response.Write("false"); } else { BasicBLL db = new BasicBLL(); var list = db.SearchInfoByKey("DeviceID", md.DeviceID).Where(p => p.Version == md.Version && p.ID != md.ID).ToList();//判断是否有重复数据 if (list.Count > 0) { Response.Write("false"); } else { SQLHelper.ExecuteNonQuery(CommandType.Text, sql_update, SQLHelper.ModelToParameterList(model).ToArray()); SQLHelper.ExecuteNonQuery(CommandType.Text, sqldel, SQLHelper.ModelToParameterList(model).ToArray()); if (!string.IsNullOrEmpty(model.KeepItemsID)) { string[] idArr = model.KeepItemsID.Split(','); foreach (string id in idArr) { if (id == "") { break; } else { model.KeepItemsVersionID = Guid.NewGuid().ToString(); model.arrid = id; SQLHelper.ExecuteNonQuery(CommandType.Text, sql_insert1, SQLHelper.ModelToParameterList(model).ToArray()); } } } Response.Write("true"); } } } catch (Exception e) { Response.Write("false"); } Response.End(); } Response.End(); } public class parmDel { public string ID { get; set; } public string Version { get; set; } } void DelInfo() { parmDel model = new parmDel(); string sqldel1 = @"delete from [tb_KeepVersion] where ID=@ID"; string sqldel2 = @"delete from [tb_KeepItemsVersion] where VersionID=@ID"; model.ID = Request.Params["ID"].ToString(); try { SQLHelper.ExecuteNonQuery(CommandType.Text, sqldel1, SQLHelper.ModelToParameterList(model).ToArray()); SQLHelper.ExecuteNonQuery(CommandType.Text, sqldel2, SQLHelper.ModelToParameterList(model).ToArray()); Response.Write("true"); } catch { Response.Write("false"); } Response.End(); } public class parmQuery { public string ID { get; set; } } void QueryCheckList() { parmQuery queryparms = new parmQuery(); queryparms.ID = Request.Params["Cid"].ToString(); string sql = @"select KeepItemsID as id from tb_KeepItemsVersion t1 left join tb_KeepVersion t2 on t1.versionID= t2.ID where t2.ID= @ID"; DataSet ds = SQLHelper.QueryDataSet(CommandType.Text, sql, SQLHelper.ModelToParameterList(queryparms).ToArray()); string jsonStr = JSONHelper.DataTableToJSON(ds.Tables[0]); Response.Write(jsonStr); Response.End(); } public class parmOpen { public string ID { get; set; } public string UserID { get; set; } } void OpenInfo() { parmOpen model = new parmOpen(); string sqlopen = @"update tb_KeepVersion SET IsUseing=1, [UpdateUserID] = @UserID, [UpdateTime] = getdate() where ID=@ID"; model.ID = Request.Params["ID"] == null ? "0" : Request.Params["ID"].ToString(); model.UserID = HttpContext.Current.Request.Cookies["LoginUserInfo"]["UserID"].ToString(); try { SQLHelper.ExecuteNonQuery(CommandType.Text, sqlopen, SQLHelper.ModelToParameterList(model).ToArray()); Response.Write("true"); } catch { Response.Write("false"); } Response.End(); } public class parmClose { public string ID { get; set; } public string UserID { get; set; } } void CloseInfo() { parmClose model = new parmClose(); string sqlclose = @"update tb_KeepVersion SET IsUseing=0, [UpdateUserID] = @UserID, [UpdateTime] = getdate() where ID=@ID"; model.ID = Request.Params["ID"].ToString(); model.UserID = HttpContext.Current.Request.Cookies["LoginUserInfo"]["UserID"].ToString(); try { SQLHelper.ExecuteNonQuery(CommandType.Text, sqlclose, SQLHelper.ModelToParameterList(model).ToArray()); Response.Write("true"); } catch { Response.Write("false"); } Response.End(); } void QueryForCombobox() { string d_id = Request.Params["d_id"]; KeepVersionBLL bll = new KeepVersionBLL(); Response.Write(bll.GetComboboxData(d_id)); Response.End(); } } }