예제 #1
0
        public PartialViewResult ajax_paging(donhang_sp paging)
        {
            var __auth = MySsAuthUsers.GetAuth();

            PG <DonHang> vmpg;

            if (__auth.RoleId == 1)
            {
                vmpg = _DonHangServ.GetQueryPaging(paging);
            }
            else
            {
                vmpg = _DonHangServ.GetQueryPaging(paging, w => w.BaseUserId == __auth.OwnerId);
            }
            ViewBag.ddlTrangThaiGiaoHang = __db.TrangThaiGiaoHang.Select(s => new SelectListItem()
            {
                Text  = s.Ten,
                Value = s.Id.ToString()
            });
            ViewBag.ddlTrangThaiThanhToan = __db.TrangThaiThanhToan.Select(s => new SelectListItem()
            {
                Text  = s.Ten,
                Value = s.Id.ToString()
            });
            return(PartialView(vmpg));
        }
        public PartialViewResult ajax_paging(donhang_sp paging)
        {
            PG <DonHang> vmpg;

            vmpg = _DonHangServ.GetQueryPaging(paging);
            return(PartialView(vmpg));
        }
예제 #3
0
        public PartialViewResult ajax_paging(donhang_sp paging)
        {
            var __auth = MySsAuthUsers.GetAuth();

            paging.trangthaigiaohangid  = -1;
            paging.trangthaithanhtoanid = 2;
            PG <DonHang> vmpg;

            if (__auth.Username == "admin")
            {
                vmpg = _DonHangServ.GetQueryPaging(paging);
            }
            else
            {
                vmpg = _DonHangServ.GetQueryPaging(paging, w => w.BaseUserId == __auth.OwnerId);
            }

            return(PartialView(vmpg));
        }
예제 #4
0
        public PG <DonHang> GetQueryPaging(donhang_sp paging = null, Expression <Func <DonHang, bool> > where = null)
        {
            IQueryable <DonHang> query;

            //PHÂN QUYỀN ĐỒ
            query = GetList(where);


            //SORTING
            query = query.OrderByField(paging.tentruongsort, paging.giatrisort == "asc");
            //FILTERING
            if (paging.bolocs != null)
            {
                foreach (var loc in paging.bolocs)
                {
                    //if (loc.tentruongloc.Equals("Username"))
                    //{
                    //    boloc loc1 = loc;
                    //    // query = query.Where(q => q.Username.Contains(loc1.giatriloc));
                    //}
                }
            }
            return((new PGQuery <DonHang>(query)).GetPG(paging));
        }
예제 #5
0
        public PG <DonHang> GetQueryPaging(donhang_sp paging = null, Expression <Func <DonHang, bool> > where = null)
        {
            IQueryable <DonHang> query;

            //PHÂN QUYỀN ĐỒ
            query = GetList(where);
            if (paging.quanid != -1)
            {
                query = query.Where(w => w.QuanId == paging.quanid);
            }
            if (paging.trangthaigiaohangid != -1)
            {
                query = query.Where(w => w.TrangThaiGiaoHangId == paging.trangthaigiaohangid);
            }
            if (paging.trangthaithanhtoanid != -1)
            {
                query = query.Where(w => w.TrangThaiThanhToanId == paging.trangthaithanhtoanid);
            }
            if (paging.ban != -1)
            {
                query = query.Where(w => w.Ban == paging.ban);
            }
            if (paging.loctg)
            {
                query = query.Where(e => EntityFunctions.TruncateTime(e.CreatedDate) >= paging.tu
                                    &&
                                    EntityFunctions.TruncateTime(e.CreatedDate) <=
                                    EntityFunctions.TruncateTime(paging.den));
            }


            //SORTING
            query = query.OrderByField(paging.tentruongsort, paging.giatrisort == "asc");
            //FILTERING
            if (paging.bolocs != null)
            {
                foreach (var loc in paging.bolocs)
                {
                    if (loc.tentruongloc.Equals("full_text_search"))
                    {
                        boloc loc1   = loc;
                        int   id_loc = -1;
                        if (int.TryParse(loc1.giatriloc, out id_loc))
                        {
                            query = query.Where(q => q.Id == id_loc);
                        }
                    }
                }
            }
            PG <DonHang> vmpg = null;
            //TOTAL RECORDS
            int     tongdong = query.Count();
            decimal tongtien = query.Sum(s => (decimal?)s.TongTienHang) ?? 0;

            //PAGING INFORMATION
            if (paging.tongdongmottrang != -1)
            {
                query = query.Skip(paging.numSkip).Take(paging.tongdongmottrang);
            }

            vmpg          = new PG <DonHang>(tongdong, paging.tranghientai, paging.tongdongmottrang, paging.fnjs);
            vmpg.L        = query.ToList();
            vmpg.TongTien = tongtien;
            return(vmpg);
        }