예제 #1
0
        public PageModel <Finance_WithDraw> GetFinance_WithDrawListInfo(QueryModel.Finance_WithDrawQuery fQuery)
        {
            int num = 0;
            IQueryable <Finance_WithDraw> fp = context.Finance_WithDraw.AsQueryable <Finance_WithDraw>();

            if (!string.IsNullOrWhiteSpace(fQuery.starttime))
            {//开始时间
                DateTime dt;
                if (DateTime.TryParse(fQuery.starttime, out dt))
                {
                    dt = DateTime.Parse(fQuery.starttime);
                    fp =
                        from d in fp
                        where d.Withdraw_Time >= dt
                        select d;
                }
            }
            if (!string.IsNullOrWhiteSpace(fQuery.endtime))
            {//结束时间
                DateTime dt;
                if (DateTime.TryParse(fQuery.endtime, out dt))
                {
                    dt = DateTime.Parse(fQuery.endtime);
                    fp =
                        from d in fp
                        where d.Withdraw_Time <= dt
                        select d;
                }
            }
            if (fQuery.userid != 0)
            {//用户编号
                fp =
                    from d in fp
                    where d.Withdraw_UserId.Equals(fQuery.userid)
                    select d;
            }
            if (fQuery.usertype != 0)
            {//用户类型
                fp =
                    from d in fp
                    where d.Withdraw_UserType.Equals(fQuery.usertype)
                    select d;
            }
            if (fQuery.moneytype != 0)
            {//支付币种
                fp =
                    from d in fp
                    where d.Withdraw_MoneyType.Equals(fQuery.moneytype)
                    select d;
            }
            fp = fp.GetPage(out num, fQuery.PageNo, fQuery.PageSize, (IQueryable <Finance_WithDraw> d) =>
                            from o in d
                            orderby o.Withdraw_Time descending
                            select o);
            return(new PageModel <Finance_WithDraw>()
            {
                Models = fp,
                Total = num
            });
        }
예제 #2
0
        public PageModel <Finance_WithDraw> GetFinance_WithDrawList_Statistics(QueryModel.Finance_WithDrawQuery fQuery)
        {
            int num = 0;
            IQueryable <Finance_WithDraw> fp = context.Finance_WithDraw.AsQueryable <Finance_WithDraw>();

            if (!string.IsNullOrWhiteSpace(fQuery.starttime))
            {//开始时间
                DateTime dt;
                if (DateTime.TryParse(fQuery.starttime, out dt))
                {
                    dt = DateTime.Parse(fQuery.starttime);
                    fp =
                        from d in fp
                        where d.Withdraw_Time >= dt
                        select d;
                }
            }
            if (!string.IsNullOrWhiteSpace(fQuery.endtime))
            {//结束时间
                DateTime dt;
                if (DateTime.TryParse(fQuery.endtime, out dt))
                {
                    dt = DateTime.Parse(fQuery.endtime);
                    fp =
                        from d in fp
                        where d.Withdraw_Time <= dt
                        select d;
                }
            }

            if (fQuery.moneytype != 0)
            {//支付币种
                fp =
                    from d in fp
                    where d.Withdraw_MoneyType.Equals(fQuery.moneytype)
                    select d;
            }
            var qq = from p in fp.ToList()
                     group p by p.Withdraw_Time.ToString("yyyy-MM-dd") into g
                     select new Finance_WithDraw()
            {
                Withdraw_Time      = DateTime.Parse(g.Key),
                Withdraw_MoneyType = g.Max(p => p.Withdraw_MoneyType),
                Withdraw_Money     = g.Sum(p => p.Withdraw_Money)
            };

            fp = qq.AsQueryable();

            fp = fp.GetPage(out num, fQuery.PageNo, fQuery.PageSize, (IQueryable <Finance_WithDraw> d) =>
                            from o in d
                            orderby o.Withdraw_Time descending
                            select o);
            return(new PageModel <Finance_WithDraw>()
            {
                Models = fp,
                Total = num
            });
        }