Example #1
0
        //数据持久化
        internal static void  SaveToDb(MainProjectCreateInfo pMainProjectCreateInfo, MainProjectCreate pMainProjectCreate, bool pIsNew)
        {
            pMainProjectCreate.MainProjectCreateId = pMainProjectCreateInfo.mainProjectCreateId;
            pMainProjectCreate.ClientId            = pMainProjectCreateInfo.clientId;
            pMainProjectCreate.ProjectLevelId      = pMainProjectCreateInfo.projectLevelId;
            pMainProjectCreate.ProjectTypeId       = pMainProjectCreateInfo.projectTypeId;
            pMainProjectCreate.YeWuId      = pMainProjectCreateInfo.yeWuId;
            pMainProjectCreate.SheetNum    = pMainProjectCreateInfo.sheetNum;
            pMainProjectCreate.ProjectName = pMainProjectCreateInfo.projectName;
            pMainProjectCreate.PreMoney    = pMainProjectCreateInfo.preMoney;
            pMainProjectCreate.PreProfit   = pMainProjectCreateInfo.preProfit;
            pMainProjectCreate.IsNew       = pIsNew;
            string UserName = SubsonicHelper.GetUserName();

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

            Query q = MainProjectCreate.CreateQuery();

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

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (MainProjectCreate mainProjectCreate  in collection)
            {
                MainProjectCreateInfo mainProjectCreateInfo = new MainProjectCreateInfo();
                LoadFromDAL(mainProjectCreateInfo, mainProjectCreate);
                list.Add(mainProjectCreateInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }
Example #3
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if (!m_Loaded)           //新增
     {
         MainProjectCreate mainProjectCreate = new MainProjectCreate();
         SaveToDb(this, mainProjectCreate, true);
     }
     else            //修改
     {
         MainProjectCreate mainProjectCreate = new MainProjectCreate(mainProjectCreateId);
         if (mainProjectCreate.IsNew)
         {
             throw new AppException("该数据已经不存在了");
         }
         SaveToDb(this, mainProjectCreate, false);
     }
 }
Example #4
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <returns>是否成功</returns>
        public override void Delete()
        {
            if (!m_Loaded)
            {
                throw new AppException("尚未初始化");
            }
            bool result = (MainProjectCreate.Delete(MainProjectCreateId) == 1);

            //更新缓存
            if (result && CachedEntityCommander.IsTypeRegistered(typeof(MainProjectCreateInfo)))
            {
                ResetCache();
            }
            if (!result)
            {
                throw new AppException("删除失败,数据可能被删除");
            }
        }
Example #5
0
 private void LoadFromId(int mainProjectCreateId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(MainProjectCreateInfo)))
     {
         MainProjectCreateInfo mainProjectCreateInfo = Find(GetList(), mainProjectCreateId);
         if (mainProjectCreateInfo == null)
         {
             throw new AppException("未能在缓存中找到相应的键值对象");
         }
         Copy(mainProjectCreateInfo, this);
     }
     else
     {
         MainProjectCreate mainProjectCreate = new MainProjectCreate(mainProjectCreateId);
         if (mainProjectCreate.IsNew)
         {
             throw new AppException("尚未初始化");
         }
         LoadFromDAL(this, mainProjectCreate);
     }
 }
Example #6
0
 //从后台获取数据
 internal static void  LoadFromDAL(MainProjectCreateInfo pMainProjectCreateInfo, MainProjectCreate pMainProjectCreate)
 {
     pMainProjectCreateInfo.mainProjectCreateId = pMainProjectCreate.MainProjectCreateId;
     pMainProjectCreateInfo.clientId            = pMainProjectCreate.ClientId;
     pMainProjectCreateInfo.projectLevelId      = pMainProjectCreate.ProjectLevelId;
     pMainProjectCreateInfo.projectTypeId       = pMainProjectCreate.ProjectTypeId;
     pMainProjectCreateInfo.yeWuId      = pMainProjectCreate.YeWuId;
     pMainProjectCreateInfo.sheetNum    = pMainProjectCreate.SheetNum;
     pMainProjectCreateInfo.projectName = pMainProjectCreate.ProjectName;
     pMainProjectCreateInfo.preMoney    = pMainProjectCreate.PreMoney;
     pMainProjectCreateInfo.preProfit   = pMainProjectCreate.PreProfit;
     pMainProjectCreateInfo.Loaded      = true;
 }
