|
@@ -19,6 +19,8 @@ import cv2
|
|
|
from botocore import client
|
|
|
from django.db import transaction
|
|
|
|
|
|
+from Ansjer.config import CONFIG_INFO
|
|
|
+from Ansjer.cn_config.config_formal import CONFIG_INFO
|
|
|
from Controller.DeviceConfirmRegion import Device_Region
|
|
|
from Object.AWS.AmazonS3Util import AmazonS3Util
|
|
|
from Object.RedisObject import RedisObject
|
|
@@ -161,8 +163,10 @@ class testView(View):
|
|
|
elif operation == 'serial-repetition': # 用与测试序列号重复接口
|
|
|
response = ResponseObject('cn')
|
|
|
return self.serial_repetition_test(request_dict, response)
|
|
|
- if operation == 'getSerialNumberInfo': # 序列号信息查询
|
|
|
- return self.getSerialNumberInfo(request_dict, response, requests)
|
|
|
+ elif operation == 'getSerialNumberInfo': # 序列号信息查询
|
|
|
+ return self.getSerialNumberInfo(request_dict, response)
|
|
|
+ elif operation == 'get-serial-details': # 序列号信息查询
|
|
|
+ return self.get_serial_details(request_dict, response)
|
|
|
else:
|
|
|
return 123
|
|
|
|
|
@@ -859,14 +863,27 @@ class testView(View):
|
|
|
return response.json(500, repr(e))
|
|
|
|
|
|
@staticmethod
|
|
|
- def getSerialNumberInfo(request_dict, response, requests):
|
|
|
+ def getSerialNumberInfo(request_dict, response):
|
|
|
logger = logging.getLogger('info')
|
|
|
- serial_number = request_dict.get("serialNumber", None)
|
|
|
+ serial_number = request_dict.get('serialNumber', None)
|
|
|
if not serial_number:
|
|
|
return response.json(444)
|
|
|
+ serialNumber = serial_number[:9]
|
|
|
serial_number = serial_number[:6]
|
|
|
try:
|
|
|
- data = {}
|
|
|
+ uid_user_message = {
|
|
|
+ "uid": "",
|
|
|
+ "serialNumber": "",
|
|
|
+ "userID": "",
|
|
|
+ "username": "",
|
|
|
+ "primaryUserID": ""
|
|
|
+ }
|
|
|
+ data = {
|
|
|
+ "uid": "",
|
|
|
+ "serialNumber": serialNumber,
|
|
|
+ "status": "",
|
|
|
+ "uid_user_message": uid_user_message
|
|
|
+ }
|
|
|
company_serial_qs = CompanySerialModel.objects.filter(serial_number=serial_number).values('status')
|
|
|
if not company_serial_qs.exists():
|
|
|
return response.json(173)
|
|
@@ -876,7 +893,6 @@ class testView(View):
|
|
|
company_serial__serial_number=serial_number).values('uid__uid', 'uid__status',
|
|
|
'company_serial__serial_number')
|
|
|
if not uid_company_serial_qs.exists() and company_serial_qs[0]['status'] != 0:
|
|
|
- data['serial_number'] = serial_number
|
|
|
if company_serial_qs[0]['status'] == 1:
|
|
|
data['status'] = '已分配'
|
|
|
if company_serial_qs[0]['status'] == 2:
|
|
@@ -885,11 +901,9 @@ class testView(View):
|
|
|
data['status'] = '已占用'
|
|
|
return response.json(0, data)
|
|
|
for uid_company_serial in uid_company_serial_qs:
|
|
|
- data = {
|
|
|
- 'uid': uid_company_serial['uid__uid'],
|
|
|
- 'serialNumber': uid_company_serial['company_serial__serial_number'],
|
|
|
- 'status': uid_company_serial['uid__status'],
|
|
|
- }
|
|
|
+ data['uid'] = uid_company_serial['uid__uid']
|
|
|
+ data['serialNumber'] = serialNumber
|
|
|
+ data['status'] = uid_company_serial['uid__status']
|
|
|
if company_serial_qs[0]['status'] == 1:
|
|
|
data['status'] = '已分配'
|
|
|
if company_serial_qs[0]['status'] == 2:
|
|
@@ -902,24 +916,38 @@ class testView(View):
|
|
|
'serial_number',
|
|
|
'userID_id',
|
|
|
'primaryUserID',
|
|
|
- 'NickName', )
|
|
|
+ 'userID__username')
|
|
|
uid_user_message = {
|
|
|
'uid': device_info_qs[0]['UID'] if device_info_qs.exists() else '',
|
|
|
'serialNumber': device_info_qs[0]['serial_number'] if device_info_qs.exists() else '',
|
|
|
'userID': device_info_qs[0]['userID_id'] if device_info_qs.exists() else '',
|
|
|
- 'username': device_info_qs[0]['NickName'] if device_info_qs.exists() else '',
|
|
|
+ 'username': device_info_qs[0]['userID__username'] if device_info_qs.exists() else '',
|
|
|
'primaryUserID': device_info_qs[0]['primaryUserID'] if device_info_qs.exists() else ''
|
|
|
}
|
|
|
data['uid_user_message'] = uid_user_message
|
|
|
- # url = 'http://www.dvema.com/testApi/getSerialNumberInfo'
|
|
|
- # requests_data = {'serialNumber':serial_number}
|
|
|
- # res = requests.post(url=url, data=requests_data)
|
|
|
- # if res.status_code != 200:
|
|
|
- # fail_reason = '请求国外服务器序列号信息查询响应状态码异常'
|
|
|
- # logger.info('查询异常:{}'.format(fail_reason))
|
|
|
- # return response.json(500)
|
|
|
-
|
|
|
return response.json(0, data)
|
|
|
except Exception as e:
|
|
|
logger.info('查询异常:{}'.format(e))
|
|
|
return response.json(500)
|
|
|
+
|
|
|
+ @classmethod
|
|
|
+ def get_serial_details(cls, request_dict, response):
|
|
|
+ serial_number = request_dict.get("serialNumber", None)
|
|
|
+ results_data = []
|
|
|
+ if CONFIG_INFO == 'cn':
|
|
|
+ local_response = cls.getSerialNumberInfo(request_dict, response)
|
|
|
+ res = json.loads(local_response.content)
|
|
|
+ res['result']['server'] = 1
|
|
|
+ results_data.append(res['result'])
|
|
|
+ res1 = requests.post("http://www.dvema.com/testApi/getSerialNumberInfo",
|
|
|
+ data={'serialNumber': serial_number}, timeout=3)
|
|
|
+ results1 = json.loads(res1.text)
|
|
|
+ results1['result']['server'] = 2
|
|
|
+ results_data.append(results1['result'])
|
|
|
+ res2 = requests.post("https://api.zositeche.com/testApi/getSerialNumberInfo",
|
|
|
+ data={'serialNumber': serial_number}, timeout=3)
|
|
|
+ results2 = json.loads(res2.text)
|
|
|
+ results2['result']['server'] = 3
|
|
|
+ results_data.append(results2['result'])
|
|
|
+ return response.json(0, results_data)
|
|
|
+ return response.json(0)
|