Fix routing

dev
Timofey Malinin 3 years ago
parent 4eaa3f73d2
commit 70b024f0ed

@ -6,11 +6,11 @@ from django.contrib.auth.models import User
from service.models import AO
from service.models import PlacementPoint
from service.models import PointDist
from service.models import Rayon
from service.models import Post_and_pvz, Post_and_pvzCategory, Post_and_pvzGroup, OtherObjects, OtherObjectsGroup, \
OtherObjectsCategory
from service.models import PlacementPointPVZDistance, TaskStatus
from postamates.settings import DEBUG
class MyAdminSite(AdminSite):
@ -21,30 +21,39 @@ class MyAdminSite(AdminSite):
return super(MyAdminSite, self).index(request, extra_context)
my_admin_site = MyAdminSite(name='myadmin')
my_admin_site = MyAdminSite(name='POSTNET')
if DEBUG:
my_admin_site.register(AO)
my_admin_site.register(Rayon)
my_admin_site.register(PlacementPointPVZDistance)
my_admin_site.register(AO)
my_admin_site.register(Rayon)
my_admin_site.register(Post_and_pvz)
my_admin_site.register(Post_and_pvzCategory)
my_admin_site.register(Post_and_pvzGroup)
my_admin_site.register(OtherObjects)
my_admin_site.register(OtherObjectsGroup)
my_admin_site.register(OtherObjectsCategory)
my_admin_site.register(PlacementPointPVZDistance)
class TaskStatusAdmin(admin.ModelAdmin):
list_display = ('task_name', 'status')
my_admin_site.register(TaskStatus, TaskStatusAdmin)
class CategoryAdmin(admin.ModelAdmin):
list_display = ('name', 'visible')
class GroupAdmin(admin.ModelAdmin):
list_display = ('name', 'category', 'visible')
class PlacementPointAdmin(admin.ModelAdmin):
pass
my_admin_site.register(TaskStatus, TaskStatusAdmin)
my_admin_site.register(Post_and_pvzGroup, GroupAdmin)
my_admin_site.register(OtherObjectsGroup, GroupAdmin)
my_admin_site.register(Post_and_pvzCategory, CategoryAdmin)
my_admin_site.register(OtherObjectsCategory, CategoryAdmin)
my_admin_site.register(PlacementPoint, PlacementPointAdmin)

@ -133,15 +133,6 @@ class OtherObjects(models.Model):
visible = models.BooleanField(default=True)
class PointDist(models.Model):
class Meta:
verbose_name_plural = 'Расстояния между точками'
id1 = models.ForeignKey('PlacementPoint', on_delete=models.CASCADE, null=False, related_name='placement_point_id1')
id2 = models.ForeignKey('PlacementPoint', on_delete=models.CASCADE, null=False, related_name='placement_point_id2')
distance = models.FloatField(null=False)
class Post_and_pvzCategory(models.Model):
class Meta:
verbose_name = 'категория постаматов и ПВЗ'

@ -12,11 +12,11 @@ urlpatterns = router.urls
urlpatterns += [
url(r'load_csv/', views.refresh_placement_points.as_view(), name='upload_placement_points'),
url(r'upload_ao_and_rayons/', views.load_ao_and_rayons.as_view(), name='upload_ao_and_rayons'),
url(r'upload_post_and_pvz/', views.upload_post_and_pvz, name='upload_post_and_pvz'),
url(r'upload_other_objects/', views.upload_other_objects, name='upload_other_objects'),
url(r'upload_dist/', views.upload_dist, name='upload_dist'),
url(r'me/', views.get_current_user, name='me'),
url('download_pvz_template/', views.download_pvz_template, name='download_pvz_template'),
url('download_other_template/', views.download_other_template, name='download_other_template'),
]
USE_X_FORWARDED_HOST = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

@ -29,6 +29,7 @@ from django.contrib import messages
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework import filters
from service.utils import CustomReadOnlyModelViewSet
import os
class AOViewSet(CustomReadOnlyModelViewSet):
@ -380,3 +381,17 @@ def get_current_user(request):
return JsonResponse(
{'groups': [gr.name for gr in request.user.groups.all()]},
)
def download_pvz_template(self):
image_buffer = open('Постоматы и ПВЗ.xlsx', "rb").read()
response = HttpResponse(image_buffer, content_type='xlsx')
response['Content-Disposition'] = 'attachment; filename="%s"' % os.path.basename('pvz_and_postomats.xlsx')
return response
def download_other_template(self):
image_buffer = open('Другие объекты.xlsx', "rb").read()
response = HttpResponse(image_buffer, content_type='xlsx')
response['Content-Disposition'] = 'attachment; filename="%s"' % os.path.basename('other.xlsx')
return response

@ -50,45 +50,20 @@
</div>
<div>
{% if is_superadmin %}
<h3>Обновить файл точек</h3>
<form method="post" action="/api/load_csv/" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" required=True name="file" accept=".csv">
<input type="submit" value="Отправить">
</form>
<h3>Загрузить районы и АО</h3>
<form method="post" action="/api/upload_ao_and_rayons/" enctype="multipart/form-data">
{% csrf_token %}
<h4>Файл с АО</h4>
<input type="file" required=True name="file_ao" accept=".geojson">
<h4>Файл с Районами</h4>
<input type="file" required=True name="file_rayon" accept=".geojson">
<input type="submit" value="Отправить">
</form>
<h3>Обновить файл полигонов</h3>
<form method="post" action="/api/polygons/file_import/" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="file" accept=".zip">
<input type="submit" value="Отправить">
</form>
<h3>Загрузить файл ПВЗ и Постаматов</h3>
<a href="/api/download_pvz_template">Скачать шаблон</a>
<form method="post" action="/api/upload_post_and_pvz/" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="file_post_and_pvz" accept=".xlsx">
<input type="submit" value="Отправить">
</form>
<h3>Загрузить файл прочих объектов</h3>
<a href="/api/download_other_template">Скачать шаблон</a>
<form method="post" action="/api/upload_other_objects/" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="file_other_objects" accept=".xlsx">
<input type="submit" value="Отправить">
</form>
<h3>Загрузить файл расстояний</h3>
<form method="post" action="/api/upload_dist/" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="file_dist" accept=".csv">
<input type="submit" value="Отправить">
</form>
{% endif %}
</div>

Binary file not shown.

Binary file not shown.
Loading…
Cancel
Save