You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

64 lines
2.5 KiB

/** @odoo-module */
import { patch } from "@web/core/utils/patch";
import { FloorScreen } from "@pos_restaurant/app/floor_screen/floor_screen";
import { TextInputPopup } from "@point_of_sale/app/utils/input_popups/text_input_popup"
import { AlertDialog, ConfirmationDialog } from "@web/core/confirmation_dialog/confirmation_dialog";
import { _t } from "@web/core/l10n/translation";
patch(FloorScreen.prototype, {
async reserve() {
// Function for reserve table in pos with entering details
const tables = this.selectedTables;
const table = tables[0];
var self = this
if (!table) return;
if (table.reserved){
this.dialog.add(AlertDialog, {
title: _t("Reserved"),
body: _t(
"This table is reserved"
),
});
return;
}
this.dialog.add(TextInputPopup, {
title: _t("Reservation Details ?"),
placeholder: _t("reservation details"),
getPayload: async (details) => {
self.pos.data.write("restaurant.table", [table.id], { reserved: true, reservation_details: details });
},
});
},
async vieInfo() {
// Function for view reservation details
const tables = this.selectedTables;
const table = tables[0];
if (!table) return;
if (table.reserved){
var info = table.reservation_details
console.log(info)
this.dialog.add(AlertDialog, {
title: _t("Reservation Details"),
body: info,
});
return;
}
},
async un_reserve() {
// Function for un reserve reserved table in pos
const tables = this.selectedTables;
const table = tables[0];
var self = this
if (!table) return;
if (table.reserved){
this.dialog.add(ConfirmationDialog, {
title: _t('Confirm Unreservation'),
body: _t('Are you sure you want to unreserve this table?'),
confirm: async () => {
self.pos.data.write("restaurant.table", [table.id], { reserved: false, reservation_details: '' });
},
});
}
},
});