Add TOUR_GUIDE_GROUP_CUR_GATHER_INFO

Brightcells 8 anni fa
parent
commit
0df90d650b
3 ha cambiato i file con 15 aggiunte e 5 eliminazioni
  1. 8 2
      group/tourguidegroup_views.py
  2. 6 3
      group/tourguidegroupuser_views.py
  3. 1 0
      utils/redis/rkeys.py

+ 8 - 2
group/tourguidegroup_views.py

@@ -2,12 +2,14 @@
2 2
 
3 3
 from __future__ import division
4 4
 
5
+import json
5 6
 import os
6 7
 
7 8
 import shortuuid
8 9
 from curtail_uuid import CurtailUUID
9 10
 from django.conf import settings
10 11
 from django.core.files.storage import default_storage
12
+from django.core.serializers.json import DjangoJSONEncoder
11 13
 from logit import logit
12 14
 from TimeConvert import TimeConvert as tc
13 15
 
@@ -16,7 +18,7 @@ from group.models import GroupInfo, GroupUserInfo
16 18
 from utils.error.errno_utils import GroupStatusCode, UserStatusCode
17 19
 from utils.error.response_utils import response
18 20
 from utils.redis.rgroup import get_group_info, get_group_users_info, set_group_info, set_group_users_info
19
-from utils.redis.rkeys import TOUR_GUIDE_GROUP_CUR_SESSION
21
+from utils.redis.rkeys import TOUR_GUIDE_GROUP_CUR_GATHER_INFO, TOUR_GUIDE_GROUP_CUR_SESSION
20 22
 from utils.redis.rtourguide import set_tour_guide_own_group
21 23
 
22 24
 
@@ -240,6 +242,10 @@ def tg_group_gather_start_api(request):
240 242
     set_group_info(group)
241 243
 
242 244
     # 更新Session
243
-    r.set(TOUR_GUIDE_GROUP_CUR_SESSION, shortuuid.uuid())
245
+    r.pipeline().set(TOUR_GUIDE_GROUP_CUR_SESSION % group_id, shortuuid.uuid()).set(TOUR_GUIDE_GROUP_CUR_GATHER_INFO % group_id, json.dumps({
246
+        'gather_at': gather_at,
247
+        'gather_lon': gather_lon,
248
+        'gather_lat': gather_lat,
249
+    }, cls=DjangoJSONEncoder)).execute()
244 250
 
245 251
     return response(200, u'Set Tour Guide Group Gather Info Success', u'设置旅行团集合信息成功')

+ 6 - 3
group/tourguidegroupuser_views.py

@@ -15,8 +15,8 @@ from utils.error.response_utils import response
15 15
 from utils.group_photo_utils import get_current_photos
16 16
 from utils.redis.rgroup import get_group_info, get_group_users_info, set_group_users_info
17 17
 from utils.redis.rkeys import (GROUP_LAST_PHOTO_PK, GROUP_USERS_DELETED_SET, GROUP_USERS_PASSED_SET,
18
-                               GROUP_USERS_QUIT_SET, GROUP_USERS_REFUSED_SET, TOUR_GUIDE_GROUP_CUR_SESSION,
19
-                               TOUR_GUIDE_GROUP_GEO_INFO, TOUR_GUIDE_GROUP_USER_GEO_LIST)
18
+                               GROUP_USERS_QUIT_SET, GROUP_USERS_REFUSED_SET, TOUR_GUIDE_GROUP_CUR_GATHER_INFO,
19
+                               TOUR_GUIDE_GROUP_CUR_SESSION, TOUR_GUIDE_GROUP_GEO_INFO, TOUR_GUIDE_GROUP_USER_GEO_LIST)
20 20
 from utils.redis.rtourguide import get_tour_guide_own_group
21 21
 
22 22
 
@@ -152,9 +152,12 @@ def tgu_group_user_locations_api(request):
152 152
     if not GroupUserInfo.objects.filter(group_id=group_id, user_id=admin_id, subadmin=True, status=True).exists():
153 153
         return response(GroupStatusCode.NO_LOCATION_PERMISSION)
154 154
 
155
+    # 获取集合经纬度
156
+    gather_info = json.loads(r.get(TOUR_GUIDE_GROUP_CUR_GATHER_INFO % group_id) or '{}')
157
+
155 158
     return response(200, 'Get Tour Guide Group All User Location Success', u'获取旅行团用户地理位置信息成功', {
156 159
         'group_id': group_id,
157
-        'locations': r.georadius(TOUR_GUIDE_GROUP_GEO_INFO % group_id, 0, 0, '+inf', unit='m', withdist=True, withcoord=True, sort='ASC')
160
+        'locations': r.georadius(TOUR_GUIDE_GROUP_GEO_INFO % group_id, gather_info.get('gather_lon', 0), gather_info.get('gather_lat', 0), '+inf', unit='m', withdist=True, withcoord=True, sort='ASC')
158 161
         # 'locations': [['x', 0.33, (2.68220901489e-06, 1.26736058093e-06)]]
159 162
     })
160 163
 

+ 1 - 0
utils/redis/rkeys.py

@@ -9,6 +9,7 @@ PROFILE_INFO = 'profile:info:%s'  # STRING,用户信息,user_id
9 9
 # 导游相关
10 10
 TOUR_GUIDE_GROUP_GEO_INFO = 'tour:guide:group:geo:info:%s'  # ZSET,旅游团地理位置信息,group_id
11 11
 TOUR_GUIDE_GROUP_CUR_SESSION = 'tour:guide:group:cur:session:%s'  # STRING,旅游团当前Session,group_id,导游设置集合时间的时候更新
12
+TOUR_GUIDE_GROUP_CUR_GATHER_INFO = 'tour:guide:group:cur:gather:info:%s'  # STRING,旅游团当前Session,group_id,导游设置集合时间的时候更新
12 13
 TOUR_GUIDE_GROUP_USER_GEO_LIST = 'tour:guide:group:user:geo:list:%s:%s:%s'  # LIST,旅游团当前用户地理位置列表,group_id、session_id、user_id
13 14
 
14 15
 TOUR_GUIDE_GROUP_USER_OWN = 'tour:guide:group:user:own:%s'  # STRING,导游当前拥有的旅行团,user_id,导游创建旅行团的时候更新