mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-05 22:55:58 +00:00
Fix duplicate search results
This commit is contained in:
parent
8e0282c25f
commit
7df77208fe
@ -217,6 +217,7 @@ object QItem {
|
||||
private def findItemsBase(
|
||||
q: Query,
|
||||
distinct: Boolean,
|
||||
moreCols: Seq[Fragment],
|
||||
ctes: (String, Fragment)*
|
||||
): Fragment = {
|
||||
val IC = RItem.Columns
|
||||
@ -230,6 +231,7 @@ object QItem {
|
||||
val equipCols = List(REquipment.Columns.eid, REquipment.Columns.name)
|
||||
|
||||
val finalCols = commas(
|
||||
Seq(
|
||||
IC.id.prefix("i").f,
|
||||
IC.name.prefix("i").f,
|
||||
IC.state.prefix("i").f,
|
||||
@ -253,6 +255,7 @@ object QItem {
|
||||
case None =>
|
||||
IC.created.prefix("i").f
|
||||
}
|
||||
) ++ moreCols
|
||||
)
|
||||
|
||||
val withItem = selectSimple(itemCols, RItem.table, IC.cid.is(q.collective))
|
||||
@ -287,7 +290,7 @@ object QItem {
|
||||
val OC = ROrganization.Columns
|
||||
val EC = REquipment.Columns
|
||||
|
||||
val query = findItemsBase(q, true)
|
||||
val query = findItemsBase(q, true, Seq.empty)
|
||||
|
||||
// inclusive tags are AND-ed
|
||||
val tagSelectsIncl = q.tagsInclude
|
||||
@ -395,7 +398,8 @@ object QItem {
|
||||
|
||||
val from = findItemsBase(
|
||||
q,
|
||||
false,
|
||||
true,
|
||||
Seq(fr"tids.weight"),
|
||||
("tids(item_id, weight)", fr"(VALUES" ++ values ++ fr")")
|
||||
) ++
|
||||
fr"INNER JOIN tids ON" ++ IC.id.prefix("i").f ++ fr" = tids.item_id" ++
|
||||
|
Loading…
x
Reference in New Issue
Block a user