/// <summary> /// Prepare paged delivery date list model /// </summary> /// <param name="searchModel">Delivery date search model</param> /// <returns> /// A task that represents the asynchronous operation /// The task result contains the delivery date list model /// </returns> public virtual async Task <DeliveryDateListModel> PrepareDeliveryDateListModelAsync(DeliveryDateSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get delivery dates var deliveryDates = (await _dateRangeService.GetAllDeliveryDatesAsync()).ToPagedList(searchModel); //prepare grid model var model = new DeliveryDateListModel().PrepareToGrid(searchModel, deliveryDates, () => { //fill in model values from the entity return(deliveryDates.Select(date => date.ToModel <DeliveryDateModel>())); }); return(model); }
/// <summary> /// Prepare paged delivery date list model /// </summary> /// <param name="searchModel">Delivery date search model</param> /// <returns>Delivery date list model</returns> public virtual DeliveryDateListModel PrepareDeliveryDateListModel(DeliveryDateSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get delivery dates var deliveryDates = _dateRangeService.GetAllDeliveryDates(); //prepare grid model var model = new DeliveryDateListModel { //fill in model values from the entity Data = deliveryDates.PaginationByRequestModel(searchModel).Select(date => date.ToModel()), Total = deliveryDates.Count }; return(model); }