public ActionResult _SearchOrderReturnMaster(SellSearchViewModel model, int PageIndex = 1, int PageSize = 10)
        {
            if (model.ToDate.HasValue)
            {
                model.ToDate.Value.AddDays(1).AddMilliseconds(-1);
            }

            var list = (from p in _context.OrderReturnModel
                        join pp in _context.OrderMasterModel on p.OrderId equals pp.OrderId
                        where p.Actived == true && pp.Actived == true &&
                        (model.CustomerId == null || pp.CustomerId == model.CustomerId) &&
                        (model.Phone == null || pp.Phone.Contains(model.Phone)) &&
                        (model.OrderId == null || p.OrderId == model.OrderId) &&
                        (model.FromDate == null || p.CreatedDate.Value.CompareTo(model.FromDate.Value) >= 0) &&
                        (model.ToDate == null || p.CreatedDate.Value.CompareTo(model.ToDate.Value) <= 0) &&
                        (model.FromTotalPrice == null || p.TotalPrice >= model.FromTotalPrice) &&
                        (model.ToTotalPrice == null || p.TotalPrice <= model.ToTotalPrice)
                        select new OrderReturnMasterViewModel()
            {
                OrderReturnMasterId = p.OrderReturnMasterId,
                OrderCode = pp.OrderCode,
                FullName = pp.FullName,
                Phone = pp.Phone,
                SaleName = pp.SaleName,
                CreatedDate = p.CreatedDate,
                TotalPrice = p.TotalPrice
            }).Distinct()
                       .OrderByDescending(p => p.OrderReturnMasterId);

            ViewBag.TotalRow = list.Count();
            ViewBag.RowIndex = (PageIndex - 1) * PageSize;
            return(PartialView(list.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList()));
        }
示例#2
0
        public ActionResult _Search(SellSearchViewModel model, int PageIndex = 1, int PageSize = 10)
        {
            if (model.ToDate.HasValue)
            {
                model.ToDate.Value.AddDays(1).AddMilliseconds(-1);
            }

            var list = (from p in _context.PreOrderMasterModel
                        join orde in _context.PreOrderDetailModel on p.PreOrderId equals orde.PreOrderId
                        join pro in _context.ProductModel on orde.ProductId equals pro.ProductId
                        join cus in _context.CustomerModel on p.CustomerId equals cus.CustomerId
                        join emp in _context.EmployeeModel on cus.EmployeeId equals emp.EmployeeId
                        where
                        (model.Email == null || p.Email.Contains(model.Email)) &&
                        (model.CustomerId == null || p.CustomerId == model.CustomerId) &&
                        (model.Phone == null || p.Phone.Contains(model.Phone)) &&
                        (model.OrderId == null || p.PreOrderId == model.OrderId) &&
                        (model.FromDate == null || p.CreatedDate.Value.CompareTo(model.FromDate.Value) >= 0) &&
                        (model.ToDate == null || p.CreatedDate.Value.CompareTo(model.ToDate.Value) <= 0) &&
                        (model.FromTotalPrice == null || p.TotalPrice >= model.FromTotalPrice) &&
                        (model.ToTotalPrice == null || p.TotalPrice <= model.ToTotalPrice) &&
                        (model.ProductId == null || pro.ProductId == model.ProductId)
                        select new OrderMasterInfoViewModel()
            {
                PreOrderId = p.PreOrderId,
                PreOrderCode = p.PreOrderCode,
                CreatedDate = p.CreatedDate,
                FullName = p.FullName,
                Phone = p.Phone,
                SaleName = p.SaleName,
                TotalPrice = p.TotalPrice,
                OrderCode = p.PreOrderCode,
                StatusCode = p.StatusCode,
                Actived = p.Actived,
                EmployeeName = emp.FullName
            }).Distinct()
                       .OrderByDescending(p => p.CreatedDate);

            ViewBag.TotalRow = list.Count();
            ViewBag.RowIndex = (PageIndex - 1) * PageSize;
            return(PartialView(list.Skip((PageIndex - 1) * PageSize).Take(PageSize).ToList()));
        }