Skip to content

Commit fac8044

Browse files
committed
refactor: 调整过滤器结构
1 parent e083a75 commit fac8044

File tree

8 files changed

+148
-136
lines changed

8 files changed

+148
-136
lines changed

src/BootstrapBlazor/Components/Filters/BoolFilter.razor

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,14 @@
99
}
1010
else
1111
{
12-
<div class="card-header"><span>@Title</span></div>
13-
<div class="card-body">
14-
<Select Items="@Items" @bind-Value="@_value" ShowLabel="false" SkipValidate="true"></Select>
15-
</div>
16-
<div class="card-footer justify-content-end">
17-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
18-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
12+
<div class="card filter-item">
13+
<div class="card-header"><span>@Title</span></div>
14+
<div class="card-body">
15+
<Select Items="@Items" @bind-Value="@_value" ShowLabel="false" SkipValidate="true"></Select>
16+
</div>
17+
<div class="card-footer justify-content-end">
18+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
19+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
20+
</div>
1921
</div>
2022
}

src/BootstrapBlazor/Components/Filters/DateTimeFilter.razor

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,26 @@
1111
}
1212
else
1313
{
14-
<div class="card-header"><span>@Title</span></div>
15-
<div class="card-body">
16-
<Select Items="_items" @bind-Value="_action1" ShowLabel="false" SkipValidate="true"></Select>
17-
<DateTimePicker class="is-filter" @bind-Value="_value1" ShowLabel="false" SkipValidate="true"></DateTimePicker>
14+
<div class="card filter-item">
15+
<div class="card-header"><span>@Title</span></div>
16+
<div class="card-body">
17+
<Select Items="_items" @bind-Value="_action1" ShowLabel="false" SkipValidate="true"></Select>
18+
<DateTimePicker class="is-filter" @bind-Value="_value1" ShowLabel="false" SkipValidate="true"></DateTimePicker>
1819

19-
@if (Count > 0)
20-
{
21-
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
22-
<Select Items="_items" @bind-Value="_action2" ShowLabel="false" SkipValidate="true"></Select>
23-
<DateTimePicker class="is-filter" @bind-Value="_value2" ShowLabel="false" SkipValidate="true"></DateTimePicker>
24-
}
25-
</div>
26-
<div class="card-footer">
27-
<div class="d-flex flex-fill">
28-
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
29-
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
20+
@if (Count > 0)
21+
{
22+
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
23+
<Select Items="_items" @bind-Value="_action2" ShowLabel="false" SkipValidate="true"></Select>
24+
<DateTimePicker class="is-filter" @bind-Value="_value2" ShowLabel="false" SkipValidate="true"></DateTimePicker>
25+
}
26+
</div>
27+
<div class="card-footer">
28+
<div class="d-flex flex-fill">
29+
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
30+
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
31+
</div>
32+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
33+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
3034
</div>
31-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
32-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
3335
</div>
3436
}

src/BootstrapBlazor/Components/Filters/EnumFilter.razor

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,21 +8,23 @@
88
}
99
else
1010
{
11-
<div class="card-header"><span>@Title</span></div>
12-
<div class="card-body">
13-
<Select Items="@Items" @bind-Value="@_value" ShowLabel="false" SkipValidate="true"></Select>
14-
@if (Count > 0)
15-
{
16-
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
17-
<Select Items="@Items" @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></Select>
18-
}
19-
</div>
20-
<div class="card-footer">
21-
<div class="d-flex flex-fill">
22-
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
23-
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
11+
<div class="card filter-item">
12+
<div class="card-header"><span>@Title</span></div>
13+
<div class="card-body">
14+
<Select Items="@Items" @bind-Value="@_value" ShowLabel="false" SkipValidate="true"></Select>
15+
@if (Count > 0)
16+
{
17+
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
18+
<Select Items="@Items" @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></Select>
19+
}
20+
</div>
21+
<div class="card-footer">
22+
<div class="d-flex flex-fill">
23+
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
24+
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
25+
</div>
26+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
27+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
2428
</div>
25-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
26-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
2729
</div>
2830
}

src/BootstrapBlazor/Components/Filters/LookupFilter.razor

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,17 @@
1111
}
1212
else
1313
{
14-
<div class="card-header"><span>@Title</span></div>
15-
<div class="card-body">
16-
<Select Items="@_lookup.Lookup" LookupService="@_lookup.LookupService"
17-
LookupServiceKey="@_lookup.LookupServiceKey" LookupServiceData="@_lookup.LookupServiceData"
18-
StringComparison="@_lookup.LookupStringComparison"
19-
@bind-Value="@_value" ShowSearch="@_isShowSearch"></Select>
20-
</div>
21-
<div class="card-footer justify-content-end">
22-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
23-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
14+
<div class="card filter-item">
15+
<div class="card-header"><span>@Title</span></div>
16+
<div class="card-body">
17+
<Select Items="@_lookup.Lookup" LookupService="@_lookup.LookupService"
18+
LookupServiceKey="@_lookup.LookupServiceKey" LookupServiceData="@_lookup.LookupServiceData"
19+
StringComparison="@_lookup.LookupStringComparison"
20+
@bind-Value="@_value" ShowSearch="@_isShowSearch"></Select>
21+
</div>
22+
<div class="card-footer justify-content-end">
23+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
24+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
25+
</div>
2426
</div>
2527
}

