This commit is contained in:
virusdefender
2015-08-10 12:24:36 +08:00
parent 80697ddefb
commit 09b59d6e43
2 changed files with 7 additions and 5 deletions

View File

@@ -12,6 +12,7 @@ class CreateGroupSerializer(serializers.Serializer):
class EditGroupSerializer(serializers.Serializer): class EditGroupSerializer(serializers.Serializer):
group_id = serializers.IntegerField()
name = serializers.CharField(max_length=20) name = serializers.CharField(max_length=20)
description = serializers.CharField(max_length=300) description = serializers.CharField(max_length=300)
join_group_setting = serializers.IntegerField() join_group_setting = serializers.IntegerField()

View File

@@ -20,9 +20,9 @@ class GroupAPIViewBase(object):
管理员可以查询所有的小组,其他用户查询自己创建的自傲组 管理员可以查询所有的小组,其他用户查询自己创建的自傲组
""" """
if request.user.admin_type == SUPER_ADMIN: if request.user.admin_type == SUPER_ADMIN:
group = Group.object.get(id=group_id, visible=True) group = Group.objects.get(id=group_id, visible=True)
else: else:
group = Group.object.get(id=group_id, visible=True, admin=request.user) group = Group.objects.get(id=group_id, visible=True, admin=request.user)
return group return group
def get_groups(self, request): def get_groups(self, request):
@@ -34,6 +34,7 @@ class GroupAPIViewBase(object):
groups = Group.objects.filter(visible=True) groups = Group.objects.filter(visible=True)
else: else:
groups = Group.objects.filter(admin=request.user, visible=True) groups = Group.objects.filter(admin=request.user, visible=True)
return groups
class GroupAdminAPIView(APIView, GroupAPIViewBase): class GroupAdminAPIView(APIView, GroupAPIViewBase):
@@ -121,11 +122,11 @@ class GroupMemberAdminAPIView(APIView, GroupAPIViewBase):
serializer = EditGroupMemberSerializer(data=request.data) serializer = EditGroupMemberSerializer(data=request.data)
if serializer.is_valid(): if serializer.is_valid():
try: try:
group = self.get_group(request, group_id) group = self.get_group(request, serializer.data["group_id"])
except Group.DoesNotExist: except Group.DoesNotExist:
return error_response(u"小组不存在") return error_response(u"小组不存在")
user_id_list = serializer.data["members"] user_id_list = serializer.data["members"]
UserGroupRelation.objects.delete(group=group, user__id__in=user_id_list) UserGroupRelation.objects.filter(group=group, user__id__in=user_id_list).delete()
return success_response(u"删除成功") return success_response(u"删除成功")
else: else:
return serializer_invalid_response(serializer) return serializer_invalid_response(serializer)
@@ -147,7 +148,7 @@ class JoinGroupAPIView(APIView):
if serializer.is_valid(): if serializer.is_valid():
data = serializer.data data = serializer.data
try: try:
group = Grouo.objects.get(id=data["group_id"]) group = Group.objects.get(id=data["group_id"])
except Group.DesoNotExist: except Group.DesoNotExist:
return error_response(u"小组不存在") return error_response(u"小组不存在")
if group.join_group_setting == 0: if group.join_group_setting == 0: