Update insight logs for shift swaps requests (#2987)
This commit is contained in:
parent
6c8344a82d
commit
afc3b193f6
3 changed files with 19 additions and 2 deletions
|
|
@ -69,7 +69,7 @@ class OnCallShiftView(TeamFilteringMixin, PublicPrimaryKeyMixin, UpdateSerialize
|
|||
write_resource_insight_log(
|
||||
instance=serializer.instance,
|
||||
author=self.request.user,
|
||||
event=EntityEvent.DELETED,
|
||||
event=EntityEvent.CREATED,
|
||||
)
|
||||
|
||||
def perform_update(self, serializer):
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ class BaseShiftSwapViewSet(ModelViewSet):
|
|||
|
||||
def _do_take(self, benefactor: User) -> dict:
|
||||
shift_swap = self.get_object()
|
||||
prev_state = shift_swap.insight_logs_serialized
|
||||
|
||||
try:
|
||||
shift_swap.take(benefactor)
|
||||
|
|
@ -50,6 +51,14 @@ class BaseShiftSwapViewSet(ModelViewSet):
|
|||
except exceptions.BeneficiaryCannotTakeOwnShiftSwapRequest:
|
||||
raise BadRequest(detail="A shift swap request cannot be created and taken by the same user")
|
||||
|
||||
write_resource_insight_log(
|
||||
instance=shift_swap,
|
||||
author=self.request.user,
|
||||
event=EntityEvent.UPDATED,
|
||||
prev_state=prev_state,
|
||||
new_state=shift_swap.insight_logs_serialized,
|
||||
)
|
||||
|
||||
update_shift_swap_request_message.apply_async((shift_swap.pk,))
|
||||
|
||||
return ShiftSwapRequestSerializer(shift_swap).data
|
||||
|
|
|
|||
|
|
@ -235,4 +235,12 @@ class ShiftSwapRequest(models.Model):
|
|||
|
||||
@property
|
||||
def insight_logs_metadata(self):
|
||||
return {}
|
||||
result = {}
|
||||
if self.schedule.team:
|
||||
result["team"] = self.schedule.team.name
|
||||
result["team_id"] = self.schedule.team.public_primary_key
|
||||
else:
|
||||
result["team"] = "General"
|
||||
result["schedule"] = self.schedule.insight_logs_verbal
|
||||
result["schedule_id"] = self.schedule.public_primary_key
|
||||
return result
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue