diff --git a/addons/l10n_gcc_pos/static/src/js/OrderReceipt.js b/addons/l10n_gcc_pos/static/src/js/OrderReceipt.js index 7072d6096e0..678414bc295 100644 --- a/addons/l10n_gcc_pos/static/src/js/OrderReceipt.js +++ b/addons/l10n_gcc_pos/static/src/js/OrderReceipt.js @@ -8,9 +8,7 @@ patch(OrderReceipt.prototype, "l10n_gcc_pos.OrderReceipt", { const receipt_render_env = this._super(...arguments); const receipt = receipt_render_env.receipt; const country = receipt_render_env.order.pos.company.country; - receipt.is_gcc_country = ["SA", "AE", "BH", "OM", "QA", "KW"].includes( - country && country.code - ); + receipt.is_gcc_country = country ? ["SA", "AE", "BH", "OM", "QA", "KW"].includes(country && country.code) : false; return receipt_render_env; }, }); diff --git a/addons/l10n_sa_pos/models/__init__.py b/addons/l10n_sa_pos/models/__init__.py index 7aa5ec302c4..8236d58c6b7 100644 --- a/addons/l10n_sa_pos/models/__init__.py +++ b/addons/l10n_sa_pos/models/__init__.py @@ -2,3 +2,4 @@ # Part of Odoo. See LICENSE file for full copyright and licensing details. from . import pos_order +from . import pos_config diff --git a/addons/l10n_sa_pos/models/pos_config.py b/addons/l10n_sa_pos/models/pos_config.py new file mode 100644 index 00000000000..7892ebfde9e --- /dev/null +++ b/addons/l10n_sa_pos/models/pos_config.py @@ -0,0 +1,15 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. +from odoo import models +from odoo.exceptions import UserError +from odoo.tools.translate import _ + + +class pos_config(models.Model): + _inherit = 'pos.config' + + def open_ui(self): + for config in self: + if not config.company_id.country_id: + raise UserError(_("You have to set a country in your company setting.")) + return super(pos_config, self).open_ui() diff --git a/addons/l10n_sa_pos/static/src/js/models.js b/addons/l10n_sa_pos/static/src/js/models.js index b16347a193f..76db2b64407 100644 --- a/addons/l10n_sa_pos/static/src/js/models.js +++ b/addons/l10n_sa_pos/static/src/js/models.js @@ -6,7 +6,7 @@ import { patch } from "@web/core/utils/patch"; patch(Order.prototype, "l10n_sa_pos.Order", { export_for_printing() { const result = this._super(...arguments); - if (this.pos.company.country.code === "SA") { + if (this.pos.company.country && this.pos.company.country.code === "SA") { result.is_settlement = this.is_settlement(); if (!result.is_settlement) { const codeWriter = new window.ZXing.BrowserQRCodeSvgWriter();