/// <summary> /// 获得分页列表,无论是否是缓存实体都从数据库直接拿取数据 /// </summary> /// <param name="pPageIndex">页数</param> /// <param name="pPageSize">每页列表</param> /// <param name="pOrderBy">排序</param> /// <param name="pSortExpression">排序字段</param> /// <param name="pRecordCount">列表行数</param> /// <returns>数据分页</returns> public static List <WeekSumInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount) { if (pPageIndex <= 1) { pPageIndex = 1; } List <WeekSumInfo> list = new List <WeekSumInfo>(); Query q = WeekSum.CreateQuery(); q.PageIndex = pPageIndex; q.PageSize = pPageSize; q.ORDER_BY(pSortExpression, pOrderBy.ToString()); WeekSumCollection collection = new WeekSumCollection(); collection.LoadAndCloseReader(q.ExecuteReader()); foreach (WeekSum weekSum in collection) { WeekSumInfo weekSumInfo = new WeekSumInfo(); LoadFromDAL(weekSumInfo, weekSum); list.Add(weekSumInfo); } pRecordCount = q.GetRecordCount(); return(list); }
//数据持久化 internal static void SaveToDb(WeekSumInfo pWeekSumInfo, WeekSum pWeekSum, bool pIsNew) { pWeekSum.WeekSumId = pWeekSumInfo.weekSumId; pWeekSum.WeekSumName = pWeekSumInfo.weekSumName; pWeekSum.IsApprove = pWeekSumInfo.isApprove; pWeekSum.IsApply = pWeekSumInfo.isApply; pWeekSum.IsSend = pWeekSumInfo.isSend; pWeekSum.ApplyTime = pWeekSumInfo.applyTime; pWeekSum.RepplyTime = pWeekSumInfo.repplyTime; pWeekSum.ApplyView = pWeekSumInfo.applyView; pWeekSum.SendEmployeeId = pWeekSumInfo.sendEmployeeId; pWeekSum.RecvEmployeeId = pWeekSumInfo.recvEmployeeId; pWeekSum.IsNew = pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pWeekSum.Save(UserName); } catch (Exception ex) { LogManager.getInstance().getLogger(typeof(WeekSumInfo)).Error(ex); if (ex.Message.Contains("插入重复键")) //违反了唯一键 { throw new AppException("此对象已经存在"); //此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pWeekSumInfo.weekSumId = pWeekSum.WeekSumId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(WeekSumInfo))) { ResetCache(); } }
//从后台获取数据 internal static void LoadFromDAL(WeekSumInfo pWeekSumInfo, WeekSum pWeekSum) { pWeekSumInfo.weekSumId = pWeekSum.WeekSumId; pWeekSumInfo.weekSumName = pWeekSum.WeekSumName; pWeekSumInfo.isApprove = pWeekSum.IsApprove; pWeekSumInfo.isApply = pWeekSum.IsApply; pWeekSumInfo.isSend = pWeekSum.IsSend; pWeekSumInfo.applyTime = pWeekSum.ApplyTime; pWeekSumInfo.repplyTime = pWeekSum.RepplyTime; pWeekSumInfo.applyView = pWeekSum.ApplyView; pWeekSumInfo.sendEmployeeId = pWeekSum.SendEmployeeId; pWeekSumInfo.recvEmployeeId = pWeekSum.RecvEmployeeId; pWeekSumInfo.Loaded = true; }
/// <summary> /// 保存 /// </summary> public override void Save() { if (!m_Loaded) //新增 { WeekSum weekSum = new WeekSum(); SaveToDb(this, weekSum, true); } else //修改 { WeekSum weekSum = new WeekSum(weekSumId); if (weekSum.IsNew) { throw new AppException("该数据已经不存在了"); } SaveToDb(this, weekSum, false); } }
/// <summary> /// 删除 /// </summary> /// <returns>是否成功</returns> public override void Delete() { if (!m_Loaded) { throw new AppException("尚未初始化"); } bool result = (WeekSum.Delete(WeekSumId) == 1); //更新缓存 if (result && CachedEntityCommander.IsTypeRegistered(typeof(WeekSumInfo))) { ResetCache(); } if (!result) { throw new AppException("删除失败,数据可能被删除"); } }
private void LoadFromId(int weekSumId) { if (CachedEntityCommander.IsTypeRegistered(typeof(WeekSumInfo))) { WeekSumInfo weekSumInfo = Find(GetList(), weekSumId); if (weekSumInfo == null) { throw new AppException("未能在缓存中找到相应的键值对象"); } Copy(weekSumInfo, this); } else { WeekSum weekSum = new WeekSum(weekSumId); if (weekSum.IsNew) { throw new AppException("尚未初始化"); } LoadFromDAL(this, weekSum); } }
//删除周总结 public static void DelWeekSum(int weeksumid) { WeekSum.Delete(weeksumid); }
private void LoadFromId(int weekSumId) { if (CachedEntityCommander.IsTypeRegistered(typeof(WeekSumInfo))) { WeekSumInfo weekSumInfo=Find(GetList(), weekSumId); if(weekSumInfo==null) throw new AppException("未能在缓存中找到相应的键值对象"); Copy(weekSumInfo, this); } else { WeekSum weekSum=new WeekSum( weekSumId); if(weekSum.IsNew) throw new AppException("尚未初始化"); LoadFromDAL(this, weekSum); } }
//数据持久化 internal static void SaveToDb(WeekSumInfo pWeekSumInfo, WeekSum pWeekSum,bool pIsNew) { pWeekSum.WeekSumId = pWeekSumInfo.weekSumId; pWeekSum.WeekSumName = pWeekSumInfo.weekSumName; pWeekSum.IsApprove = pWeekSumInfo.isApprove; pWeekSum.IsApply = pWeekSumInfo.isApply; pWeekSum.IsSend = pWeekSumInfo.isSend; pWeekSum.ApplyTime = pWeekSumInfo.applyTime; pWeekSum.RepplyTime = pWeekSumInfo.repplyTime; pWeekSum.ApplyView = pWeekSumInfo.applyView; pWeekSum.SendEmployeeId = pWeekSumInfo.sendEmployeeId; pWeekSum.RecvEmployeeId = pWeekSumInfo.recvEmployeeId; pWeekSum.IsNew=pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pWeekSum.Save(UserName); } catch(Exception ex) { LogManager.getInstance().getLogger(typeof(WeekSumInfo)).Error(ex); if(ex.Message.Contains("插入重复键"))//违反了唯一键 { throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pWeekSumInfo.weekSumId = pWeekSum.WeekSumId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(WeekSumInfo))) { ResetCache(); } }
//从后台获取数据 internal static void LoadFromDAL(WeekSumInfo pWeekSumInfo, WeekSum pWeekSum) { pWeekSumInfo.weekSumId = pWeekSum.WeekSumId; pWeekSumInfo.weekSumName = pWeekSum.WeekSumName; pWeekSumInfo.isApprove = pWeekSum.IsApprove; pWeekSumInfo.isApply = pWeekSum.IsApply; pWeekSumInfo.isSend = pWeekSum.IsSend; pWeekSumInfo.applyTime = pWeekSum.ApplyTime; pWeekSumInfo.repplyTime = pWeekSum.RepplyTime; pWeekSumInfo.applyView = pWeekSum.ApplyView; pWeekSumInfo.sendEmployeeId = pWeekSum.SendEmployeeId; pWeekSumInfo.recvEmployeeId = pWeekSum.RecvEmployeeId; pWeekSumInfo.Loaded=true; }
/// <summary> /// 保存 /// </summary> public override void Save() { if(!m_Loaded)//新增 { WeekSum weekSum=new WeekSum(); SaveToDb(this, weekSum,true); } else//修改 { WeekSum weekSum=new WeekSum(weekSumId); if(weekSum.IsNew) throw new AppException("该数据已经不存在了"); SaveToDb(this, weekSum,false); } }