Skip to content

Commit 47a5845

Browse files
committed
refactor: 重构过滤器
1 parent f8db02e commit 47a5845

File tree

3 files changed

+31
-67
lines changed

3 files changed

+31
-67
lines changed

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

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,19 +18,6 @@ public partial class BoolFilter
1818

1919
private string? _value;
2020

21-
/// <summary>
22-
/// <inheritdoc/>
23-
/// </summary>
24-
protected override void OnInitialized()
25-
{
26-
base.OnInitialized();
27-
28-
if (TableFilter != null)
29-
{
30-
TableFilter.ShowMoreButton = false;
31-
}
32-
}
33-
3421
/// <summary>
3522
/// <inheritdoc/>
3623
/// </summary>

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

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -64,19 +64,6 @@ public partial class MultiFilter
6464
[Parameter]
6565
public IEnumerable<SelectedItem>? Items { get; set; }
6666

67-
/// <summary>
68-
/// <inheritdoc/>
69-
/// </summary>
70-
protected override void OnInitialized()
71-
{
72-
base.OnInitialized();
73-
74-
if (TableFilter != null)
75-
{
76-
TableFilter.ShowMoreButton = false;
77-
}
78-
}
79-
8067
/// <summary>
8168
/// <inheritdoc/>
8269
/// </summary>

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

Lines changed: 31 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -8,24 +8,10 @@
88
namespace BootstrapBlazor.Components;
99

1010
/// <summary>
11-
/// TableFilter 基类
11+
/// TableFilter component
1212
/// </summary>
1313
public partial class TableFilter : IFilter
1414
{
15-
/// <summary>
16-
/// 获得 过滤小图标样式
17-
/// </summary>
18-
private string? FilterClassString => CssBuilder.Default(Icon)
19-
.AddClass("active", IsActive)
20-
.Build();
21-
22-
/// <summary>
23-
/// 获得 样式
24-
/// </summary>
25-
private string? ClassString => CssBuilder.Default("filter-icon")
26-
.AddClassFromAttributes(AdditionalAttributes)
27-
.Build();
28-
2915
/// <summary>
3016
/// 获得/设置 是否 active
3117
/// </summary>
@@ -44,34 +30,11 @@ public partial class TableFilter : IFilter
4430
[Parameter]
4531
public string? NotSupportedMessage { get; set; }
4632

47-
/// <summary>
48-
/// 获得/设置 相关 Field 字段名称
49-
/// </summary>
50-
[NotNull]
51-
internal string? FieldKey { get; set; }
52-
53-
/// <summary>
54-
/// 获得/设置 是否显示增加减少条件按钮
55-
/// </summary>
56-
public bool ShowMoreButton { get; set; } = true;
57-
58-
/// <summary>
59-
/// 获得/设置 过滤条件 IFilterAction 接口
60-
/// </summary>
61-
[NotNull]
62-
public IFilterAction? FilterAction { get; set; }
63-
64-
/// <summary>
65-
/// 获得 当前过滤条件是否激活
66-
/// </summary>
67-
internal bool HasFilter => (Table != null) && Table.Filters.ContainsKey(Column.GetFieldName());
68-
6933
/// <summary>
7034
/// 获得 相关联 ITableColumn 实例
7135
/// </summary>
7236
[Parameter]
7337
[NotNull]
74-
[EditorRequired]
7538
public ITableColumn? Column { get; set; }
7639

7740
/// <summary>
@@ -93,6 +56,33 @@ public partial class TableFilter : IFilter
9356
[NotNull]
9457
protected IStringLocalizer<TableFilter>? Localizer { get; set; }
9558

59+
/// <summary>
60+
/// 获得 过滤小图标样式
61+
/// </summary>
62+
private string? FilterClassString => CssBuilder.Default(Icon)
63+
.AddClass("active", IsActive)
64+
.Build();
65+
66+
/// <summary>
67+
/// 获得 样式
68+
/// </summary>
69+
private string? ClassString => CssBuilder.Default("filter-icon")
70+
.AddClassFromAttributes(AdditionalAttributes)
71+
.Build();
72+
73+
/// <summary>
74+
/// 获得/设置 过滤条件 IFilterAction 接口
75+
/// </summary>
76+
[NotNull]
77+
public IFilterAction? FilterAction { get; set; }
78+
79+
/// <summary>
80+
/// 获得 当前过滤条件是否激活
81+
/// </summary>
82+
internal bool HasFilter => (Table != null) && Table.Filters.ContainsKey(Column.GetFieldName());
83+
84+
private string _fieldKey = "";
85+
9686
/// <summary>
9787
/// <inheritdoc/>
9888
/// </summary>
@@ -111,7 +101,7 @@ protected override void OnParametersSet()
111101
base.OnParametersSet();
112102

113103
NotSupportedMessage ??= Localizer[nameof(NotSupportedMessage)];
114-
FieldKey = Column.GetFieldName();
104+
_fieldKey = Column.GetFieldName();
115105
}
116106

117107
/// <summary>
@@ -137,11 +127,11 @@ internal async Task OnFilterAsync()
137127
var f = FilterAction.GetFilterConditions();
138128
if (f.Filters != null && f.Filters.Count > 0)
139129
{
140-
Table.Filters[FieldKey] = FilterAction;
130+
Table.Filters[_fieldKey] = FilterAction;
141131
}
142132
else
143133
{
144-
Table.Filters.Remove(FieldKey);
134+
Table.Filters.Remove(_fieldKey);
145135
}
146136
if (Table.OnFilterAsync != null)
147137
{

0 commit comments

Comments
 (0)