|
1 | | -// Licensed to the .NET Foundation under one or more agreements. |
| 1 | +// Licensed to the .NET Foundation under one or more agreements. |
2 | 2 | // The .NET Foundation licenses this file to you under the Apache 2.0 License |
3 | 3 | // See the LICENSE file in the project root for more information. |
4 | 4 | // Maintainer: Argo Zhang(argo@live.ca) Website: https://www.blazor.zone |
@@ -104,80 +104,14 @@ public class JsonQueryPageOptionsConverter : JsonConverter<QueryPageOptions> |
104 | 104 | reader.Read(); |
105 | 105 | ret.IsVirtualScroll = reader.GetBoolean(); |
106 | 106 | } |
107 | | - else if (propertyName == "searches") |
| 107 | + |
| 108 | + else if (propertyName == "filterKeyValueAction") |
108 | 109 | { |
109 | 110 | reader.Read(); |
110 | | - if (reader.TokenType == JsonTokenType.StartArray) |
111 | | - { |
112 | | - while (reader.Read()) |
113 | | - { |
114 | | - if (reader.TokenType == JsonTokenType.EndArray) |
115 | | - { |
116 | | - break; |
117 | | - } |
118 | | - var val = JsonSerializer.Deserialize<SearchFilterAction>(ref reader, options); |
119 | | - if (val != null) |
120 | | - { |
121 | | - ret.Searches.Add(val); |
122 | | - } |
123 | | - } |
124 | | - } |
125 | | - } |
126 | | - else if (propertyName == "customerSearches") |
127 | | - { |
128 | | - reader.Read(); |
129 | | - if (reader.TokenType == JsonTokenType.StartArray) |
130 | | - { |
131 | | - while (reader.Read()) |
132 | | - { |
133 | | - if (reader.TokenType == JsonTokenType.EndArray) |
134 | | - { |
135 | | - break; |
136 | | - } |
137 | | - var val = JsonSerializer.Deserialize<SearchFilterAction>(ref reader, options); |
138 | | - if (val != null) |
139 | | - { |
140 | | - ret.CustomerSearches.Add(val); |
141 | | - } |
142 | | - } |
143 | | - } |
144 | | - } |
145 | | - else if (propertyName == "advanceSearches") |
146 | | - { |
147 | | - reader.Read(); |
148 | | - if (reader.TokenType == JsonTokenType.StartArray) |
149 | | - { |
150 | | - while (reader.Read()) |
151 | | - { |
152 | | - if (reader.TokenType == JsonTokenType.EndArray) |
153 | | - { |
154 | | - break; |
155 | | - } |
156 | | - var val = JsonSerializer.Deserialize<SearchFilterAction>(ref reader, options); |
157 | | - if (val != null) |
158 | | - { |
159 | | - ret.AdvanceSearches.Add(val); |
160 | | - } |
161 | | - } |
162 | | - } |
163 | | - } |
164 | | - else if (propertyName == "filters") |
165 | | - { |
166 | | - reader.Read(); |
167 | | - if (reader.TokenType == JsonTokenType.StartArray) |
| 111 | + var val = JsonSerializer.Deserialize<FilterKeyValueAction>(ref reader, options); |
| 112 | + if (val != null) |
168 | 113 | { |
169 | | - while (reader.Read()) |
170 | | - { |
171 | | - if (reader.TokenType == JsonTokenType.EndArray) |
172 | | - { |
173 | | - break; |
174 | | - } |
175 | | - var val = JsonSerializer.Deserialize<SearchFilterAction>(ref reader, options); |
176 | | - if (val != null) |
177 | | - { |
178 | | - ret.Filters.Add(val); |
179 | | - } |
180 | | - } |
| 114 | + ret.FilterKeyValueAction = val; |
181 | 115 | } |
182 | 116 | } |
183 | 117 | else if (propertyName == "isFirstQuery") |
@@ -252,41 +186,12 @@ public override void Write(Utf8JsonWriter writer, QueryPageOptions value, JsonSe |
252 | 186 | { |
253 | 187 | writer.WriteBoolean("isVirtualScroll", value.IsVirtualScroll); |
254 | 188 | } |
255 | | - if (value.Searches.Count != 0) |
256 | | - { |
257 | | - writer.WriteStartArray("searches"); |
258 | | - foreach (var filter in value.Searches) |
259 | | - { |
260 | | - writer.WriteRawValue(JsonSerializer.Serialize(filter, options)); |
261 | | - } |
262 | | - writer.WriteEndArray(); |
263 | | - } |
264 | | - if (value.CustomerSearches.Count != 0) |
265 | | - { |
266 | | - writer.WriteStartArray("customerSearches"); |
267 | | - foreach (var filter in value.CustomerSearches) |
268 | | - { |
269 | | - writer.WriteRawValue(JsonSerializer.Serialize(filter, options)); |
270 | | - } |
271 | | - writer.WriteEndArray(); |
272 | | - } |
273 | | - if (value.AdvanceSearches.Count != 0) |
274 | | - { |
275 | | - writer.WriteStartArray("advanceSearches"); |
276 | | - foreach (var filter in value.AdvanceSearches) |
277 | | - { |
278 | | - writer.WriteRawValue(JsonSerializer.Serialize(filter, options)); |
279 | | - } |
280 | | - writer.WriteEndArray(); |
281 | | - } |
282 | | - if (value.Filters.Count != 0) |
| 189 | + |
| 190 | + if (value.Searches.Count != 0||value.CustomerSearches.Count != 0||value.AdvanceSearches.Count != 0|| value.Filters.Count != 0) |
283 | 191 | { |
284 | | - writer.WriteStartArray("filters"); |
285 | | - foreach (var filter in value.Filters) |
286 | | - { |
287 | | - writer.WriteRawValue(JsonSerializer.Serialize(filter, options)); |
288 | | - } |
289 | | - writer.WriteEndArray(); |
| 192 | + writer.WritePropertyName("filterKeyValueAction"); |
| 193 | + var filterKeyValueAction = value.ToFilter(); |
| 194 | + writer.WriteRawValue(JsonSerializer.Serialize(filterKeyValueAction, options)); |
290 | 195 | } |
291 | 196 | if (value.IsFirstQuery) |
292 | 197 | { |
|
0 commit comments