Setup space entities

This commit is contained in:
Eike Kettner
2020-06-30 01:10:33 +02:00
parent 4d38bf7e69
commit 13ad5e3219
4 changed files with 158 additions and 0 deletions

View File

@ -0,0 +1,44 @@
package docspell.store.records
import docspell.common._
import docspell.store.impl.Column
import docspell.store.impl.Implicits._
import doobie._
import doobie.implicits._
case class RSpace(
id: Ident,
name: String,
collectiveId: Ident,
owner: Ident,
created: Timestamp
)
object RSpace {
val table = fr"space"
object Columns {
val id = Column("id")
val name = Column("name")
val collective = Column("cid")
val owner = Column("owner")
val created = Column("created")
val all = List(id, name, collective, owner, created)
}
import Columns._
def insert(value: RSpace): ConnectionIO[Int] = {
val sql = insertRow(
table,
all,
fr"${value.id},${value.name},${value.collectiveId},${value.owner},${value.created}"
)
sql.update.run
}
}

View File

@ -0,0 +1,42 @@
package docspell.store.records
import docspell.common._
import docspell.store.impl.Column
import docspell.store.impl.Implicits._
import doobie._
import doobie.implicits._
case class RSpaceItem(
id: Ident,
spaceId: Ident,
itemId: Ident,
created: Timestamp
)
object RSpaceItem {
val table = fr"space"
object Columns {
val id = Column("id")
val space = Column("space_id")
val item = Column("user_id")
val created = Column("created")
val all = List(id, space, user, created)
}
import Columns._
def insert(value: RSpaceItem): ConnectionIO[Int] = {
val sql = insertRow(
table,
all,
fr"${value.id},${value.spaceId},${value.itemId},${value.created}"
)
sql.update.run
}
}

View File

@ -0,0 +1,42 @@
package docspell.store.records
import docspell.common._
import docspell.store.impl.Column
import docspell.store.impl.Implicits._
import doobie._
import doobie.implicits._
case class RSpaceMember(
id: Ident,
spaceId: Ident,
userId: Ident,
created: Timestamp
)
object RSpaceMember {
val table = fr"space"
object Columns {
val id = Column("id")
val space = Column("space_id")
val user = Column("user_id")
val created = Column("created")
val all = List(id, space, user, created)
}
import Columns._
def insert(value: RSpaceMember): ConnectionIO[Int] = {
val sql = insertRow(
table,
all,
fr"${value.id},${value.spaceId},${value.userId},${value.created}"
)
sql.update.run
}
}