forked from Mapan/odoo17e
55 lines
1.8 KiB
Python
55 lines
1.8 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from odoo import models, fields, api
|
|
from odoo.exceptions import UserError
|
|
from odoo.tools.translate import _
|
|
|
|
|
|
class PosOrder(models.Model):
|
|
_inherit = "pos.order"
|
|
|
|
sweden_blackbox_signature = fields.Char(
|
|
"Sweden Electronic signature",
|
|
help="Electronic signature returned by the Fiscal Data Module",
|
|
readonly=True,
|
|
)
|
|
sweden_blackbox_unit_id = fields.Char(readonly=True)
|
|
sweden_blackbox_tax_category_a = fields.Float(readonly=True)
|
|
sweden_blackbox_tax_category_b = fields.Float(readonly=True)
|
|
sweden_blackbox_tax_category_c = fields.Float(readonly=True)
|
|
sweden_blackbox_tax_category_d = fields.Float(readonly=True)
|
|
sweden_blackbox_device = fields.Many2one(
|
|
related="session_id.config_id.iface_sweden_fiscal_data_module", readonly=True
|
|
)
|
|
is_reprint = fields.Boolean(readonly=True)
|
|
|
|
@api.ondelete(at_uninstall=True)
|
|
def _unlink_except_registered_order(self):
|
|
for order in self:
|
|
if order.config_id.iface_sweden_fiscal_data_module:
|
|
raise UserError(_("Deleting of registered orders is not allowed."))
|
|
|
|
@api.model
|
|
def _order_fields(self, ui_order):
|
|
fields = super()._order_fields(ui_order)
|
|
fields.update({
|
|
key: ui_order.get(key)
|
|
for key in [
|
|
"sweden_blackbox_signature",
|
|
"sweden_blackbox_unit_id",
|
|
"sweden_blackbox_tax_category_a",
|
|
"sweden_blackbox_tax_category_b",
|
|
"sweden_blackbox_tax_category_c",
|
|
"sweden_blackbox_tax_category_d",
|
|
]
|
|
})
|
|
|
|
return fields
|
|
|
|
def set_is_reprint(self):
|
|
self.is_reprint = True
|
|
|
|
def is_already_reprint(self):
|
|
return self.is_reprint
|