mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-22 02:18:26 +00:00
Delete multiple items
This commit is contained in:
@ -130,6 +130,8 @@ trait OItem[F[_]] {
|
||||
|
||||
def deleteItem(itemId: Ident, collective: Ident): F[Int]
|
||||
|
||||
def deleteItemMultiple(items: NonEmptyList[Ident], collective: Ident): F[Int]
|
||||
|
||||
def deleteAttachment(id: Ident, collective: Ident): F[Int]
|
||||
|
||||
def moveAttachmentBefore(itemId: Ident, source: Ident, target: Ident): F[AddResult]
|
||||
@ -547,6 +549,13 @@ object OItem {
|
||||
.delete(store)(itemId, collective)
|
||||
.flatTap(_ => fts.removeItem(logger, itemId))
|
||||
|
||||
def deleteItemMultiple(items: NonEmptyList[Ident], collective: Ident): F[Int] =
|
||||
for {
|
||||
itemIds <- store.transact(RItem.filterItems(items, collective))
|
||||
results <- itemIds.traverse(item => deleteItem(item, collective))
|
||||
n = results.fold(0)(_ + _)
|
||||
} yield n
|
||||
|
||||
def getProposals(item: Ident, collective: Ident): F[MetaProposalList] =
|
||||
store.transact(QAttachment.getMetaProposals(item, collective))
|
||||
|
||||
|
Reference in New Issue
Block a user