# 86 Deadline removal log entry
* adds log entries if deadline is removed
This commit is contained in:
parent
7535f008b7
commit
7d3c3f030b
@ -271,7 +271,6 @@ class NewDeadlineModalForm(BaseModalForm):
|
|||||||
|
|
||||||
def save(self):
|
def save(self):
|
||||||
deadline = self.instance.add_deadline(self)
|
deadline = self.instance.add_deadline(self)
|
||||||
self.instance.mark_as_edited(self.user, self.request, ADDED_DEADLINE)
|
|
||||||
return deadline
|
return deadline
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ from konova.models import BaseObject, AbstractDocument, Deadline, generate_docum
|
|||||||
GeoReferencedMixin
|
GeoReferencedMixin
|
||||||
from konova.settings import DEFAULT_SRID_RLP, LANIS_LINK_TEMPLATE
|
from konova.settings import DEFAULT_SRID_RLP, LANIS_LINK_TEMPLATE
|
||||||
from konova.utils.message_templates import DATA_UNSHARED_EXPLANATION, COMPENSATION_REMOVED_TEMPLATE, \
|
from konova.utils.message_templates import DATA_UNSHARED_EXPLANATION, COMPENSATION_REMOVED_TEMPLATE, \
|
||||||
DOCUMENT_REMOVED_TEMPLATE, COMPENSATION_EDITED_TEMPLATE
|
DOCUMENT_REMOVED_TEMPLATE, COMPENSATION_EDITED_TEMPLATE, DEADLINE_REMOVED, ADDED_DEADLINE
|
||||||
from user.models import UserActionLogEntry
|
from user.models import UserActionLogEntry
|
||||||
|
|
||||||
|
|
||||||
@ -71,8 +71,24 @@ class AbstractCompensation(BaseObject, GeoReferencedMixin):
|
|||||||
|
|
||||||
self.save()
|
self.save()
|
||||||
self.deadlines.add(deadline)
|
self.deadlines.add(deadline)
|
||||||
|
self.mark_as_edited(user, edit_comment=ADDED_DEADLINE)
|
||||||
return deadline
|
return deadline
|
||||||
|
|
||||||
|
def remove_deadline(self, form):
|
||||||
|
""" Removes a deadline from the abstract compensation
|
||||||
|
|
||||||
|
Args:
|
||||||
|
form (DeadlineRemoveModalForm): The form holding all relevant data
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
|
||||||
|
"""
|
||||||
|
deadline = form.deadline
|
||||||
|
user = form.user
|
||||||
|
with transaction.atomic():
|
||||||
|
deadline.delete()
|
||||||
|
self.mark_as_edited(user, edit_comment=DEADLINE_REMOVED)
|
||||||
|
|
||||||
def add_action(self, form) -> CompensationAction:
|
def add_action(self, form) -> CompensationAction:
|
||||||
""" Adds a new action to the compensation
|
""" Adds a new action to the compensation
|
||||||
|
|
||||||
|
@ -12,14 +12,15 @@ from compensation.tables import CompensationTable
|
|||||||
from intervention.models import Intervention
|
from intervention.models import Intervention
|
||||||
from konova.contexts import BaseContext
|
from konova.contexts import BaseContext
|
||||||
from konova.decorators import *
|
from konova.decorators import *
|
||||||
from konova.forms import RemoveModalForm, SimpleGeomForm
|
from konova.forms import RemoveModalForm, SimpleGeomForm, DeadlineRemoveModalForm
|
||||||
from konova.models import Deadline
|
from konova.models import Deadline
|
||||||
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
||||||
from konova.utils.documents import get_document, remove_document
|
from konova.utils.documents import get_document, remove_document
|
||||||
from konova.utils.generators import generate_qr_code
|
from konova.utils.generators import generate_qr_code
|
||||||
from konova.utils.message_templates import FORM_INVALID, IDENTIFIER_REPLACED, DATA_UNSHARED_EXPLANATION, \
|
from konova.utils.message_templates import FORM_INVALID, IDENTIFIER_REPLACED, DATA_UNSHARED_EXPLANATION, \
|
||||||
CHECKED_RECORDED_RESET, COMPENSATION_ADDED_TEMPLATE, COMPENSATION_REMOVED_TEMPLATE, DOCUMENT_ADDED, \
|
CHECKED_RECORDED_RESET, COMPENSATION_ADDED_TEMPLATE, COMPENSATION_REMOVED_TEMPLATE, DOCUMENT_ADDED, \
|
||||||
COMPENSATION_STATE_REMOVED, COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, COMPENSATION_ACTION_ADDED
|
COMPENSATION_STATE_REMOVED, COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, COMPENSATION_ACTION_ADDED, \
|
||||||
|
DEADLINE_ADDED, DEADLINE_REMOVED
|
||||||
from konova.utils.user_checks import in_group
|
from konova.utils.user_checks import in_group
|
||||||
|
|
||||||
|
|
||||||
@ -392,7 +393,7 @@ def deadline_new_view(request: HttpRequest, id: str):
|
|||||||
form = NewDeadlineModalForm(request.POST or None, instance=comp, request=request)
|
form = NewDeadlineModalForm(request.POST or None, instance=comp, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline added"),
|
msg_success=DEADLINE_ADDED,
|
||||||
redirect_url=reverse("compensation:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("compensation:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -411,11 +412,12 @@ def deadline_remove_view(request: HttpRequest, id: str, deadline_id: str):
|
|||||||
Returns:
|
Returns:
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
comp = get_object_or_404(Compensation, id=id)
|
||||||
deadline = get_object_or_404(Deadline, id=deadline_id)
|
deadline = get_object_or_404(Deadline, id=deadline_id)
|
||||||
form = RemoveModalForm(request.POST or None, instance=deadline, request=request)
|
form = DeadlineRemoveModalForm(request.POST or None, instance=comp, deadline=deadline, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline removed"),
|
msg_success=DEADLINE_REMOVED,
|
||||||
redirect_url=reverse("compensation:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("compensation:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -23,7 +23,7 @@ from intervention.forms.modalForms import NewDeductionModalForm, ShareModalForm
|
|||||||
from konova.contexts import BaseContext
|
from konova.contexts import BaseContext
|
||||||
from konova.decorators import any_group_check, default_group_required, conservation_office_group_required, \
|
from konova.decorators import any_group_check, default_group_required, conservation_office_group_required, \
|
||||||
shared_access_required
|
shared_access_required
|
||||||
from konova.forms import RemoveModalForm, SimpleGeomForm, NewDocumentForm, RecordModalForm
|
from konova.forms import RemoveModalForm, SimpleGeomForm, NewDocumentForm, RecordModalForm, DeadlineRemoveModalForm
|
||||||
from konova.models import Deadline
|
from konova.models import Deadline
|
||||||
from konova.settings import DEFAULT_GROUP, ZB_GROUP, ETS_GROUP
|
from konova.settings import DEFAULT_GROUP, ZB_GROUP, ETS_GROUP
|
||||||
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
||||||
@ -31,7 +31,7 @@ from konova.utils.documents import get_document, remove_document
|
|||||||
from konova.utils.generators import generate_qr_code
|
from konova.utils.generators import generate_qr_code
|
||||||
from konova.utils.message_templates import IDENTIFIER_REPLACED, FORM_INVALID, DATA_UNSHARED, DATA_UNSHARED_EXPLANATION, \
|
from konova.utils.message_templates import IDENTIFIER_REPLACED, FORM_INVALID, DATA_UNSHARED, DATA_UNSHARED_EXPLANATION, \
|
||||||
CANCEL_ACC_RECORDED_OR_DEDUCTED, DEDUCTION_REMOVED, DEDUCTION_ADDED, DOCUMENT_ADDED, COMPENSATION_STATE_REMOVED, \
|
CANCEL_ACC_RECORDED_OR_DEDUCTED, DEDUCTION_REMOVED, DEDUCTION_ADDED, DOCUMENT_ADDED, COMPENSATION_STATE_REMOVED, \
|
||||||
COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, COMPENSATION_ACTION_ADDED
|
COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, COMPENSATION_ACTION_ADDED, DEADLINE_ADDED, DEADLINE_REMOVED
|
||||||
from konova.utils.user_checks import in_group
|
from konova.utils.user_checks import in_group
|
||||||
|
|
||||||
|
|
||||||
@ -447,11 +447,12 @@ def deadline_remove_view(request: HttpRequest, id: str, deadline_id: str):
|
|||||||
Returns:
|
Returns:
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
comp = get_object_or_404(EcoAccount, id=id)
|
||||||
deadline = get_object_or_404(Deadline, id=deadline_id)
|
deadline = get_object_or_404(Deadline, id=deadline_id)
|
||||||
form = RemoveModalForm(request.POST or None, instance=deadline, request=request)
|
form = DeadlineRemoveModalForm(request.POST or None, instance=comp, deadline=deadline, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline removed"),
|
msg_success=DEADLINE_REMOVED,
|
||||||
redirect_url=reverse("compensation:acc:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("compensation:acc:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -473,7 +474,7 @@ def deadline_new_view(request: HttpRequest, id: str):
|
|||||||
form = NewDeadlineModalForm(request.POST or None, instance=acc, request=request)
|
form = NewDeadlineModalForm(request.POST or None, instance=acc, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline added"),
|
msg_success=DEADLINE_ADDED,
|
||||||
redirect_url=reverse("compensation:acc:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("compensation:acc:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
11
ema/views.py
11
ema/views.py
@ -14,7 +14,7 @@ from intervention.forms.modalForms import ShareModalForm
|
|||||||
from konova.contexts import BaseContext
|
from konova.contexts import BaseContext
|
||||||
from konova.decorators import conservation_office_group_required, shared_access_required
|
from konova.decorators import conservation_office_group_required, shared_access_required
|
||||||
from ema.models import Ema, EmaDocument
|
from ema.models import Ema, EmaDocument
|
||||||
from konova.forms import RemoveModalForm, SimpleGeomForm, RecordModalForm
|
from konova.forms import RemoveModalForm, SimpleGeomForm, RecordModalForm, DeadlineRemoveModalForm
|
||||||
from konova.models import Deadline
|
from konova.models import Deadline
|
||||||
from konova.settings import DEFAULT_GROUP, ZB_GROUP, ETS_GROUP
|
from konova.settings import DEFAULT_GROUP, ZB_GROUP, ETS_GROUP
|
||||||
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
from konova.sub_settings.context_settings import TAB_TITLE_IDENTIFIER
|
||||||
@ -22,7 +22,7 @@ from konova.utils.documents import get_document, remove_document
|
|||||||
from konova.utils.generators import generate_qr_code
|
from konova.utils.generators import generate_qr_code
|
||||||
from konova.utils.message_templates import IDENTIFIER_REPLACED, FORM_INVALID, DATA_UNSHARED, DATA_UNSHARED_EXPLANATION, \
|
from konova.utils.message_templates import IDENTIFIER_REPLACED, FORM_INVALID, DATA_UNSHARED, DATA_UNSHARED_EXPLANATION, \
|
||||||
DOCUMENT_ADDED, COMPENSATION_STATE_REMOVED, COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, \
|
DOCUMENT_ADDED, COMPENSATION_STATE_REMOVED, COMPENSATION_STATE_ADDED, COMPENSATION_ACTION_REMOVED, \
|
||||||
COMPENSATION_ACTION_ADDED
|
COMPENSATION_ACTION_ADDED, DEADLINE_ADDED, DEADLINE_REMOVED
|
||||||
from konova.utils.user_checks import in_group
|
from konova.utils.user_checks import in_group
|
||||||
|
|
||||||
|
|
||||||
@ -337,7 +337,7 @@ def deadline_new_view(request: HttpRequest, id: str):
|
|||||||
form = NewDeadlineModalForm(request.POST or None, instance=ema, request=request)
|
form = NewDeadlineModalForm(request.POST or None, instance=ema, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline added"),
|
msg_success=DEADLINE_ADDED,
|
||||||
redirect_url=reverse("ema:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("ema:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -590,10 +590,11 @@ def deadline_remove_view(request: HttpRequest, id: str, deadline_id: str):
|
|||||||
Returns:
|
Returns:
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
ema = get_object_or_404(Ema, id=id)
|
||||||
deadline = get_object_or_404(Deadline, id=deadline_id)
|
deadline = get_object_or_404(Deadline, id=deadline_id)
|
||||||
form = RemoveModalForm(request.POST or None, instance=deadline, request=request)
|
form = DeadlineRemoveModalForm(request.POST or None, instance=ema, deadline=deadline, request=request)
|
||||||
return form.process_request(
|
return form.process_request(
|
||||||
request,
|
request,
|
||||||
msg_success=_("Deadline removed"),
|
msg_success=DEADLINE_REMOVED,
|
||||||
redirect_url=reverse("ema:detail", args=(id,)) + "#related_data"
|
redirect_url=reverse("ema:detail", args=(id,)) + "#related_data"
|
||||||
)
|
)
|
@ -330,6 +330,23 @@ class RemoveModalForm(BaseModalForm):
|
|||||||
self.instance.delete(self.user)
|
self.instance.delete(self.user)
|
||||||
|
|
||||||
|
|
||||||
|
class DeadlineRemoveModalForm(RemoveModalForm):
|
||||||
|
""" Removing modal form for deadlines
|
||||||
|
|
||||||
|
Can be used for anything, where removing shall be confirmed by the user a second time.
|
||||||
|
|
||||||
|
"""
|
||||||
|
deadline = None
|
||||||
|
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
deadline = kwargs.pop("deadline", None)
|
||||||
|
self.deadline = deadline
|
||||||
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
|
def save(self):
|
||||||
|
self.instance.remove_deadline(self)
|
||||||
|
|
||||||
|
|
||||||
class NewDocumentForm(BaseModalForm):
|
class NewDocumentForm(BaseModalForm):
|
||||||
""" Modal form for new documents
|
""" Modal form for new documents
|
||||||
|
|
||||||
|
@ -40,6 +40,10 @@ COMPENSATION_ACTION_REMOVED = _("Action removed")
|
|||||||
DEDUCTION_ADDED = _("Deduction added")
|
DEDUCTION_ADDED = _("Deduction added")
|
||||||
DEDUCTION_REMOVED = _("Deduction removed")
|
DEDUCTION_REMOVED = _("Deduction removed")
|
||||||
|
|
||||||
|
# DEADLINE
|
||||||
|
DEADLINE_ADDED = _("Deadline added")
|
||||||
|
DEADLINE_REMOVED = _("Deadline removed")
|
||||||
|
|
||||||
# PAYMENTS
|
# PAYMENTS
|
||||||
PAYMENT_ADDED = _("Payment added")
|
PAYMENT_ADDED = _("Payment added")
|
||||||
PAYMENT_REMOVED = _("Payment removed")
|
PAYMENT_REMOVED = _("Payment removed")
|
||||||
|
Binary file not shown.
@ -1117,7 +1117,7 @@ msgstr "Frist/Termin hinzugefügt"
|
|||||||
#: compensation/views/compensation.py:417 compensation/views/eco_account.py:453
|
#: compensation/views/compensation.py:417 compensation/views/eco_account.py:453
|
||||||
#: ema/views.py:595
|
#: ema/views.py:595
|
||||||
msgid "Deadline removed"
|
msgid "Deadline removed"
|
||||||
msgstr "Frist gelöscht"
|
msgstr "Frist/Termin gelöscht"
|
||||||
|
|
||||||
#: compensation/views/compensation.py:440 compensation/views/eco_account.py:407
|
#: compensation/views/compensation.py:440 compensation/views/eco_account.py:407
|
||||||
#: ema/views.py:430
|
#: ema/views.py:430
|
||||||
|
Loading…
Reference in New Issue
Block a user