From e808fccfc3d750c9ed152741ea41c87ff2eff1a2 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Thu, 23 May 2019 11:31:46 +0300 Subject: [PATCH] refactor --- .../Dashboard/DashboardViewComponent.cshtml.cs | 2 +- .../Components/Dashboard/DashboardViewModel.cs | 8 ++++---- .../Components/Dashboard/Default.cshtml | 1 + .../MyDashboardScriptBundleContributor.cs | 2 +- .../Pages/widgets/MyDashboard.js | 1 + .../widgets/MyWidgetScriptBundleContributor.cs | 17 +++++++++++++++++ .../widgets/MyWidgetViewComponent.cshtml.cs | 11 ----------- 7 files changed, 25 insertions(+), 17 deletions(-) create mode 100644 samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyDashboard.js create mode 100644 samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetScriptBundleContributor.cs diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewComponent.cshtml.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewComponent.cshtml.cs index 0319c1f7ef..9309bcdf7d 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewComponent.cshtml.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewComponent.cshtml.cs @@ -21,7 +21,7 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Dashboards.Components.Dashboard { var dashboard = _dashboardOptions.Dashboards.Single(d => d.Name.Equals(dashboardName)); - var model = new DashboardViewModel(dashboard, _widgetOptions); + var model = new DashboardViewModel(dashboard, _widgetOptions.Widgets); return View("~/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/Default.cshtml", model); } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewModel.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewModel.cs index 7647176a06..723fe46dcf 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewModel.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/DashboardViewModel.cs @@ -10,17 +10,17 @@ namespace Volo.Abp.AspNetCore.Mvc.UI.Dashboards.Components.Dashboard { public DashboardDefinition Dashboard { get; set; } - public WidgetOptions WidgetOptions { get; set; } + public List Widgets { get; set; } - public DashboardViewModel(DashboardDefinition dashboard, WidgetOptions widgetOptions) + public DashboardViewModel(DashboardDefinition dashboard, List widgets) { Dashboard = dashboard; - WidgetOptions = widgetOptions; + Widgets = widgets; } public WidgetDefinition GetWidget(string name) { - return WidgetOptions.Widgets.Single(d => d.Name.Equals(name)); + return Widgets.Single(d => d.Name.Equals(name)); } } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/Default.cshtml b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/Default.cshtml index f8c26c2bbb..52a70bb54f 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/Default.cshtml +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.UI.Dashboards/Volo/Abp/AspNetCore/Mvc/UI/Dashboards/Components/Dashboard/Default.cshtml @@ -5,6 +5,7 @@ @model Volo.Abp.AspNetCore.Mvc.UI.Dashboards.Components.Dashboard.DashboardViewModel @{ } + @foreach (var widgetConfiguration in Model.Dashboard.AvailableWidgets) { diff --git a/samples/DashboardDemo/src/DashboardDemo.Web/Dashboards/MyDashboardScriptBundleContributor.cs b/samples/DashboardDemo/src/DashboardDemo.Web/Dashboards/MyDashboardScriptBundleContributor.cs index cef9b7bfc9..5f40a81402 100644 --- a/samples/DashboardDemo/src/DashboardDemo.Web/Dashboards/MyDashboardScriptBundleContributor.cs +++ b/samples/DashboardDemo/src/DashboardDemo.Web/Dashboards/MyDashboardScriptBundleContributor.cs @@ -7,7 +7,7 @@ namespace DashboardDemo.Dashboards { [DependsOn( typeof(AbpBasicDashboardScriptContributor), - typeof(MyWidgetViewComponentScriptBundleContributor), + typeof(MyWidgetScriptBundleContributor), typeof(DemoStatisticsScriptContributor) )] public class MyDashboardScriptBundleContributor : BundleContributor diff --git a/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyDashboard.js b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyDashboard.js new file mode 100644 index 0000000000..5f282702bb --- /dev/null +++ b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyDashboard.js @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetScriptBundleContributor.cs b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetScriptBundleContributor.cs new file mode 100644 index 0000000000..2cc6302ee1 --- /dev/null +++ b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetScriptBundleContributor.cs @@ -0,0 +1,17 @@ +using Volo.Abp.AspNetCore.Mvc.UI.Bundling; +using Volo.Abp.AspNetCore.Mvc.UI.Packages.Clipboard; +using Volo.Abp.AspNetCore.Mvc.UI.Packages.JQuery; +using Volo.Abp.Modularity; + +namespace DashboardDemo.Pages.widgets +{ + [DependsOn(typeof(JQueryScriptContributor))] + [DependsOn(typeof(ClipboardScriptBundleContributor))] + public class MyWidgetScriptBundleContributor : BundleContributor + { + public override void ConfigureBundle(BundleConfigurationContext context) + { + context.Files.Add("/Pages/widgets/MyDashboard.js"); + } + } +} \ No newline at end of file diff --git a/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetViewComponent.cshtml.cs b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetViewComponent.cshtml.cs index 8f5ee1758b..380dce0a56 100644 --- a/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetViewComponent.cshtml.cs +++ b/samples/DashboardDemo/src/DashboardDemo.Web/Pages/widgets/MyWidgetViewComponent.cshtml.cs @@ -1,8 +1,4 @@ using Microsoft.AspNetCore.Mvc; -using Volo.Abp.AspNetCore.Mvc.UI.Bundling; -using Volo.Abp.AspNetCore.Mvc.UI.Packages.Clipboard; -using Volo.Abp.AspNetCore.Mvc.UI.Packages.JQuery; -using Volo.Abp.Modularity; namespace DashboardDemo.Pages.widgets { @@ -18,11 +14,4 @@ namespace DashboardDemo.Pages.widgets return View("/Pages/widgets/MyWidgetViewComponent.cshtml", new MyWidgetViewComponent()); } } - - [DependsOn(typeof(JQueryScriptContributor))] - [DependsOn(typeof(ClipboardScriptBundleContributor))] - public class MyWidgetViewComponentScriptBundleContributor : BundleContributor - { - - } } \ No newline at end of file