@@ -60,6 +60,7 @@ urlpatterns += [ |
||
| 60 | 60 |
url(r'^g/create$', group_views.group_create_api, name='group_create_api'), # 群组创建 |
| 61 | 61 |
url(r'^g/detail$', group_views.group_detail_api, name='group_detail_api'), # 群组详情 |
| 62 | 62 |
url(r'^g/update$', group_views.group_update_api, name='group_update_api'), # 群组更新 |
| 63 |
+ url(r'^g/delete$', group_views.group_delete_api, name='group_delete_api'), # 群组删除 |
|
| 63 | 64 |
url(r'^g/list$', group_views.group_list_api, name='group_list_api'), # 群组列表 |
| 64 | 65 |
url(r'^g/lock$', group_views.group_lock_api, name='group_lock_api'), # 群组锁定 |
| 65 | 66 |
url(r'^g/unlock$', group_views.group_unlock_api, name='group_unlock_api'), # 群组解锁 |
@@ -146,6 +146,36 @@ def group_update_api(request): |
||
| 146 | 146 |
|
| 147 | 147 |
|
| 148 | 148 |
@logit |
| 149 |
+def group_delete_api(request): |
|
| 150 |
+ """ 群组更新 """ |
|
| 151 |
+ group_id = request.POST.get('group_id', '')
|
|
| 152 |
+ admin_id = request.POST.get('admin_id', '') or request.POST.get('user_id', '')
|
|
| 153 |
+ |
|
| 154 |
+ # 群组校验 |
|
| 155 |
+ try: |
|
| 156 |
+ group = GroupInfo.objects.get(group_id=group_id) |
|
| 157 |
+ except GroupInfo.DoesNotExist: |
|
| 158 |
+ return response(GroupStatusCode.GROUP_NOT_FOUND) |
|
| 159 |
+ |
|
| 160 |
+ # 权限校验 |
|
| 161 |
+ if group.admin_id != admin_id: |
|
| 162 |
+ return response(GroupStatusCode.NOT_GROUP_ADMIN) |
|
| 163 |
+ |
|
| 164 |
+ # 照片数量校验 |
|
| 165 |
+ if GroupPhotoInfo.objects.filter(user_id=admin_id, status=True).count(): |
|
| 166 |
+ return response(GroupStatusCode.GROUP_PHOTO_NOT_EMPTY) |
|
| 167 |
+ |
|
| 168 |
+ # 删除群组 |
|
| 169 |
+ group.status = False |
|
| 170 |
+ group.save() |
|
| 171 |
+ |
|
| 172 |
+ # 删除群组用户 |
|
| 173 |
+ GroupUserInfo.objects.filter(group_id=group_id).update(status=False) |
|
| 174 |
+ |
|
| 175 |
+ return response(200, 'Delete Group Success', u'群组删除成功') |
|
| 176 |
+ |
|
| 177 |
+ |
|
| 178 |
+@logit |
|
| 149 | 179 |
def group_list_api(request): |
| 150 | 180 |
""" 群组列表 """ |
| 151 | 181 |
user_id = request.POST.get('user_id', '')
|
@@ -79,6 +79,8 @@ class GroupStatusCode(BaseStatusCode): |
||
| 79 | 79 |
ONLY_ONE_ACTIVE_GROUP_ALLOWED = StatusCodeField(402040, 'Only One Active Group Allowed', description=u'只能创建一个活跃团') |
| 80 | 80 |
ACTIVE_GROUP_NOT_FOUND = StatusCodeField(402041, 'Active Group Not Found', description=u'活跃团不存在') |
| 81 | 81 |
GROUP_HAS_ENDED = StatusCodeField(402042, 'Group Has Ended', description=u'群组已结束') |
| 82 |
+ # 其他 |
|
| 83 |
+ GROUP_PHOTO_NOT_EMPTY = StatusCodeField(402099, 'Group Photo Not Empty', description=u'群组照片不为空') |
|
| 82 | 84 |
|
| 83 | 85 |
|
| 84 | 86 |
class GroupUserStatusCode(BaseStatusCode): |