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 AO
from service.models import PlacementPoint from service.models import PlacementPoint
from service.models import PointDist
from service.models import Rayon from service.models import Rayon
from service.models import Post_and_pvz, Post_and_pvzCategory, Post_and_pvzGroup, OtherObjects, OtherObjectsGroup, \ from service.models import Post_and_pvz, Post_and_pvzCategory, Post_and_pvzGroup, OtherObjects, OtherObjectsGroup, \
OtherObjectsCategory OtherObjectsCategory
from service.models import PlacementPointPVZDistance, TaskStatus from service.models import PlacementPointPVZDistance, TaskStatus
from postamates.settings import DEBUG
class MyAdminSite(AdminSite): class MyAdminSite(AdminSite):
@ -21,30 +21,39 @@ class MyAdminSite(AdminSite):
return super(MyAdminSite, self).index(request, extra_context) 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_pvz)
my_admin_site.register(Post_and_pvzCategory)
my_admin_site.register(Post_and_pvzGroup)
my_admin_site.register(OtherObjects) my_admin_site.register(OtherObjects)
my_admin_site.register(OtherObjectsGroup)
my_admin_site.register(OtherObjectsCategory)
my_admin_site.register(PlacementPointPVZDistance)
class TaskStatusAdmin(admin.ModelAdmin): class TaskStatusAdmin(admin.ModelAdmin):
list_display = ('task_name', 'status') 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): class PlacementPointAdmin(admin.ModelAdmin):
pass 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) my_admin_site.register(PlacementPoint, PlacementPointAdmin)

@ -133,15 +133,6 @@ class OtherObjects(models.Model):
visible = models.BooleanField(default=True) 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 Post_and_pvzCategory(models.Model):
class Meta: class Meta:
verbose_name = 'категория постаматов и ПВЗ' verbose_name = 'категория постаматов и ПВЗ'

@ -12,11 +12,11 @@ urlpatterns = router.urls
urlpatterns += [ urlpatterns += [
url(r'load_csv/', views.refresh_placement_points.as_view(), name='upload_placement_points'), 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_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_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(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 USE_X_FORWARDED_HOST = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https') 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 django_filters.rest_framework import DjangoFilterBackend
from rest_framework import filters from rest_framework import filters
from service.utils import CustomReadOnlyModelViewSet from service.utils import CustomReadOnlyModelViewSet
import os
class AOViewSet(CustomReadOnlyModelViewSet): class AOViewSet(CustomReadOnlyModelViewSet):
@ -380,3 +381,17 @@ def get_current_user(request):
return JsonResponse( return JsonResponse(
{'groups': [gr.name for gr in request.user.groups.all()]}, {'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>
<div> <div>
{% if is_superadmin %} {% 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> <h3>Загрузить файл ПВЗ и Постаматов</h3>
<a href="/api/download_pvz_template">Скачать шаблон</a>
<form method="post" action="/api/upload_post_and_pvz/" enctype="multipart/form-data"> <form method="post" action="/api/upload_post_and_pvz/" enctype="multipart/form-data">
{% csrf_token %} {% csrf_token %}
<input type="file" name="file_post_and_pvz" accept=".xlsx"> <input type="file" name="file_post_and_pvz" accept=".xlsx">
<input type="submit" value="Отправить"> <input type="submit" value="Отправить">
</form> </form>
<h3>Загрузить файл прочих объектов</h3> <h3>Загрузить файл прочих объектов</h3>
<a href="/api/download_other_template">Скачать шаблон</a>
<form method="post" action="/api/upload_other_objects/" enctype="multipart/form-data"> <form method="post" action="/api/upload_other_objects/" enctype="multipart/form-data">
{% csrf_token %} {% csrf_token %}
<input type="file" name="file_other_objects" accept=".xlsx"> <input type="file" name="file_other_objects" accept=".xlsx">
<input type="submit" value="Отправить"> <input type="submit" value="Отправить">
</form> </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 %} {% endif %}
</div> </div>

Binary file not shown.

Binary file not shown.
Loading…
Cancel
Save