classDiagram
direction LR
namespace Pages.ProductHaul._ViewModel {
class ProductHaulViewModel {
+string ServicePoint
+int ID
+string Crew
+string From
+string BinFrom
+string To
+string BinTo
+string Client
+int CallSheet
+string Blend
+string Amount
+string Status
+Rig Rig
}
}
namespace Pages.ProductHaul {
class Index.razor {
<<razor>>
}
class SfGrid {
<<div>>
+string @ref="_grid"
+string TValue="ProductHaulViewModel"
+string DataSource="@_dataSource"
+string Height="100%"
+string AllowGrouping="true"
+string AllowSelection="false"
+string AllowTextWrap="true"
+string AllowSorting="true"
+string GridLines="GridLine.Both"
}
class GridColumns {
<<div>>
}
class GridColumn {
<<div>>
+string Field="@nameof(ProductHaulViewModel.Crew)"
+string HeaderText="Crew"
}
class Index {
<<partial>>
-List~ShippingLoadSheet~ _filteredProductHaulLoad
-List~ShippingLoadSheet~ _salesProductHaulLoad
-List~ShippingLoadSheet~ _ProductHaulLoadProjects
-IEnumerable<int> _currentServicePoints
+IProductHaulRepository ProductHaulRepository
+IOptions<SalesOptions> SalesOptions
+IServicePointFilterService ServicePointFilterService
-ILogger<Index> Log
-Guid _refreshGuid
#IAutoRefreshDataService AutoRefreshDataService
-Task FiltersUpdatedAsync(IEnumerable~ShippingLoadSheet~ filteredSource)
#Task OnAfterRenderAsync(bool firstRender)
-Task ServicePointFilterChangedEventAsync(IEnumerable<int> ids)
-Task PopulateDataAsync(IEnumerable<int> servicePointIds)
-void RefreshCurrentServicePoints(IEnumerable<int> servicePointIds, out bool hasChanges)
-Task RefreshDataSourceAsync()
}
}
Index.razor *--> Index
Index.razor *--> SfGrid
SfGrid *--> GridColumns
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.Crew)", HeaderText="Crew"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.From)", HeaderText="From"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.BinFrom)", HeaderText="Bin # (From)"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.To)", HeaderText="To"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.BinTo)", HeaderText="Bin # (To)"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.Client)", HeaderText="Client"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.CallSheet)", HeaderText="CallSheet#"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.Blend)" HeaderText="Blend"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.Amount)", HeaderText="Amount"
GridColumns *--> GridColumn : Field="@nameof(ProductHaulViewModel.Status)", HeaderText="Status"
Index --> "*" ProductHaulViewModel : _dataSource