/// <summary> /// 将DUE00记录实体由普通的实体(DataAccess.Model.DUE00)转换为SubSonic插件生成的实体 /// </summary> /// <param name="model">普通的实体(DataAccess.Model.DUE00)</param> /// <returns>DUE00</returns> public DUE00 Transform(DataAccess.Model.DUE00 model) { if (model == null) { return(null); } return(new DUE00 { Id = model.Id, SHOP_ID = model.SHOP_ID, TAKEIN_ID = model.TAKEIN_ID, STATUS = model.STATUS, INPUT_DATE = model.INPUT_DATE, SUP_ID = model.SUP_ID, USER_ID = model.USER_ID, APP_USER = model.APP_USER, APP_DATETIME = model.APP_DATETIME, TOT_AMOUNT = model.TOT_AMOUNT, TOT_TAX = model.TOT_TAX, TOT_QTY = model.TOT_QTY, PRE_PAY = model.PRE_PAY, PRE_PAY_ID = model.PRE_PAY_ID, RELATE_ID = model.RELATE_ID, INVOICE_ID = model.INVOICE_ID, TAKEIN_TYPE = model.TAKEIN_TYPE, Memo = model.Memo, CRT_DATETIME = model.CRT_DATETIME, CRT_USER_ID = model.CRT_USER_ID, MOD_DATETIME = model.MOD_DATETIME, MOD_USER_ID = model.MOD_USER_ID, LAST_UPDATE = model.LAST_UPDATE, }); }
/// <summary> /// 更新IIS缓存中指定Id记录 /// </summary> /// <param name="model">记录实体</param> public void SetModelForCache(DataAccess.Model.DUE00 model) { //从缓存中读取记录列表 var list = GetList(); //从缓存中删除记录 DelCache(model.Id); //添加记录 list.Add(model); }
/// <summary> /// 给实体赋值 /// </summary> /// <param name="model">实体</param> /// <param name="dic">列名与值</param> public void SetModelValue(DataAccess.Model.DUE00 model, Dictionary <string, object> dic) { if (model == null || dic == null) { return; } //遍历字典,逐个给字段赋值 foreach (var d in dic) { SetModelValue(model, d.Key, d.Value); } }
/// <summary> /// 给实体赋值 /// </summary> /// <param name="model">实体</param> /// <param name="colName">列名</param> /// <param name="value">值</param> public void SetModelValue(DataAccess.Model.DUE00 model, string colName, object value) { if (model == null || string.IsNullOrEmpty(colName)) { return; } //返回指定条件的实体 switch (colName) { case "Id": model.Id = (int)value; break; case "SHOP_ID": model.SHOP_ID = (string)value; break; case "TAKEIN_ID": model.TAKEIN_ID = (string)value; break; case "STATUS": model.STATUS = ConvertHelper.Ctinyint(value); break; case "INPUT_DATE": model.INPUT_DATE = (DateTime)value; break; case "SUP_ID": model.SUP_ID = (string)value; break; case "USER_ID": model.USER_ID = (string)value; break; case "APP_USER": model.APP_USER = (string)value; break; case "APP_DATETIME": model.APP_DATETIME = (DateTime)value; break; case "TOT_AMOUNT": model.TOT_AMOUNT = (decimal)value; break; case "TOT_TAX": model.TOT_TAX = (decimal)value; break; case "TOT_QTY": model.TOT_QTY = (decimal)value; break; case "PRE_PAY": model.PRE_PAY = (decimal)value; break; case "PRE_PAY_ID": model.PRE_PAY_ID = (string)value; break; case "RELATE_ID": model.RELATE_ID = (string)value; break; case "INVOICE_ID": model.INVOICE_ID = (string)value; break; case "TAKEIN_TYPE": model.TAKEIN_TYPE = (int)value; break; case "Memo": model.Memo = (string)value; break; case "CRT_DATETIME": model.CRT_DATETIME = (DateTime)value; break; case "CRT_USER_ID": model.CRT_USER_ID = (string)value; break; case "MOD_DATETIME": model.MOD_DATETIME = (DateTime)value; break; case "MOD_USER_ID": model.MOD_USER_ID = (string)value; break; case "LAST_UPDATE": model.LAST_UPDATE = (DateTime)value; break; } }
/// <summary> /// 从IIS缓存中获取指定Id记录 /// </summary> /// <param name="conditionColName">条件列名</param> /// <param name="value">条件值</param> /// <returns>DataAccess.Model.DUE00</returns> public DataAccess.Model.DUE00 GetModelForCache(string conditionColName, object value) { try { //从缓存中获取List var list = GetList(); DataAccess.Model.DUE00 model = null; Expression <Func <DUE00, bool> > expression = null; //返回指定条件的实体 switch (conditionColName) { case "Id": model = list.SingleOrDefault(x => x.Id == (int)value); expression = x => x.Id == (int)value; break; case "SHOP_ID": model = list.SingleOrDefault(x => x.SHOP_ID == (string)value); expression = x => x.SHOP_ID == (string)value; break; case "TAKEIN_ID": model = list.SingleOrDefault(x => x.TAKEIN_ID == (string)value); expression = x => x.TAKEIN_ID == (string)value; break; case "STATUS": model = list.SingleOrDefault(x => x.STATUS == (byte)value); expression = x => x.STATUS == (byte)value; break; case "INPUT_DATE": model = list.SingleOrDefault(x => x.INPUT_DATE == (DateTime)value); expression = x => x.INPUT_DATE == (DateTime)value; break; case "SUP_ID": model = list.SingleOrDefault(x => x.SUP_ID == (string)value); expression = x => x.SUP_ID == (string)value; break; case "USER_ID": model = list.SingleOrDefault(x => x.USER_ID == (string)value); expression = x => x.USER_ID == (string)value; break; case "APP_USER": model = list.SingleOrDefault(x => x.APP_USER == (string)value); expression = x => x.APP_USER == (string)value; break; case "APP_DATETIME": model = list.SingleOrDefault(x => x.APP_DATETIME == (DateTime)value); expression = x => x.APP_DATETIME == (DateTime)value; break; case "TOT_AMOUNT": model = list.SingleOrDefault(x => x.TOT_AMOUNT == (decimal)value); expression = x => x.TOT_AMOUNT == (decimal)value; break; case "TOT_TAX": model = list.SingleOrDefault(x => x.TOT_TAX == (decimal)value); expression = x => x.TOT_TAX == (decimal)value; break; case "TOT_QTY": model = list.SingleOrDefault(x => x.TOT_QTY == (decimal)value); expression = x => x.TOT_QTY == (decimal)value; break; case "PRE_PAY": model = list.SingleOrDefault(x => x.PRE_PAY == (decimal)value); expression = x => x.PRE_PAY == (decimal)value; break; case "PRE_PAY_ID": model = list.SingleOrDefault(x => x.PRE_PAY_ID == (string)value); expression = x => x.PRE_PAY_ID == (string)value; break; case "RELATE_ID": model = list.SingleOrDefault(x => x.RELATE_ID == (string)value); expression = x => x.RELATE_ID == (string)value; break; case "INVOICE_ID": model = list.SingleOrDefault(x => x.INVOICE_ID == (string)value); expression = x => x.INVOICE_ID == (string)value; break; case "TAKEIN_TYPE": model = list.SingleOrDefault(x => x.TAKEIN_TYPE == (int)value); expression = x => x.TAKEIN_TYPE == (int)value; break; case "Memo": model = list.SingleOrDefault(x => x.Memo == (string)value); expression = x => x.Memo == (string)value; break; case "CRT_DATETIME": model = list.SingleOrDefault(x => x.CRT_DATETIME == (DateTime)value); expression = x => x.CRT_DATETIME == (DateTime)value; break; case "CRT_USER_ID": model = list.SingleOrDefault(x => x.CRT_USER_ID == (string)value); expression = x => x.CRT_USER_ID == (string)value; break; case "MOD_DATETIME": model = list.SingleOrDefault(x => x.MOD_DATETIME == (DateTime)value); expression = x => x.MOD_DATETIME == (DateTime)value; break; case "MOD_USER_ID": model = list.SingleOrDefault(x => x.MOD_USER_ID == (string)value); expression = x => x.MOD_USER_ID == (string)value; break; case "LAST_UPDATE": model = list.SingleOrDefault(x => x.LAST_UPDATE == (DateTime)value); expression = x => x.LAST_UPDATE == (DateTime)value; break; default: return(null); } if (model == null) { //从数据库中读取 var tem = DUE00.SingleOrDefault(expression); if (tem == null) { return(null); } else { //对查询出来的实体进行转换 model = Transform(tem); return(model); } } else { return(model); } } catch (Exception e) { //记录日志 CommonBll.WriteLog("从IIS缓存中获取DUE00表记录时出现异常", e); return(null); } }
/// <summary> /// 返回实体中指定字段名的值 /// </summary> /// <param name="model">实体</param> /// <param name="colName">获取的字段名</param> /// <returns></returns> private object GetFieldValue(DataAccess.Model.DUE00 model, string colName) { if (model == null || string.IsNullOrEmpty(colName)) { return(null); } //返回指定的列值 switch (colName) { case "Id": return(model.Id); case "SHOP_ID": return(model.SHOP_ID); case "TAKEIN_ID": return(model.TAKEIN_ID); case "STATUS": return(model.STATUS); case "INPUT_DATE": return(model.INPUT_DATE); case "SUP_ID": return(model.SUP_ID); case "USER_ID": return(model.USER_ID); case "APP_USER": return(model.APP_USER); case "APP_DATETIME": return(model.APP_DATETIME); case "TOT_AMOUNT": return(model.TOT_AMOUNT); case "TOT_TAX": return(model.TOT_TAX); case "TOT_QTY": return(model.TOT_QTY); case "PRE_PAY": return(model.PRE_PAY); case "PRE_PAY_ID": return(model.PRE_PAY_ID); case "RELATE_ID": return(model.RELATE_ID); case "INVOICE_ID": return(model.INVOICE_ID); case "TAKEIN_TYPE": return(model.TAKEIN_TYPE); case "Memo": return(model.Memo); case "CRT_DATETIME": return(model.CRT_DATETIME); case "CRT_USER_ID": return(model.CRT_USER_ID); case "MOD_DATETIME": return(model.MOD_DATETIME); case "MOD_USER_ID": return(model.MOD_USER_ID); case "LAST_UPDATE": return(model.LAST_UPDATE); } return(null); }