src/BootstrapBlazor/Components/Filters/MultiFilter.razor

Lines changed: 42 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -8,48 +8,50 @@
88
}
99
else
1010
{
11-
<div class="card-header"><span>@Title</span></div>
12-
<div class="card-body">
13-
<div class="bb-multi-filter" id="@Id">
14-
@if (ShowSearch)
15-
{
16-
<BootstrapInput UseInputEvent="true" class="bb-multi-filter-search"
17-
Value="@_searchText" bind-value:event="oninput" IsAutoFocus="true"
18-
PlaceHolder="@SearchPlaceHolderText" IsSelectAllTextOnFocus="true"
19-
OnValueChanged="OnSearchValueChanged" ShowLabel="false" SkipValidate="true"></BootstrapInput>
20-
}
21-
<div class="bb-multi-filter-list">
22-
<div class="bb-multi-filter-header">
23-
<Checkbox Value="GetAllState()" ShowAfterLabel="true" ShowLabel="false" SkipValidate="true"
24-
DisplayText="@SelectAllText" OnStateChanged="@OnStateChanged" State="_selectAllState" />
25-
</div>
26-
<div class="bb-multi-filter-body scroll">
27-
@foreach (var item in GetItems())
28-
{
29-
<div class="bb-multi-filter-body-item">
30-
<Checkbox @bind-Value="@item.Active" ShowAfterLabel="true"
31-
ShowLabel="false" SkipValidate="true" DisplayText="@item.Text" />
32-
</div>
33-
}
11+
<div class="card filter-item">
12+
<div class="card-header"><span>@Title</span></div>
13+
<div class="card-body">
14+
<div class="bb-multi-filter" id="@Id">
15+
@if (ShowSearch)
16+
{
17+
<BootstrapInput UseInputEvent="true" class="bb-multi-filter-search"
18+
Value="@_searchText" bind-value:event="oninput" IsAutoFocus="true"
19+
PlaceHolder="@SearchPlaceHolderText" IsSelectAllTextOnFocus="true"
20+
OnValueChanged="OnSearchValueChanged" ShowLabel="false" SkipValidate="true"></BootstrapInput>
21+
}
22+
<div class="bb-multi-filter-list">
23+
<div class="bb-multi-filter-header">
24+
<Checkbox Value="GetAllState()" ShowAfterLabel="true" ShowLabel="false" SkipValidate="true"
25+
DisplayText="@SelectAllText" OnStateChanged="@OnStateChanged" State="_selectAllState" />
26+
</div>
27+
<div class="bb-multi-filter-body scroll">
28+
@foreach (var item in GetItems())
29+
{
30+
<div class="bb-multi-filter-body-item">
31+
<Checkbox @bind-Value="@item.Active" ShowAfterLabel="true"
32+
ShowLabel="false" SkipValidate="true" DisplayText="@item.Text" />
33+
</div>
34+
}
35+
</div>
3436
</div>
37+
@if (_source == null)
38+
{
39+
<div class="bb-multi-filter-loading">
40+
@if (LoadingTemplate != null)
41+
{
42+
@LoadingTemplate
43+
}
44+
else
45+
{
46+
<Spinner Color="Color.Primary" />
47+
}
48+
</div>
49+
}
3550
</div>
36-
@if (_source == null)
37-
{
38-
<div class="bb-multi-filter-loading">
39-
@if (LoadingTemplate != null)
40-
{
41-
@LoadingTemplate
42-
}
43-
else
44-
{
45-
<Spinner Color="Color.Primary" />
46-
}
47-
</div>
48-
}
4951
</div>
50-
</div>
51-
<div class="card-footer justify-content-end">
52-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
53-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
52+
<div class="card-footer justify-content-end">
53+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
54+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
55+
</div>
5456
</div>
5557
}

src/BootstrapBlazor/Components/Filters/NumberFilter.razor

