Переглянути джерело

房间删除接口,家庭模块model移除时间索引

zhangdongming 3 роки тому
батько
коміт
f1dc1a1933
2 змінених файлів з 40 додано та 13 видалено
  1. 13 13
      Model/models.py
  2. 27 0
      SensorGateway/GatewayFamilyRoomController.py

+ 13 - 13
Model/models.py

@@ -2225,7 +2225,7 @@ class AiService(models.Model):
     endTime = models.BigIntegerField(verbose_name='套餐结束时间', db_index=True, default=0)
     addTime = models.IntegerField(verbose_name='添加时间', default=0)
     updTime = models.BigIntegerField(verbose_name='更新时间', default=0)
-    use_status = models.IntegerField(verbose_name='使用状态', default=0)    # 0:未使用, 1:使用中, 2:已过期
+    use_status = models.IntegerField(verbose_name='使用状态', default=0)  # 0:未使用, 1:使用中, 2:已过期
     # 1:人, 2:动物, 3:车, 4:包裹
     detect_group = models.CharField(blank=True, default='1', max_length=100, verbose_name='侦测类型')
     detect_interval = models.IntegerField(verbose_name='推送间隔', default=60)  # 秒
@@ -2417,8 +2417,8 @@ class UserFamily(models.Model):
     name = models.CharField(max_length=50, db_index=True, verbose_name=u'家庭名称', default='', blank=True)
     location = models.CharField(max_length=100, verbose_name='位置', blank=True, default='')
     sort = models.IntegerField(default=99, blank=True, verbose_name=u'排序,越小越靠前')
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'user_family'
@@ -2432,8 +2432,8 @@ class FamilyMemberPermission(models.Model):
     name = models.CharField(max_length=50, verbose_name=u'权限名称', default='')
     sort = models.IntegerField(default=99, blank=True, verbose_name=u'排序,越小越靠前')
     describe = models.CharField(max_length=128, blank=True, verbose_name='权限描述', default=0)
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'family_member_permission'
@@ -2452,8 +2452,8 @@ class FamilyMember(models.Model):
     identity = models.SmallIntegerField(default=0, verbose_name='状态{0:普通成员,1:屋主}')
     permission = models.ForeignKey(FamilyMemberPermission, to_field='id', default='', on_delete=models.CASCADE,
                                    verbose_name='关联用户家庭id')
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'family_member'
@@ -2467,8 +2467,8 @@ class FamilyRoom(models.Model):
     family = models.ForeignKey(UserFamily, to_field='id', default='', on_delete=models.CASCADE,
                                verbose_name='关联用户家庭id')
     sort = models.IntegerField(default=99, blank=True, verbose_name=u'排序,越小越靠前')
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'family_room'
@@ -2483,8 +2483,8 @@ class FamilyRoomDevice(models.Model):
     device = models.ForeignKey(Device_Info, to_field='id', default='', on_delete=models.CASCADE,
                                verbose_name='关联设备信息id')
     sort = models.IntegerField(default=0, blank=True, verbose_name=u'排序,越小越靠前')
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'family_room_device'
@@ -2499,8 +2499,8 @@ class FamilyMemberJoin(models.Model):
     family = models.ForeignKey(UserFamily, to_field='id', default='', on_delete=models.CASCADE,
                                verbose_name='关联用户家庭id')
     status = models.SmallIntegerField(default=0, verbose_name='状态{0:未确认,1:拒绝,2:同意}')
-    updated_time = models.IntegerField(default=0, db_index=True, verbose_name='更新时间')
-    created_time = models.IntegerField(default=0, db_index=True, verbose_name='创建时间')
+    updated_time = models.IntegerField(default=0, verbose_name='更新时间')
+    created_time = models.IntegerField(default=0, verbose_name='创建时间')
 
     class Meta:
         db_table = 'family_member_join'

+ 27 - 0
SensorGateway/GatewayFamilyRoomController.py

@@ -43,6 +43,9 @@ class GatewayFamilyRoomView(View):
         # 房间排序
         elif operation == 'sort':
             return self.room_sort_save(request_dict, response)
+        # 房间删除
+        elif operation == 'del':
+            return self.room_del(request_dict, response)
 
     @classmethod
     def room_device_save(cls, app_user_id, request_dict, response):
@@ -73,6 +76,30 @@ class GatewayFamilyRoomView(View):
                     qs.update(room_id=0) if operate == 1 else qs.update(room_id=int(room_id))
             return response.json(0)
 
+    @classmethod
+    def room_del(cls, request_dict, response):
+        """
+        房间多选删除
+        @param request_dict: 请求参数
+        @param response: 响应参数
+        @return:
+        """
+        ids = request_dict.getlist('roomIds', None)
+        if not ids:
+            return response.json(444)
+        try:
+            with transaction.atomic():
+                for item in ids:
+                    room_id = int(item)
+                    room_device = FamilyRoomDevice.objects.filter(room_id=room_id)
+                    if room_device.exists():
+                        room_device.update(room_id=0)
+                    FamilyRoom.objects.filter(id=room_id).delete()
+                return response.json(0)
+        except Exception as e:
+            print(e)
+            return response.json(177, repr(e))
+
     @classmethod
     def room_sort_save(cls, request_dict, response):
         """