Ver código fonte

设备重置完善日志、OTA设备下载文件加日志、查询欧洲序列号状态改回HTTPS

zhangdongming 1 ano atrás
pai
commit
75b6ebe0f9

+ 21 - 4
AdminController/DeviceManagementController.py

@@ -45,7 +45,7 @@ class DeviceManagement(View):
         if operation == 'addDeviceType':
             return self.addDeviceType(request, request_dict, response)
         elif operation == 'delDeviceData':  # 删除设备数据
-            return self.del_device_data(request_dict, response)
+            return self.del_device_data(request, request_dict, response)
         elif operation == 'getDeviceIcon':  # app获取设备图标
             response = ResponseObject(language)
             return self.get_device_icon(request_dict, response)
@@ -410,7 +410,7 @@ class DeviceManagement(View):
             return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
 
     @staticmethod
-    def del_device_data(request_dict, response):
+    def del_device_data(request, request_dict, response):
         uidList = request_dict.get('uidList', None)
         delDataOptions = request_dict.get('delDataOptions', None)
         serialNumberList = request_dict.get('serialNumberList', None)
@@ -418,15 +418,28 @@ class DeviceManagement(View):
             return response.json(444)
         # 记录日志
         content = json.loads(json.dumps(request_dict))
+        ip = CommonService.get_ip_address(request)
+        log = {
+            'user_id': 2,
+            'status': 200,
+            'time': int(time.time()),
+            'url': 'deviceManagement/delDeviceData',
+            'content': delDataOptions,
+            'ip': ip,
+            'operation': '上传文件设备重置删除前:{}'.format(json.dumps(content)),
+        }
+        LogModel.objects.create(**log)
         try:
-
             with transaction.atomic():
                 if uidList:
                     #  uid
                     uidList = uidList.splitlines()  # 按行('\r', '\r\n', \n')切割字符串返回列表
                     uid_list = []
                     for uid in uidList:
-                        uid_list.append(uid.replace(" ", ""))
+                        uid_val = uid.replace(" ", "")
+                        if not uid_val:
+                            continue
+                        uid_list.append(uid_val)
                     uidList = uid_list
                 else:
                     #  序列号
@@ -434,6 +447,8 @@ class DeviceManagement(View):
                     serial_number_list = []
                     for serial_number in serialNumberList:
                         serial_number = serial_number.replace(" ", "")
+                        if not serial_number:
+                            continue
                         serial_number_list.append(serial_number[0:6])
                     uid_company_serial_qs = UIDCompanySerialModel.objects.filter(
                         company_serial__serial_number__in=serial_number_list).values('uid__uid')
@@ -484,6 +499,7 @@ class DeviceManagement(View):
                     'time': int(time.time()),
                     'url': 'deviceManagement/delDeviceData',
                     'content': json.dumps(content),
+                    'ip': ip,
                     'operation': '删除数据的设备列表:{}'.format(device_list),
                 }
                 LogModel.objects.create(**log)
@@ -496,6 +512,7 @@ class DeviceManagement(View):
                 'time': int(time.time()),
                 'url': 'deviceManagement/delDeviceData',
                 'content': json.dumps(content),
+                'ip': ip,
                 'operation': '删除数据失败的设备列表:{},{},{}'.format(device_list, e.__traceback__.tb_lineno, repr(e)),
             }
             LogModel.objects.create(**log)

+ 13 - 1
Controller/OTAEquipment.py

@@ -14,7 +14,7 @@ from django.views.generic import TemplateView
 
 from Ansjer.config import BASE_DIR
 from Ansjer.config import SERVER_DOMAIN
-from Model.models import Device_User, EquipmentVersionLimitModel, CountryIPModel, DeviceOTAUpgradeRecord
+from Model.models import Device_User, EquipmentVersionLimitModel, CountryIPModel, DeviceOTAUpgradeRecord, LogModel
 from Model.models import Equipment_Version
 from Object.RedisObject import RedisObject
 from Object.ResponseObject import ResponseObject
@@ -742,6 +742,18 @@ def downloadOTAInterfaceV2(request, fullPath, *callback_args, **callback_kwargs)
                     uid=uid,
                     mci=mci,
                 )
+                ip = CommonService.get_ip_address(request)
+                content = json.loads(json.dumps(device_dist))
+                log = {
+                    'ip': ip,
+                    'user_id': 2,
+                    'status': 200,
+                    'time': int(time.time()),
+                    'url': 'dlotapack',
+                    'content': json.dumps(content),
+                    'operation': 'uid:{},旧版本{}升级为新版本{}'.format(uid, old_version, new_version),
+                }
+                LogModel.objects.create(**log)
                 return response
             except Exception as e:
                 return res.json(906, repr(e))

+ 4 - 4
Controller/TestApi.py

@@ -992,10 +992,10 @@ class testView(View):
 
             def fetch_data(url, data, server_info, results_data):
                 try:
-                    max_retries = 5
+                    max_retries = 3
                     res = ""
                     for i in range(max_retries):
-                        res = requests.post(url, data=data, timeout=15)
+                        res = requests.post(url, data=data, timeout=10)
                         if res.status_code == 200:
                             break
                     result = json.loads(res.text)
@@ -1010,8 +1010,8 @@ class testView(View):
                  {"server": 1, "serverName": "中国服", "domainName": "https://www.zositechc.cn"}),
                 ("https://www.dvema.com/testApi/getSerialNumberInfo", {"serialNumber": serial_number},
                  {"server": 2, "serverName": "美国服", "domainName": "https://www.dvema.com"}),
-                ("http://api.zositeche.com/testApi/getSerialNumberInfo", {"serialNumber": serial_number},
-                 {"server": 3, "serverName": "欧洲服", "domainName": "http://api.zositeche.com"}),
+                ("https://api.zositeche.com/testApi/getSerialNumberInfo", {"serialNumber": serial_number},
+                 {"server": 3, "serverName": "欧洲服", "domainName": "https://api.zositeche.com"}),
                 ("https://test.zositechc.cn/testApi/getSerialNumberInfo", {"serialNumber": serial_number},
                  {"server": 4, "serverName": "测试服", "domainName": "https://test.zositechc.cn"})
             ]