示例#1
0
        /// <summary>
        /// 日志列表
        /// </summary>
        /// <param name="pagination">分页</param>
        /// <param name="queryJson">查询参数</param>
        /// <returns></returns>
        public IEnumerable <LogEntity> GetPageList(Pagination pagination, string queryJson)
        {
            var sql = PetaPoco.Sql.Builder.Append(@"select * from Base_Log where 1=1");

            var queryParam = queryJson.ToJObject();

            //日志分类
            if (!queryParam["Category"].IsEmpty())
            {
                int categoryId = queryParam["CategoryId"].ToInt();
                sql.Append(" and CategoryId=@0", categoryId);
            }
            //操作时间
            if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
            {
                DateTime startTime = queryParam["StartTime"].ToDate();
                DateTime endTime   = queryParam["EndTime"].ToDate().AddDays(1);
                sql.Append(" and OperateTime>=@0", startTime);
                sql.Append(" and OperateTime<=@0", endTime);
            }
            //操作用户Id
            if (!queryParam["OperateUserId"].IsEmpty())
            {
                string operateUserId = queryParam["OperateUserId"].ToString();
                sql.Append(" and OperateUserId=@0", operateUserId);
            }
            //操作用户账户
            if (!queryParam["OperateAccount"].IsEmpty())
            {
                string OperateAccount = queryParam["OperateAccount"].ToString();
                sql.Append(" and (charindex(@0,OperateAccount)>0)", OperateAccount);
            }
            //操作类型
            if (!queryParam["OperateType"].IsEmpty())
            {
                string operateType = queryParam["OperateType"].ToString();
                sql.Append(" and OperateType=@0", operateType);
            }
            //功能模块
            if (!queryParam["Module"].IsEmpty())
            {
                string module = queryParam["Module"].ToString();
                sql.Append(" and (charindex(@0,Module)>0)", module);
            }
            if (!string.IsNullOrWhiteSpace(pagination.sidx))
            {
                sql.OrderBy(new object[] { pagination.sidx + " " + pagination.sord });
            }
            var currentpage = Base_Log.Page(pagination.page, pagination.rows, sql);
            //数据对象
            var pageList = currentpage.Items;

            //分页对象
            pagination.records = Converter.ParseInt32(currentpage.TotalItems);
            return(EntityConvertTools.CopyToList <Base_Log, LogEntity>(pageList));
        }