|
@@ -19,7 +19,7 @@ from Ansjer.config import OSS_STS_ACCESS_SECRET, OSS_STS_ACCESS_KEY
|
|
|
from Controller.DeviceConfirmRegion import Device_Region
|
|
|
from Model.models import Device_Info, UID_Bucket, UID_Preview, UidSetModel, UidChannelSetModel, \
|
|
|
iotdeviceInfoModel, UIDModel, Device_User, UserFamily, FamilyMember, FamilyMemberPermission, \
|
|
|
- FamilyRoomDevice, FamilyRoom
|
|
|
+ FamilyRoomDevice, FamilyRoom, FamilyMemberJoin
|
|
|
from Object.ResponseObject import ResponseObject
|
|
|
from Object.TokenObject import TokenObject
|
|
|
from Service.CommonService import CommonService
|
|
@@ -85,9 +85,50 @@ class EquipmentFamilyView(View):
|
|
|
# 成员权限修改
|
|
|
elif operation == 'permission-update':
|
|
|
return self.changes_member_permission(user_id, request_dict, response)
|
|
|
+ elif operation == 'family/del':
|
|
|
+ return self.family_family_del(user_id, request_dict, response)
|
|
|
else:
|
|
|
return response.json(414)
|
|
|
|
|
|
+ @classmethod
|
|
|
+ def family_family_del(cls, user_id, request_dict, response):
|
|
|
+ """
|
|
|
+ 删除家庭
|
|
|
+ @param user_id:
|
|
|
+ @param request_dict:
|
|
|
+ @param response:
|
|
|
+ @return:
|
|
|
+ """
|
|
|
+ family_id = request_dict.get('familyId', None)
|
|
|
+ if not family_id:
|
|
|
+ return response.json(444)
|
|
|
+ family_id = int(family_id)
|
|
|
+ permission = cls.get_member_permission_details(user_id, family_id)
|
|
|
+ if not permission or permission == '003':
|
|
|
+ return response.json(404)
|
|
|
+ user_family_qs = UserFamily.objects.filter(id=family_id, user_id=user_id)
|
|
|
+ if not user_family_qs.exists():
|
|
|
+ return response.json(173)
|
|
|
+ count = UserFamily.objects.filter(user_id=user_id).count()
|
|
|
+ if count <= 1:
|
|
|
+ return response.json(10057)
|
|
|
+ family_room_device_qs = FamilyRoomDevice.objects.filter(family_id=family_id)
|
|
|
+ if family_room_device_qs.exists():
|
|
|
+ family_room_device_qs.delete()
|
|
|
+ family_join_qs = FamilyMemberJoin.objects.filter(family_id=family_id)
|
|
|
+ if family_join_qs.exists():
|
|
|
+ family_join_qs.delete()
|
|
|
+ family_room_qs = FamilyRoom.objects.filter(family_id=family_id)
|
|
|
+ if family_room_qs.exists():
|
|
|
+ family_room_qs.delete()
|
|
|
+ family_member_qs = FamilyMember.objects.filter(family_id=family_id)
|
|
|
+ if family_member_qs.exists():
|
|
|
+ family_member_qs.delete()
|
|
|
+ family_qs = UserFamily.objects.filter(id=family_id)
|
|
|
+ if family_qs.exists():
|
|
|
+ family_qs.delete()
|
|
|
+ return response.json(0)
|
|
|
+
|
|
|
@classmethod
|
|
|
def do_save(cls, user_id, request_dict, response, request):
|
|
|
"""
|