예제 #1
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 <EvaluateLevelInfo> GetPagedList(int pPageIndex, int pPageSize, SortDirection pOrderBy, string pSortExpression, out int pRecordCount)
        {
            if (pPageIndex <= 1)
            {
                pPageIndex = 1;
            }
            List <EvaluateLevelInfo> list = new List <EvaluateLevelInfo>();

            Query q = EvaluateLevel.CreateQuery();

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

            collection.LoadAndCloseReader(q.ExecuteReader());

            foreach (EvaluateLevel evaluateLevel  in collection)
            {
                EvaluateLevelInfo evaluateLevelInfo = new EvaluateLevelInfo();
                LoadFromDAL(evaluateLevelInfo, evaluateLevel);
                list.Add(evaluateLevelInfo);
            }
            pRecordCount = q.GetRecordCount();

            return(list);
        }
예제 #2
0
        //数据持久化
        internal static void  SaveToDb(EvaluateLevelInfo pEvaluateLevelInfo, EvaluateLevel pEvaluateLevel, bool pIsNew)
        {
            pEvaluateLevel.EvaluateLevelId = pEvaluateLevelInfo.evaluateLevelId;
            pEvaluateLevel.EvaluateName    = pEvaluateLevelInfo.evaluateName;
            pEvaluateLevel.IsNew           = pIsNew;
            string UserName = SubsonicHelper.GetUserName();

            try
            {
                pEvaluateLevel.Save(UserName);
            }
            catch (Exception ex)
            {
                LogManager.getInstance().getLogger(typeof(EvaluateLevelInfo)).Error(ex);
                if (ex.Message.Contains("插入重复键"))               //违反了唯一键
                {
                    throw new AppException("此对象已经存在");          //此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
                }
                throw new AppException("保存失败");
            }
            pEvaluateLevelInfo.evaluateLevelId = pEvaluateLevel.EvaluateLevelId;
            //如果缓存存在,更新缓存
            if (CachedEntityCommander.IsTypeRegistered(typeof(EvaluateLevelInfo)))
            {
                ResetCache();
            }
        }
예제 #3
0
        public static EvaluateLevel GetEvaluateLevelByObjectIDAndScore(string objectID, int score)
        {
            EvaluateLevel evaluateLevel = new EvaluateLevel();

            foreach (EvaluateLevel current in EvaluateService.evaluateGateway.GetSummaryByObjectID(objectID))
            {
                if (current.Score == (float)score)
                {
                    evaluateLevel = current;
                }
            }
            evaluateLevel.Score = (float)score;
            return(evaluateLevel);
        }
예제 #4
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if (!m_Loaded)           //新增
     {
         EvaluateLevel evaluateLevel = new EvaluateLevel();
         SaveToDb(this, evaluateLevel, true);
     }
     else            //修改
     {
         EvaluateLevel evaluateLevel = new EvaluateLevel(evaluateLevelId);
         if (evaluateLevel.IsNew)
         {
             throw new AppException("该数据已经不存在了");
         }
         SaveToDb(this, evaluateLevel, false);
     }
 }
예제 #5
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <returns>是否成功</returns>
        public override void Delete()
        {
            if (!m_Loaded)
            {
                throw new AppException("尚未初始化");
            }
            bool result = (EvaluateLevel.Delete(EvaluateLevelId) == 1);

            //更新缓存
            if (result && CachedEntityCommander.IsTypeRegistered(typeof(EvaluateLevelInfo)))
            {
                ResetCache();
            }
            if (!result)
            {
                throw new AppException("删除失败,数据可能被删除");
            }
        }
예제 #6
0
 private void LoadFromId(int evaluateLevelId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(EvaluateLevelInfo)))
     {
         EvaluateLevelInfo evaluateLevelInfo = Find(GetList(), evaluateLevelId);
         if (evaluateLevelInfo == null)
         {
             throw new AppException("未能在缓存中找到相应的键值对象");
         }
         Copy(evaluateLevelInfo, this);
     }
     else
     {
         EvaluateLevel evaluateLevel = new EvaluateLevel(evaluateLevelId);
         if (evaluateLevel.IsNew)
         {
             throw new AppException("尚未初始化");
         }
         LoadFromDAL(this, evaluateLevel);
     }
 }
