예제 #1
0
        /// <summary>
        /// 获得数据列表
        /// </summary>
        /// <returns></returns>
        public static List <DayInfo> GetList()
        {
            string cacheKey = GetCacheKey();

            //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取
            if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)) && CachedEntityCommander.GetCache(cacheKey) != null)
            {
                return(CachedEntityCommander.GetCache(cacheKey) as List <DayInfo>);
            }
            else
            {
                List <DayInfo> list       = new List <DayInfo>();
                DayCollection  collection = new  DayCollection();
                Query          qry        = new Query(Day.Schema);
                collection.LoadAndCloseReader(qry.ExecuteReader());
                foreach (Day day in collection)
                {
                    DayInfo dayInfo = new DayInfo();
                    LoadFromDAL(dayInfo, day);
                    list.Add(dayInfo);
                }
                //生成缓存
                if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)))
                {
                    CachedEntityCommander.SetCache(cacheKey, list);
                }
                return(list);
            }
        }
예제 #2
0
        //数据持久化
        internal static void  SaveToDb(DayInfo pDayInfo, Day pDay, bool pIsNew)
        {
            pDay.DayId       = pDayInfo.dayId;
            pDay.WeekId      = pDayInfo.weekId;
            pDay.WorkContent = pDayInfo.workContent;
            pDay.WorkDate    = pDayInfo.workDate;
            pDay.Result      = pDayInfo.result;
            pDay.WeekSumId   = pDayInfo.weekSumId;
            pDay.IsNew       = pIsNew;
            string UserName = SubsonicHelper.GetUserName();

            try
            {
                pDay.Save(UserName);
            }
            catch (Exception ex)
            {
                LogManager.getInstance().getLogger(typeof(DayInfo)).Error(ex);
                if (ex.Message.Contains("插入重复键"))               //违反了唯一键
                {
                    throw new AppException("此对象已经存在");          //此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
                }
                throw new AppException("保存失败");
            }
            pDayInfo.dayId = pDay.DayId;
            //如果缓存存在,更新缓存
            if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)))
            {
                ResetCache();
            }
        }
예제 #3
0
        /// <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 <DayInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <DayInfo> list = new List <DayInfo>();

            Query q = Day.CreateQuery();

            q.PageIndex = pPageIndex;
            q.PageSize  = pPageSize;
            q.ORDER_BY(pSortExpression, pOrderBy.ToString());
            DayCollection collection = new  DayCollection();

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (Day day  in collection)
            {
                DayInfo dayInfo = new DayInfo();
                LoadFromDAL(dayInfo, day);
                list.Add(dayInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }
예제 #4
0
 /// <summary>
 /// 批量装载
 /// </summary>
 internal static void LoadFromDALPatch(List <DayInfo> pList, DayCollection pCollection)
 {
     foreach (Day day in pCollection)
     {
         DayInfo dayInfo = new DayInfo();
         LoadFromDAL(dayInfo, day);
         pList.Add(dayInfo);
     }
 }
예제 #5
0
 //从后台获取数据
 internal static void  LoadFromDAL(DayInfo pDayInfo, Day pDay)
 {
     pDayInfo.dayId       = pDay.DayId;
     pDayInfo.weekId      = pDay.WeekId;
     pDayInfo.workContent = pDay.WorkContent;
     pDayInfo.workDate    = pDay.WorkDate;
     pDayInfo.result      = pDay.Result;
     pDayInfo.weekSumId   = pDay.WeekSumId;
     pDayInfo.Loaded      = true;
 }
예제 #6
0
 /// <summary>
 /// 复制一个对象,采用硬编码的方式,避免反射的低效
 /// </summary>
 /// <param name="pIndustryTypeInfoFrom"></param>
 /// <param name="pIndustryTypeInfoTo"></param>
 public static void Copy(DayInfo pDayInfoFrom, DayInfo pDayInfoTo)
 {
     pDayInfoTo.DayId       = pDayInfoFrom.dayId;
     pDayInfoTo.WeekId      = pDayInfoFrom.weekId;
     pDayInfoTo.WorkContent = pDayInfoFrom.workContent;
     pDayInfoTo.WorkDate    = pDayInfoFrom.workDate;
     pDayInfoTo.Result      = pDayInfoFrom.result;
     pDayInfoTo.WeekSumId   = pDayInfoFrom.weekSumId;
     pDayInfoTo.Loaded      = pDayInfoFrom.Loaded;
 }
예제 #7
0
        public DayInfo GetDayInfoById(int DayId)
        {
            DayInfo dayInfo = null;             //

            try
            {
                dayInfo = new DayInfo(DayId);
            }
            catch (AppException)
            {
                return(null);
            }

            return(dayInfo);
        }
예제 #8
0
        public DayInfo GetDayInfoById(int DayId)
        {
            DayInfo dayInfo  = null;//
            try
            {
                 dayInfo = new DayInfo(DayId);

            }
            catch (AppException)
            {
                return null;
            }

            return  dayInfo;
        }
예제 #9
0
 private void LoadFromId(int dayId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)))
     {
         DayInfo dayInfo = Find(GetList(), dayId);
         if (dayInfo == null)
         {
             throw new AppException("未能在缓存中找到相应的键值对象");
         }
         Copy(dayInfo, this);
     }
     else
     {
         Day day = new Day(dayId);
         if (day.IsNew)
         {
             throw new AppException("尚未初始化");
         }
         LoadFromDAL(this, day);
     }
 }
