From c18b11aa9664f6e683e9080dcdfabdc620959b50 Mon Sep 17 00:00:00 2001 From: Miguel Moreira <miguel.moreira@rero.ch> Date: Thu, 4 Nov 2021 15:02:52 +0100 Subject: [PATCH] documents: import faculty and department from RERO DOC for UNIFR * Imports the "faculty" and "department" fields from RERO DOC to "customField1" and "customField2", resp. Applies only to FOLIA. * Closes #691. Co-Authored-by: Miguel Moreira <miguel.moreira@rero.ch> --- sonar/modules/documents/dojson/rerodoc/model.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sonar/modules/documents/dojson/rerodoc/model.py b/sonar/modules/documents/dojson/rerodoc/model.py index b676d29e..991a427c 100644 --- a/sonar/modules/documents/dojson/rerodoc/model.py +++ b/sonar/modules/documents/dojson/rerodoc/model.py @@ -927,6 +927,22 @@ def marc21_to_contribution_field_711(self, key, value): return None +@overdo.over('customField1', '^918..') +@utils.ignore_value +def marc21_to_faculty_and_department(self, key, value): + """Extract faculty and department for UNIFR.""" + record = overdo.blob_record + org = record.get('980__', {}).get('b') + if org and org == 'UNIFR': + faculty = value.get('a') + if faculty: + self['customField1'] = [faculty] + dep = value.get('c') + if dep: + self['customField2'] = [dep] + return None + + @overdo.over('partOf', '^773..') @utils.for_each_value @utils.ignore_value