瀏覽代碼

创建家庭同时可多选创建房间

zhangdongming 3 年之前
父節點
當前提交
76be470a77
共有 1 個文件被更改,包括 14 次插入1 次删除
  1. 14 1
      Controller/SensorGateway/GatewayFamilyMemberController.py

+ 14 - 1
Controller/SensorGateway/GatewayFamilyMemberController.py

@@ -15,7 +15,7 @@ from django.views.generic.base import View
 
 from Controller.SensorGateway.EquipmentFamilyController import EquipmentFamilyView
 from Model.models import UserFamily, FamilyMemberJoin, FamilyMember, SysMsgModel, FamilyMemberPermission, \
-    Device_User, FamilyRoomDevice
+    Device_User, FamilyRoomDevice, FamilyRoom
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
 from Object.TokenObject import TokenObject
@@ -137,6 +137,7 @@ class GatewayFamilyMemberView(View):
             return response.json(444)
         n_time = int(time.time())
         location = request_dict.get('location', '')
+        room_names = request_dict.get('roomNames', None)
         try:
             with transaction.atomic():
                 member_permission_qs = FamilyMemberPermission.objects.filter(no='001').values('id')
@@ -151,6 +152,18 @@ class GatewayFamilyMemberView(View):
                                                 user_name=device_user.username, identity=1,
                                                 permission_id=int(permission_id), sort=1, updated_time=n_time,
                                                 created_time=n_time)
+                if room_names:
+                    names = room_names.split(',')
+                    rooms = []
+                    for index, item in enumerate(names):
+                        rooms.append(FamilyRoom(
+                            name=item,
+                            family_id=user_family.id,
+                            sort=index,
+                            updated_time=n_time,
+                            created_time=n_time
+                        ))
+                    FamilyRoom.objects.bulk_create(rooms)
                 return response.json(0)
         except Exception as e:
             print(e)