示例#1
0
        public IActionResult Index(OrderDetailSearchArgs args, int page = 1, int size = 20)
        {
            var pageList   = _orderDetailService.searchOrder(args, page, size);
            var dataSource = pageList.toDataSourceResult <Entities.OrderDetail, OrderDetailSearchArgs>("OrderDetailIndex", args);

            return(View(dataSource));
        }
示例#2
0
        public IPagedList <OrderDetail> searchOrder(OrderDetailSearchArgs args, int page, int size)
        {
            var query = _orderdetailRepository.Table;

            if (args != null)
            {
                if (!String.IsNullOrEmpty(args.q))
                {
                    var userList          = _sysUserRepository.Entities.Where(o => o.Account == (args.q));
                    Entities.SysUser user = null;
                    if (userList.Count() > 0)
                    {
                        user = userList.First();
                    }
                    int seatNumber;
                    Entities.LibrarySeat seat = null;
                    bool isInt = int.TryParse(args.q, out seatNumber);
                    if (isInt)
                    {
                        var seatList = _librarySeatRepository.Entities.Where(o => o.SeatNumber == seatNumber);
                        if (seatList.Count() > 0)
                        {
                            seat = seatList.First();
                        }
                    }
                    ;
                    if (user != null && seat != null)
                    {
                        query = query.Where(o => o.SysUserId == user.Id || o.LibrarySeatId == seat.Id);
                    }
                    else if (user != null)
                    {
                        query = query.Where(o => o.SysUserId == user.Id);
                    }
                    else if (seat != null)
                    {
                        query = query.Where(o => o.LibrarySeatId == seat.Id);
                    }
                }
                if (args.hascheckin.HasValue)
                {
                    query = query.Where(o => o.HasCheckIn == args.hascheckin);
                }
                if (args.hasend.HasValue)
                {
                    query = query.Where(o => o.HasEnd == args.hasend);
                }
            }
            query = from e in query orderby e.CreateTime descending select e;
            return(new PagedList <Entities.OrderDetail>(query, page, size));
        }