예제 #1
0
        public TaskInfo GetTaskInfoById(int TaskId)
        {
            TaskInfo taskInfo  = null;//
            try
            {
                 taskInfo = new TaskInfo(TaskId);

            }
            catch (AppException)
            {
                return null;
            }

            return  taskInfo;
        }
예제 #2
0
 public object SaveTaskInfo(TaskInfo taskInfo)
 {
     taskInfo.Save();
     return taskInfo . TaskId;
 }
예제 #3
0
 public void DeleteById(TaskInfo pTaskInfo)
 {
     TaskInfo taskInfo = new TaskInfo(pTaskInfo.TaskId);
     taskInfo.Delete();
 }
예제 #4
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 /// <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);
     }
 }
예제 #5
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 //数据持久化
 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();
     }
 }
예제 #6
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 //从后台获取数据
 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;
 }
예제 #7
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 /// <summary>
 /// 复制为另一个对象
 /// </summary>
 /// <param name="pIndustryTypeInfoTo"></param>
 public void CopyTo(TaskInfo pTaskInfoTo)
 {
     Copy(this,  pTaskInfoTo);
 }
예제 #8
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
        /// <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;
        }
예제 #9
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 /// <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;
     }
 }
예제 #10
0
파일: TaskInfo.cs 프로젝트: xingfudaiyan/OA
 /// <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;
 }