unify join group logic

Brightcells 9 gadi atpakaļ
vecāks
revīzija
5301e7237e
5 mainītis faili ar 29 papildinājumiem un 9 dzēšanām
  1. 1 1
      api/urls.py
  2. 8 0
      group/views.py
  3. 10 0
      page/templates/page/download.html
  4. 4 0
      pai2/urls.py
  5. 6 8
      photo/views.py

+ 1 - 1
api/urls.py

@@ -63,7 +63,7 @@ urlpatterns += [
63 63
 
64 64
 # 二维码相关
65 65
 urlpatterns += [
66
-    url(r'^s/(?P<session>\w+)$', photo_views.session_detail_api, name='session_detail_api'),  # Session 详情
66
+    url(r'^s/join$', photo_views.session_join_api, name='session_join_api'),  # Session 加群
67 67
     url(r'^p/(?P<photo>\w+)$', photo_views.photo_standard_api, name='photo_standard_api'),  # standard thumbnail, available for free
68 68
 ]
69 69
 

+ 8 - 0
group/views.py

@@ -4,6 +4,7 @@ from django.conf import settings
4 4
 from django.core.files.storage import default_storage
5 5
 from django.db import connection, transaction
6 6
 from django.http import JsonResponse
7
+from django.shortcuts import render
7 8
 
8 9
 from rest_framework import viewsets
9 10
 
@@ -252,8 +253,11 @@ def group_join_api(request):
252 253
         'status': 200,
253 254
         'message': u'申请成功',
254 255
         'data': {
256
+            'current_id': group_user.current_id,
257
+            'photos': [],
255 258
             'group_id': group_id,
256 259
             'group': get_group_info(group_id),
260
+            'user_id': user_id,
257 261
             'users': get_group_users_info(group_id, user_id),
258 262
         },
259 263
     })
@@ -891,6 +895,10 @@ def pai2_home_api(request):
891 895
     })
892 896
 
893 897
 
898
+def group_detail(request, group_id):
899
+    return render(request, 'page/download.html', {})
900
+
901
+
894 902
 class GroupInfoViewSet(viewsets.ModelViewSet):
895 903
     queryset = GroupInfo.objects.all().order_by('-pk')
896 904
     serializer_class = GroupInfoSerializer

+ 10 - 0
page/templates/page/download.html

@@ -0,0 +1,10 @@
1
+<!DOCTYPE html>
2
+<html>
3
+<head lang="en">
4
+    <meta charset="UTF-8">
5
+    <title>下载页面</title>
6
+</head>
7
+<body>
8
+    <div style="text-align: center;font-size: 50px;">下载页面</div>
9
+</body>
10
+</html>

+ 4 - 0
pai2/urls.py

@@ -53,6 +53,10 @@ urlpatterns += [
53 53
 ]
54 54
 
55 55
 urlpatterns += [
56
+    url(r'^g/(?P<group_id>\w+)$', group_views.group_detail, name='group_detail'),  # Group 详情(APP下载页)
57
+]
58
+
59
+urlpatterns += [
56 60
     url(r'^page/user_agreement$', page_views.user_agreement, name='user_agreement'),  # 用户协议页面
57 61
     url(r'^page/contact_us$', page_views.contact_us, name='contact_us'),  # 联系我们页面
58 62
 ]

+ 6 - 8
photo/views.py

@@ -143,14 +143,14 @@ def upload_photo(request):
143 143
     })
144 144
 
145 145
 
146
-def session_detail_api(request, session):
146
+def session_join_api(request):
147 147
     """
148 148
     Session 详情
149 149
     :param request:
150
-    :param session:
151 150
     :return:
152 151
     """
153 152
     user_id = request.POST.get('user_id', '')
153
+    session_id = request.POST.get('session_id', '')
154 154
     current_id = -1
155 155
 
156 156
     # 判断 user_id 是否存在,如果不存在,则直接分配帐户
@@ -163,13 +163,13 @@ def session_detail_api(request, session):
163 163
     user_id = user.user_id
164 164
 
165 165
     # 判断通过 session_id 创建的群组是否存在,如果不存在,则直接创建
166
-    group, group_created = GroupInfo.objects.get_or_create(session_id=session, defaults={
166
+    group, group_created = GroupInfo.objects.get_or_create(session_id=session_id, defaults={
167 167
         'group_id': CurtailUUID.uuid(GroupInfo, 'group_id'),
168 168
         'admin_id': user_id,
169 169
         'group_name': user.final_nickname,
170 170
         'group_default_avatar': 0,
171 171
         'group_from': GroupInfo.SESSION_GROUP,
172
-        'session_id': session,
172
+        'session_id': session_id,
173 173
     })
174 174
     group_id = group.group_id
175 175
 
@@ -191,7 +191,7 @@ def session_detail_api(request, session):
191 191
     group_users = set_group_users_info(group) if group_user_created else get_group_info(group_id)
192 192
 
193 193
     # 获取 Session 照片
194
-    photos = PhotosInfo.objects.filter(session_id=session)
194
+    photos = PhotosInfo.objects.filter(session_id=session_id)
195 195
 
196 196
     #
197 197
     if group_created:
@@ -236,10 +236,8 @@ def session_detail_api(request, session):
236 236
 
237 237
     return JsonResponse({
238 238
         'status': 200,
239
-        'message': u'获取照片列表成功',
239
+        'message': u'申请成功',
240 240
         'data': {
241
-            # 'count': photos.count(),
242
-            # 'photos': [p.detail for p in photos],
243 241
             'current_id': latest_photo and latest_photo.pk or current_id,
244 242
             'photos': [photo.photo_info(user_id) for photo in group_photos],
245 243
             'group_id': group_id,