|
@@ -3,6 +3,7 @@
|
|
|
import boto3
|
|
|
import botocore
|
|
|
import requests
|
|
|
+from django.db.models import Q
|
|
|
from django.views.generic.base import View
|
|
|
|
|
|
from Object.IPWeatherObject import IPQuery
|
|
@@ -10,7 +11,7 @@ from Object.ResponseObject import ResponseObject
|
|
|
from Object.TokenObject import TokenObject
|
|
|
from Service.CommonService import CommonService
|
|
|
from Model.models import Device_Info, RequestRecordModel, iotdeviceInfoModel, Access_Log, DeviceLogModel, LogModel, \
|
|
|
- AppLogModel, AppScannedSerial, StsFrequency, DeviceDomainRegionModel, IPAddr, CountryModel
|
|
|
+ AppLogModel, AppScannedSerial, StsFrequency, DeviceDomainRegionModel, IPAddr, CountryModel, RegionModel
|
|
|
from Ansjer.config import REGION_NAME, ACCESS_KEY_ID, SECRET_ACCESS_KEY, LOG_BUCKET
|
|
|
|
|
|
|
|
@@ -426,7 +427,7 @@ class LogManagementView(View):
|
|
|
line = int(page_size)
|
|
|
|
|
|
try:
|
|
|
- device_domain_qs = DeviceDomainRegionModel.objects.all()
|
|
|
+ device_domain_qs = DeviceDomainRegionModel.objects.filter(~Q(country_code=''))
|
|
|
if serial_number:
|
|
|
device_domain_qs = device_domain_qs.filter(serial_number__contains=serial_number)
|
|
|
count = device_domain_qs.count()
|
|
@@ -435,6 +436,7 @@ class LogManagementView(View):
|
|
|
device_domain_list = []
|
|
|
for device_domain in device_domain_qs:
|
|
|
ip = device_domain['ip']
|
|
|
+ region_id = device_domain['region_id']
|
|
|
country_code = device_domain['country_code']
|
|
|
ip_addr_qs = IPAddr.objects.filter(ip=ip, is_geoip2=False).values('region')
|
|
|
if ip_addr_qs.exists():
|
|
@@ -445,22 +447,24 @@ class LogManagementView(View):
|
|
|
|
|
|
# 港澳台返回美洲域名
|
|
|
if country_code == 'CN' and region in ['香港', '澳门', '台湾']:
|
|
|
- country_code = 'NA'
|
|
|
-
|
|
|
- country_qs = CountryModel.objects.filter(country_code=country_code).\
|
|
|
- values('region__name', 'region__api')
|
|
|
- api = ''
|
|
|
- region_name = ''
|
|
|
- if country_qs.exists():
|
|
|
- api = country_qs[0]['region__api']
|
|
|
- region_name = country_qs[0]['region__name']
|
|
|
+ country_code = region
|
|
|
+
|
|
|
+ # 查询域名数据
|
|
|
+ region_qs = RegionModel.objects.filter(id=region_id).values('api', 'name')
|
|
|
+
|
|
|
+ api = 'https://www.dvema.com/'
|
|
|
+ region_name = '美洲'
|
|
|
+ if region_qs.exists():
|
|
|
+ api = region_qs[0]['api']
|
|
|
+ region_name = region_qs[0]['name']
|
|
|
+
|
|
|
api_region = region_name + '域名'
|
|
|
|
|
|
device_domain_list.append({
|
|
|
'id': device_domain['id'],
|
|
|
'serial_number': device_domain['serial_number'],
|
|
|
'ip': ip,
|
|
|
- 'region_id': device_domain['region_id'],
|
|
|
+ 'region_id': region_id,
|
|
|
'country_code': country_code,
|
|
|
'api': api,
|
|
|
'api_region': api_region,
|