using System; using System.Data; using System.Collections.Generic; using CallCenterApi.Model; using CallCenter.Utility; namespace CallCenterApi.BLL { /// /// 1 /// public partial class T_Sys_DictionaryValue { private readonly CallCenterApi.DAL.T_Sys_DictionaryValue dal = new CallCenterApi.DAL.T_Sys_DictionaryValue(); public T_Sys_DictionaryValue() { } #region Method /// /// 是否存在该记录 /// public bool Exists(int F_ValueId) { return dal.Exists(F_ValueId); } /// /// 增加一条数据 /// public int Add(CallCenterApi.Model.T_Sys_DictionaryValue model) { OutRedis(); return dal.Add(model); } /// /// 更新一条数据 /// public bool Update(CallCenterApi.Model.T_Sys_DictionaryValue model) { OutRedis(); return dal.Update(model); } /// /// 删除一条数据 /// public bool Delete(int F_ValueId) { OutRedis(); return dal.Delete(F_ValueId); } /// /// 删除一条数据 /// public bool DeleteList(string F_ValueIdlist) { OutRedis(); return dal.DeleteList(F_ValueIdlist); } public bool DeleteList1(string F_ValueIdlist) { OutRedis(); return dal.DeleteList1(F_ValueIdlist); } /// /// 得到一个对象实体 /// public CallCenterApi.Model.T_Sys_DictionaryValue GetModel(int F_ValueId) { var dt = GetRedis(); if (dt != null) { var dr = dt.Select("F_ValueId=" + F_ValueId); if (dr != null && dr.Length > 0) { return dal.DataRowToModel(dr[0]); } else { return null; } } else { return dal.GetModel(F_ValueId); } } /// /// 得到一个对象实体,从缓存中 /// //public CallCenterApi.Model.T_Sys_DictionaryValue GetModelByCache(int F_ValueId) //{ // string CacheKey = "T_Sys_DictionaryValueModel-" + F_ValueId; // object objModel = SZRX.Common.DataCache.GetCache(CacheKey); // if (objModel == null) // { // try // { // objModel = dal.GetModel(F_ValueId); // if (objModel != null) // { // int ModelCache = SZRX.Common.ConfigHelper.GetConfigInt("ModelCache"); // SZRX.Common.DataCache.SetCache(CacheKey, objModel, DateTime.Now.AddMinutes(ModelCache), TimeSpan.Zero); // } // } // catch{} // } // return (CallCenterApi.Model.T_Sys_DictionaryValue)objModel; //} /// /// 获得数据列表 /// public DataSet GetList(string strWhere, string filedOrder = "") { var dt = GetRedis(); if (dt != null) { var ds = new DataSet(); var drs = dt.Select(strWhere, filedOrder); if (drs.Length > 0) { ds.Tables.Add(drs.CopyToDataTable()); } else { ds.Tables.Add(new DataTable()); } return ds; } else { return dal.GetList(strWhere); } } /// /// 获得数据列表 /// public DataSet GetListNoCache(string strWhere) { return dal.GetList(strWhere); } /// /// 获得前几行数据 /// public DataSet GetList(int Top, string strWhere, string filedOrder) { return dal.GetList(Top, strWhere, filedOrder); } /// /// 获得数据列表 /// public List GetModelList(string strWhere, string filedOrder = "") { var dt = GetRedis(); if (dt != null) { var dtnew = new DataTable(); var drs = dt.Select(strWhere, filedOrder); if (drs.Length > 0) { dtnew = drs.CopyToDataTable(); } return DataTableToList(dtnew); } else { DataSet ds = dal.GetList(strWhere, filedOrder); return DataTableToList(ds.Tables[0]); } } /// /// 获得数据列表 /// public List GetModelListNoCache(string strWhere, string filedOrder = "") { DataSet ds = dal.GetList(strWhere, filedOrder); return DataTableToList(ds.Tables[0]); } /// /// 获得数据列表 /// public List DataTableToList(DataTable dt) { List modelList = new List(); int rowsCount = dt.Rows.Count; if (rowsCount > 0) { CallCenterApi.Model.T_Sys_DictionaryValue model; for (int n = 0; n < rowsCount; n++) { model = new CallCenterApi.Model.T_Sys_DictionaryValue(); if (dt.Rows[n]["F_ValueId"] != null && dt.Rows[n]["F_ValueId"].ToString() != "") { model.F_ValueId = int.Parse(dt.Rows[n]["F_ValueId"].ToString()); } if (dt.Rows[n]["F_ItemId"] != null && dt.Rows[n]["F_ItemId"].ToString() != "") { model.F_ItemId = int.Parse(dt.Rows[n]["F_ItemId"].ToString()); } if (dt.Rows[n]["F_Value"] != null && dt.Rows[n]["F_Value"].ToString() != "") { model.F_Value = dt.Rows[n]["F_Value"].ToString(); } if (dt.Rows[n]["F_PrentId"] != null && dt.Rows[n]["F_PrentId"].ToString() != "") { model.F_PrentId = int.Parse(dt.Rows[n]["F_PrentId"].ToString()); } if (dt.Rows[n]["F_Layer"] != null && dt.Rows[n]["F_Layer"].ToString() != "") { model.F_Layer = int.Parse(dt.Rows[n]["F_Layer"].ToString()); } if (dt.Rows[n]["F_IsLeaf"] != null && dt.Rows[n]["F_IsLeaf"].ToString() != "") { if ((dt.Rows[n]["F_IsLeaf"].ToString() == "1") || (dt.Rows[n]["F_IsLeaf"].ToString().ToLower() == "true")) { model.F_IsLeaf = true; } else { model.F_IsLeaf = false; } } modelList.Add(model); } } return modelList; } /// /// 获得数据列表 /// public DataSet GetAllList() { return GetList(""); } /// /// 分页获取数据列表 /// //public DataSet GetList(int PageSize,int PageIndex,string strWhere) //{ //return dal.GetList(PageSize,PageIndex,strWhere); //} #endregion Method private DataTable GetRedis() { var strList = RedisHelper1.StringGet("T_Sys_DictionaryValue"); if (strList != null) { return strList.ToString().ToObject(); } else { return InRedis(); } } private DataTable InRedis() { var dt = dal.GetList("").Tables[0]; RedisHelper1.StringSet("T_Sys_DictionaryValue", dt.ToJson(), new TimeSpan(24, 0, 0)); return dt; } private void OutRedis() { RedisHelper1.KeyDelete("T_Sys_DictionaryValue"); RedisHelper1.KeyDelete("ztree_38"); RedisHelper.KeyDelete("ztree_38new"); RedisHelper1.KeyDelete("key_38"); RedisHelper1.KeyDelete("ZTreeList_0"); RedisHelper1.KeyDelete("ztreeDic_38new"); RedisHelper1.KeyDelete("dickey_38"); } } }