24 lines
781 B
Python
24 lines
781 B
Python
import logging
|
|
|
|
from mayan.celery import app
|
|
|
|
from documents.models import DocumentType
|
|
|
|
from .models import DocumentMetadata, MetadataType
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
@app.task(ignore_result=True)
|
|
def task_remove_metadata_type(document_type_id, metadata_type_id):
|
|
DocumentMetadata.objects.filter(document__document_type__id=document_type_id, metadata_type__id=metadata_type_id).delete()
|
|
|
|
|
|
@app.task(ignore_result=True)
|
|
def task_add_required_metadata_type(document_type_id, metadata_type_id):
|
|
document_type = DocumentType.objects.get(pk=document_type_id)
|
|
metadata_type = MetadataType.objects.get(pk=metadata_type_id)
|
|
|
|
for document in document_type.documents.all():
|
|
DocumentMetadata.objects.create(document=document, metadata_type=metadata_type)
|