†员也不允许将自己移除 129
+        return response(GroupStatusCode.NO_UPDATE_PERMISSION)
130
+
131
+    # 群组用户校验
132
+    try:
133
+        group_user = GroupUserInfo.objects.get(group_id=group_id, user_id=user_id, status=True)
134
+    except GroupUserInfo.DoesNotExist:
135
+        return response(GroupUserStatusCode.GROUP_USER_NOT_FOUND)
136
+
137
+    # 群组用户移除
138
+    group_user.user_status = GroupUserInfo.DELETED
139
+    group_user.deleted_at = tc.utc_datetime()
140
+    group_user.save()
141
+
142
+    # Redis 群组数据缓存更新
143
+    group_users = set_group_users_info(group)
144
+
145
+    # Redis 群组删除集合缓存
146
+    r.srem(GROUP_USERS_PASSED_SET % group_id, user_id)
147
+    r.sadd(GROUP_USERS_DELETED_SET % group_id, user_id)
148
+
149
+    return response(200, 'Tour Guide User Remove Success', u'旅行团成员移除成功', {
150
+        'group_id': group_id,
151
+        'users': group_users,
152
+    })
153
+
154
+
155
+@logit
156
+@transaction.atomic
114 157
 def tgu_group_user_update_api(request):
115
-    """ 旅行团用户更新 """
158
+    """ 旅行团成员信息更新 """
116 159
     group_id = request.POST.get('group_id', '')
117 160
     admin_id = request.POST.get('admin_id', '')  # 导游唯一标识
118 161
     user_id = request.POST.get('user_id', '')
@@ -139,7 +182,7 @@ def tgu_group_user_update_api(request):
139 182
 
140 183
     # 权限
141 184
     try:
142
-        group_user = GroupUserInfo.objects.get(group_id=group_id, user_id=user_id, status=True)
185
+        group_user = GroupUserInfo.objects.select_for_update().get(group_id=group_id, user_id=user_id, status=True)
143 186
     except GroupUserInfo.DoesNotExist:
144 187
         return response(GroupUserStatusCode.GROUP_USER_NOT_FOUND)
145 188
 
@@ -160,7 +203,7 @@ def tgu_group_user_update_api(request):
160 203
     # Redis 群组用户数据缓存
161 204
     group_users = set_group_users_info(group)
162 205
 
163
-    return response(200, 'Update Group Success', u'群组更新成功', {
206
+    return response(200, 'Tour Guide User Update Success', u'旅行团成员信息更新成功', {
164 207
         'group_id': group_id,
165 208
         'group': group.data,
166 209
         'users': group_users,
@@ -169,7 +212,7 @@ def tgu_group_user_update_api(request):
169 212
 
170 213
 @logit
171 214
 def tgu_group_user_locations_api(request):
172
-    """ 旅行团所有用户位置信息 """
215
+    """ 旅行团所有成员位置信息 """
173 216
     group_id = request.POST.get('group_id', '')
174 217
     admin_id = request.POST.get('admin_id', '')  # 导游唯一标识
175 218
 
@@ -188,7 +231,7 @@ def tgu_group_user_locations_api(request):
188 231
         'user_info': get_profile_by_id(loc[0])
189 232
     } for loc in locations]
190 233
 
191
-    return response(200, 'Get Tour Guide Group All User Location Success', u'获取旅行团用户地理位置信息成功', {
234
+    return response(200, 'Get Tour Guide Group All User Location Success', u'获取旅行团成员地理位置信息成功', {
192 235
         'group_id': group_id,
193 236
         'locations': locations,
194 237
     })
@@ -196,7 +239,7 @@ def tgu_group_user_locations_api(request):
196 239
 
197 240
 @logit
198 241
 def tgu_group_user_location_api(request):
199
-    """ 旅行团单个用户位置信息 """
242
+    """ 旅行团单个成员位置信息 """
200 243
     group_id = request.POST.get('group_id', '')
201 244
     admin_id = request.POST.get('admin_id', '')  # 导游唯一标识
202 245
     user_id = request.POST.get('user_id', '')
@@ -208,7 +251,7 @@ def tgu_group_user_location_api(request):
208 251
     session_id = r.get(TOUR_GUIDE_GROUP_CUR_SESSION % group_id)
209 252
     locations = r.lrange(TOUR_GUIDE_GROUP_USER_GEO_LIST % (group_id, session_id, user_id), 0, -1)
210 253
 
211
-    return response(200, 'Get Tour Guide Group User Location Success', u'获取旅行团用户地理位置信息成功', {
254
+    return response(200, 'Get Tour Guide Group User Location Success', u'获取旅行团成员地理位置信息成功', {
212 255
         'group_id': group_id,
213 256
         'user_id': user_id,
214 257
         'locations': [json.loads(loc) for loc in locations]

+ 1 - 1
group/views.py

@@ -229,7 +229,7 @@ def group_unlock_api(request):
229 229
 
230 230
 @logit
231 231
 def group_data_api(request):
232
-    """ 群组数据, 评论数, 点赞数 """
232
+    """ 群组数据,评论数,点赞数 """
233 233
     group_id = request.POST.get('group_id', '')
234 234
 
235 235
     return response(200, 'Get Group Data Success', u'获取群组数据成功', {

pai2 - Gogs: Go Git Service

拍爱

Brightcells: 8d6858fb00 adjust website content 10 jaren geleden
..
website 8d6858fb00 adjust website content 10 jaren geleden