public async Task <IActionResult> GetPagedMealOrderVerification([FromQuery] MealOrderVerificationParams mealOrderVerificationParams) { var mealOrderVerifications = await mealOrderVerificationRepository.GetPagedMealOrderVerification(mealOrderVerificationParams); var result = mapper.Map <IEnumerable <ViewMealOrderVerificationResource> >(mealOrderVerifications); Response.AddPagination(mealOrderVerifications.CurrentPage, mealOrderVerifications.PageSize, mealOrderVerifications.TotalCount, mealOrderVerifications.TotalPages); return(Ok(result)); }
public async Task <IActionResult> GetMealVerificationReport([FromQuery] MealOrderVerificationParams mealVerificationParams) { var mealVerification = await mealOrderVerificationRepository.GetPagedMealOrderVerification(mealVerificationParams); var mealtypes = await mealtypeRepository.GetAll(); var mealOrderResult = mapper.Map <IEnumerable <ViewMealOrderVerificationResource> >(mealVerification); var mealTypeResult = mapper.Map <IEnumerable <ViewMealTypeResource> >(mealtypes); return(Ok(new { mealOrderResult, mealTypeResult })); }
public async Task <PagedList <MealOrderVerification> > GetPagedMealOrderVerification(MealOrderVerificationParams mealOrderVerificationParams) { var mealOrderVerifications = context.MealOrderVerification .Include(m => m.MealOrderVerificationDetails) .AsQueryable(); if (!string.IsNullOrEmpty(mealOrderVerificationParams.OrderNo)) { mealOrderVerifications = mealOrderVerifications.Where(m => m.OrderNo.Contains(mealOrderVerificationParams.OrderNo, StringComparison.OrdinalIgnoreCase)); } if (DateTime.Compare(mealOrderVerificationParams.OrderDate, new DateTime(01, 1, 1)) != 0) { mealOrderVerifications = mealOrderVerifications.Where(m => m.OrderDate.Date == mealOrderVerificationParams.OrderDate.Date); } if (DateTime.Compare(mealOrderVerificationParams.StartDate, new DateTime(01, 1, 1)) != 0 && DateTime.Compare(mealOrderVerificationParams.EndDate, new DateTime(01, 1, 1)) != 0) { mealOrderVerifications = mealOrderVerifications.Where(m => m.OrderDate.Date >= mealOrderVerificationParams.StartDate.Date && m.OrderDate.Date <= mealOrderVerificationParams.EndDate.Date); } // FIXME : OrderStatus = Closed, Open // if (mealOrderVerificationParams.OrderStatus) // { // mealOrderVerifications = mealOrderVerifications.Where(m => m.OrderedStatus == mealVerificationParams.OrderedStatus); // } // Sort if (mealOrderVerificationParams.isDescending) { if (!string.IsNullOrEmpty(mealOrderVerificationParams.OrderBy)) { switch (mealOrderVerificationParams.OrderBy.ToLower()) { case "orderno": mealOrderVerifications = mealOrderVerifications.OrderByDescending(m => m.OrderNo); break; case "orderdate": mealOrderVerifications = mealOrderVerifications.OrderByDescending(m => m.OrderDate); break; // FIXME : Orderstatus = Closed, Open // case "orderstatus": // mealVerifications = mealVerifications.OrderByDescending(m => m.OrderedStatus); // break; default: mealOrderVerifications = mealOrderVerifications.OrderByDescending(m => m.OrderDate); break; } } else { mealOrderVerifications = mealOrderVerifications.OrderByDescending(m => m.OrderDate); } } else { if (!string.IsNullOrEmpty(mealOrderVerificationParams.OrderBy)) { switch (mealOrderVerificationParams.OrderBy.ToLower()) { case "orderno": mealOrderVerifications = mealOrderVerifications.OrderBy(m => m.OrderNo); break; case "orderdate": mealOrderVerifications = mealOrderVerifications.OrderBy(m => m.OrderDate); break; // FIXME : Orderstatus = Closed, Open // case "orderstatus": // mealVerifications = mealVerifications.OrderBy(m => m.OrderedStatus); // break; default: mealOrderVerifications = mealOrderVerifications.OrderBy(m => m.OrderDate); break; } } else { mealOrderVerifications = mealOrderVerifications.OrderBy(m => m.OrderDate); } } var mealOrderVerificationsToReturn = mealOrderVerifications.Include(m => m.MealOrderVerificationDetails); return(await PagedList <MealOrderVerification> .CreateAsync(mealOrderVerificationsToReturn, mealOrderVerificationParams.PageNumber, mealOrderVerificationParams.PageSize)); }