public static async Task <AjaxModel <T> > GetDashboardAsync <T>(Func <string, Task <T> > action, BaseDashboardDomain dashboardDomain, IWidgetDomain widgetDomain) where T : class { var ajaxModel = await AjaxHelper.GetAsync(action); ajaxModel.Dashboard = await AjaxHelper.DashboardGet(dashboardDomain.GetWidgetData, widgetDomain); return(ajaxModel); }
public static async Task <DashboardModel> DashboardGet(Func <int, WidgetOptions, Task <ChartModel <string, int> > > widgetData, IWidgetDomain widgetDomain) { int?dashboardPageId = NTContext.Context.DashboardPageId; if (dashboardPageId != null) { DashboardModel dashboard = await widgetDomain.DashboardGet(dashboardPageId.Value); foreach (WidgetModel widget in dashboard.AllWidgets) { WidgetOptions options = new WidgetOptions() { XAxisLabel = widget.XAxisLabel, YAxisLabel = widget.YAxisLabel, }; widget.Chart.Model = await widgetData(widget.WidgetId, options); } return(dashboard); } else { return(null); } }
public static async Task <AjaxModel <object> > GetDashboardAsync(BaseDashboardDomain dashboardDomain, IWidgetDomain widgetDomain) { var ajaxModel = AjaxHelper.BlankModel <object>(); ajaxModel.Dashboard = await AjaxHelper.DashboardGet(dashboardDomain.GetWidgetData, widgetDomain); return(ajaxModel); }