import uuid import logging #from symbol import return_stmt #sys.path.append('/opt/odoo') from odoo import api, fields, models, _ from odoo import tools from odoo.exceptions import ValidationError from . import dss_settings from datetime import date from datetime import datetime from dateutil.relativedelta import relativedelta _logger = logging.getLogger(__name__) class dssinvoices(models.Model): _name = "dss.invoices" _description = "DigitalSignage Rechnungen" _inherit = ['mail.thread','mail.activity.mixin','dss.triggermodel'] _rec_name = "invoiceid" uuid = fields.Char(default=lambda self: self._default_uuid(), required=True, readonly=True, copy=False, string='UUID') date_create = fields.Date('Erstellungsdatum',default=lambda self: self._default_create_date()) user_create = fields.Char('Erstellungsuser',default=lambda self: self._default_create_user()) from_import = fields.Many2one("dss.importinvoicelist",string="Importdatensatz",tracking=True) from_import_name = fields.Char(related="from_import.autoimportname") contract = fields.Many2one("dss.contracts",string="Importdatensatz",tracking=True) contract_name = fields.Char(related="contract.contract_auto_name",tracking=True) invoiceid = fields.Char("Rechnungsnummer",required=True,tracking=True) invoicename = fields.Char("Rechnungsempfänger",tracking=True) invoiceclientnr = fields.Char("Rechnungskundennummer",tracking=True) invoice_date = fields.Date("Rechnungsdatum",tracking=True) is_printed = fields.Boolean("Gedruckt",tracking=True) ammount_netto = fields.Char("Rechnungsbetrag Nettobetrag",tracking=True) ammount_ust = fields.Char("Rechnungs-ust",tracking=True) ammount_brutto = fields.Char("Rechnungs Bruttobetrag",tracking=True) is_payed = fields.Boolean("Bezahlt",tracking=True) is_payed_date = fields.Date("Zahlung erkannt",tracking=True) invoice_type = fields.Char("Vorgangsart",tracking=True) invoice_reference = fields.Char("Auftragsnummer",tracking=True) def _track_template(self, changes): res = super()._track_template(changes) self.trigger_track_template(changes, self) return res @api.model def _default_uuid(self): return str(uuid.uuid4()) def _default_create_date(self): return str(date.today()) def _default_create_user(self): return str(self.env.user.name)