controllers_incide.py 1.57 KB
from requests.sessions import session
from odoo import http

TOKEN ="""a2354mtrgre3456783edfghoiuhEDSfvwerd-5644-fgdh34ergdf"""

class controlador_incidencias(http.Controller):

    @http.route('/incidencias/crear', auth='public', type='json' , website=False ,csrf=False, methods = ['POST','GET'])
    def index(self, **kw):
        if not kw["token"] == TOKEN:
            return({"resultado":"ALERTA DE SEGURIDAD error autenticacion"})

        inci_model = http.request.env["hgt.incidencias"].sudo()
        incidencia = inci_model.search([('in_id_si', '=', kw["in_id_si"] ),("url_sis_cliente","=", kw['cliente_URL'] )]) # le falta la url para que este dominio cumpla la logica
        serv_model = http.request.env["asw.servicio_falange"].sudo()
        if len(incidencia) == 0:
            nva_incidencia = self.crearIncidencia2(inci_model, serv_model, kw)
        else:
            nva_incidencia = False
        return(nva_incidencia.id)

    def crearIncidencia2(self, i_model, s_model, kw):
        url = kw['cliente_URL']
        servicio = s_model.search([('sfa_link', '=', url)]) #Porque duplicar la url? o me sirve para manejar multiple urls
        val = {
            'in_fecha': kw['in_fecha'],
            'name': kw['name'],
            'descripcion': kw['descripcion'],
            'in_id_si': kw["in_id_si"],
            'url_sis_cliente': url, 
        }
        #print(servicio, url)
        #print(val)
        nva_inci = i_model.create(val)
        #print(nva_inci)
        if servicio: 
            cli = servicio.cliente
            nva_inci.cliente = cli.id

        return(nva_inci)