#36 Quality checks
* adds unchecking/unrecording of interventions in case of post-check|post-record editing
This commit is contained in:
@@ -321,6 +321,40 @@ class RecordableMixin:
|
||||
Provides functionality related to un/recording of data
|
||||
|
||||
"""
|
||||
def set_unrecorded(self, user: User):
|
||||
""" Perform unrecording
|
||||
|
||||
Args:
|
||||
user (User): Performing user
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
action = UserActionLogEntry.objects.create(
|
||||
user=user,
|
||||
action=UserAction.UNRECORDED
|
||||
)
|
||||
self.recorded = None
|
||||
self.save()
|
||||
self.log.add(action)
|
||||
|
||||
def set_recorded(self, user: User):
|
||||
""" Perform recording
|
||||
|
||||
Args:
|
||||
user (User): Performing user
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
action = UserActionLogEntry.objects.create(
|
||||
user=user,
|
||||
action=UserAction.RECORDED
|
||||
)
|
||||
self.recorded = action
|
||||
self.save()
|
||||
self.log.add(action)
|
||||
|
||||
def toggle_recorded(self, user: User):
|
||||
""" Un/Record intervention
|
||||
|
||||
@@ -331,16 +365,55 @@ class RecordableMixin:
|
||||
|
||||
"""
|
||||
if not self.recorded:
|
||||
action = UserActionLogEntry.objects.create(
|
||||
user=user,
|
||||
action=UserAction.RECORDED
|
||||
)
|
||||
self.recorded = action
|
||||
self.set_recorded(user)
|
||||
else:
|
||||
action = UserActionLogEntry.objects.create(
|
||||
user=user,
|
||||
action=UserAction.UNRECORDED
|
||||
)
|
||||
self.recorded = None
|
||||
self.set_unrecorded(user)
|
||||
|
||||
|
||||
class CheckableMixin:
|
||||
""" Mixin to be combined with BaseObject class
|
||||
|
||||
Provides functionality related to un/checking of data
|
||||
|
||||
"""
|
||||
def set_unchecked(self, user: User):
|
||||
""" Perform unrecording
|
||||
|
||||
Args:
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
self.checked = None
|
||||
self.save()
|
||||
|
||||
def set_checked(self, user: User):
|
||||
""" Perform checking
|
||||
|
||||
Args:
|
||||
user (User): Performing user
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
action = UserActionLogEntry.objects.create(
|
||||
user=user,
|
||||
action=UserAction.CHECKED
|
||||
)
|
||||
self.checked = action
|
||||
self.save()
|
||||
self.log.add(action)
|
||||
|
||||
def toggle_checked(self, user: User):
|
||||
""" Un/Record intervention
|
||||
|
||||
Args:
|
||||
user (User): Performing user
|
||||
|
||||
Returns:
|
||||
|
||||
"""
|
||||
if not self.checked:
|
||||
self.set_checked(user)
|
||||
else:
|
||||
self.set_unchecked(user)
|
||||
|
||||
@@ -14,4 +14,6 @@ INTERVENTION_INVALID = _("There are errors in this intervention.")
|
||||
IDENTIFIER_REPLACED = _("The identifier '{}' had to be changed to '{}' since another entry has been added in the meanwhile, which uses this identifier")
|
||||
DATA_UNSHARED = _("This data is not shared with you")
|
||||
DATA_UNSHARED_EXPLANATION = _("Remember: This data has not been shared with you, yet. This means you can only read but can not edit or perform any actions like running a check or recording.")
|
||||
MISSING_GROUP_PERMISSION = _("You need to be part of another user group.")
|
||||
MISSING_GROUP_PERMISSION = _("You need to be part of another user group.")
|
||||
|
||||
CHECKED_RECORDED_RESET = _("Status of Checked and Recorded reseted")
|
||||
Reference in New Issue
Block a user