diff options
| author | Joseph Caburnay <jcb@odoo.com> | 2020-07-31 09:36:39 +0000 |
|---|---|---|
| committer | Joseph Caburnay <jcb@odoo.com> | 2020-08-12 09:17:34 +0000 |
| commit | b0107e9230da5cb5c90819e5bee3e9cd323816ee (patch) | |
| tree | 110e65cd9a180fbf782a70c392b9378a1f662e89 /addons/pos_restaurant/static/src/xml | |
| parent | 96f7c5eda84d6b7a1eade31efb8c35aff4ce94c4 (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')
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> |
