积分金额显示,全局500错误捕获

parent 5736769a
......@@ -49,6 +49,16 @@ def add_errorhandler(app):
return response
@app.errorhandler(500)
def handle_flask_error(error):
# response 的 json 内容为自定义错误代码和错误信息
response = jsonify({'statusCode': '9999', 'message': '服务器错误'})
# response 返回 error 发生时定义的标准错误代码
response.status_code = 200
return response
@app.before_request
def before_request():
......
......@@ -32,9 +32,10 @@ class TopUpOrder(Resource):
args = self.parser.parse_args()
args['user_id'] = request.user_id
data = order_service.TopUpOrderService().get_order(args)
if not data.get('content', None):
raise CustomFlaskErr(Errors.NO_ORDERS)
resp = request.return_success
if not data.get('content', None):
resp['attributes'] = []
else:
resp['attributes'] = data
return resp
......@@ -77,10 +78,12 @@ class ConsumeOrder(Resource):
user_id = request.user_id
args['user_id'] = request.user_id
data = order_service.CurriculumOrderService().get_order(args)
if not data.get('content', None):
raise CustomFlaskErr(Errors.NO_ORDERS)
resp = request.return_success
resp['attributes'] = data
if not data.get('content', None):
resp['attributes'] = []
else:
resp['attributes'] = data
return resp
def post(self):
......
......@@ -150,7 +150,7 @@ class CurriculumOrderService:
order = {**order, **curriculum_res.get(prod_id, None)}
temp_orders.append(order)
temp_orders = temp_orders[offset: offset+pageSize]
allowed = {'id', 'title', 'cover', 'info', 'ab_type', 'ab_payment', 'ab_pay_mode', 'ab_ordernum', 'transaction_serial_no', 'pay_method', 'createtime', 'pay_time', 'complete_time',
allowed = {'id', 'title', 'cover', 'info', 'ab_type', 'ab_payment', 'ab_score', 'ab_pay_mode', 'ab_ordernum', 'transaction_serial_no', 'pay_method', 'createtime', 'pay_time', 'complete_time',
'ab_status'}
for r in temp_orders:
keys = set(r.keys()) - allowed
......@@ -169,9 +169,10 @@ class CurriculumOrderService:
with TAMP_SQL(tamp_user_engine) as tamp_user, TAMP_SQL(tamp_pay_engine) as tamp_pay:
tamp_user_session, tamp_pay_session = tamp_user.session, tamp_pay.session
args['ab_ordernum'] = time.strftime('%Y%m%d', time.localtime(time.time())) + str(int(time.time() * 100000))
amount = tamp_user_session.query(CurriculumPrice.price).filter(CurriculumPrice.rel_id == args['ab_proid']).first()[0]
amount = tamp_user_session.query(CurriculumPrice.price).filter(CurriculumPrice.rel_id == args['ab_proid']).first()
if not amount:
raise CustomFlaskErr(Errors.PROD_NOPRICE)
amount = amount[0]
args['id'] = OrderFlow.__tablename__ + str(int(time.time() * 100000))
args['ab_payment'] = amount
args['ab_status'] = 'WAIT'
......@@ -381,7 +382,7 @@ def getAllOrders(args):
temp_orders.append(order)
else:
temp_orders.append(order)
allowed = {'id', 'title', 'cover', 'info', 'ab_type', 'ab_payment', 'ab_pay_mode', 'ab_ordernum',
allowed = {'id', 'title', 'cover', 'info', 'ab_type', 'ab_payment', 'ab_score', 'ab_pay_mode', 'ab_ordernum',
'transaction_serial_no', 'pay_method', 'createtime', 'pay_time', 'complete_time',
'ab_status'}
for r in temp_orders:
......
This source diff could not be displayed because it is too large. You can view the blob instead.
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