@@ -62,7 +62,7 @@ def group_user_join_api(request): |
||
62 | 62 |
r.srem(GROUP_USERS_QUIT_SET % group_id, user_id) |
63 | 63 |
r.sadd(GROUP_USERS_PASSED_SET % group_id, user_id) |
64 | 64 |
|
65 |
- curinfo = get_current_photos(group_id, user_id, group_user.current_id) |
|
65 |
+ curinfo = get_current_photos(group_id, user_id, group_user.current_id, request=request) |
|
66 | 66 |
|
67 | 67 |
return response(200, 'Group User Join Success', u'群成员加群成功', { |
68 | 68 |
'current_id': curinfo.get('current_id', ''), |
@@ -95,7 +95,7 @@ def tgu_group_user_join_api(request): |
||
95 | 95 |
r.srem(GROUP_USERS_QUIT_SET % group_id, user_id) |
96 | 96 |
r.sadd(GROUP_USERS_PASSED_SET % group_id, user_id) |
97 | 97 |
|
98 |
- curinfo = get_current_photos(group_id, user_id, group_user.current_id) |
|
98 |
+ curinfo = get_current_photos(group_id, user_id, group_user.current_id, request=request) |
|
99 | 99 |
|
100 | 100 |
# 添加默认地理位置信息 |
101 | 101 |
r.geoadd(TOUR_GUIDE_GROUP_GEO_INFO % group_id, 0, 0, user_id) |
@@ -274,7 +274,9 @@ def flyimg_upload_api(request): |
||
274 | 274 |
# 设置群组最后一张照片PK |
275 | 275 |
r.set(GROUP_LAST_PHOTO_PK % group_id, group_photo.pk) |
276 | 276 |
|
277 |
- return response(200, 'Flyimg Upload Success', u'飞图上传成功', get_current_photos(group_id, user_id, max(current_id, group_user.current_id))) |
|
277 |
+ curinfo = get_current_photos(group_id, user_id, group_user.current_id, request=request) |
|
278 |
+ |
|
279 |
+ return response(200, 'Flyimg Upload Success', u'飞图上传成功', curinfo) |
|
278 | 280 |
|
279 | 281 |
|
280 | 282 |
@logit |
@@ -5,19 +5,25 @@ import itertools |
||
5 | 5 |
from group.models import GroupPhotoInfo |
6 | 6 |
|
7 | 7 |
|
8 |
-def get_current_photos(group_id, user_id, current_id): |
|
8 |
+def get_current_photos(group_id, user_id, current_id, request=None): |
|
9 | 9 |
# 获取从 current_id 到 now 的群组照片列表 |
10 | 10 |
group_photos = GroupPhotoInfo.objects.filter( |
11 | 11 |
group_id=group_id, |
12 | 12 |
status=True, |
13 | 13 |
pk__gt=current_id, |
14 |
- ).order_by( |
|
15 |
- '-session_id', |
|
16 |
- '-pk' |
|
17 | 14 |
) |
18 | 15 |
# 最新照片 |
19 |
- latest_photo = group_photos.first() |
|
16 |
+ group_tmp_photos = group_photos.order_by( |
|
17 |
+ '-pk', |
|
18 |
+ ) |
|
19 |
+ latest_photo = group_tmp_photos.first() |
|
20 | 20 |
# 照片按照 session_id 分组 |
21 |
+ group_photos = group_photos.order_by( |
|
22 |
+ '-session_id', |
|
23 |
+ '-pk', |
|
24 |
+ ) |
|
25 |
+ if request and request.weixin: |
|
26 |
+ group_photos = group_photos[:30] |
|
21 | 27 |
group_photos = map(lambda x: {'session_id': x[0], 'photos': [y.photo_info(user_id) for y in x[1]]}, |
22 | 28 |
itertools.groupby(group_photos, lambda x: x.session_id)) |
23 | 29 |
return { |