修复提交订单成功后不停止排队 #35
This commit is contained in:
@@ -47,6 +47,8 @@ class CommonLog(BaseLog):
|
||||
|
||||
MESSAGE_GET_RESPONSE_FROM_FREE_AUTO_CODE = '从免费打码获取结果失败'
|
||||
|
||||
MESSAGE_RESPONSE_EMPTY_ERROR = '网络错误'
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.init_data()
|
||||
|
||||
@@ -17,6 +17,7 @@ class OrderLog(BaseLog):
|
||||
MESSAGE_CHECK_ORDER_INFO_FAIL = '检查订单失败,错误原因 {} \n'
|
||||
MESSAGE_CHECK_ORDER_INFO_SUCCESS = '检查订单成功'
|
||||
|
||||
MESSAGE_GET_QUEUE_INFO_SUCCESS = '获取排队信息成功,目前排队人数 {}, 余票还剩余 {} 张'
|
||||
MESSAGE_GET_QUEUE_COUNT_SUCCESS = '排队成功,你当前排在第 {} 位, 余票还剩余 {} 张'
|
||||
MESSAGE_GET_QUEUE_LESS_TICKET = '排队失败,目前排队人数已经超过余票张数'
|
||||
MESSAGE_GET_QUEUE_COUNT_FAIL = '排队失败,错误原因 {}'
|
||||
|
||||
@@ -29,7 +29,7 @@ class UserLog(BaseLog):
|
||||
MESSAGE_USER_BEING_DESTROY = '用户 {} 已退出'
|
||||
MESSAGE_USER_COOKIE_NOT_FOUND_FROM_REMOTE = '用户 {} 状态加载中...'
|
||||
|
||||
MESSAGE_WAIT_USER_INIT_COMPLETE = '账号正在初始化,{} 秒后自动重试'
|
||||
MESSAGE_WAIT_USER_INIT_COMPLETE = '账号正在登录中,{} 秒后自动重试'
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
|
||||
@@ -83,8 +83,9 @@ class Order:
|
||||
Notification.send_email(Config().EMAIL_RECEIVER, OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_TITLE,
|
||||
OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_OF_EMAIL_CONTENT.format(self.order_id))
|
||||
if Config().DINGTALK_ENABLED: # 钉钉通知
|
||||
Notification.dingtalk_webhook(OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_OF_EMAIL_CONTENT.format(self.order_id))
|
||||
if Config().TELEGRAM_ENABLED: # Telegram推送
|
||||
Notification.dingtalk_webhook(
|
||||
OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_OF_EMAIL_CONTENT.format(self.order_id))
|
||||
if Config().TELEGRAM_ENABLED: # Telegram推送
|
||||
Notification.send_to_telegram(
|
||||
OrderLog.MESSAGE_ORDER_SUCCESS_NOTIFICATION_OF_EMAIL_CONTENT.format(self.order_id))
|
||||
if Config().SERVERCHAN_ENABLED: # ServerChan通知
|
||||
@@ -235,12 +236,12 @@ class Order:
|
||||
|
||||
current_position = int(result.get('data.countT', 0))
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_GET_QUEUE_COUNT_SUCCESS.format(current_position, ticket_number)).flush()
|
||||
OrderLog.MESSAGE_GET_QUEUE_INFO_SUCCESS.format(current_position, ticket_number)).flush()
|
||||
return True
|
||||
else:
|
||||
# 加入小黑屋
|
||||
OrderLog.add_quick_log(OrderLog.MESSAGE_GET_QUEUE_COUNT_FAIL.format(
|
||||
result.get('messages', result.get('validateMessages', '-')))).flush()
|
||||
result.get('messages', result.get('validateMessages', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR)))).flush()
|
||||
return False
|
||||
|
||||
def confirm_single_for_queue(self):
|
||||
@@ -297,10 +298,11 @@ class Order:
|
||||
else:
|
||||
# 加入小黑屋 TODO
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_CONFIRM_SINGLE_FOR_QUEUE_ERROR.format(result.get('data.errMsg', '-'))).flush()
|
||||
OrderLog.MESSAGE_CONFIRM_SINGLE_FOR_QUEUE_ERROR.format(
|
||||
result.get('data.errMsg', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR))).flush()
|
||||
else:
|
||||
OrderLog.add_quick_log(OrderLog.MESSAGE_CONFIRM_SINGLE_FOR_QUEUE_FAIL.format(
|
||||
result.get('messages', '-'))).flush()
|
||||
result.get('messages', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR))).flush()
|
||||
return False
|
||||
|
||||
def query_order_wait_time(self):
|
||||
@@ -344,14 +346,31 @@ class Order:
|
||||
order_id = result_data.get('orderId')
|
||||
if order_id: # 成功
|
||||
return order_id
|
||||
elif result_data.get('waitTime') != -100:
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_WAITING.format(result_data.get('waitCount', 0),
|
||||
result_data.get('waitTime'))).flush()
|
||||
elif 'waitTime' in result_data:
|
||||
# 计算等待时间
|
||||
wait_time = int(result_data.get('waitTime'))
|
||||
if wait_time == -1 or wait_time == -100: # 成功
|
||||
# /otn/confirmPassenger/resultOrderForDcQueue 请求订单状态 目前不需要
|
||||
# 不应该走到这
|
||||
return order_id
|
||||
elif wait_time >= 0: # 等待
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_WAITING.format(result_data.get('waitCount', 0),
|
||||
wait_time)).flush()
|
||||
else:
|
||||
if wait_time == -2 or wait_time == -3: # -2 失败 -3 订单已撤销
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_FAIL.format(result_data.get('msg'))).flush()
|
||||
else: # 未知原因
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_FAIL.format(
|
||||
result_data.get('msg', wait_time))).flush()
|
||||
|
||||
elif result_data.get('msg'): # 失败 对不起,由于您取消次数过多,今日将不能继续受理您的订票请求。1月8日您可继续使用订票功能。
|
||||
# TODO 需要增加判断 直接结束
|
||||
OrderLog.add_quick_log(
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_FAIL.format(result_data.get('msg', '-'))).flush()
|
||||
OrderLog.MESSAGE_QUERY_ORDER_WAIT_TIME_FAIL.format(
|
||||
result_data.get('msg', CommonLog.MESSAGE_RESPONSE_EMPTY_ERROR))).flush()
|
||||
stay_second(self.retry_time)
|
||||
return False
|
||||
elif result.get('messages') or result.get('validateMessages'):
|
||||
|
||||
@@ -45,10 +45,10 @@ class Web:
|
||||
|
||||
def start(self):
|
||||
if not Config().WEB_ENABLE or Config().is_slave(): return
|
||||
if Config().IS_DEBUG:
|
||||
self.run_session()
|
||||
else:
|
||||
create_thread_and_run(self, 'run_session', wait=False)
|
||||
# if Config().IS_DEBUG:
|
||||
# self.run_session()
|
||||
# else:
|
||||
create_thread_and_run(self, 'run_session', wait=False)
|
||||
|
||||
def run_session(self):
|
||||
debug = False
|
||||
|
||||
Reference in New Issue
Block a user