incidencia.py 3.02 KB
# -*- coding: utf-8 -*-
from odoo import models, fields, api
import datetime
from datetime import datetime

class hgt_soporte_incidencia(models.Model):
    _name = 'hgt.soporte_incidencia'
    _rec_name='si_numero'
    _order = "id desc"

    si_numero = fields.Char(string='Numero de ticket')

    si_fecha = fields.Datetime(
        string = 'Fecha de creación',
        default=datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    )

    si_responsable = fields.Many2one(
        string = 'Responsable',
        comodel_name = 'res.users',
        ondelete = 'set null',
        default = lambda self: self.env.user.id
    )

    si_descripcion = fields.Text(
        string=u'Descripción',
    )

    si_estado = fields.Many2one('hgt.soporte_estado', string='Estado', track_visibility='onchange', index=True,
    group_expand="_read_group_stage_ids")

    si_responsabilidad = fields.Selection(
        string=u'Responsabilidad',
        selection=[('pro', 'Propia'), ('ter', 'Tercero'), ('cli', 'Cliente'), ('cat', 'Catástrofe')]
    )
    
    si_historico_mensajes = fields.Text(string='Mensajes')

    si_texto_mensaje = fields.Char(string='Mensaje')

    si_mensajes = fields.Many2many('hgt.soporte_mensaje', string=u'Mensajes',
        relation='hgt_soporte_incidencia_mensaje_rel',
        column1='hgt_soporte_incidencia_id',
        column2='hgt_soporte_mensaje_id')

    def enviarMensaje(self):
        if (self.si_texto_mensaje == False) or (self.si_texto_mensaje == ""):
            raise UserError("No se puede enviar un mensaje vacío")
        datos = {'si_mensaje': self.si_texto_mensaje,
        'si_interno': False,
        }
        nvo_mensaje = self.env['hgt.soporte_mensaje'].create(datos)

        lista_msj = []
        for msj in self.si_mensajes:
            lista.append(msj.id)

        lista_msj.append(nvo_mensaje.id)

        self.si_mensajes = lista_msj
        self.si_texto_mensaje = False

    # @api.onchange('si_mensajes')
    # def mostrar_mensajes(self):
    #     for mens in self.si_mensajes:

    #     dom = [["si_numero", "=", val[0]]]
    #     ins =  self.env['hgt.soporte_incidencia'].search(dom, limit=1)
    #     if len(ins) == 0:
    #         #print("no esta en sistema")
    #         return(True)
    #     text_orig = ins.si_ost_mensaje
    #     texto_nuevo = """\n{} {} {} \n{}\n\n#######################################################\n""".format(val[1],val[2],val[4],val[3])
    #     Texto = """{}\n{}""".format(text_orig,texto_nuevo)
    #     #print(Texto)
    #     ins.si_ost_mensaje = Texto
    #     return(True)
     







    # si_url = fields.Char(string='Url de ticketera')

    # _sql_constraints = [('id_ost_uniq', 'unique (id_ost)', 'Id Ticket must be unique.')]
    # si_id_ost = fields.Integer(string='Id osticket')

    # si_ost_cliente = fields.Char(string='Ost cliente')

    # si_ost_asunto = fields.Char(string='Ost asunto')

    # si_ost_mail = fields.Char(string='Ost mail')

    # si_ost_telefeno = fields.Char(string='Ost telefono')

  

    #forma de adjuntar queda pendiente