public TaskInfo GetTaskInfoById(int TaskId) { TaskInfo taskInfo = null;// try { taskInfo = new TaskInfo(TaskId); } catch (AppException) { return null; } return taskInfo; }
public object SaveTaskInfo(TaskInfo taskInfo) { taskInfo.Save(); return taskInfo . TaskId; }
public void DeleteById(TaskInfo pTaskInfo) { TaskInfo taskInfo = new TaskInfo(pTaskInfo.TaskId); taskInfo.Delete(); }
/// <summary> /// 批量装载 /// </summary> internal static void LoadFromDALPatch(List< TaskInfo> pList, TaskCollection pCollection) { foreach (Task task in pCollection) { TaskInfo taskInfo = new TaskInfo(); LoadFromDAL(taskInfo, task ); pList.Add(taskInfo); } }
//数据持久化 internal static void SaveToDb(TaskInfo pTaskInfo, Task pTask,bool pIsNew) { pTask.TaskId = pTaskInfo.taskId; pTask.TaskName = pTaskInfo.taskName; pTask.EmployeeId = pTaskInfo.employeeId; pTask.WorkSheetId = pTaskInfo.workSheetId; pTask.RecvTime = pTaskInfo.recvTime; pTask.IsFinish = pTaskInfo.isFinish; pTask.FinishTime = pTaskInfo.finishTime; pTask.BeginTime = pTaskInfo.beginTime; pTask.IsMain = pTaskInfo.isMain; pTask.IsNew=pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pTask.Save(UserName); } catch(Exception ex) { LogManager.getInstance().getLogger(typeof(TaskInfo)).Error(ex); if(ex.Message.Contains("插入重复键"))//违反了唯一键 { throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pTaskInfo.taskId = pTask.TaskId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(TaskInfo))) { ResetCache(); } }
//从后台获取数据 internal static void LoadFromDAL(TaskInfo pTaskInfo, Task pTask) { pTaskInfo.taskId = pTask.TaskId; pTaskInfo.taskName = pTask.TaskName; pTaskInfo.employeeId = pTask.EmployeeId; pTaskInfo.workSheetId = pTask.WorkSheetId; pTaskInfo.recvTime = pTask.RecvTime; pTaskInfo.isFinish = pTask.IsFinish; pTaskInfo.finishTime = pTask.FinishTime; pTaskInfo.beginTime = pTask.BeginTime; pTaskInfo.isMain = pTask.IsMain; pTaskInfo.Loaded=true; }
/// <summary> /// 复制为另一个对象 /// </summary> /// <param name="pIndustryTypeInfoTo"></param> public void CopyTo(TaskInfo pTaskInfoTo) { Copy(this, pTaskInfoTo); }
/// <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<TaskInfo> GetPagedList(int pPageIndex,int pPageSize,SortDirection pOrderBy,string pSortExpression,out int pRecordCount) { if(pPageIndex<=1) pPageIndex=1; List< TaskInfo> list = new List< TaskInfo>(); Query q = Task .CreateQuery(); q.PageIndex = pPageIndex; q.PageSize = pPageSize; q.ORDER_BY(pSortExpression,pOrderBy.ToString()); TaskCollection collection=new TaskCollection(); collection.LoadAndCloseReader(q.ExecuteReader()); foreach (Task task in collection) { TaskInfo taskInfo = new TaskInfo(); LoadFromDAL(taskInfo, task); list.Add(taskInfo); } pRecordCount=q.GetRecordCount(); return list; }
/// <summary> /// 获得数据列表 /// </summary> /// <returns></returns> public static List<TaskInfo> GetList() { string cacheKey = GetCacheKey(); //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取 if (CachedEntityCommander.IsTypeRegistered(typeof(TaskInfo)) && CachedEntityCommander.GetCache(cacheKey) != null) { return CachedEntityCommander.GetCache(cacheKey) as List< TaskInfo>; } else { List< TaskInfo> list =new List< TaskInfo>(); TaskCollection collection=new TaskCollection(); Query qry = new Query(Task.Schema); collection.LoadAndCloseReader(qry.ExecuteReader()); foreach(Task task in collection) { TaskInfo taskInfo= new TaskInfo(); LoadFromDAL(taskInfo,task); list.Add(taskInfo); } //生成缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(TaskInfo))) { CachedEntityCommander.SetCache(cacheKey, list); } return list; } }
/// <summary> /// 复制一个对象,采用硬编码的方式,避免反射的低效 /// </summary> /// <param name="pIndustryTypeInfoFrom"></param> /// <param name="pIndustryTypeInfoTo"></param> public static void Copy(TaskInfo pTaskInfoFrom, TaskInfo pTaskInfoTo) { pTaskInfoTo.TaskId = pTaskInfoFrom.taskId; pTaskInfoTo.TaskName = pTaskInfoFrom.taskName; pTaskInfoTo.EmployeeId = pTaskInfoFrom.employeeId; pTaskInfoTo.WorkSheetId = pTaskInfoFrom.workSheetId; pTaskInfoTo.RecvTime = pTaskInfoFrom.recvTime; pTaskInfoTo.IsFinish = pTaskInfoFrom.isFinish; pTaskInfoTo.FinishTime = pTaskInfoFrom.finishTime; pTaskInfoTo.BeginTime = pTaskInfoFrom.beginTime; pTaskInfoTo.IsMain = pTaskInfoFrom.isMain; pTaskInfoTo.Loaded=pTaskInfoFrom.Loaded; }