feat: implement order cancellation for assemblies and handle error responses
This commit is contained in:
@@ -149,6 +149,14 @@ def cancel_assembly():
|
|||||||
'message': 'У вас нет активных сборок'
|
'message': 'У вас нет активных сборок'
|
||||||
}
|
}
|
||||||
return jsonify(response)
|
return jsonify(response)
|
||||||
|
order_id = assembly.order_id
|
||||||
|
sipro_response = sipro.api.orders.cancel_order_assembly(order_id)
|
||||||
|
if not sipro_response.get('ok'):
|
||||||
|
response = {
|
||||||
|
'ok': False,
|
||||||
|
'message': f'Ошибка: {sipro_response.get("message")}'
|
||||||
|
}
|
||||||
|
return jsonify(response)
|
||||||
database.db.session.delete(assembly)
|
database.db.session.delete(assembly)
|
||||||
database.db.session.commit()
|
database.db.session.commit()
|
||||||
response = {
|
response = {
|
||||||
|
|||||||
@@ -58,4 +58,11 @@ def attach_crpt(order_product_id, crpt):
|
|||||||
def need_crpt_by_order_id(order_id):
|
def need_crpt_by_order_id(order_id):
|
||||||
method = f'{router}/needCrptByOrder?orderId={order_id}'
|
method = f'{router}/needCrptByOrder?orderId={order_id}'
|
||||||
response = client.method('GET', method)
|
response = client.method('GET', method)
|
||||||
|
return response
|
||||||
|
|
||||||
|
|
||||||
|
def cancel_order_assembly(order_id):
|
||||||
|
method = f'{router}/cancelOrderAssembly'
|
||||||
|
data = {'orderId': order_id}
|
||||||
|
response = client.method('POST', method, data=data)
|
||||||
return response
|
return response
|
||||||
Reference in New Issue
Block a user