Skip to content

Commit c0b4152

Browse files
committed
refactor: 代码重构
1 parent ae092a4 commit c0b4152

14 files changed

+102
-187
lines changed

src/BootstrapBlazor/Components/Filters/BoolFilter.razor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,10 +48,10 @@ public override void Reset()
4848
/// <returns></returns>
4949
public override FilterKeyValueAction GetFilterConditions()
5050
{
51-
var filter = new FilterKeyValueAction() { Filters = [] };
51+
var filter = new FilterKeyValueAction { Filters = [] };
5252
if (!string.IsNullOrEmpty(_value))
5353
{
54-
filter.Filters.Add(new FilterKeyValueAction()
54+
filter.Filters.Add(new FilterKeyValueAction
5555
{
5656
FieldKey = FieldKey,
5757
FieldValue = _value == "true",

src/BootstrapBlazor/Components/Filters/DateTimeFilter.razor.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
namespace BootstrapBlazor.Components;
77

88
/// <summary>
9-
///
9+
///
1010
/// </summary>
1111
public partial class DateTimeFilter
1212
{
@@ -85,7 +85,7 @@ public override FilterKeyValueAction GetFilterConditions()
8585

8686
if (Count > 0 && _value2 != null)
8787
{
88-
filter.Filters.Add(new FilterKeyValueAction()
88+
filter.Filters.Add(new FilterKeyValueAction
8989
{
9090
FieldKey = FieldKey,
9191
FieldValue = _value2,
@@ -112,7 +112,7 @@ public override async Task SetFilterConditionsAsync(FilterKeyValueAction filter)
112112
}
113113
_action1 = first.FilterAction;
114114

115-
if (filter.Filters != null && filter.Filters.Count == 2)
115+
if (filter.Filters is { Count: 2 })
116116
{
117117
Count = 1;
118118
FilterKeyValueAction second = filter.Filters[1];

src/BootstrapBlazor/Components/Filters/EnumFilter.razor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ public override async Task SetFilterConditionsAsync(FilterKeyValueAction filter)
103103
_value = "";
104104
}
105105

106-
if (filter.Filters != null && filter.Filters.Count == 2)
106+
if (filter.Filters is { Count: 2 })
107107
{
108108
Count = 1;
109109
FilterKeyValueAction second = filter.Filters[1];

src/BootstrapBlazor/Components/Filters/FilterBase.cs

Lines changed: 13 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -8,57 +8,35 @@
88
namespace BootstrapBlazor.Components;
99

1010
/// <summary>
11-
///
11+
/// 过滤器基类
1212
/// </summary>
1313
public abstract class FilterBase : BootstrapModuleComponentBase, IFilterAction
1414
{
1515
/// <summary>
16-
///
16+
/// 获得/设置 <see cref="IStringLocalizer{TableFilter}"/> 实例
1717
/// </summary>
1818
[Inject]
1919
[NotNull]
2020
protected IStringLocalizer<TableFilter>? Localizer { get; set; }
2121

2222
/// <summary>
23-
/// 获得/设置 所属 TableFilter 实例
24-
/// </summary>
25-
[CascadingParameter, NotNull]
26-
protected TableFilter? TableFilter { get; set; }
27-
28-
/// <summary>
29-
/// 重置按钮文本
23+
/// 获得/设置 相关 Field 字段名称
3024
/// </summary>
3125
[Parameter]
3226
[NotNull]
33-
public string? ClearButtonText { get; set; }
27+
public string? FieldKey { get; set; }
3428

3529
/// <summary>
36-
/// 过滤按钮文本
30+
/// 获得/设置 是否为 HeaderRow 模式 默认 false
3731
/// </summary>
3832
[Parameter]
39-
[NotNull]
40-
public string? FilterButtonText { get; set; }
33+
public bool IsHeaderRow { get; set; }
4134

4235
/// <summary>
43-
/// 获得/设置 Header 显示文字
44-
/// </summary>
45-
protected string? Title;
46-
47-
/// <summary>
48-
/// 获得/设置 相关 Field 字段名称
49-
/// </summary>
50-
[NotNull]
51-
protected string? FieldKey { get; set; }
52-
53-
/// <summary>
54-
///
55-
/// </summary>
56-
protected FilterLogic Logic { get; set; }
57-
58-
/// <summary>
59-
/// 获得/设置 是否为 HeaderRow 模式 默认 false
36+
/// 获得/设置 所属 TableFilter 实例
6037
/// </summary>
61-
protected bool IsHeaderRow => TableFilter.IsHeaderRow;
38+
[CascadingParameter, NotNull]
39+
protected TableFilter? TableFilter { get; set; }
6240

6341
/// <summary>
6442
/// <inheritdoc/>
@@ -74,74 +52,16 @@ protected override void OnInitialized()
7452
}
7553

7654
/// <summary>
77-
/// <inheritdoc/>
78-
/// </summary>
79-
protected override void OnParametersSet()
80-
{
81-
base.OnParametersSet();
82-
83-
FilterButtonText ??= Localizer[nameof(FilterButtonText)];
84-
ClearButtonText ??= Localizer[nameof(ClearButtonText)];
85-
86-
var column = TableFilter.Column;
87-
if (column != null)
88-
{
89-
Title = column.GetDisplayName();
90-
FieldKey = column.GetFieldName();
91-
}
92-
}
93-
94-
/// <summary>
95-
/// 点击重置按钮时回调此方法
96-
/// </summary>
97-
/// <returns></returns>
98-
protected async Task OnClickReset()
99-
{
100-
var table = TableFilter.Table;
101-
if (table != null)
102-
{
103-
TableFilter.FilterAction.Reset();
104-
table.Filters.Remove(FieldKey);
105-
106-
if (table.OnFilterAsync != null)
107-
{
108-
await table.OnFilterAsync();
109-
}
110-
}
111-
}
112-
113-
/// <summary>
114-
/// 点击确认时回调此方法
55+
/// 过滤按钮回调方法
11556
/// </summary>
11657
/// <returns></returns>
117-
protected async Task OnClickConfirm()
58+
protected async Task OnFilterValueChanged()
11859
{
119-
var table = TableFilter.Table;
120-
if (table != null)
60+
if (TableFilter != null)
12161
{
122-
var f = GetFilterConditions();
123-
if (f.Filters is { Count: > 0 })
124-
{
125-
table.Filters[FieldKey] = TableFilter.FilterAction;
126-
}
127-
else
128-
{
129-
table.Filters.Remove(FieldKey);
130-
}
131-
if (table.OnFilterAsync != null)
132-
{
133-
await table.OnFilterAsync();
134-
}
62+
await TableFilter.OnFilterAsync();
13563
}
136-
}
13764

138-
/// <summary>
139-
/// 过滤按钮回调方法
140-
/// </summary>
141-
/// <returns></returns>
142-
protected async Task OnFilterValueChanged()
143-
{
144-
await TableFilter.OnFilterAsync();
14565
StateHasChanged();
14666
}
14767

src/BootstrapBlazor/Components/Filters/LookupFilter.razor.cs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@
66
namespace BootstrapBlazor.Components;
77

88
/// <summary>
9-
///
9+
/// Lookup 过滤器
1010
/// </summary>
1111
public partial class LookupFilter
1212
{
13-
private Type _type = default!;
13+
private Type _type = null!;
1414
private string? _value;
1515
private bool _isShowSearch;
16-
private ILookup _lookup = default!;
16+
private ILookup _lookup = null!;
1717

1818
/// <summary>
1919
/// <inheritdoc/>
@@ -22,11 +22,13 @@ protected override void OnParametersSet()
2222
{
2323
base.OnParametersSet();
2424

25-
var column = TableFilter.Column;
26-
27-
_isShowSearch = column.ShowSearchWhenSelect;
28-
_type = column.PropertyType;
29-
_lookup = column;
25+
if (TableFilter != null)
26+
{
27+
var column = TableFilter.Column;
28+
_isShowSearch = column.ShowSearchWhenSelect;
29+
_type = column.PropertyType;
30+
_lookup = column;
31+
}
3032
}
3133

3234
/// <summary>
@@ -44,12 +46,12 @@ public override void Reset()
4446
/// <returns></returns>
4547
public override FilterKeyValueAction GetFilterConditions()
4648
{
47-
var filter = new FilterKeyValueAction() { Filters = [] };
49+
var filter = new FilterKeyValueAction { Filters = [] };
4850
if (!string.IsNullOrEmpty(_value))
4951
{
5052
var type = Nullable.GetUnderlyingType(_type) ?? _type;
5153
var val = Convert.ChangeType(_value, type);
52-
filter.Filters.Add(new FilterKeyValueAction()
54+
filter.Filters.Add(new FilterKeyValueAction
5355
{
5456
FieldKey = FieldKey,
5557
FieldValue = val,

src/BootstrapBlazor/Components/Filters/MultiFilter.razor.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -137,11 +137,11 @@ public override void Reset()
137137
/// <returns></returns>
138138
public override FilterKeyValueAction GetFilterConditions()
139139
{
140-
var filter = new FilterKeyValueAction() { Filters = [], FilterLogic = FilterLogic.Or };
140+
var filter = new FilterKeyValueAction{ Filters = [], FilterLogic = FilterLogic.Or };
141141

142142
foreach (var item in GetItems().Where(i => i.Active))
143143
{
144-
filter.Filters.Add(new FilterKeyValueAction()
144+
filter.Filters.Add(new FilterKeyValueAction
145145
{
146146
FieldKey = FieldKey,
147147
FieldValue = item.Value,

src/BootstrapBlazor/Components/Filters/MultipleFilterBase.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,17 @@
66
namespace BootstrapBlazor.Components;
77

88
/// <summary>
9-
///
9+
/// 多条件过滤器基类
1010
/// </summary>
1111
public abstract class MultipleFilterBase : FilterBase
1212
{
1313
/// <summary>
1414
/// 获得/设置 条件数量
1515
/// </summary>
16-
protected int Count { get; set; }
16+
public int Count { get; set; }
17+
18+
/// <summary>
19+
/// 获得/设置 多个条件逻辑关系符号
20+
/// </summary>
21+
protected FilterLogic Logic { get; set; }
1722
}

src/BootstrapBlazor/Components/Filters/NumberFilter.razor.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
namespace BootstrapBlazor.Components;
77

88
/// <summary>
9-
///
9+
///
1010
/// </summary>
1111
public partial class NumberFilter<TType>
1212
{
@@ -78,10 +78,10 @@ public override void Reset()
7878
/// <returns></returns>
7979
public override FilterKeyValueAction GetFilterConditions()
8080
{
81-
var filter = new FilterKeyValueAction() { Filters = [] };
81+
var filter = new FilterKeyValueAction { Filters = [] };
8282
if (_value1 != null)
8383
{
84-
filter.Filters.Add(new FilterKeyValueAction()
84+
filter.Filters.Add(new FilterKeyValueAction
8585
{
8686
FieldKey = FieldKey,
8787
FieldValue = _value1,
@@ -91,7 +91,7 @@ public override FilterKeyValueAction GetFilterConditions()
9191

9292
if (Count > 0 && _value2 != null)
9393
{
94-
filter.Filters.Add(new FilterKeyValueAction()
94+
filter.Filters.Add(new FilterKeyValueAction
9595
{
9696
FieldKey = FieldKey,
9797
FieldValue = _value2,
@@ -118,7 +118,7 @@ public override async Task SetFilterConditionsAsync(FilterKeyValueAction filter)
118118
}
119119
_action1 = first.FilterAction;
120120

121-
if (filter.Filters != null && filter.Filters.Count == 2)
121+
if (filter.Filters is { Count: 2 })
122122
{
123123
Count = 1;
124124
FilterKeyValueAction second = filter.Filters[1];

src/BootstrapBlazor/Components/Filters/StringFilter.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
}
1111
else
1212
{
13-
<Select Items="@Items" @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></Select>
13+
<Select Items="@Items" @bind-Value="@_action1" ShowLabel="false" SkipValidate="true"></Select>
1414
<BootstrapInput @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></BootstrapInput>
1515
@if (Count > 0)
1616
{

src/BootstrapBlazor/Components/Filters/StringFilter.razor.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
namespace BootstrapBlazor.Components;
77

88
/// <summary>
9-
///
9+
///
1010
/// </summary>
1111
public partial class StringFilter
1212
{
@@ -81,10 +81,10 @@ public override void Reset()
8181
/// <returns></returns>
8282
public override FilterKeyValueAction GetFilterConditions()
8383
{
84-
var filter = new FilterKeyValueAction() { Filters = [] };
84+
var filter = new FilterKeyValueAction { Filters = [] };
8585
if (!string.IsNullOrEmpty(_value1))
8686
{
87-
filter.Filters.Add(new FilterKeyValueAction()
87+
filter.Filters.Add(new FilterKeyValueAction
8888
{
8989
FieldKey = FieldKey,
9090
FieldValue = _value1,
@@ -94,7 +94,7 @@ public override FilterKeyValueAction GetFilterConditions()
9494

9595
if (Count > 0 && !string.IsNullOrEmpty(_value2))
9696
{
97-
filter.Filters.Add(new FilterKeyValueAction()
97+
filter.Filters.Add(new FilterKeyValueAction
9898
{
9999
FieldKey = FieldKey,
100100
FieldValue = _value2,
@@ -121,7 +121,7 @@ public override async Task SetFilterConditionsAsync(FilterKeyValueAction filter)
121121
}
122122
_action1 = first.FilterAction;
123123

124-
if (filter.Filters != null && filter.Filters.Count == 2)
124+
if (filter.Filters is { Count: 2 })
125125
{
126126
Count = 1;
127127
FilterKeyValueAction second = filter.Filters[1];

0 commit comments

Comments
 (0)