Example #7
0
 private void LoadFromId(int mainProjectCreateId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(MainProjectCreateInfo)))
     {
         MainProjectCreateInfo mainProjectCreateInfo=Find(GetList(), mainProjectCreateId);
         if(mainProjectCreateInfo==null)
             throw new AppException("未能在缓存中找到相应的键值对象");
         Copy(mainProjectCreateInfo, this);
     }
     else
     {	MainProjectCreate mainProjectCreate=new MainProjectCreate( mainProjectCreateId);
         if(mainProjectCreate.IsNew)
         throw new AppException("尚未初始化");
        	LoadFromDAL(this, mainProjectCreate);
     }
 }
Example #8
0
 //数据持久化
 internal static void SaveToDb(MainProjectCreateInfo pMainProjectCreateInfo, MainProjectCreate  pMainProjectCreate,bool pIsNew)
 {
     pMainProjectCreate.MainProjectCreateId = pMainProjectCreateInfo.mainProjectCreateId;
      		pMainProjectCreate.ClientId = pMainProjectCreateInfo.clientId;
      		pMainProjectCreate.ProjectLevelId = pMainProjectCreateInfo.projectLevelId;
      		pMainProjectCreate.ProjectTypeId = pMainProjectCreateInfo.projectTypeId;
      		pMainProjectCreate.YeWuId = pMainProjectCreateInfo.yeWuId;
      		pMainProjectCreate.SheetNum = pMainProjectCreateInfo.sheetNum;
      		pMainProjectCreate.ProjectName = pMainProjectCreateInfo.projectName;
      		pMainProjectCreate.PreMoney = pMainProjectCreateInfo.preMoney;
      		pMainProjectCreate.PreProfit = pMainProjectCreateInfo.preProfit;
     pMainProjectCreate.IsNew=pIsNew;
     string UserName = SubsonicHelper.GetUserName();
     try
     {
         pMainProjectCreate.Save(UserName);
     }
     catch(Exception ex)
     {
         LogManager.getInstance().getLogger(typeof(MainProjectCreateInfo)).Error(ex);
         if(ex.Message.Contains("插入重复键"))//违反了唯一键
         {
             throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
         }
         throw new AppException("保存失败");
     }
     pMainProjectCreateInfo.mainProjectCreateId = pMainProjectCreate.MainProjectCreateId;
     //如果缓存存在,更新缓存
     if (CachedEntityCommander.IsTypeRegistered(typeof(MainProjectCreateInfo)))
     {
         ResetCache();
     }
 }
Example #9
0
 //从后台获取数据
 internal static void LoadFromDAL(MainProjectCreateInfo pMainProjectCreateInfo, MainProjectCreate  pMainProjectCreate)
 {
     pMainProjectCreateInfo.mainProjectCreateId = pMainProjectCreate.MainProjectCreateId;
      		pMainProjectCreateInfo.clientId = pMainProjectCreate.ClientId;
      		pMainProjectCreateInfo.projectLevelId = pMainProjectCreate.ProjectLevelId;
      		pMainProjectCreateInfo.projectTypeId = pMainProjectCreate.ProjectTypeId;
      		pMainProjectCreateInfo.yeWuId = pMainProjectCreate.YeWuId;
      		pMainProjectCreateInfo.sheetNum = pMainProjectCreate.SheetNum;
      		pMainProjectCreateInfo.projectName = pMainProjectCreate.ProjectName;
      		pMainProjectCreateInfo.preMoney = pMainProjectCreate.PreMoney;
      		pMainProjectCreateInfo.preProfit = pMainProjectCreate.PreProfit;
     pMainProjectCreateInfo.Loaded=true;
 }
Example #10
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if(!m_Loaded)//新增
     {
         MainProjectCreate mainProjectCreate=new MainProjectCreate();
         SaveToDb(this, mainProjectCreate,true);
     }
     else//修改
     {
         MainProjectCreate mainProjectCreate=new MainProjectCreate(mainProjectCreateId);
         if(mainProjectCreate.IsNew)
             throw new AppException("该数据已经不存在了");
         SaveToDb(this, mainProjectCreate,false);
     }
 }
Example #11
0
 public static void DelProject(int projectid)
 {
     MainProjectCreate.Delete(projectid);
 }