mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-12-07 23:35:22 +01:00
Merge branch 'dev' into feature-bulk-edit
This commit is contained in:
commit
80420a99f5
9 changed files with 88 additions and 39 deletions
|
|
@ -2,7 +2,9 @@ import itertools
|
|||
|
||||
from django.db.models import Q
|
||||
from django_q.tasks import async_task
|
||||
from whoosh.writing import AsyncWriter
|
||||
|
||||
from documents import index
|
||||
from documents.models import Document, Correspondent, DocumentType
|
||||
|
||||
|
||||
|
|
@ -15,6 +17,11 @@ def set_correspondent(doc_ids, correspondent):
|
|||
affected_docs = [doc.id for doc in qs]
|
||||
qs.update(correspondent=correspondent)
|
||||
|
||||
async_task(
|
||||
"documents.tasks.bulk_index_documents",
|
||||
document_ids=affected_docs
|
||||
)
|
||||
|
||||
async_task("documents.tasks.bulk_rename_files", document_ids=affected_docs)
|
||||
|
||||
return "OK"
|
||||
|
|
@ -29,6 +36,11 @@ def set_document_type(doc_ids, document_type):
|
|||
affected_docs = [doc.id for doc in qs]
|
||||
qs.update(document_type=document_type)
|
||||
|
||||
async_task(
|
||||
"documents.tasks.bulk_index_documents",
|
||||
document_ids=affected_docs
|
||||
)
|
||||
|
||||
async_task("documents.tasks.bulk_rename_files", document_ids=affected_docs)
|
||||
|
||||
return "OK"
|
||||
|
|
@ -46,6 +58,11 @@ def add_tag(doc_ids, tag):
|
|||
document_id=doc, tag_id=tag) for doc in affected_docs
|
||||
])
|
||||
|
||||
async_task(
|
||||
"documents.tasks.bulk_index_documents",
|
||||
document_ids=affected_docs
|
||||
)
|
||||
|
||||
async_task("documents.tasks.bulk_rename_files", document_ids=affected_docs)
|
||||
|
||||
return "OK"
|
||||
|
|
@ -63,6 +80,11 @@ def remove_tag(doc_ids, tag):
|
|||
Q(tag_id=tag)
|
||||
).delete()
|
||||
|
||||
async_task(
|
||||
"documents.tasks.bulk_index_documents",
|
||||
document_ids=affected_docs
|
||||
)
|
||||
|
||||
async_task("documents.tasks.bulk_rename_files", document_ids=affected_docs)
|
||||
|
||||
return "OK"
|
||||
|
|
@ -92,4 +114,9 @@ def modify_tags(doc_ids, add_tags, remove_tags):
|
|||
def delete(doc_ids):
|
||||
Document.objects.filter(id__in=doc_ids).delete()
|
||||
|
||||
ix = index.open_index()
|
||||
with AsyncWriter(ix) as writer:
|
||||
for id in doc_ids:
|
||||
index.remove_document_by_id(writer, id)
|
||||
|
||||
return "OK"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue