Remove attach.count from query

Issue: #1758
This commit is contained in:
eikek
2022-10-23 22:32:00 +02:00
parent 195b35fb52
commit a5c84da51f
14 changed files with 2885 additions and 104 deletions

View File

@ -100,10 +100,6 @@ object ItemQueryGenerator {
val noLikeOp = if (op == Operator.Like) Operator.Eq else op
Condition.CompareFVal(col, makeOp(noLikeOp), dt)
case Expr.SimpleExpr(op, Property.IntProperty(attr, value)) =>
val col = intColumn(tables)(attr)
Condition.CompareVal(col, makeOp(op), value)
case Expr.InExpr(attr, values) =>
val col = stringColumn(tables)(attr)
if (values.tail.isEmpty) col === values.head
@ -228,8 +224,6 @@ object ItemQueryGenerator {
stringColumn(tables)(s).s
case t: Attr.DateAttr =>
timestampColumn(tables)(t)
case n: Attr.IntAttr =>
intColumn(tables)(n).s
}
private def timestampColumn(tables: Tables)(attr: Attr.DateAttr): SelectExpr =
@ -260,11 +254,6 @@ object ItemQueryGenerator {
case Attr.Folder.FolderName => tables.folder.name
}
private def intColumn(tables: Tables)(attr: Attr.IntAttr): Column[Int] =
attr match {
case Attr.AttachCount => tables.attachCount.num
}
private def makeOp(operator: Operator): QOp =
operator match {
case Operator.Eq =>

View File

@ -6,7 +6,6 @@
package docspell.store.qb.generator
import docspell.store.queries.AttachCountTable
import docspell.store.records._
final case class Tables(
@ -17,6 +16,5 @@ final case class Tables(
concEquip: REquipment.Table,
folder: RFolder.Table,
attach: RAttachment.Table,
meta: RAttachmentMeta.Table,
attachCount: AttachCountTable
meta: RAttachmentMeta.Table
)

View File

@ -1,22 +0,0 @@
/*
* Copyright 2020 Eike K. & Contributors
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
package docspell.store.queries
import docspell.common.Ident
import docspell.store.qb.Column
import docspell.store.qb.TableDef
final case class AttachCountTable(aliasName: String) extends TableDef {
val tableName = "attachs"
val alias: Option[String] = Some(aliasName)
val num = Column[Int]("num", this)
val itemId = Column[Ident]("item_id", this)
def as(alias: String): AttachCountTable =
copy(aliasName = alias)
}

View File

@ -299,7 +299,7 @@ object QItem extends FtsSupport {
coll: CollectiveId,
q: ItemQuery.Expr
): Condition = {
val tables = Tables(i, org, pers0, pers1, equip, f, a, m, AttachCountTable("cta"))
val tables = Tables(i, org, pers0, pers1, equip, f, a, m)
ItemQueryGenerator.fromExpr(today, tables, coll)(q)
}

View File

@ -13,7 +13,6 @@ import docspell.query.ItemQueryParser
import docspell.store.qb.DSL._
import docspell.store.qb.Select
import docspell.store.qb.generator.{ItemQueryGenerator, Tables}
import docspell.store.queries.AttachCountTable
import docspell.store.records._
import munit._
@ -29,8 +28,7 @@ class ItemQueryGeneratorTest extends FunSuite {
REquipment.as("ne"),
RFolder.as("f"),
RAttachment.as("a"),
RAttachmentMeta.as("m"),
AttachCountTable("cta")
RAttachmentMeta.as("m")
)
val now: LocalDate = LocalDate.of(2021, 2, 25)