[FIX] pos_restaurant: transfer empty order

Before this fix, if an empty order gets transfered to another table, the
screen gets stuck on the floorplan until the window is refreshed.
With this fix the new table is opened.
This commit is contained in:
Gert Pellin
2019-09-13 10:05:44 +00:00
committed by Pierre Masereel
parent ff4e4d8985
commit bc863ef4a5
2 changed files with 31 additions and 2 deletions
@@ -926,8 +926,14 @@ models.PosModel = models.PosModel.extend({
self.set_table(table);
}
});
} else if (ids_to_remove.length) {
self.remove_from_server_and_set_sync_state(ids_to_remove);
} else {
if (ids_to_remove.length) {
self.remove_from_server_and_set_sync_state(ids_to_remove);
}
if (self.order_to_transfer_to_different_table && table) {
self.order_to_transfer_to_different_table = null;
self.set_table(table);
}
}
this.set_order(null); // unset curent selected order
@@ -81,6 +81,22 @@ odoo.define('pos_reataurant.tour.synchronized_table_management', function (requi
return steps;
}
function transfer_order_to_table(table_id, order_uid) {
return [{
content: 'Click transfer button',
trigger: '.control-button:contains("Transfer")',
run: 'click',
}, {
content: 'Transfer order to table ' + table_id,
trigger: '.label:contains(' + table_id +')',
run: 'click',
}, {
content: 'Check if order ' + order_uid + ' is open after transfer',
trigger: '.order-button.selected .order-sequence:contains("' + order_uid + '")',
run: function(){} // Check
}];
}
function finish_order() {
var steps = [{
content: "validate the order",
@@ -164,11 +180,18 @@ odoo.define('pos_reataurant.tour.synchronized_table_management', function (requi
}];
steps = steps.concat(open_table('T5', 1));
steps = steps.concat(verify_order_total('4.40'));
// Test transfering an order
steps = steps.concat(transfer_order_to_table('T4', '002-0001'));
steps = steps.concat(goto_payment_screen_and_select_payment_method());
steps = steps.concat(generate_payment_screen_keypad_steps('4.40'));
steps = steps.concat(finish_order());
steps = steps.concat(open_table('T2'));
// Test transfering an empty order
steps = steps.concat(transfer_order_to_table('T4', '2'));
steps = steps.concat(add_product_to_order('Coca-Cola'));
steps = steps.concat(verify_order_total('2.20'));
steps = steps.concat([{