public virtual ReportStatementListModel PrepareReportStatementListModel(ReportStatementSearchModel searchModel) { if (null == searchModel) { throw new ArgumentNullException(nameof(searchModel)); } var list = consignmentOrderService.GetStatistics( pageIndex: searchModel.Page - 1, pageSize: searchModel.PageSize, consigneeName: searchModel.ConsigneeName, orderConsignmentTimeFrom: searchModel.OrderConsignmentTimeFrom, orderConsignmentTimeTo: searchModel.OrderConsignmentTimeTo, orderStatuses: (searchModel.OrderStatuses?.Contains(0) ?? false) ? null : searchModel.OrderStatuses, paymentStatuses: (searchModel.PaymentStatuses?.Contains(0) ?? false) ? null : searchModel.PaymentStatuses, shippingStatuses: (searchModel.ShippingStatuses?.Contains(0) ?? false) ? null : searchModel.ShippingStatuses); var model = new ReportStatementListModel { Data = list.Select(x => { var modelItem = x.ToModel <ReportStatementModel>(); modelItem.ShippingStatus = x.Trip?.ShippingStatus; modelItem.ShippingStatusName = modelItem.ShippingStatus.HasValue ? localizationService.GetLocalizedEnum(modelItem.ShippingStatus.Value) : string.Empty; modelItem.PaymentStatusName = localizationService.GetLocalizedEnum(modelItem.PaymentStatus); modelItem.OrderStatusName = localizationService.GetLocalizedEnum(modelItem.OrderStatus); return(modelItem); }), Total = list.TotalCount }; return(model); }
public virtual IActionResult StatementAggregates(ReportStatementSearchModel searchModel) { if (!permissionService.Authorize(StandardPermissionProvider.ManageTrips)) { return(AccessDeniedKendoGridJson()); } var model = logisticsReportModelFactory.PrepareReportStatementAggrModel(searchModel); return(Json(model)); }
public virtual ReportStatementSearchModel PrepareReportStatementSearchModel(ReportStatementSearchModel model = null) { if (null == model) { model = new ReportStatementSearchModel(); } baseAdminModelFactory.PrepareLogisticsOrderStatus(model.AvailableOrderStatuses); if (model.AvailableOrderStatuses.Any()) { if (model.OrderStatuses?.Any() ?? false) { var statuses = model.OrderStatuses.Select(x => x.ToString()); model.AvailableOrderStatuses.Where(x => statuses.Contains(x.Value)).ToList() .ForEach(x => x.Selected = true); } else { model.AvailableOrderStatuses.FirstOrDefault().Selected = true; } } baseAdminModelFactory.PrepareLogisticsPaymentStatus(model.AvailablePaymentStatuses); if (model.AvailablePaymentStatuses.Any()) { if (model.PaymentStatuses?.Any() ?? false) { var statuses = model.PaymentStatuses.Select(x => x.ToString()); model.AvailablePaymentStatuses.Where(x => statuses.Contains(x.Value)).ToList() .ForEach(x => x.Selected = true); } else { model.AvailablePaymentStatuses.FirstOrDefault().Selected = true; } } baseAdminModelFactory.PrepareLogisticsShippingStatus(model.AvailableShippingStatuses); if (model.AvailableShippingStatuses.Any()) { if (model.ShippingStatuses?.Any() ?? false) { var statuses = model.ShippingStatuses.Select(x => x.ToString()); model.AvailableShippingStatuses.Where(x => statuses.Contains(x.Value)).ToList() .ForEach(x => x.Selected = true); } else { model.AvailableShippingStatuses.FirstOrDefault().Selected = true; } } return(model); }
public virtual ReportStatementAggrModel PrepareReportStatementAggrModel(ReportStatementSearchModel searchModel) { if (null == searchModel) { throw new ArgumentNullException(nameof(searchModel)); } var aggr = consignmentOrderService.GetAggregates( consigneeName: searchModel.ConsigneeName, orderConsignmentTimeFrom: searchModel.OrderConsignmentTimeFrom, orderConsignmentTimeTo: searchModel.OrderConsignmentTimeTo, orderStatuses: (searchModel.OrderStatuses?.Contains(0) ?? false) ? null : searchModel.OrderStatuses, paymentStatuses: (searchModel.PaymentStatuses?.Contains(0) ?? false) ? null : searchModel.PaymentStatuses, shippingStatuses: (searchModel.ShippingStatuses?.Contains(0) ?? false) ? null : searchModel.ShippingStatuses); return(new ReportStatementAggrModel { Receivable = aggr.Receivable, Receipts = aggr.Receipts }); }