summaryrefslogtreecommitdiff
path: root/ishtar_common/models_imports.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/models_imports.py')
-rw-r--r--ishtar_common/models_imports.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/ishtar_common/models_imports.py b/ishtar_common/models_imports.py
index b8626358c..3d47ba263 100644
--- a/ishtar_common/models_imports.py
+++ b/ishtar_common/models_imports.py
@@ -1438,6 +1438,36 @@ def convert_geom(feature, srid):
return feature
+class ImportChunk(models.Model):
+ """
+ Import chunk from QGIS plugin.
+ When all chunk have been collected Import is created.
+ """
+ importer = models.ForeignKey("ImporterType", verbose_name=_("Importer"),
+ on_delete=models.CASCADE)
+ user = models.ForeignKey("IshtarUser", verbose_name=_("User"),
+ on_delete=models.CASCADE)
+ send_datetime = models.DateTimeField(_("Send date"))
+ chunk = models.TextField(_("Chunk"))
+ number = models.IntegerField(_("Number"))
+ total = models.IntegerField(_("Total"))
+ import_immediatly = models.BooleanField("Import Immediatly", default=False)
+
+ class Meta:
+ verbose_name = _("Import - Chunk")
+ verbose_name_plural = _("Import - Chunks")
+
+ @classmethod
+ def clean_old(cls):
+ """
+ Remove all chunk older than 3 hours
+ """
+ date = datetime.datetime.now() - datetime.timedelta(hours=3)
+ q = cls.objects.filter(send_datetime__lte=date)
+ for chunk in list(q.all()):
+ q.delete()
+
+
IMPORT_GEOMETRY = {
"Point": "point_2d",
"3D Point": "point_3d",