12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- # -*- coding: utf-8 -*-
- """
- @Time : 2022/5/9 10:51
- @Auth : Locky
- @File :gatewayController.py
- @IDE :PyCharm
- """
- import logging
- import time
- from django.views.generic.base import View
- from Object.ResponseObject import ResponseObject
- from Service.EquipmentInfoService import EquipmentInfoService
- class GatewayView(View):
- def get(self, request, *args, **kwargs):
- request.encoding = 'utf-8'
- operation = kwargs.get('operation')
- return self.validation(request.GET, request, operation)
- def post(self, request, *args, **kwargs):
- request.encoding = 'utf-8'
- operation = kwargs.get('operation')
- return self.validation(request.POST, request, operation)
- def validation(self, request_dict, request, operation):
- response = ResponseObject()
- if operation == 'gatewayPush': # 网关推送
- return self.gateway_push(request_dict, response)
- else:
- return response.json(414)
- def gateway_push(self, request_dict, response):
- logger = logging.getLogger('info')
- src_addr = request_dict.get('src_addr', None)
- event_type = request_dict.get('event_type', None)
- alarm = request_dict.get('alarm', None)
- logger.info('---调用网关推送接口--- request_dict:{}'.format(request_dict))
- if not all([src_addr, event_type, alarm]):
- return response.json(444)
- equipment_info_list = []
- now_time = int(time.time())
- device_user_id = '160879593527813800138000'
- try:
- equipment_info_list.append(EquipmentInfoService.get_equipment_info_obj(
- now_time,
- add_time=now_time,
- event_time=now_time,
- receive_time=now_time,
- device_uid=src_addr,
- event_type=event_type,
- alarm=alarm,
- device_nick_name=src_addr,
- device_user_id=device_user_id,
- ))
- return response.json(0)
- except Exception as e:
- return response.json(500, repr(e))
|