Lines changed: 30 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -20,41 +20,43 @@
2020
}
2121
else
2222
{
23-
<div class="card-header"><span>@Title</span></div>
24-
<div class="card-body">
25-
<Select Items="@_items" @bind-Value="@_action1" ShowLabel="false" SkipValidate="true"></Select>
26-
27-
@if (typeof(TType).IsNumber())
28-
{
29-
<BootstrapInputNumber @bind-Value="@_value1" ShowLabel="false" SkipValidate="true" Step="@_step"></BootstrapInputNumber>
30-
}
31-
else
32-
{
33-
<BootstrapInput @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></BootstrapInput>
34-
}
35-
36-
@if (Count > 0)
37-
{
38-
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
39-
40-
<Select Items="@_items" @bind-Value="@_action2" ShowLabel="false" SkipValidate="true"></Select>
23+
<div class="card filter-item">
24+
<div class="card-header"><span>@Title</span></div>
25+
<div class="card-body">
26+
<Select Items="@_items" @bind-Value="@_action1" ShowLabel="false" SkipValidate="true"></Select>
4127

4228
@if (typeof(TType).IsNumber())
4329
{
44-
<BootstrapInputNumber @bind-Value="@_value2" ShowLabel="false" SkipValidate="true" Step="@_step"></BootstrapInputNumber>
30+
<BootstrapInputNumber @bind-Value="@_value1" ShowLabel="false" SkipValidate="true" Step="@_step"></BootstrapInputNumber>
4531
}
4632
else
4733
{
48-
<BootstrapInput @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></BootstrapInput>
34+
<BootstrapInput @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></BootstrapInput>
4935
}
50-
}
51-
</div>
52-
<div class="card-footer">
53-
<div class="d-flex flex-fill">
54-
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
55-
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
36+
37+
@if (Count > 0)
38+
{
39+
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
40+
41+
<Select Items="@_items" @bind-Value="@_action2" ShowLabel="false" SkipValidate="true"></Select>
42+
43+
@if (typeof(TType).IsNumber())
44+
{
45+
<BootstrapInputNumber @bind-Value="@_value2" ShowLabel="false" SkipValidate="true" Step="@_step"></BootstrapInputNumber>
46+
}
47+
else
48+
{
49+
<BootstrapInput @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></BootstrapInput>
50+
}
51+
}
52+
</div>
53+
<div class="card-footer">
54+
<div class="d-flex flex-fill">
55+
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
56+
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
57+
</div>
58+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
59+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
5660
</div>
57-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
58-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
5961
</div>
6062
}

src/BootstrapBlazor/Components/Filters/StringFilter.razor

Lines changed: 18 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,24 @@
1010
}
1111
else
1212
{
13-
<div class="card-header"><span>@Title</span></div>
14-
<div class="card-body">
15-
<Select Items="@_items" @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></Select>
16-
<BootstrapInput @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></BootstrapInput>
17-
@if (Count > 0)
18-
{
19-
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
20-
<Select Items="@_items" @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></Select>
21-
}
22-
</div>
23-
<div class="card-footer">
24-
<div class="d-flex flex-fill">
25-
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
26-
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
13+
<div class="card filter-item">
14+
<div class="card-header"><span>@Title</span></div>
15+
<div class="card-body">
16+
<Select Items="@_items" @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></Select>
17+
<BootstrapInput @bind-Value="@_value1" ShowLabel="false" SkipValidate="true"></BootstrapInput>
18+
@if (Count > 0)
19+
{
20+
<FilterLogicItem @bind-Logic="Logic"></FilterLogicItem>
21+
<Select Items="@_items" @bind-Value="@_value2" ShowLabel="false" SkipValidate="true"></Select>
22+
}
23+
</div>
24+
<div class="card-footer">
25+
<div class="d-flex flex-fill">
26+
<Button Color="Color.None" OnClick="OnClickPlus" Icon="@PlusIcon" IsDisabled="@(Count == 1)"></Button>
27+
<Button Color="Color.None" OnClick="OnClickMinus" Icon="@MinusIcon" IsDisabled="@(Count == 0)"></Button>
28+
</div>
29+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
30+
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
2731
</div>
28-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickReset" Text="@ClearButtonText"></Button>
29-
<Button Color="Color.None" class="filter-dismiss" OnClick="OnClickConfirm" Text="@FilterButtonText"></Button>
3032
</div>
3133
}

src/BootstrapBlazor/Components/Filters/TableFilter.razor

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,7 @@ else
1111
<span @attributes="@AdditionalAttributes" id="@Id" class="@ClassString" data-bb-dismiss=".filter-dismiss">
1212
<i class="@FilterClassString" data-bs-placement="bottom" data-bs-auto-close="outside" data-bs-toggle="bb.dropdown" data-bs-custom-class="shadow">
1313
</i>
14-
<div class="card filter-item">
15-
@RenderFilter(Column)
16-
</div>
14+
@RenderFilter(Column)
1715
</span>
1816
}
1917

0 commit comments

Comments
 (0)