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 dsseventdays(models.Model): _name = "dss.eventdays" _description = "DigitalSignage EventSpieltage" _inherit = ['mail.thread','mail.activity.mixin'] _rec_name = "eventname" # _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) eventname = fields.Char('Eventname', required=True) description = fields.Text('EventBeschreibung') eventstartdate = fields.Datetime('EventDatum', required=True) eventenddate = fields.Datetime('EventDatum', required=True) color = fields.Char(string='Color Index') username = fields.Many2one('res.users',string="Kalendercontact") calendarevent = fields.Integer('Kalenderevent ID') category = fields.Char('Kategorie', required=True) @api.model def _default_uuid(self): return str(uuid.uuid4()) @api.model def create(self,vals): result = super().create(vals) return result def pydocalendarEntry(self): event = { 'start': self.eventstartdate.strftime('%Y-%m-%d %H:%M:%S'), 'stop': self.eventenddate.strftime('%Y-%m-%d %H:%M:%S'), 'duration': 24, 'allday': False, 'partner_ids': (4,self.username.partner_id.id), 'name': self.eventname, 'description': self.description, 'user_id': self.username.id, } _logger.debug('linking new event ' + str(event) + ' ' + str(self.uuid)) self.calendarevent=self.env['calendar.event'].create(event)