60 lines
2.4 KiB
Python
Executable File
60 lines
2.4 KiB
Python
Executable File
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)
|
|
|