update
This commit is contained in:
@ -2,6 +2,6 @@ from django.utils.translation import gettext_lazy as _
|
||||
|
||||
LAYER_CHOICES = (
|
||||
(1, _("locations")),
|
||||
(2, _("locations_line")),
|
||||
(3, _("locations_polygon")),
|
||||
(2, _("Location_line")),
|
||||
(3, _("Location_polygon")),
|
||||
)
|
||||
@ -27,51 +27,11 @@ location_mapping = {
|
||||
|
||||
location_line_mapping = {
|
||||
'location_id' : 'loc_id',
|
||||
'location_name' : 'loc_name',
|
||||
'category': 'category',
|
||||
'zip':'zip',
|
||||
'address':'address',
|
||||
'prefecture':'prefecture',
|
||||
'area':'area',
|
||||
'city':'city',
|
||||
'photos':'photos',
|
||||
'videos':'videos',
|
||||
'webcontents':'webcontent',
|
||||
'status':'status',
|
||||
'portal':'portal',
|
||||
'group':'group',
|
||||
'phone':'phone',
|
||||
'fax':'fax',
|
||||
'email':'email',
|
||||
'facility':'facility',
|
||||
'remark':'remark',
|
||||
'parammeters':'params',
|
||||
'tags':'tags',
|
||||
'geom': 'LINESTRING',
|
||||
}
|
||||
|
||||
|
||||
location_polygon_mapping = {
|
||||
'location_id' : 'loc_id',
|
||||
'location_name' : 'loc_name',
|
||||
'category': 'category',
|
||||
'zip':'zip',
|
||||
'address':'address',
|
||||
'prefecture':'prefecture',
|
||||
'area':'area',
|
||||
'city':'city',
|
||||
'photos':'photos',
|
||||
'videos':'videos',
|
||||
'webcontents':'webcontent',
|
||||
'status':'status',
|
||||
'portal':'portal',
|
||||
'group':'group',
|
||||
'phone':'phone',
|
||||
'fax':'fax',
|
||||
'email':'email',
|
||||
'facility':'facility',
|
||||
'remark':'remark',
|
||||
'parammeters':'params',
|
||||
'tags':'tags',
|
||||
'geom': 'POLYGON',
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
# Generated by Django 3.2.9 on 2022-02-28 05:04
|
||||
# Generated by Django 3.2.9 on 2022-03-07 07:10
|
||||
|
||||
from django.conf import settings
|
||||
import django.contrib.gis.db.models.fields
|
||||
@ -19,7 +19,7 @@ class Migration(migrations.Migration):
|
||||
name='Location',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location Name')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location id')),
|
||||
('location_name', models.CharField(max_length=255, verbose_name='Location Name')),
|
||||
('category', models.CharField(blank=True, max_length=255, null=True, verbose_name='Category')),
|
||||
('zip', models.CharField(blank=True, max_length=12, null=True, verbose_name='Zip code')),
|
||||
@ -27,9 +27,9 @@ class Migration(migrations.Migration):
|
||||
('prefecture', models.CharField(blank=True, max_length=255, null=True, verbose_name='Prefecture')),
|
||||
('area', models.CharField(blank=True, max_length=255, null=True, verbose_name='Area')),
|
||||
('city', models.CharField(blank=True, max_length=255, null=True, verbose_name='City')),
|
||||
('photos', models.JSONField(blank=True, null=True, verbose_name='Phptos')),
|
||||
('videos', models.JSONField(blank=True, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.JSONField(blank=True, null=True, verbose_name='Web Content')),
|
||||
('photos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos')),
|
||||
('videos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content')),
|
||||
('status', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('portal', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('group', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
@ -63,7 +63,7 @@ class Migration(migrations.Migration):
|
||||
('name', models.CharField(max_length=255, verbose_name='Shape Layer')),
|
||||
('file', models.FileField(blank=True, upload_to='%y%m%d')),
|
||||
('uploaded_date', models.DateField(auto_now_add=True)),
|
||||
('layerof', models.IntegerField(choices=[(1, 'locations')], default=1)),
|
||||
('layerof', models.IntegerField(choices=[(1, 'locations'), (2, 'Location_line'), (3, 'Location_polygon')], default=1)),
|
||||
('table_name', models.CharField(blank=True, max_length=255, verbose_name='Table name')),
|
||||
],
|
||||
),
|
||||
@ -159,6 +159,68 @@ class Migration(migrations.Migration):
|
||||
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Location_polygon',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location id')),
|
||||
('location_name', models.CharField(max_length=255, verbose_name='Location Name')),
|
||||
('category', models.CharField(blank=True, max_length=255, null=True, verbose_name='Category')),
|
||||
('zip', models.CharField(blank=True, max_length=12, null=True, verbose_name='Zip code')),
|
||||
('address', models.CharField(blank=True, max_length=512, null=True, verbose_name='Address')),
|
||||
('prefecture', models.CharField(blank=True, max_length=255, null=True, verbose_name='Prefecture')),
|
||||
('area', models.CharField(blank=True, max_length=255, null=True, verbose_name='Area')),
|
||||
('city', models.CharField(blank=True, max_length=255, null=True, verbose_name='City')),
|
||||
('photos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos')),
|
||||
('videos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content')),
|
||||
('status', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('portal', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('group', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('phone', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('fax', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('email', models.EmailField(blank=True, max_length=255, null=True, verbose_name='Email')),
|
||||
('facility', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('remark', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('tags', models.CharField(blank=True, max_length=512, null=True, verbose_name='Tags')),
|
||||
('parammeters', models.CharField(blank=True, max_length=512, null=True, verbose_name='Parameters')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('last_updated_at', models.DateTimeField(auto_now=True)),
|
||||
('geom', django.contrib.gis.db.models.fields.MultiPolygonField(blank=True, null=True, srid=4326)),
|
||||
('last_updated_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='location_polygon_updated_user', to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Location_line',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location id')),
|
||||
('location_name', models.CharField(max_length=255, verbose_name='Location Name')),
|
||||
('category', models.CharField(blank=True, max_length=255, null=True, verbose_name='Category')),
|
||||
('zip', models.CharField(blank=True, max_length=12, null=True, verbose_name='Zip code')),
|
||||
('address', models.CharField(blank=True, max_length=512, null=True, verbose_name='Address')),
|
||||
('prefecture', models.CharField(blank=True, max_length=255, null=True, verbose_name='Prefecture')),
|
||||
('area', models.CharField(blank=True, max_length=255, null=True, verbose_name='Area')),
|
||||
('city', models.CharField(blank=True, max_length=255, null=True, verbose_name='City')),
|
||||
('photos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos')),
|
||||
('videos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content')),
|
||||
('status', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('portal', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('group', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('phone', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('fax', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('email', models.EmailField(blank=True, max_length=255, null=True, verbose_name='Email')),
|
||||
('facility', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('remark', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('tags', models.CharField(blank=True, max_length=512, null=True, verbose_name='Tags')),
|
||||
('parammeters', models.CharField(blank=True, max_length=512, null=True, verbose_name='Parameters')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('last_updated_at', models.DateTimeField(auto_now=True)),
|
||||
('geom', django.contrib.gis.db.models.fields.MultiLineStringField(blank=True, null=True, srid=4326)),
|
||||
('last_updated_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='location_line_updated_user', to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='JoinedEvent',
|
||||
fields=[
|
||||
|
||||
@ -1,18 +0,0 @@
|
||||
# Generated by Django 3.2.9 on 2022-02-28 12:18
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('rog', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='location',
|
||||
name='location_id',
|
||||
field=models.IntegerField(blank=True, null=True, verbose_name='Location id'),
|
||||
),
|
||||
]
|
||||
@ -1,99 +0,0 @@
|
||||
# Generated by Django 3.2.9 on 2022-03-02 13:40
|
||||
|
||||
from django.conf import settings
|
||||
import django.contrib.gis.db.models.fields
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
('rog', '0002_alter_location_location_id'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='location',
|
||||
name='photos',
|
||||
field=models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='location',
|
||||
name='videos',
|
||||
field=models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='location',
|
||||
name='webcontents',
|
||||
field=models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='shapelayers',
|
||||
name='layerof',
|
||||
field=models.IntegerField(choices=[(1, 'locations'), (2, 'locations_line'), (3, 'locations_polygon')], default=1),
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Location_polygon',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location id')),
|
||||
('location_name', models.CharField(max_length=255, verbose_name='Location Name')),
|
||||
('category', models.CharField(blank=True, max_length=255, null=True, verbose_name='Category')),
|
||||
('zip', models.CharField(blank=True, max_length=12, null=True, verbose_name='Zip code')),
|
||||
('address', models.CharField(blank=True, max_length=512, null=True, verbose_name='Address')),
|
||||
('prefecture', models.CharField(blank=True, max_length=255, null=True, verbose_name='Prefecture')),
|
||||
('area', models.CharField(blank=True, max_length=255, null=True, verbose_name='Area')),
|
||||
('city', models.CharField(blank=True, max_length=255, null=True, verbose_name='City')),
|
||||
('photos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos')),
|
||||
('videos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content')),
|
||||
('status', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('portal', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('group', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('phone', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('fax', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('email', models.EmailField(blank=True, max_length=255, null=True, verbose_name='Email')),
|
||||
('facility', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('remark', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('tags', models.CharField(blank=True, max_length=512, null=True, verbose_name='Tags')),
|
||||
('parammeters', models.CharField(blank=True, max_length=512, null=True, verbose_name='Parameters')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('last_updated_at', models.DateTimeField(auto_now=True)),
|
||||
('geom', django.contrib.gis.db.models.fields.MultiPolygonField(srid=4326)),
|
||||
('last_updated_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='location_polygon_updated_user', to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Location_line',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('location_id', models.IntegerField(blank=True, null=True, verbose_name='Location id')),
|
||||
('location_name', models.CharField(max_length=255, verbose_name='Location Name')),
|
||||
('category', models.CharField(blank=True, max_length=255, null=True, verbose_name='Category')),
|
||||
('zip', models.CharField(blank=True, max_length=12, null=True, verbose_name='Zip code')),
|
||||
('address', models.CharField(blank=True, max_length=512, null=True, verbose_name='Address')),
|
||||
('prefecture', models.CharField(blank=True, max_length=255, null=True, verbose_name='Prefecture')),
|
||||
('area', models.CharField(blank=True, max_length=255, null=True, verbose_name='Area')),
|
||||
('city', models.CharField(blank=True, max_length=255, null=True, verbose_name='City')),
|
||||
('photos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Phptos')),
|
||||
('videos', models.CharField(blank=True, max_length=255, null=True, verbose_name='Videos')),
|
||||
('webcontents', models.CharField(blank=True, max_length=255, null=True, verbose_name='Web Content')),
|
||||
('status', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('portal', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('group', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('phone', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('fax', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('email', models.EmailField(blank=True, max_length=255, null=True, verbose_name='Email')),
|
||||
('facility', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('remark', models.CharField(blank=True, max_length=255, null=True, verbose_name='Status')),
|
||||
('tags', models.CharField(blank=True, max_length=512, null=True, verbose_name='Tags')),
|
||||
('parammeters', models.CharField(blank=True, max_length=512, null=True, verbose_name='Parameters')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True)),
|
||||
('last_updated_at', models.DateTimeField(auto_now=True)),
|
||||
('geom', django.contrib.gis.db.models.fields.MultiLineStringField(srid=4326)),
|
||||
('last_updated_user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.DO_NOTHING, related_name='location_line_updated_user', to=settings.AUTH_USER_MODEL)),
|
||||
],
|
||||
),
|
||||
]
|
||||
121
rog/models.py
121
rog/models.py
@ -1,3 +1,6 @@
|
||||
from dataclasses import field
|
||||
from pyexpat import model
|
||||
from sre_constants import CH_LOCALE
|
||||
from typing import ChainMap
|
||||
from django.contrib.gis.db import models
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
@ -14,6 +17,7 @@ from sqlalchemy.sql.functions import mode
|
||||
from .mapping import location_mapping, location_line_mapping, location_polygon_mapping
|
||||
from .choices import LAYER_CHOICES
|
||||
from django.contrib.gis.utils import LayerMapping
|
||||
from django.apps import apps
|
||||
|
||||
env = environ.Env(DEBUG=(bool, False))
|
||||
environ.Env.read_env(env_file=".env")
|
||||
@ -84,37 +88,6 @@ class Location(models.Model):
|
||||
return self.location_name
|
||||
|
||||
|
||||
class Location(models.Model):
|
||||
location_id=models.IntegerField(_('Location id'), blank=True, null=True)
|
||||
location_name=models.CharField(_('Location Name'), max_length=255)
|
||||
category=models.CharField(_('Category'), max_length=255, blank=True, null=True)
|
||||
zip=models.CharField(_('Zip code'), max_length=12, blank=True, null=True)
|
||||
address = models.CharField(_('Address'), max_length=512, blank=True, null=True)
|
||||
prefecture = models.CharField(_('Prefecture'), max_length=255, blank=True, null=True)
|
||||
area= models.CharField(_('Area'), max_length=255, blank=True, null=True)
|
||||
city= models.CharField(_('City'), max_length=255, blank=True, null=True)
|
||||
photos=models.CharField(_('Phptos'), max_length=255, blank=True, null=True)
|
||||
videos=models.CharField(_('Videos'), max_length=255, blank=True, null=True)
|
||||
webcontents=models.CharField(_('Web Content'), max_length=255, blank=True, null=True)
|
||||
status=models.CharField(_('Status'),max_length=255, blank=True, null=True)
|
||||
portal=models.CharField(_('Status'), max_length=255,blank=True, null=True)
|
||||
group=models.CharField(_('Status'), max_length=255,blank=True, null=True)
|
||||
phone=models.CharField(_('Status'), max_length=255,blank=True, null=True)
|
||||
fax=models.CharField(_('Status'), max_length=255, blank=True, null=True)
|
||||
email=models.EmailField(_('Email'), max_length=255,blank=True, null=True)
|
||||
facility=models.CharField(_('Status'), max_length=255, blank=True, null=True)
|
||||
remark=models.CharField(_('Status'), max_length=255, blank=True, null=True)
|
||||
tags=models.CharField(_('Tags'), max_length=512, blank=True, null=True)
|
||||
parammeters=models.CharField(_('Parameters'), max_length=512, blank=True, null=True)
|
||||
created_at=models.DateTimeField(auto_now_add=True)
|
||||
last_updated_user=models.ForeignKey(User, related_name="location_updated_user", on_delete=models.DO_NOTHING,blank=True, null=True)
|
||||
last_updated_at=models.DateTimeField(auto_now=True)
|
||||
geom=models.MultiPointField(srid=4326)
|
||||
|
||||
def __str__(self):
|
||||
return self.location_name
|
||||
|
||||
|
||||
class Location_line(models.Model):
|
||||
location_id=models.IntegerField(_('Location id'), blank=True, null=True)
|
||||
location_name=models.CharField(_('Location Name'), max_length=255)
|
||||
@ -140,10 +113,11 @@ class Location_line(models.Model):
|
||||
created_at=models.DateTimeField(auto_now_add=True)
|
||||
last_updated_user=models.ForeignKey(User, related_name="location_line_updated_user", on_delete=models.DO_NOTHING,blank=True, null=True)
|
||||
last_updated_at=models.DateTimeField(auto_now=True)
|
||||
geom=models.MultiLineStringField(srid=4326)
|
||||
geom=models.MultiLineStringField(srid=4326, blank=True, null=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.location_name
|
||||
return str(self.location_id)
|
||||
|
||||
|
||||
|
||||
class Location_polygon(models.Model):
|
||||
@ -171,10 +145,10 @@ class Location_polygon(models.Model):
|
||||
created_at=models.DateTimeField(auto_now_add=True)
|
||||
last_updated_user=models.ForeignKey(User, related_name="location_polygon_updated_user", on_delete=models.DO_NOTHING,blank=True, null=True)
|
||||
last_updated_at=models.DateTimeField(auto_now=True)
|
||||
geom=models.MultiPolygonField(srid=4326)
|
||||
geom=models.MultiPolygonField(srid=4326, blank=True, null=True)
|
||||
|
||||
def __str__(self):
|
||||
return self.location_name
|
||||
return str(self.location_name)
|
||||
|
||||
|
||||
|
||||
@ -327,9 +301,9 @@ def getMappingforModel(tbl, shp):
|
||||
if tbl == 1:
|
||||
return LayerMapping(Location, shp, location_mapping, transform=False)
|
||||
elif tbl == 2:
|
||||
return LayerMapping(Location_line, location_line_mapping, transform=False)
|
||||
return LayerMapping(Location_line, shp, location_line_mapping, transform=False)
|
||||
else:
|
||||
return LayerMapping(Location_polygon, location_polygon_mapping, transform=False)
|
||||
return LayerMapping(Location_polygon, shp, location_polygon_mapping, transform=False)
|
||||
|
||||
|
||||
class ShapeLayers(models.Model):
|
||||
@ -372,11 +346,80 @@ def publish_date(sender, instance, created, **kwargs):
|
||||
if epsg is None:
|
||||
epsg=4326
|
||||
|
||||
print("### shape file is ###")
|
||||
|
||||
lm2 = getMappingforModel(instance.layerof, shp)
|
||||
print("### shape file is ###")
|
||||
lm2.save(strict=True, verbose=True)
|
||||
|
||||
os.remove(shp)
|
||||
except Exception as e:
|
||||
print('##################',e)
|
||||
|
||||
try:
|
||||
csv = glob.glob(r'{}/**/*.csv'.format(file_path), recursive=True)[0]
|
||||
|
||||
mdl = apps.get_model(app_label="rog", model_name=LAYER_CHOICES[instance.layerof -1][1])
|
||||
print(mdl)
|
||||
print(f"#### instance.layerof - {instance.layerof}")
|
||||
with open(csv, "r") as txt_file:
|
||||
lns = txt_file.readlines()
|
||||
for ln in lns:
|
||||
fields = ln.split(",")
|
||||
if instance.layerof == 12:
|
||||
updateLineTable(mdl, fields)
|
||||
if instance.layerof == 3:
|
||||
updatePolygonTable(mdl, fields)
|
||||
|
||||
except Exception as e:
|
||||
print('##################',e)
|
||||
|
||||
|
||||
def updateLineTable(mdl, fields):
|
||||
#print(f"Updated {fields[0]} - {fields[1]}")
|
||||
mdl.objects.filter(location_id = fields[0]).update(
|
||||
location_name=fields[1],
|
||||
category=fields[2],
|
||||
zip=fields[3],
|
||||
address=fields[4],
|
||||
prefecture=fields[5],
|
||||
area=fields[6],
|
||||
city=fields[7],
|
||||
photos=fields[8],
|
||||
videos=fields[9],
|
||||
webcontents=fields[10],
|
||||
status=fields[11],
|
||||
portal=fields[12],
|
||||
group=fields[13],
|
||||
phone=fields[14],
|
||||
fax=fields[15],
|
||||
email=fields[16],
|
||||
facility=fields[17],
|
||||
remark=fields[18],
|
||||
tags=fields[19],
|
||||
parammeters=fields[20]
|
||||
)
|
||||
|
||||
|
||||
def updatePolygonTable(mdl, fields):
|
||||
#print(f"Updated {fields[0]} - {fields[1]}")
|
||||
mdl.objects.filter(location_id = fields[0]).update(
|
||||
location_name=fields[1],
|
||||
category=fields[2],
|
||||
zip=fields[3],
|
||||
address=fields[4],
|
||||
prefecture=fields[5],
|
||||
area=fields[6],
|
||||
city=fields[7],
|
||||
photos=fields[8],
|
||||
videos=fields[9],
|
||||
webcontents=fields[10],
|
||||
status=fields[11],
|
||||
portal=fields[12],
|
||||
group=fields[13],
|
||||
phone=fields[14],
|
||||
fax=fields[15],
|
||||
email=fields[16],
|
||||
facility=fields[17],
|
||||
remark=fields[18],
|
||||
tags=fields[19],
|
||||
parammeters=fields[20]
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user