summaryrefslogtreecommitdiff
path: root/archaeological_finds/data_importer.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_finds/data_importer.py')
-rw-r--r--archaeological_finds/data_importer.py158
1 files changed, 0 insertions, 158 deletions
diff --git a/archaeological_finds/data_importer.py b/archaeological_finds/data_importer.py
deleted file mode 100644
index e0c18d1bf..000000000
--- a/archaeological_finds/data_importer.py
+++ /dev/null
@@ -1,158 +0,0 @@
-#!/usr/bin/env python
-# -*- coding: utf-8 -*-
-# Copyright (C) 2015 Étienne Loks <etienne.loks_AT_peacefrogsDOTnet>
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# See the file COPYING for details.
-
-from ishtar_common.data_importer import *
-
-from archaeological_finds import models
-
-
-class FindsImporterBibracte(Importer):
- DESC = u"Exports Bibracte : importeur pour l'onglet mobilier"
- OBJECT_CLS = models.BaseFind
- DEFAULTS = {}
- LINE_FORMAT = [
- # OA
- ImportFormater('context_record__operation__operation_code',
- IntegerFormater(),),
- # external_id
- ImportFormater(
- 'external_id', UnicodeFormater(120, notnull=True),
- duplicate_fields=[('find__external_id', False),
- ('label', False),
- ('find__label', False)]),
- # isolé ou non (si non isolé = lot)
- None, # à corriger
- # ImportFormater(
- # 'is_isolated',
- # StrToBoolean(choices={'lot': False, 'objet': True}),
- # required=False),
- # ???
- None,
- # A voir
- None,
- # cf type
- None,
- # Type = sous classe de matériaux = Liste hiérarchique
- ImportFormater('find__material_types',
- TypeFormater(models.MaterialType), required=False),
- # ???
- None,
- # lien avec contenant
- None,
- # = nombre
- ImportFormater('find__find_number', IntegerFormater(), required=False),
- # poids
- ImportFormater('find__weight', FloatFormater(), required=False),
- # unité (g par défault)
- ImportFormater('find__weight_unit',
- StrChoiceFormater(models.WEIGHT_UNIT), required=False),
- # lien UE
- ImportFormater('context_record__external_id', UnicodeFormater(120),),
- # date decouverte
- ImportFormater('discovery_date', DateFormater(['%Y/%m/%d']),
- required=False,),
- # lien parcelle (unique)
- None,
- # etat conservation
- ImportFormater('find__conservatory_state',
- TypeFormater(models.ConservatoryState), required=False),
- # preservation_to_consider
- ImportFormater('find__preservation_to_considers',
- TypeFormater(models.TreatmentType), required=False),
- # comment
- ImportFormater('comment', UnicodeFormater(1000), required=False),
- # lien vers plusieurs chrono (voir gestion actuelle chrono)
- None,
- # ImportFormater('find__datings__period', TypeFormater(Period,
- # many_split="&"), required=False),
- # topographic_localisation
- ImportFormater('topographic_localisation', UnicodeFormater(120),
- required=False),
- # special_interest
- ImportFormater('special_interest', UnicodeFormater(120),
- required=False),
- # description
- ImportFormater('description', UnicodeFormater(1000), required=False),
- # remontage
- None
- ]
-
-
-class FindAltImporterBibracte(Importer):
- DESC = u"Exports Bibracte : importeur pour l'onglet prélèvement"
- OBJECT_CLS = models.BaseFind
- DEFAULTS = {}
- LINE_FORMAT = [
- # code OA
- ImportFormater('context_record__operation__operation_code',
- IntegerFormater(),),
- # identifiant prelevement
- ImportFormater('external_id', UnicodeFormater(120, notnull=True),
- duplicate_fields=[('find__external_id', False)]),
- # nature
- ImportFormater('find__material_types',
- TypeFormater(models.MaterialType), required=False),
- # identifiant UE
- ImportFormater('context_record__external_id', UnicodeFormater(120),),
- # identifiant materiel
- None,
- # commentaire
- ImportFormater('comment', UnicodeFormater(1000), required=False),
- ]
-
-
-class ImportTreatmentFormater(ImportFormater):
- def post_process(self, obj, context, value, owner=None):
- if obj.upstream_treatment.count():
- return
- ope_code = context['upstream_treatment'][
- 'base_finds']['context_record']['operation']['operation_code']
- ope_code = int(ope_code)
- downstream = models.Find.objects.filter(
- external_id=value,
- base_finds__context_record__operation__operation_code=ope_code)
- if not downstream.count():
- return
- downstream = downstream.all()[0]
- downstream.upstream_treatment = obj
- downstream.save()
- upstream = downstream.duplicate(owner)
- upstream.downstream_treatment = obj
- upstream.save()
- return
-
-
-class TreatmentImporterBibracte(Importer):
- DESC = u"Exports Bibracte : importeur pour l'onglet traitement"
- OBJECT_CLS = models.Treatment
- DEFAULTS = {}
- LINE_FORMAT = [
- # code OA
- ImportFormater(
- 'upstream_treatment__base_finds__context_record__operation__'
- 'operation_code',
- UnicodeFormater(120, notnull=True)),
- # identifiant
- ImportTreatmentFormater(
- 'external_id',
- UnicodeFormater(120, notnull=True), post_processing=True),
- None,
- # traitement
- ImportFormater('treatment_type', TypeFormater(models.TreatmentType),),
- ]