public async Task <BaseResponse <IEnumerable <OrderStatusResponse> > > List(OrderStatusListRequest model)
        {
            IEnumerable <OrderStatus> orderStatusList = await _db.OrderStatuses.ToListAsync();

            if (!string.IsNullOrEmpty(model.StatusName))
            {
                orderStatusList = orderStatusList.Where(x => x.StatusName.Contains(model.StatusName));
            }
            if (model.IsEditablePrice.HasValue)
            {
                orderStatusList = orderStatusList.Where(x => x.IsEditablePrice == model.IsEditablePrice);
            }
            if (model.IsPaid.HasValue)
            {
                orderStatusList = orderStatusList.Where(x => x.IsPaid == model.IsPaid);
            }

            var result = orderStatusList.Take(model.PageSize).Skip((model.PageNumber - 1) * model.PageSize);
            IEnumerable <OrderStatusResponse> response = _mapper.Map <IEnumerable <OrderStatusResponse> >(result);
            int totalCount = _db.OrderStatuses.Count();

            if (response != null)
            {
                return(new BaseResponse <IEnumerable <OrderStatusResponse> >
                {
                    Code = RsponseCode.Success,
                    Message = "",
                    Data = response,
                    TotalCount = totalCount
                });
            }


            return(new BaseResponse <IEnumerable <OrderStatusResponse> >
            {
                Code = RsponseCode.NotFound,
                Message = "لا يوجد بيانات ",
                Data = null
            });
        }
Beispiel #2
0
        public async Task <IActionResult> List([FromBody] OrderStatusListRequest model)
        {
            var result = await _orderStatusService.List(model);

            return(Ok(result));
        }