docs(document): explain the DensityFilters->SearchFilters bridge (#683)
Clarify at loadFilteredDates why the density path constructs a SearchFilters: the two filter records are kept separate (density has no date/undated fields), so it adapts here to reuse buildSearchSpec. Raised in the #702 review. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -167,6 +167,9 @@ public class DocumentService {
|
|||||||
/** Loads matching documents and projects to non-null {@link LocalDate}s. */
|
/** Loads matching documents and projects to non-null {@link LocalDate}s. */
|
||||||
private List<LocalDate> loadFilteredDates(DensityFilters filters, List<UUID> ftsIds) {
|
private List<LocalDate> loadFilteredDates(DensityFilters filters, List<UUID> ftsIds) {
|
||||||
boolean hasFts = ftsIds != null;
|
boolean hasFts = ftsIds != null;
|
||||||
|
// Density and search keep separate filter records (DensityFilters has no
|
||||||
|
// date/undated fields); adapt to SearchFilters here to reuse buildSearchSpec.
|
||||||
|
// Date bounds stay null and undated=false — the density path never filters by date.
|
||||||
SearchFilters searchFilters = new SearchFilters(
|
SearchFilters searchFilters = new SearchFilters(
|
||||||
filters.text(), null, null, filters.sender(), filters.receiver(),
|
filters.text(), null, null, filters.sender(), filters.receiver(),
|
||||||
filters.tags(), filters.tagQ(), filters.status(), filters.tagOperator(), false);
|
filters.tags(), filters.tagQ(), filters.status(), filters.tagOperator(), false);
|
||||||
|
|||||||
Reference in New Issue
Block a user