예제 #7
0
        public IList <EvaluateLevel> GetSummaryByObjectID(string objectID)
        {
            string                sQLStatement = string.Format("select Score,COUNT(*) as Count from T_EVALUATES where objectID='{0}' group by Score  order by score", objectID);
            DataTable             arg_24_0     = this.dbGateway.getDataTableBySqlStatement(sQLStatement);
            IList <EvaluateLevel> list         = new List <EvaluateLevel>();
            float num = 0f;

            foreach (DataRow dataRow in arg_24_0.Rows)
            {
                EvaluateLevel evaluateLevel = new EvaluateLevel();
                evaluateLevel.Score = (float)((int)dataRow["Score"]);
                evaluateLevel.Count = (int)dataRow["Count"];
                list.Add(evaluateLevel);
                num += (float)evaluateLevel.Count;
            }
            for (int i = 0; i <= list.Count - 1; i++)
            {
                float num2 = (float)list[i].Count / num;
                list[i].Percent = num2 * 100f;
            }
            return(list);
        }
예제 #8
0
 private void LoadFromId(int evaluateLevelId)
 {
     if (CachedEntityCommander.IsTypeRegistered(typeof(EvaluateLevelInfo)))
     {
         EvaluateLevelInfo evaluateLevelInfo=Find(GetList(), evaluateLevelId);
         if(evaluateLevelInfo==null)
             throw new AppException("未能在缓存中找到相应的键值对象");
         Copy(evaluateLevelInfo, this);
     }
     else
     {	EvaluateLevel evaluateLevel=new EvaluateLevel( evaluateLevelId);
         if(evaluateLevel.IsNew)
         throw new AppException("尚未初始化");
        	LoadFromDAL(this, evaluateLevel);
     }
 }
예제 #9
0
 //数据持久化
 internal static void SaveToDb(EvaluateLevelInfo pEvaluateLevelInfo, EvaluateLevel  pEvaluateLevel,bool pIsNew)
 {
     pEvaluateLevel.EvaluateLevelId = pEvaluateLevelInfo.evaluateLevelId;
      		pEvaluateLevel.EvaluateName = pEvaluateLevelInfo.evaluateName;
     pEvaluateLevel.IsNew=pIsNew;
     string UserName = SubsonicHelper.GetUserName();
     try
     {
         pEvaluateLevel.Save(UserName);
     }
     catch(Exception ex)
     {
         LogManager.getInstance().getLogger(typeof(EvaluateLevelInfo)).Error(ex);
         if(ex.Message.Contains("插入重复键"))//违反了唯一键
         {
             throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示
         }
         throw new AppException("保存失败");
     }
     pEvaluateLevelInfo.evaluateLevelId = pEvaluateLevel.EvaluateLevelId;
     //如果缓存存在,更新缓存
     if (CachedEntityCommander.IsTypeRegistered(typeof(EvaluateLevelInfo)))
     {
         ResetCache();
     }
 }
예제 #10
0
 //从后台获取数据
 internal static void LoadFromDAL(EvaluateLevelInfo pEvaluateLevelInfo, EvaluateLevel  pEvaluateLevel)
 {
     pEvaluateLevelInfo.evaluateLevelId = pEvaluateLevel.EvaluateLevelId;
      		pEvaluateLevelInfo.evaluateName = pEvaluateLevel.EvaluateName;
     pEvaluateLevelInfo.Loaded=true;
 }
예제 #11
0
 /// <summary>
 /// 保存
 /// </summary>
 public override void Save()
 {
     if(!m_Loaded)//新增
     {
         EvaluateLevel evaluateLevel=new EvaluateLevel();
         SaveToDb(this, evaluateLevel,true);
     }
     else//修改
     {
         EvaluateLevel evaluateLevel=new EvaluateLevel(evaluateLevelId);
         if(evaluateLevel.IsNew)
             throw new AppException("该数据已经不存在了");
         SaveToDb(this, evaluateLevel,false);
     }
 }
예제 #12
0
 //从后台获取数据
 internal static void  LoadFromDAL(EvaluateLevelInfo pEvaluateLevelInfo, EvaluateLevel pEvaluateLevel)
 {
     pEvaluateLevelInfo.evaluateLevelId = pEvaluateLevel.EvaluateLevelId;
     pEvaluateLevelInfo.evaluateName    = pEvaluateLevel.EvaluateName;
     pEvaluateLevelInfo.Loaded          = true;
 }
예제 #13
0
        public static DataTable getLevels()
        {
            Query q = EvaluateLevel.Query();

            return(q.ExecuteDataSet().Tables[0]);
        }