|
@@ -7,6 +7,7 @@ import time
|
|
|
import uuid
|
|
|
|
|
|
import paypalrestsdk
|
|
|
+import requests
|
|
|
import xlrd
|
|
|
import xlwt
|
|
|
from django.db import transaction, connection
|
|
@@ -20,7 +21,7 @@ from Controller.Cron.CronTaskController import CronUpdateDataView
|
|
|
from Controller.UnicomCombo.UnicomComboTaskController import UnicomComboTaskView
|
|
|
from Model.models import VodBucketModel, CDKcontextModel, Store_Meal, Order_Model, \
|
|
|
UID_Bucket, ExperienceContextModel, Lang, CloudLogModel, UidSetModel, Unused_Uid_Meal, \
|
|
|
- Device_Info, DeviceTypeModel, UnicomComboOrderInfo, AiService, CountryModel
|
|
|
+ Device_Info, DeviceTypeModel, UnicomComboOrderInfo, AiService, CountryModel, AbnormalOrder
|
|
|
from Object.ResponseObject import ResponseObject
|
|
|
from Object.TokenObject import TokenObject
|
|
|
from Object.UnicomObject import UnicomObjeect
|
|
@@ -92,6 +93,10 @@ class serveManagement(View):
|
|
|
return self.downloadCDK(request_dict, response)
|
|
|
elif operation == 'getDeviceOrderList':
|
|
|
return self.getDeviceOrderList(request_dict, response)
|
|
|
+ elif operation == 'getAbnormalOrderList':
|
|
|
+ return self.getAbnormalOrderList(request_dict, response)
|
|
|
+ elif operation == 'updateAbnormalOrder':
|
|
|
+ return self.updateAbnormalOrder(request_dict, response)
|
|
|
elif operation == 'deleteDeviceOrder':
|
|
|
return self.deleteDeviceOrder(userID, request_dict, response)
|
|
|
elif operation == 'getDevicePackageList': # 云存设备套餐
|
|
@@ -800,6 +805,73 @@ class serveManagement(View):
|
|
|
print(e)
|
|
|
return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
|
|
|
+ def getAbnormalOrderList(self, request_dict, response):
|
|
|
+ print('request_dict: ', request_dict)
|
|
|
+ pageNo = request_dict.get('page_no', None)
|
|
|
+ pageSize = request_dict.get('page_size', None)
|
|
|
+ order_id = request_dict.get('order_id', None)
|
|
|
+ username = request_dict.get('username', None)
|
|
|
+ pay_type = request_dict.get('pay_type', None)
|
|
|
+ status = request_dict.get('status', None)
|
|
|
+ trade_no = request_dict.get('trade_no', None)
|
|
|
+ agreement_id = request_dict.get('agreement_id', None)
|
|
|
+ start_time = request_dict.get('start_time', None)
|
|
|
+ end_time = request_dict.get('end_time', None)
|
|
|
+
|
|
|
+ if not all([pageNo, pageSize]):
|
|
|
+ return response.json(444)
|
|
|
+
|
|
|
+ page = int(pageNo)
|
|
|
+ line = int(pageSize)
|
|
|
+ try:
|
|
|
+ order_qs = AbnormalOrder.objects.all()
|
|
|
+ # 筛选指定订单
|
|
|
+ if order_id:
|
|
|
+ order_qs = order_qs.filter(order_id=order_id)
|
|
|
+ if username:
|
|
|
+ order_qs = order_qs.filter(username=username)
|
|
|
+ if pay_type:
|
|
|
+ order_qs = order_qs.filter(pay_type=pay_type)
|
|
|
+ if status:
|
|
|
+ order_qs = order_qs.filter(status=status)
|
|
|
+ if trade_no:
|
|
|
+ order_qs = order_qs.filter(trade_no=trade_no)
|
|
|
+ if agreement_id:
|
|
|
+ order_qs = order_qs.filter(agreement_id=agreement_id)
|
|
|
+ if start_time and end_time:
|
|
|
+ order_qs = order_qs.filter(pay_time__gte=start_time, pay_time__lt=end_time)
|
|
|
+ if not order_qs.exists():
|
|
|
+ return response.json(0, [])
|
|
|
+ count = order_qs.count()
|
|
|
+ order_qs = order_qs.values("id", "order_id", "username", "pay_type", "status", "trade_no", "agreement_id",
|
|
|
+ "price", "pay_time").order_by('-pay_time')[(page - 1) * line:page * line]
|
|
|
+ return response.json(0, {'list': list(order_qs), 'total': count})
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
+
|
|
|
+ def updateAbnormalOrder(self, request_dict, response):
|
|
|
+ abnormal_order_id = request_dict.get('id', None)
|
|
|
+ if not all([abnormal_order_id]):
|
|
|
+ return response.json(444)
|
|
|
+ abnormal_order = AbnormalOrder.objects.filter(id=abnormal_order_id)
|
|
|
+ if not abnormal_order.exists():
|
|
|
+ return response.json(173)
|
|
|
+ try:
|
|
|
+ trade_no = abnormal_order.values('trade_no')[0]['trade_no']
|
|
|
+ order_qs = Order_Model.objects.filter(trade_no=trade_no)
|
|
|
+ if order_qs.exists():
|
|
|
+ abnormal_order.update(status=1)
|
|
|
+ return response.json(0)
|
|
|
+ params = {'trade_no': trade_no}
|
|
|
+ eur_response = requests.get('https://www.zositeche.com/testApi/checkOrderExist', params=params)
|
|
|
+ if eur_response.status_code == 200:
|
|
|
+ result = eur_response.json()
|
|
|
+ if result['result_code'] == 0 and result['result']['is_exist']:
|
|
|
+ abnormal_order.update(status=1)
|
|
|
+ return response.json(0)
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
+
|
|
|
def vodOrderReconcile(self, request, request_dict, response):
|
|
|
|
|
|
file = request.FILES.get('file', None)
|