summaryrefslogtreecommitdiff
path: root/addons/pos_restaurant/static/src/xml
diff options
context:
space:
mode:
authorJoseph Caburnay <jcb@odoo.com>2020-07-31 09:36:39 +0000
committerJoseph Caburnay <jcb@odoo.com>2020-08-12 09:17:34 +0000
commitb0107e9230da5cb5c90819e5bee3e9cd323816ee (patch)
tree110e65cd9a180fbf782a70c392b9378a1f662e89 /addons/pos_restaurant/static/src/xml
parent96f7c5eda84d6b7a1eade31efb8c35aff4ce94c4 (diff)
[IMP] pos_restaurant,point_of_sale: set tip after payment
1. Introduce an option in restaurant config to allow setting tips after payment. 2. Tip form is shown in bills so the customers can choose/set their tips. 3. Validated orders are kept in TipScreen (access via TicketScreen) so that at the end of the day, the user/cashier can set the tips for each validated order. closes odoo/odoo#55488 Task-id: 2117029 Related: odoo/upgrade#1606 Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Diffstat (limited to 'addons/pos_restaurant/static/src/xml')
-rw-r--r--addons/pos_restaurant/static/src/xml/Screens/BillScreen.xml4
-rw-r--r--addons/pos_restaurant/static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml44
-rw-r--r--addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml55
3 files changed, 102 insertions, 1 deletions
diff --git a/addons/pos_restaurant/static/src/xml/Screens/BillScreen.xml b/addons/pos_restaurant/static/src/xml/Screens/BillScreen.xml
index 0c904ece232..34fe66e36ec 100644
--- a/addons/pos_restaurant/static/src/xml/Screens/BillScreen.xml
+++ b/addons/pos_restaurant/static/src/xml/Screens/BillScreen.xml
@@ -10,7 +10,9 @@
<span> </span>
<span>Back</span>
</span>
- <h1>Bill Printing</h1>
+ <div class="top-content-center">
+ <h1>Bill Printing</h1>
+ </div>
<span class="button next highlight" t-on-click="confirm">
<span>Ok</span>
<span> </span>
diff --git a/addons/pos_restaurant/static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml b/addons/pos_restaurant/static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml
index 8d195f6cca2..e8f129507e7 100644
--- a/addons/pos_restaurant/static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml
+++ b/addons/pos_restaurant/static/src/xml/Screens/ReceiptScreen/OrderReceipt.xml
@@ -10,6 +10,50 @@
<xpath expr="//div[hasclass('receipt-change')]" position="attributes">
<attribute name="t-if">!props.isBill</attribute>
</xpath>
+ <xpath expr="//div[hasclass('before-footer')]" position="after">
+ <t t-if="env.pos.config.set_tip_after_payment and !props.order.is_tipped">
+ <div class="tip-form">
+ <div>Add a tip:</div>
+ <div class="percentage-options">
+ <div class="option">
+ <div class="checkbox"></div>
+ <div>
+ <div class="amount">
+ <t t-esc="env.pos.format_currency(receipt.total_with_tax * 0.15)"></t>
+ </div>
+ <div class="percentage">(15%)</div>
+ </div>
+ </div>
+ <div class="option">
+ <div class="checkbox"></div>
+ <div>
+ <div class="amount">
+ <t t-esc="env.pos.format_currency(receipt.total_with_tax * 0.20)"></t>
+ </div>
+ <div class="percentage">(20%)</div>
+ </div>
+ </div>
+ <div class="option">
+ <div class="checkbox"></div>
+ <div>
+ <div class="amount">
+ <t t-esc="env.pos.format_currency(receipt.total_with_tax * 0.25)"></t>
+ </div>
+ <div class="percentage">(25%)</div>
+ </div>
+ </div>
+ </div>
+ <div class="custom-amount">
+ <span>Custom amount:</span>
+ <div class="pos-receipt-right-align">________________________</div>
+ </div>
+ <div class="signature">
+ <span>Signature:</span>
+ <div class="pos-receipt-right-align">________________________</div>
+ </div>
+ </div>
+ </t>
+ </xpath>
</t>
</templates>
diff --git a/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml b/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml
new file mode 100644
index 00000000000..467292a7646
--- /dev/null
+++ b/addons/pos_restaurant/static/src/xml/Screens/TipScreen.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<templates id="template" xml:space="preserve">
+
+ <t t-name="pos_restaurant.TipScreen" owl="1">
+ <div class="tip-screen screen">
+ <div class="screen-content">
+ <div class="top-content">
+ <span class="button back" t-on-click="showScreen('FloorScreen')">
+ <i class="fa fa-angle-double-left"></i>
+ <span> </span>
+ <span>Back</span>
+ </span>
+ <div class="top-content-center">
+ <h1>Add a tip</h1>
+ </div>
+ </div>
+ <div class="tip-options">
+ <div class="total-amount">
+ <t t-esc="env.pos.format_currency(totalAmount)" />
+ </div>
+ <div class="tip-amount-options">
+ <div class="percentage-amounts">
+ <t t-foreach="percentageTips" t-as="tip" t-key="tip.percentage">
+ <div class="button" t-on-click="setTip(tip.amount)">
+ <div class="percentage">
+ <t t-esc="tip.percentage"></t>
+ </div>
+ <div class="amount">
+ <t t-esc="env.pos.format_currency(tip.amount)" />
+ </div>
+ </div>
+ </t>
+ </div>
+ <div class="custom-amount-form">
+ <div class="item label">Custom Amount</div>
+ <div class="item input">
+ <input type="text" t-model="state.inputCustomAmount" />
+ <div class="currency">
+ <t t-esc="env.pos.getCurrencySymbol()" />
+ </div>
+ </div>
+ <div class="item add button" t-on-click="tipCustomAmount">
+ <span>Add</span>
+ </div>
+ </div>
+ <div class="no-tip" t-on-click="goNextScreen">
+ <div class="button">No Tip</div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </div>
+ </t>
+
+</templates>