@@ -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'设置旅行团集合信息成功') |
@@ -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 |
|
@@ -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,导游创建旅行团的时候更新 |