喇叭接口异常

This commit is contained in:
曹前明 2022-07-18 09:56:41 +08:00
parent 60a8d6fc9c
commit 3326f9c730
6 changed files with 14 additions and 12 deletions

View File

@ -3,7 +3,7 @@ from apps.utils.task import CustomTask
from apps.am.models import Area
from celery import shared_task
from django.core.cache import cache
import shapely.geometry
from shapely.geometry import Polygon
@shared_task(base=CustomTask)
@ -13,15 +13,14 @@ def cache_areas_info():
"""
area_fix_list = []
for i in Area.objects.filter(type=Area.AREA_TYPE_FIX).exclude(third_info__xx_rail=None):
polygon = []
points = []
for item in i.third_info['xx_rail']['detail']['polygon']['points']:
polygon.append([item.x, item.y])
poly_context = {'type': 'MULTIPOLYGON',
'coordinates': [[area_fix_list]]}
points.append((item['x'], item['y']))
area_dict = {
'id': i.id,
'floor_no': i.third_info['xx_rail']['detail']['floorNo'],
'poly_shape': shapely.geometry.asShape(poly_context),
'polygon': Polygon(points),
'stay_minute_min': i.stay_minute_min,
'stay_minute_max': i.stay_minute_max
}

View File

@ -1,10 +1,11 @@
from apps.am.tasks import cache_areas_info
from apps.am.views import AreaViewSet, AccessViewSet
from django.urls import path, include
from rest_framework.routers import DefaultRouter
API_BASE_URL = 'api/am/'
HTML_BASE_URL = 'am/'
cache_areas_info()
router = DefaultRouter()
router.register('area', AreaViewSet, basename='area')
router.register('access', AccessViewSet, basename='access')

View File

@ -12,7 +12,7 @@ from apps.third.tapis import xxapis
from apps.utils.queryset import get_child_queryset2, get_parent_queryset
from django.core.cache import cache
import time
import shapely.geometry
from shapely.geometry import Point
from apps.third.clients import dhClient, spClient
from django.utils import timezone
from django.conf import settings
@ -403,8 +403,8 @@ def loc_change(data):
else:
for i in area_fix_list:
if data['floorNo'] == i['floor_no']:
point = shapely.geometry.Point(data['xMillimeter'], data['yMillimeter'])
if i['poly_shape'].intersects(point): # 如果点在多边形中
point = Point(data['xMillimeter'], data['yMillimeter'])
if i['polygon'].intersects(point): # 如果点在多边形中
ep_loc_dict['time1'] = time2
ep_loc_dict['are_id'] = i['area_fix_id']
ep_loc_dict['time2'] = time2

View File

@ -97,7 +97,7 @@ class LogView(APIView):
logs.append({
"name": file,
"filepath": filepath,
"size": round(fsize/1000, 1)
"size": round(fsize/1024, 1)
})
else:
fsize = os.path.getsize(filepath)
@ -105,7 +105,7 @@ class LogView(APIView):
logs.append({
"name": file,
"filepath": filepath,
"size": round(fsize/1000, 1)
"size": round(fsize/1024, 1)
})
return Response(logs)

View File

@ -28,6 +28,7 @@ def get_op_monitor(state, ticket, new_ticket_data, handler):
if opl:
return [opl.monitor.id]
def bind_opl(ticket: Ticket, transition: Transition, new_ticket_data: dict):
opl = Opl.objects.get(id=new_ticket_data['opl'])
ticket_data = ticket.ticket_data

View File

@ -326,6 +326,7 @@ class TDeviceViewSet(ListModelMixin, UpdateModelMixin, DestroyModelMixin, Custom
喇叭列表
"""
# print(request.data)
_, res = spClient.request(**spapis['device_list'], params=request.data)
codes = []
for i in res['rows']: