diff options
Diffstat (limited to 'archaeological_files')
| -rw-r--r-- | archaeological_files/data_importer.py | 16 | ||||
| -rw-r--r-- | archaeological_files/models.py | 2 |
2 files changed, 17 insertions, 1 deletions
diff --git a/archaeological_files/data_importer.py b/archaeological_files/data_importer.py index 51809980f..dd6322901 100644 --- a/archaeological_files/data_importer.py +++ b/archaeological_files/data_importer.py @@ -41,7 +41,21 @@ class ImportClosingFormater(ImportFormater): obj.end_date = open_date + datetime.timedelta(30) obj.save() -class FileImporterSraPdL(Importer): +class FilePostProcessing(object): + # erroneaous date to be easily identified on post-processing + DEFAULT_YEAR = 1756 + EXTRA_DEFAULTS = {tuple():{'year':DEFAULT_YEAR}} + + def post_processing(self, item, data): + if item.year == self.DEFAULT_YEAR: + if item.creation_date: + item.year = item.creation_date.year + elif item.reception_date: + item.year = item.reception_date.year + item.save() + return item + +class FileImporterSraPdL(FilePostProcessing, Importer): DESC = u"Exports dossiers SRA PdL : importeur Filemaker dossiers" LINE_FORMAT = [] OBJECT_CLS = models.File diff --git a/archaeological_files/models.py b/archaeological_files/models.py index 49498e35f..9bcae4280 100644 --- a/archaeological_files/models.py +++ b/archaeological_files/models.py @@ -328,6 +328,8 @@ class File(BaseHistorizedItem, OwnPerms, ValueGetter, ShortMenuItem, def save(self, *args, **kwargs): returned = super(File, self).save(*args, **kwargs) + if self.main_town and not self.main_town in list(self.towns.all()): + self.towns.add(self.main_town) self.update_delay_date() self.update_short_menu_class() return returned |
