Browse Source

新增批量刪除排程

guanhailong 2 years ago
parent
commit
e1462b2b35
1 changed files with 27 additions and 64 deletions
  1. 27 64
      Controller/SensorGateway/SmartSocketController.py

+ 27 - 64
Controller/SensorGateway/SmartSocketController.py

@@ -18,7 +18,7 @@ from django.db.models import Sum
 from django.http import QueryDict
 from django.views import View
 
-from Model.models import SocketInfo, SocketSchedule, Device_Info, UidSetModel, SocketPowerStatistics
+from Model.models import SocketInfo, SocketSchedule, Device_Info, SocketPowerStatistics
 from Object.ResponseObject import ResponseObject
 from Object.utils import LocalDateTimeUtil
 from Service.CommonService import CommonService
@@ -74,8 +74,8 @@ class SmartSocketView(View):
             return self.get_socket_schedule(request_dict, response)
         elif operation == 'get-log':  # 智能插座开关日志记录查询
             return self.get_log(request_dict, response)
-        elif operation == 'editor-socket-device':  # 编辑设备信息
-            return self.editor_socket_device(request_dict, response)
+        elif operation == 'del-socket-schedule':  # 批量刪除排程
+            return self.del_socket_schedule(request_dict, response, user_id)
         return response.json(404)
 
     @classmethod
@@ -570,67 +570,6 @@ class SmartSocketView(View):
         # device_id_list = []
         pass
 
-    @staticmethod
-    def editor_socket_device(request_dict, response):
-        """
-        编辑设备
-        """
-        # 编辑插座信息
-        # serial_number = request_dict.get('serialNumber', None)
-        # NickName = request_dict.get('NickName', None)
-        # # room_save
-        # # familyRoom = request_dict.get('familyRoom', None)
-        # type_switch = request_dict.get('typeSwitch', None)  # 1:倒计时开关
-        # status = request_dict.get('status', None)  # 开关状态 0:关闭,1:开启'
-        #
-        # # 编辑插座排程
-        # count_down_time = request_dict.get('countDownTime', None)  # 倒计时时间戳
-        # time_type = request_dict.get('timeType', None)  # 排查时间类型 0:按时间 1:按时间段划分'
-        # switch_status = request_dict.get('switchStatus', None)  # 开关状态 0:关闭,1:开启
-        # start_time = request_dict.get('startTime', None)
-        # end_time = request_dict.get('endTime', None)
-        # repeat = request_dict.get('repeat', None)  # 重复周期用数值表示
-        #
-        # if not all([serial_number]):
-        #     return response.json(444)
-        # socket_info_qs = SocketInfo.objects.filter(serial_number=serial_number)
-        # device_info_qs = Device_Info.objects.filter(serial_number=serial_number)
-        # uid_set_qs = UidSetModel.objects.filter(serial_number=serial_number)
-        # if not socket_info_qs.exists() or not device_info_qs.exists() or not uid_set_qs.exists():
-        #     return response.json(173)
-        # try:
-        #     with transaction.atomic():
-        #         if NickName:
-        #             device_info_qs.update(NickName=NickName)
-        #             uid_set_qs.update(nickname=NickName)
-        #         elif type_switch:
-        #             socket_info_qs.update(type_switch=type_switch)
-        #         elif status:
-        #             socket_info_qs.update(status=status)
-        #         elif count_down_time:
-        #             socket_info_qs.update(count_down_time=count_down_time)
-        #         socket_qs = SocketSchedule.objects.filter(serial_number=serial_number)
-        #         if not socket_qs.exists():
-        #             socket_info_qs.save()
-        #             return response(0)
-        #         elif time_type:
-        #             socket_qs.update(time_type=time_type)
-        #         elif switch_status:
-        #             socket_qs.update(switch_status=switch_status)
-        #         elif start_time:
-        #             socket_qs.update(start_time=start_time)
-        #         elif end_time:
-        #             socket_qs.update(end_time=end_time)
-        #         elif repeat:
-        #             socket_qs.update(repeat=repeat)
-        #         socket_info_qs.save()
-        #         socket_qs.save()
-        #         return response.json(0)
-        # except Exception as e:
-        #     print(e)
-        #     return response.json(500)
-        pass
-
     @classmethod
     def splittings_time(cls, startTime, endTime, unit):
         diction = {}
@@ -676,3 +615,27 @@ class SmartSocketView(View):
             diction['endMonth_time'] = endMonth_time
         diction['time_list'] = time_list
         return diction
+
+    @staticmethod
+    def del_socket_schedule(request_dict, response, user_id):
+        """
+        批量刪除排程
+        @param request_dict: 请求参数
+        @param user_id: 用戶user_id
+        @request_dict ids: 排程id
+        @request_dict serialNumber: 设备序列号
+        @param response: 响应对象
+        @return: response
+        """
+        ids = request_dict.get('ids', None)
+        serial_number = request_dict.get('serialNumber', None)
+        if not all({ids, serial_number}):
+            return response.json(444, {'error param': 'id or serialNumber'})
+        device_info_qs = Device_Info.objects.filter(userID_id=user_id, serial_number=serial_number)
+        if not device_info_qs.exists():
+            return response.json(173)
+        socket_schedule_qs = SocketSchedule.objects.filter(id__in=ids.split(','))
+        if not socket_schedule_qs.exists():
+            return response.json(173)
+        socket_schedule_qs.delete()
+        return response.json(0)