예제 #1
0
        /// <summary>
        /// 查询拼接
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="query"></param>
        /// <param name="ivm"></param>
        /// <param name="ovm"></param>
        public static void QueryJoin <T>(IQueryable <T> query, QueryDataInputVM ivm, ref QueryDataOutputVM ovm)
        {
            //总条数
            ovm.total = query.Count();
            if (ovm.total <= 0)
            {
                return;
            }

            //排序
            if (!string.IsNullOrWhiteSpace(ivm.sort))
            {
                query = QueryableTo.OrderBy(query, ivm.sort, ivm.order);
            }

            //分页
            if (ivm.pagination == 1)
            {
                query = query.Skip((ivm.page - 1) * ivm.rows).Take(ivm.rows);
            }

            //数据
            var data = query.ToList();

            ovm.data = data;
        }
예제 #2
0
        /// <summary>
        /// 查询拼接
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="query"></param>
        /// <param name="ivm"></param>
        /// <param name="ovm"></param>
        public static void QueryJoin <T>(IQueryable <T> query, QueryDataInputVM ivm, ref QueryDataOutputVM ovm)
        {
            //总条数
            ovm.Total = query.Count();

            //排序
            if (!string.IsNullOrWhiteSpace(ivm.Sort))
            {
                query = QueryableTo.OrderBy(query, ivm.Sort, ivm.Order);
            }

            //分页
            if (ivm.Pagination == 1)
            {
                query = query.Skip((ivm.Page - 1) * ivm.Rows).Take(ivm.Rows);
            }

            var sql = query.ToQueryString();

            Console.WriteLine(sql);

            //数据
            var data = query.ToList();

            ovm.Data = data;
        }
예제 #3
0
        public string WriteList(string sort, string order, int page = 1, int rows = 30, string pe1 = null)
        {
            string result = string.Empty;

            var pag = new PaginationVM
            {
                PageNumber = page,
                PageSize   = rows
            };

            int uid = new UserAuthAid(HttpContext).Get().UserId;

            using var db = new ContextBase();
            var query = from a in db.UserWriting
                        where a.Uid == uid
                        select new
            {
                a.UwId,
                a.UwTitle,
                a.UwCreateTime,
                a.UwUpdateTime,
                a.UwReadNum,
                a.UwReplyNum,
                a.UwOpen,
                a.UwStatus,
                a.UwLaud,
                a.UwMark,
                a.UwCategory
            };

            if (!string.IsNullOrWhiteSpace(pe1))
            {
                query = query.Where(x => x.UwTitle.Contains(pe1));
            }

            query = QueryableTo.OrderBy(query, sort, order);

            pag.Total = query.Count();
            var list = query.Skip((pag.PageNumber - 1) * pag.PageSize).Take(pag.PageSize).ToList();

            result = new
            {
                data  = list,
                total = pag.Total
            }.ToJson();

            return(result);
        }
예제 #4
0
        /// <summary>
        /// 查询拼接
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="query"></param>
        /// <param name="ivm"></param>
        /// <param name="db"></param>
        /// <param name="ovm"></param>
        public static void QueryJoin <T>(IQueryable <T> query, QueryDataInputVM ivm, ContextBase db, ref QueryDataOutputVM ovm)
        {
            //条件
            query = QueryWhere(query, ivm);

            //总条数
            ovm.Total = query.Count();

            //排序
            if (!string.IsNullOrWhiteSpace(ivm.Sort))
            {
                query = QueryableTo.OrderBy(query, ivm.Sort, ivm.Order);
            }

            //分页
            if (ivm.Pagination == 1)
            {
                query = query.Skip((Math.Max(ivm.Page, 1) - 1) * ivm.Rows).Take(ivm.Rows);
            }

            //查询SQL
            ovm.QuerySql = query.ToQueryString();

            //数据
            var data = query.ToList();

            ovm.Data = data;
            //导出时,存储数据表格
            if (ivm.HandleType == "export")
            {
                ovm.Table = ToDataTableForString(data);
            }

            //列
            if (ivm.ColumnsExists != 1)
            {
                ovm.Columns = db.SysTableConfig.Where(x => x.TableName == ivm.TableName).OrderBy(x => x.ColOrder).ToList();
            }
        }