diff --git a/TaxPayerFull/Layout/SaleChart.razor b/TaxPayerFull/Layout/SaleChart.razor
index cc1a9b7..b17ffca 100644
--- a/TaxPayerFull/Layout/SaleChart.razor
+++ b/TaxPayerFull/Layout/SaleChart.razor
@@ -1,24 +1,11 @@
-@using Color = System.Drawing.Color
-@using Shared.DTOs
+@using Shared.DTOs
+
-
-
-@*
-
-
-
-
- *@
@code {
private LineChart lineChart = default!;
private LineChartOptions lineChartOptions = default!;
private ChartData chartData = default!;
public List> items = new List>();
- private int datasetsCount = 0;
- private int labelsCount = 0;
-
- private Random random = new();
-
protected override void OnInitialized()
{
items.AddRange(new List>()
@@ -28,8 +15,39 @@
new IdNameByCount{ID=2,Title="3",count=12},
new IdNameByCount{ID=3,Title="4",count=21}
});
- chartData = new ChartData { Labels = GetDefaultDataLabels(), Datasets = GetDefaultDataSets(1) };
- lineChartOptions = new() { Responsive = true, Interaction = new Interaction { Mode = InteractionMode.Index } };
+
+ var colors = ColorBuilder.CategoricalTwelveColors;
+
+ var labels = items.OrderBy(o => o.ID).Select(s => s.Title).ToList();
+ var datasets = new List();
+
+ var dataset1 = new LineChartDataset
+ {
+
+ Label = "فروش",
+ Data = items.OrderBy(o => o.ID).Select(s => decimal.ToDouble(s.count.Value)).ToList(),
+ BackgroundColor = new List { colors[0] },
+ BorderColor = new List { colors[0] },
+ BorderWidth = new List { 2 },
+ HoverBorderWidth = new List { 4 },
+ PointBackgroundColor = new List { colors[0] },
+ PointRadius = new List { 0 }, // hide points
+ PointHoverRadius = new List { 4 }
+ };
+ datasets.Add(dataset1);
+
+
+ chartData = new ChartData { Labels = labels, Datasets = datasets };
+
+ lineChartOptions = new();
+ lineChartOptions.Responsive = true;
+ lineChartOptions.Interaction = new Interaction { Mode = InteractionMode.Index };
+
+ lineChartOptions.Scales.X!.Title = new ChartAxesTitle { Text = "روز", Display = true };
+ lineChartOptions.Scales.Y!.Title = new ChartAxesTitle { Text = "میران", Display = true };
+
+ lineChartOptions.Plugins.Title!.Text = "گزارش (ماه جاری)";
+ lineChartOptions.Plugins.Title.Display = true;
}
protected override async Task OnAfterRenderAsync(bool firstRender)
@@ -41,135 +59,4 @@
await base.OnAfterRenderAsync(firstRender);
}
- // private async Task RandomizeAsync()
- // {
- // if (chartData is null || chartData.Datasets is null || !chartData.Datasets.Any()) return;
-
- // var newDatasets = new List();
-
- // foreach (var dataset in chartData.Datasets)
- // {
- // if (dataset is LineChartDataset lineChartDataset
- // && lineChartDataset is not null
- // && lineChartDataset.Data is not null)
- // {
- // var count = lineChartDataset.Data.Count;
-
- // var newData = new List();
- // for (var i = 0; i < count; i++)
- // {
- // newData.Add(random.Next(200));
- // }
-
- // lineChartDataset.Data = newData;
- // newDatasets.Add(lineChartDataset);
- // }
- // }
-
- // chartData.Datasets = newDatasets;
-
- // await lineChart.UpdateAsync(chartData, lineChartOptions);
- // }
-
- // private async Task AddDatasetAsync()
- // {
- // if (chartData is null || chartData.Datasets is null) return;
-
- // var chartDataset = GetRandomLineChartDataset();
- // chartData = await lineChart.AddDatasetAsync(chartData, chartDataset, lineChartOptions);
- // }
-
- // private async Task AddDataAsync()
- // {
- // if (chartData is null || chartData.Datasets is null)
- // return;
-
- // var data = new List();
- // foreach (var dataset in chartData.Datasets)
- // {
- // if (dataset is LineChartDataset lineChartDataset)
- // data.Add(new LineChartDatasetData(lineChartDataset.Label, random.Next(200)));
- // }
-
- // chartData = await lineChart.AddDataAsync(chartData, GetNextDataLabel(), data);
- // }
-
- // private async Task ShowHorizontalLineChartAsync()
- // {
- // lineChartOptions.IndexAxis = "y";
- // await lineChart.UpdateAsync(chartData, lineChartOptions);
- // }
-
- // private async Task ShowVerticalLineChartAsync()
- // {
- // lineChartOptions.IndexAxis = "x";
- // await lineChart.UpdateAsync(chartData, lineChartOptions);
- // }
-
- #region Data Preparation
-
- private List GetDefaultDataSets(int numberOfDatasets)
- {
- var datasets = new List();
-
- for (var index = 0; index < numberOfDatasets; index++)
- {
- datasets.Add(GetRandomLineChartDataset());
- }
-
- return datasets;
- }
-
- private LineChartDataset GetRandomLineChartDataset()
- {
- var c = ColorBuilder.CategoricalTwelveColors[datasetsCount].ToColor();
-
- datasetsCount += 1;
-
- return new LineChartDataset()
- {
- Label = $"فروش",
- Data = GetRandomData(),
- BackgroundColor = new List { c.ToRgbString() },
- BorderColor = new List { c.ToRgbString() },
- BorderWidth = new List { 2 },
- HoverBorderWidth = new List { 4 },
- PointBackgroundColor = new List { c.ToRgbString() },
- PointRadius = new List { 0 }, // hide points
- PointHoverRadius = new List { 4 },
- };
- }
-
- private List GetRandomData()
- {
- var data = new List();
- for (var index = 0; index < items.Count; index++)
- {
-
- data.Add(decimal.ToDouble(items[index].count.Value));
- }
-
- return data;
- }
-
- private List GetDefaultDataLabels()
- {
-
- var labels = new List();
- for (var index = 0; index < items.Count; index++)
- {
-
- labels.Add($"روز {items[index].Title}");
- }
-
- return labels;
- }
-
- // private string GetNextDataLabel()
- // {
- // labelsCount += 1;
- // return $"روز {labelsCount}";
- // }
-
- #endregion Data Preparation
}
\ No newline at end of file
diff --git a/TaxPayerFull/Pages/UserPanel/Panel.razor b/TaxPayerFull/Pages/UserPanel/Panel.razor
index bbaa7af..a96db64 100644
--- a/TaxPayerFull/Pages/UserPanel/Panel.razor
+++ b/TaxPayerFull/Pages/UserPanel/Panel.razor
@@ -213,10 +213,10 @@