Skip to content

Commit 13f57ef

Browse files
committed
fix: 🐛 audit id not working
1 parent 9300e0d commit 13f57ef

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

tools/resources.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,9 @@ class Meta:
5050
# You can specify which column should be used for data ID during import (by default = 'id')
5151
import_id_fields = ('code',)
5252

53-
def __init__(self, given_id):
53+
def __init__(self, user):
5454
super().__init__()
55-
self.user_id = given_id
55+
self._user = user
5656

5757
# The 4 dehydrate_xxx_cat methods generate the data that is going to be put in the xxx_cat columns
5858
def dehydrate_male_cat(self, item_service):
@@ -84,7 +84,13 @@ def before_import(self, dataset, **kwargs):
8484
saves_null_values=False,
8585
widget=IntegerWidget())
8686
super().before_import(dataset, **kwargs)
87-
87+
def before_save_instance(self, instance, row, **kwargs):
88+
if hasattr(instance, 'audit_user_id'):
89+
if self._user and self._user._u.id:
90+
instance.audit_user_id = self._user._u.id
91+
else:
92+
instance.audit_user_id = -1
93+
logger.warning(_("im_export.save_without_user"))
8894
# This method is called when the user flags a row to be deleted (the "delete" column value is '1')
8995
def for_delete(self, row, instance):
9096
if "delete" in row:
@@ -122,7 +128,6 @@ def before_import_row(self, row, **kwargs):
122128
row["care_type"] = row["care_type"].upper()
123129
validate_imported_item_row(row)
124130
process_imported_patient_categories(row)
125-
row["audit_user_id"] = self.user_id
126131
return row
127132

128133
# This method is overridden in order to define which data is valid during import.
@@ -151,7 +156,6 @@ def before_import_row(self, row, **kwargs):
151156
row["category"] = row["category"].upper()
152157
validate_imported_service_row(row)
153158
process_imported_patient_categories(row)
154-
row["audit_user_id"] = self.user_id
155159
return row
156160

157161
# This method is overridden in order to define which data is valid during import.

0 commit comments

Comments
 (0)