예제 #10
0
        protected void btnAddDay_Click(object sender, EventArgs e)
        {
            int wksumid = Convert.ToInt32(Request["sumId"].ToString());
                DayInfo day = new DayInfo();
                day.WeekSumId = wksumid;

                day.WorkDate = Convert.ToDateTime(txtDate.Text.ToString());
                day.WorkContent = txtWorkContent.Text.ToString();
                day.Result = txtResult.Text.ToString();
                if (ddlWeek.SelectedValue == "")
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script language='javascript'>alert('��ѡ������');</script>");

                }
                else
                {
                    day.WeekId = Convert.ToInt32(ddlWeek.SelectedValue);
                    day.Save();
                    gvwBind();
                }
        }
예제 #11
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 /// <summary>
 /// 批量装载
 /// </summary>
 internal static void LoadFromDALPatch(List< DayInfo> pList, DayCollection pCollection)
 {
     foreach (Day day in pCollection)
     {
         DayInfo dayInfo = new DayInfo();
         LoadFromDAL(dayInfo, day );
         pList.Add(dayInfo);
     }
 }
예제 #12
0
 public List <DayInfo> GetDayInfoList()
 {
     return(DayInfo.GetList());
 }
예제 #13
0
 protected void gvwDay_RowUpdating(object sender, GridViewUpdateEventArgs e)
 {
     if (Page.IsValid)
     {
         int dayid = Convert.ToInt32(gvwDay.DataKeys[e.RowIndex].Value);
         DropDownList ddlwk = gvwDay.Rows[e.RowIndex].FindControl("ddlWeek") as DropDownList;
         TextBox txtwd = gvwDay.Rows[e.RowIndex].FindControl("txtDate") as TextBox;
         TextBox txtwc = gvwDay.Rows[e.RowIndex].FindControl("txtWorkContent") as TextBox;
         TextBox txtrs = gvwDay.Rows[e.RowIndex].FindControl("txtResult") as TextBox;
         try
         {
             DayInfo day = new DayInfo(dayid);
             day.WeekId = Convert.ToInt32(ddlwk.SelectedValue.ToString());
             day.WorkDate = DateTime.Parse(txtwd.Text.Trim());
             day.WorkContent = txtwc.Text.ToString();
             day.Result = txtrs.Text.ToString();
             day.Save();
             gvwDay.EditIndex = -1;
             gvwBind();
         }
         catch (Exception Ex)
         {
             ClientScript.RegisterStartupScript(this.GetType(), "Save", "alert('����ʧ�ܣ�" + Ex.Message + "');", true);
         }
     }
 }
예제 #14
0
 public object SaveDayInfo(DayInfo dayInfo)
 {
     dayInfo.Save();
     return dayInfo . DayId;
 }
예제 #15
0
 public object  SaveDayInfo(DayInfo dayInfo)
 {
     dayInfo.Save();
     return(dayInfo.DayId);
 }
예제 #16
0
 public List <DayInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
 {
     return(DayInfo.GetPagedList(pPageIndex, pPageSize, pOrderBy, pSortExpression, out pRecordCount));
 }
예제 #17
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 //从后台获取数据
 internal static void LoadFromDAL(DayInfo pDayInfo, Day  pDay)
 {
     pDayInfo.dayId = pDay.DayId;
      		pDayInfo.weekId = pDay.WeekId;
      		pDayInfo.workContent = pDay.WorkContent;
      		pDayInfo.workDate = pDay.WorkDate;
      		pDayInfo.result = pDay.Result;
      		pDayInfo.weekSumId = pDay.WeekSumId;
     pDayInfo.Loaded=true;
 }
예제 #18
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 /// <summary>
 /// 复制为另一个对象
 /// </summary>
 /// <param name="pIndustryTypeInfoTo"></param>
 public void CopyTo(DayInfo pDayInfoTo)
 {
     Copy(this,  pDayInfoTo);
 }
예제 #19
0
파일: DayInfo.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<DayInfo> GetPagedList(int pPageIndex,int pPageSize,SortDirection pOrderBy,string pSortExpression,out int pRecordCount)
        {
            if(pPageIndex<=1)
            pPageIndex=1;
            List< DayInfo> list = new List< DayInfo>();

            Query q = Day .CreateQuery();
            q.PageIndex = pPageIndex;
            q.PageSize = pPageSize;
            q.ORDER_BY(pSortExpression,pOrderBy.ToString());
            DayCollection  collection=new  DayCollection();
             	collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (Day  day  in collection)
            {
                DayInfo dayInfo = new DayInfo();
                LoadFromDAL(dayInfo,   day);
                list.Add(dayInfo);
            }
            pRecordCount=q.GetRecordCount();

            return list;
        }
예제 #20
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 /// <summary>
 /// 获得数据列表
 /// </summary>
 /// <returns></returns>
 public static List<DayInfo> GetList()
 {
     string cacheKey = GetCacheKey();
     //本实体已经注册成缓存实体,并且缓存存在的时候,直接从缓存取
     if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)) && CachedEntityCommander.GetCache(cacheKey) != null)
     {
         return CachedEntityCommander.GetCache(cacheKey) as List< DayInfo>;
     }
     else
     {
         List< DayInfo>  list =new List< DayInfo>();
         DayCollection  collection=new  DayCollection();
         Query qry = new Query(Day.Schema);
         collection.LoadAndCloseReader(qry.ExecuteReader());
         foreach(Day day in collection)
         {
             DayInfo dayInfo= new DayInfo();
             LoadFromDAL(dayInfo,day);
             list.Add(dayInfo);
         }
       	//生成缓存
         if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)))
         {
             CachedEntityCommander.SetCache(cacheKey, list);
         }
         return list;
     }
 }
예제 #21
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 /// <summary>
 /// 复制一个对象,采用硬编码的方式,避免反射的低效
 /// </summary>
 /// <param name="pIndustryTypeInfoFrom"></param>
 /// <param name="pIndustryTypeInfoTo"></param>
 public static void Copy(DayInfo pDayInfoFrom, DayInfo pDayInfoTo)
 {
     pDayInfoTo.DayId = pDayInfoFrom.dayId;
      		pDayInfoTo.WeekId = pDayInfoFrom.weekId;
      		pDayInfoTo.WorkContent = pDayInfoFrom.workContent;
      		pDayInfoTo.WorkDate = pDayInfoFrom.workDate;
      		pDayInfoTo.Result = pDayInfoFrom.result;
      		pDayInfoTo.WeekSumId = pDayInfoFrom.weekSumId;
     pDayInfoTo.Loaded=pDayInfoFrom.Loaded;
 }
예제 #22
0
파일: DayInfo.cs 프로젝트: xingfudaiyan/OA
 //数据持久化
 internal static void SaveToDb(DayInfo pDayInfo, Day  pDay,bool pIsNew)
 {
     pDay.DayId = pDayInfo.dayId;
      		pDay.WeekId = pDayInfo.weekId;
      		pDay.WorkContent = pDayInfo.workContent;
      		pDay.WorkDate = pDayInfo.workDate;
      		pDay.Result = pDayInfo.result;
      		pDay.WeekSumId = pDayInfo.weekSumId;
     pDay.IsNew=pIsNew;
     string UserName = SubsonicHelper.GetUserName();
     try
     {
         pDay.Save(UserName);
     }
     catch(Exception ex)
     {
         LogManager.getInstance().getLogger(typeof(DayInfo)).Error(ex);
         if(ex.Message.Contains("插入重复键"))//违反了唯一键
         {
             throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
         }
         throw new AppException("保存失败");
     }
     pDayInfo.dayId = pDay.DayId;
     //如果缓存存在,更新缓存
     if (CachedEntityCommander.IsTypeRegistered(typeof(DayInfo)))
     {
         ResetCache();
     }
 }
예제 #23
0
 public void DeleteById(DayInfo pDayInfo)
 {
     DayInfo dayInfo = new DayInfo(pDayInfo.DayId);
     dayInfo.Delete();
 }
예제 #24
0
 /// <summary>
 /// 复制为另一个对象
 /// </summary>
 /// <param name="pIndustryTypeInfoTo"></param>
 public void CopyTo(DayInfo pDayInfoTo)
 {
     Copy(this, pDayInfoTo);
 }
예제 #25
0
        public void DeleteById(DayInfo pDayInfo)
        {
            DayInfo dayInfo = new DayInfo(pDayInfo.DayId);

            dayInfo.Delete();
        }