91 lines
3.1 KiB
Python
Executable File
91 lines
3.1 KiB
Python
Executable File
|
|
# -*- coding: utf-8 -*
|
|
|
|
import ast
|
|
import datetime
|
|
import json
|
|
import re
|
|
import uuid
|
|
import logging
|
|
import base64
|
|
import subprocess
|
|
import tempfile
|
|
|
|
import easywebdav
|
|
import os
|
|
import os.path
|
|
|
|
|
|
from odoo import api, fields, models, _
|
|
from odoo import tools
|
|
from odoo.exceptions import ValidationError
|
|
from datetime import date
|
|
from datetime import datetime
|
|
from dateutil.relativedelta import relativedelta
|
|
from pyffmpeg import FFmpeg
|
|
from tuya_iot import TuyaOpenAPI, TUYA_LOGGER
|
|
from tuya_connector import TuyaOpenAPI, TUYA_LOGGER
|
|
import sys
|
|
|
|
TUYA_LOGGER.setLevel(logging.DEBUG)
|
|
_logger = logging.getLogger(__name__)
|
|
|
|
class dsspayintervals(models.Model):
|
|
_name = "dss.payintervals"
|
|
_description = "DigitalSignage Abrechnungsintervalle"
|
|
_inherit = ['mail.thread','mail.activity.mixin']
|
|
_rec_name = "payintervalname"
|
|
# _inherit = ['mail.thread', 'mail.activity.mixin']
|
|
uuid = fields.Char(default=lambda self: self._default_uuid(), required=True, readonly=True, copy=False, string='UUID')
|
|
# uuid = fields.Char('UUID', required=True, translate=True)
|
|
payintervalname = fields.Char('Interval Name', required=True)
|
|
description = fields.Text('Interval Beschreibung')
|
|
monate = fields.Float('Interval in Monaten')
|
|
|
|
@api.model
|
|
def _default_uuid(self):
|
|
return str(uuid.uuid4())
|
|
|
|
class dsspaysystems(models.Model):
|
|
_name = "dss.paysystems"
|
|
_description = "DigitalSignage Abrechnungsarten"
|
|
_inherit = ['mail.thread','mail.activity.mixin']
|
|
_rec_name = "payname"
|
|
# _inherit = ['mail.thread', 'mail.activity.mixin']
|
|
uuid = fields.Char(default=lambda self: self._default_uuid(), required=True, readonly=True, copy=False, string='UUID')
|
|
# uuid = fields.Char('UUID', required=True, translate=True)
|
|
payname = fields.Char('Abrechnungsname', required=True)
|
|
payonset = fields.Many2many('dss.paysystem_fields')
|
|
description = fields.Text('EventBeschreibung')
|
|
send_info = fields.Boolean('Informationsemail senden ?')
|
|
send_info_to = fields.Many2one('res.users')
|
|
send_info_template = fields.Many2one('mail.template')
|
|
amount = fields.Float('Kosten')
|
|
icon = fields.Image()
|
|
|
|
@api.model
|
|
def _default_uuid(self):
|
|
return str(uuid.uuid4())
|
|
|
|
|
|
|
|
class dsspaysystemfields(models.Model):
|
|
_name = "dss.paysystem_fields"
|
|
_description = "DigitalSignage Abrechnungsarten_felder"
|
|
_inherit = ['mail.thread','mail.activity.mixin']
|
|
_rec_name = "feldname"
|
|
# _inherit = ['mail.thread', 'mail.activity.mixin']
|
|
uuid = fields.Char(default=lambda self: self._default_uuid(), required=True, readonly=True, copy=False, string='UUID')
|
|
# uuid = fields.Char('UUID', required=True, translate=True)
|
|
feldname = fields.Char('Abrechnungs_Feldname', required=True)
|
|
payonfieldset = fields.Selection([('VE','Vertragseingang'),('KA','Korrekturabzug'),('ES','Einspielung'),('CH','Jede Änderung'),('XH','X, Änderung')])
|
|
changecount = fields.Integer('Änderungsnummer')
|
|
description = fields.Text('EventBeschreibung')
|
|
amount = fields.Float('Kosten')
|
|
|
|
@api.model
|
|
def _default_uuid(self):
|
|
return str(uuid.uuid4())
|
|
|
|
|