From 82a3c3178a3517a6b3ad88106a4f713bbc87b229 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E5=89=8D=E6=98=8E?= <909355014@qq.com> Date: Wed, 21 Sep 2022 19:39:59 +0800 Subject: [PATCH] cache area info bug --- apps/am/tasks.py | 25 ++++++++++++------------- apps/develop/views.py | 1 + 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/apps/am/tasks.py b/apps/am/tasks.py index a2dd0b2a..b2b6b5fb 100644 --- a/apps/am/tasks.py +++ b/apps/am/tasks.py @@ -12,24 +12,23 @@ def cache_areas_info(): 缓存区域信息 """ area_list = [] - is_ok = True for i in Area.objects.filter(is_hidden=False).exclude(third_info__xx_rail=None).order_by('number'): points = [] + is_ok = True for item in i.third_info['xx_rail']['detail']['polygon']['points']: if 'longitude' not in item: is_ok = False break points.append((item['longitude'], item['latitude'])) - if not is_ok: - break - area_dict = { - 'id': i.id, - 'type': i.type, - 'floor_no': i.third_info['xx_rail']['detail']['floorNo'], - 'polygon': Polygon(points), - 'stay_minute_min': i.stay_minute_min, - 'stay_minute_max': i.stay_minute_max - } - area_list.append(area_dict) + if is_ok: + area_dict = { + 'id': i.id, + 'type': i.type, + 'floor_no': i.third_info['xx_rail']['detail']['floorNo'], + 'polygon': Polygon(points), + 'stay_minute_min': i.stay_minute_min, + 'stay_minute_max': i.stay_minute_max + } + area_list.append(area_dict) cache.set('area_list', area_list, timeout=None) - # return area_list + return area_list diff --git a/apps/develop/views.py b/apps/develop/views.py index 451f8fd5..f5f1f203 100755 --- a/apps/develop/views.py +++ b/apps/develop/views.py @@ -6,6 +6,7 @@ from rest_framework.response import Response from rest_framework.serializers import Serializer from rest_framework.decorators import action from apps.am.models import Area +from apps.am.tasks import cache_areas_info from apps.develop.serializers import AreaManSerializer, CleanDataSerializer, GenerateVoiceSerializer, SendSmsSerializer, SpeakerSerializer, \ TestTaskSerializer, TestAlgoSerializer from apps.develop.tasks import backup_database, backup_media, reload_web_git, reload_server_git, reload_server_only