Commit 69f1a84c authored by Jalin's avatar Jalin

优化 cdn 优化下单逻辑

parent 21b09224
...@@ -100,9 +100,7 @@ class Cdn: ...@@ -100,9 +100,7 @@ class Cdn:
if self.last_check_at: self.last_check_at = str_to_time(self.last_check_at) if self.last_check_at: self.last_check_at = str_to_time(self.last_check_at)
self.available_items = result.get('items', []) self.available_items = result.get('items', [])
self.unavailable_items = result.get('fail_items', []) self.unavailable_items = result.get('fail_items', [])
CommonLog.add_quick_log(CommonLog.MESSAGE_CDN_RESTORE_SUCCESS.format(self.last_check_at, CommonLog.add_quick_log(CommonLog.MESSAGE_CDN_RESTORE_SUCCESS.format(self.last_check_at )).flush()
self.last_check_at + timedelta(
seconds=self.check_keep_second))).flush()
return True return True
return False return False
...@@ -219,7 +217,7 @@ class Cdn: ...@@ -219,7 +217,7 @@ class Cdn:
@classmethod @classmethod
def get_cdn(cls): def get_cdn(cls):
self = cls() self = cls()
if self.is_ready: if self.is_ready and self.available_items:
return random.choice(self.available_items) return random.choice(self.available_items)
return None return None
......
# -*- coding: utf-8 -*-
import datetime import datetime
import hashlib import hashlib
import json import json
......
...@@ -51,7 +51,7 @@ class CommonLog(BaseLog): ...@@ -51,7 +51,7 @@ class CommonLog(BaseLog):
MESSAGE_CDN_START_TO_CHECK = '正在筛选 {} 个 CDN...' MESSAGE_CDN_START_TO_CHECK = '正在筛选 {} 个 CDN...'
MESSAGE_CDN_START_TO_RECHECK = '正在重新筛选 {} 个 CDN...当前时间 {}\n' MESSAGE_CDN_START_TO_RECHECK = '正在重新筛选 {} 个 CDN...当前时间 {}\n'
MESSAGE_CDN_RESTORE_SUCCESS = 'CDN 恢复成功,上次检测 {},下次检测 {}\n' MESSAGE_CDN_RESTORE_SUCCESS = 'CDN 恢复成功,上次检测 {}\n'
MESSAGE_CDN_CHECKED_SUCCESS = '# CDN 检测完成,可用 CDN {} #\n' MESSAGE_CDN_CHECKED_SUCCESS = '# CDN 检测完成,可用 CDN {} #\n'
MESSAGE_CDN_CLOSED = '# CDN 已关闭 #' MESSAGE_CDN_CLOSED = '# CDN 已关闭 #'
......
...@@ -58,7 +58,11 @@ class Order: ...@@ -58,7 +58,11 @@ class Order:
return self.normal_order() return self.normal_order()
def normal_order(self): def normal_order(self):
if not self.submit_order_request(): return order_request_res = self.submit_order_request()
if order_request_res == -1:
return self.order_did_success()
elif not order_request_res:
return
if not self.user_ins.request_init_dc_page(): return if not self.user_ins.request_init_dc_page(): return
if not self.check_order_info(): return if not self.check_order_info(): return
if not self.get_queue_count(): return if not self.get_queue_count(): return
...@@ -75,6 +79,7 @@ class Order: ...@@ -75,6 +79,7 @@ class Order:
OrderLog.notification(OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_TITLE, OrderLog.notification(OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_TITLE,
OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_CONTENT) OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_CONTENT)
self.send_notification() self.send_notification()
return True
def send_notification(self): def send_notification(self):
# num = 0 # 通知次数 # num = 0 # 通知次数
...@@ -117,6 +122,7 @@ class Order: ...@@ -117,6 +122,7 @@ class Order:
# sleep(self.notification_interval) # sleep(self.notification_interval)
OrderLog.add_quick_log(OrderLog.MESSAGE_JOB_CLOSED).flush() OrderLog.add_quick_log(OrderLog.MESSAGE_JOB_CLOSED).flush()
return True
def submit_order_request(self): def submit_order_request(self):
data = { data = {
...@@ -136,7 +142,7 @@ class Order: ...@@ -136,7 +142,7 @@ class Order:
else: else:
if (str(result.get('messages', '')).find('未处理') >= 0): # 未处理订单 if (str(result.get('messages', '')).find('未处理') >= 0): # 未处理订单
self.order_id = 0 # 需要拿到订单号 TODO self.order_id = 0 # 需要拿到订单号 TODO
return self.order_did_success() return -1
OrderLog.add_quick_log( OrderLog.add_quick_log(
OrderLog.MESSAGE_SUBMIT_ORDER_REQUEST_FAIL.format( OrderLog.MESSAGE_SUBMIT_ORDER_REQUEST_FAIL.format(
result.get('messages', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR))).flush() result.get('messages', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR))).flush()
......
...@@ -306,7 +306,7 @@ class UserJob: ...@@ -306,7 +306,7 @@ class UserJob:
if result.get('data.normal_passengers'): if result.get('data.normal_passengers'):
self.passengers = result.get('data.normal_passengers') self.passengers = result.get('data.normal_passengers')
# 将乘客写入到文件 # 将乘客写入到文件
with open(Config().USER_PASSENGERS_FILE % self.user_name, 'w') as f: with open(Config().USER_PASSENGERS_FILE % self.user_name, 'w', encoding='utf-8') as f:
f.write(json.dumps(self.passengers,indent=4, ensure_ascii=False)) f.write(json.dumps(self.passengers,indent=4, ensure_ascii=False))
return self.passengers return self.passengers
else: else:
......
# -*- coding: utf-8 -*-
import json import json
import logging import logging
from datetime import timedelta from datetime import timedelta
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment