Commit 7df08155 by Maria Agustina

809 PARA TESTEAR

1 parent 319aabdc
...@@ -17,7 +17,7 @@ class controlador_incidencias(http.Controller): ...@@ -17,7 +17,7 @@ class controlador_incidencias(http.Controller):
return (True) return (True)
else: else:
nva_incidencia = self.crearIncidencia2(inci_model, kw) nva_incidencia = self.crearIncidencia2(inci_model, kw)
return(nva_incidencia.id) return(nva_incidencia.id)
def crearIncidencia2(self, model, kw): def crearIncidencia2(self, model, kw):
nva_inci = model.create({ nva_inci = model.create({
...@@ -27,7 +27,6 @@ class controlador_incidencias(http.Controller): ...@@ -27,7 +27,6 @@ class controlador_incidencias(http.Controller):
'descripcion': kw['descripcion'], 'descripcion': kw['descripcion'],
'in_id_si': kw["in_id_si"], 'in_id_si': kw["in_id_si"],
}) })
return(nva_inci) return(nva_inci)
\ No newline at end of file \ No newline at end of file
...@@ -17,7 +17,7 @@ datos_json = json.dumps(datos) ...@@ -17,7 +17,7 @@ datos_json = json.dumps(datos)
f = requests.post(URL+'/soporte/alta/2', data=datos_json, headers=headers) f = requests.post(URL+'/soporte/alta/2', data=datos_json, headers=headers)
frespuesta = f.json() frespuesta = f.json()
print(frespuesta) #print(frespuesta)
data = { data = {
......
...@@ -4,7 +4,6 @@ from odoo import models, fields, api ...@@ -4,7 +4,6 @@ from odoo import models, fields, api
from datetime import datetime from datetime import datetime
import requests, json import requests, json
URL = 'http://s2.hgtec.com.ar:8005'
headers = {'Content-Type': 'application/json'} headers = {'Content-Type': 'application/json'}
class hgt_incidencias(models.Model): class hgt_incidencias(models.Model):
...@@ -12,6 +11,11 @@ class hgt_incidencias(models.Model): ...@@ -12,6 +11,11 @@ class hgt_incidencias(models.Model):
_order = "id desc" _order = "id desc"
_rec_name = "name" _rec_name = "name"
in_cerrada = fields.Boolean(
string=u'Cerrada',
default=False,
)
responsabilidad = fields.Selection( responsabilidad = fields.Selection(
string=u'Responsabilidad', string=u'Responsabilidad',
selection=[('pro', 'Propia'), ('ter', 'Tercero'), ('cli', 'Cliente'), ('cat', 'Catástrofe')] selection=[('pro', 'Propia'), ('ter', 'Tercero'), ('cli', 'Cliente'), ('cat', 'Catástrofe')]
...@@ -34,17 +38,10 @@ class hgt_incidencias(models.Model): ...@@ -34,17 +38,10 @@ class hgt_incidencias(models.Model):
string=u'Descripción', string=u'Descripción',
) )
in_name = fields.Text(
string=u'Nombre',
)
name = fields.Char( name = fields.Char(
string=u'Nombre', string=u'Nombre',
) )
descripcion = fields.Text(
string=u'Descripción',
)
in_fecha = fields.Datetime( in_fecha = fields.Datetime(
string = 'Fecha de creación', string = 'Fecha de creación',
...@@ -101,6 +98,11 @@ class hgt_incidencias(models.Model): ...@@ -101,6 +98,11 @@ class hgt_incidencias(models.Model):
in_texto_mensaje = fields.Char(string='Mensaje') in_texto_mensaje = fields.Char(string='Mensaje')
in_in_interno = fields.Boolean(
string="Nota Interna?",
default=False
)
in_mensajes = fields.Many2many('hgt.incidencias_mensaje', string=u'Mensajes', in_mensajes = fields.Many2many('hgt.incidencias_mensaje', string=u'Mensajes',
relation='hgt_incidencia_mensaje_rel', relation='hgt_incidencia_mensaje_rel',
column2='hgt_incidencias_id', column2='hgt_incidencias_id',
...@@ -118,6 +120,7 @@ class hgt_incidencias(models.Model): ...@@ -118,6 +120,7 @@ class hgt_incidencias(models.Model):
def enviarMensaje_in(self): def enviarMensaje_in(self):
if (self.in_texto_mensaje == False) or (self.in_texto_mensaje == ""): if (self.in_texto_mensaje == False) or (self.in_texto_mensaje == ""):
raise UserError("No se puede enviar un mensaje vacío") raise UserError("No se puede enviar un mensaje vacío")
datos = {'in_mensaje': self.in_texto_mensaje, datos = {'in_mensaje': self.in_texto_mensaje,
'in_interno': False, 'in_interno': False,
} }
...@@ -129,7 +132,9 @@ class hgt_incidencias(models.Model): ...@@ -129,7 +132,9 @@ class hgt_incidencias(models.Model):
self.in_mensajes = lista_msj self.in_mensajes = lista_msj
self.in_texto_mensaje = False self.in_texto_mensaje = False
self.registrar_mensaje(nvo_mensaje) self.registrar_mensaje(nvo_mensaje)
self.enviar_mensaje(nvo_mensaje)
if (self.in_in_interno == False):
self.enviar_mensaje(nvo_mensaje)
def enviar_mensaje(self, mens): def enviar_mensaje(self, mens):
#funcion para mandar el mensaje al modulo de incidencias #funcion para mandar el mensaje al modulo de incidencias
...@@ -141,30 +146,17 @@ class hgt_incidencias(models.Model): ...@@ -141,30 +146,17 @@ class hgt_incidencias(models.Model):
'id_incide_original': self.in_id_si, 'id_incide_original': self.in_id_si,
'si_fecha': self.in_fecha, 'si_fecha': self.in_fecha,
'responsable': self.responsable.id, 'responsable': self.responsable.id,
'name': self.in_name, 'name': self.name,
} }
} }
URL = self.env['ir.config_parameter'].sudo().search([('key','=','web.base.url')])
URL = str(URL.value)
datos_json = json.dumps(datos) datos_json = json.dumps(datos)
f = requests.post(URL+'/soporteMensaje', data=datos_json, headers=headers) f = requests.post(URL+'/soporteMensaje', data=datos_json, headers=headers)
frespuesta = f.json() frespuesta = f.json()
print(frespuesta) #print(frespuesta)
#Comento porque desde incidencias no creamos incidencias a soporte
# def enviarIncidencia(self):
# #funcion para la creacion de incidencias en modulo incidencias
# datos = {
# 'params': { 'token':"""sdfghjkjhgfds2568uyhgfds657875645324ghgjhfgdfsgdfghjk65""",
# 'si_fecha': self.in_fecha,
# 'responsable': self.responsable.id,
# 'name': self.in_name,
# 'si_id': self.id,
# }
# }
# datos_json = json.dumps(datos)
# f = requests.post(URL+'/soporteIncidencias/crear', data=datos_json, headers=headers)
# frespuesta = f.json()
# print(frespuesta)
def registrar_mensaje(self, mens): def registrar_mensaje(self, mens):
...@@ -184,6 +176,59 @@ class hgt_incidencias(models.Model): ...@@ -184,6 +176,59 @@ class hgt_incidencias(models.Model):
self.in_historico_mensajes = Texto self.in_historico_mensajes = Texto
return(True) return(True)
def splitInci(self):
#funcion para insertar incidencia activa en popup y abrirlo
active_inc = self.id
datos = {
'split_incidencia': active_inc,
}
wizard = self.env['hgt.incidencias_temas_split'].create(datos)
return {
'type': 'ir.actions.act_window',
'name': 'Dividir incidencias por temas',
'view_type': 'form',
'view_mode': 'form',
'res_model': 'hgt.incidencias_temas_split',
'res_id': wizard.id,
'target': 'new',
}
def cerrarIncidencia(self):
if (self.in_cerrada == True):
datos = {
'params': {
'token': """sdfghjkjhgfds2568uyhgfds657875645324ghgjhfgdfsgdfghjk65""",
'si_cerrada': True,
'id_incide_original': self.in_id_si,
}
}
URL = self.env['ir.config_parameter'].sudo().search([('key','=','web.base.url')])
URL = str(URL.value)
datos_json = json.dumps(datos)
f = requests.post(URL+'/soporteIncidencias/crear', data=datos_json, headers=headers)
frespuesta = f.json()
print(frespuesta)
#desde aca creamos incidencias a soporte solo desde split
def enviarIncidencia(self):
#funcion para la creacion de incidencias en modulo soporte
datos = {
'params': { 'token':"""sdfghjkjhgfds2568uyhgfds657875645324ghgjhfgdfsgdfghjk65""",
'si_fecha': self.in_fecha,
'responsable': self.responsable.id,
'name': self.name,
'descripcion': self.descripcion,
'id_original': self.in_id_si,
'si_cerrada': self.in_cerrada,
'responsabilidad': self.responsabilidad,
}
}
URL = self.env['ir.config_parameter'].sudo().search([('key','=','web.base.url')])
URL = str(URL.value)
datos_json = json.dumps(datos)
f = requests.post(URL+'/soporteIncidencias/crear', data=datos_json, headers=headers)
frespuesta = f.json()
self.in_id_si = frespuesta['result']
def generar_tareas(self): def generar_tareas(self):
#import ipdb; ipdb.set_trace() #import ipdb; ipdb.set_trace()
...@@ -217,6 +262,9 @@ class hgt_incidencias(models.Model): ...@@ -217,6 +262,9 @@ class hgt_incidencias(models.Model):
result['domain'] = {'accion' : [('id', 'in', ids)]} result['domain'] = {'accion' : [('id', 'in', ids)]}
return result return result
#parte vieja OSTICKET
url = fields.Char(string='Url de ticketera') url = fields.Char(string='Url de ticketera')
numero = fields.Char(string='Numero de ticket') numero = fields.Char(string='Numero de ticket')
...@@ -234,68 +282,51 @@ class hgt_incidencias(models.Model): ...@@ -234,68 +282,51 @@ class hgt_incidencias(models.Model):
ost_mensaje = fields.Text(string='Mensajes') ost_mensaje = fields.Text(string='Mensajes')
def splitInci(self): @api.model
#funcion para insertar incidencia activa en popup y abrirlo def create(self, vals):
active_inc = self.id dom =[]
datos = { config = self.env['hgt.coniguracion_incidencias'].search([["habilitado", "=", True]])
'split_incidencia': active_inc, try:
} datos = {'resumen':'Incidencia OST {} {}'.format(vals['numero'], vals['ost_asunto']),
wizard = self.env['hgt.incidencias_temas_split'].create(datos) 'descripcion': vals['descripcion'],
return { 'ejecutor':config.dispacher.id,
'type': 'ir.actions.act_window', 'origen':"Incidentes",}
'name': 'Dividir incidencias por temas', if config.url_ost == True:
'view_type': 'form', datos['notitas'] = vals['url']
'view_mode': 'form', if (vals['numero'] == False) or (vals['numero'] == ""):
'res_model': 'hgt.incidencias_temas_split', raise()
'res_id': wizard.id, except:
'target': 'new', num = self.search_count([]) + 1
} #num = 1
datos = {'resumen':'Incidencia local {} '.format(num),'origen':"Incidentes",'ejecutor':config.dispacher.id}
# @api.model vals['numero'] = "INC {}".format(num)
# def create(self, vals): print(datos)
# dom =[] nueva_tar = self.env['hgt.tarea'].create(datos)
# config = self.env['hgt.coniguracion_incidencias'].search([["habilitado", "=", True]]) try:
# try: if vals['accion']:
# datos = {'resumen':'Incidencia OST {} {}'.format(vals['numero'], vals['ost_asunto']), accion = vals['accion']
# 'descripcion': vals['descripcion'], acc = self.env['hgt.acciones'].search([('id','=',accion)])
# 'ejecutor':config.dispacher.id, acc.tareas = [(4,nueva_tar.id)]
# 'origen':"Incidentes",} except:
# if config.url_ost == True: pass
# datos['notitas'] = vals['url'] vals['tarea'] = nueva_tar.id
# if (vals['numero'] == False) or (vals['numero'] == ""): result = super(hgt_incidencias, self).create(vals)
# raise() return result
# except:
# num = self.search_count([]) + 1
# #num = 1 def mensajes_ost(self, val):
# datos = {'resumen':'Incidencia local {} '.format(num),'origen':"Incidentes",'ejecutor':config.dispacher.id} #print(val[0])
# vals['numero'] = "INC {}".format(num) dom = [["numero", "=", val[0]]]
# print(datos) ins = self.env['hgt.incidencias'].search(dom, limit=1)
# nueva_tar = self.env['hgt.tarea'].create(datos) if len(ins) == 0:
# try: #print("no esta en sistemma")
# if vals['accion']: return(True)
# accion = vals['accion'] text_orig = ins.ost_mensaje
# acc = self.env['hgt.acciones'].search([('id','=',accion)]) texto_nuevo = """\n{} {} {} \n{}\n\n#######################################################\n""".format(val[1],val[2],val[4],val[3])
# acc.tareas = [(4,nueva_tar.id)] Texto = """{}\n{}""".format(text_orig,texto_nuevo)
# except: #print(Texto)
# pass ins.ost_mensaje = Texto
# vals['tarea'] = nueva_tar.id return(True)
# result = super(hgt_incidencias, self).create(vals)
# return result
# def mensajes_ost(self, val):
# #print(val[0])
# dom = [["numero", "=", val[0]]]
# ins = self.env['hgt.incidencias'].search(dom, limit=1)
# if len(ins) == 0:
# #print("no esta en sistemma")
# return(True)
# text_orig = ins.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.ost_mensaje = Texto
# return(True)
......
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
from odoo import models, fields, api from odoo import models, fields, api
from datetime import datetime
import requests, json
headers = {'Content-Type': 'application/json'}
class hgt_incidencias_temas(models.Model): class hgt_incidencias_temas(models.Model):
_name = 'hgt.incidencias_temas' _name = 'hgt.incidencias_temas'
...@@ -23,4 +27,22 @@ class hgt_incidencias_temas(models.Model): ...@@ -23,4 +27,22 @@ class hgt_incidencias_temas(models.Model):
t_incidencias = fields.Many2many('hgt.incidencias', string=u'Incidencias', t_incidencias = fields.Many2many('hgt.incidencias', string=u'Incidencias',
relation='hgt_incidencia_temas_rel', relation='hgt_incidencia_temas_rel',
column1='hgt_incidencias_id', column1='hgt_incidencias_id',
column2='hgt_incidencias_temas_id')
\ No newline at end of file \ No newline at end of file
column2='hgt_incidencias_temas_id')
t_texto_mensaje = fields.Char(string='Mensaje')
t_t_interno = fields.Boolean(
string="Nota Interna?",
default=False
)
def enviarMensaje_t(self):
for inci in self.t_incidencias:
inci.in_texto_mensaje = self.t_texto_mensaje
inci_in_in_interno = self.t_t_interno
inci.enviarMensaje_in()
inci.in_texto_mensaje = ""
inci_in_in_interno = False
self.t_texto_mensaje = ""
self.t_t_interno = False
return "Exito"
\ No newline at end of file \ No newline at end of file
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
<!-- <field name="url" widget="url"/> --> <!-- <field name="url" widget="url"/> -->
<field colspan="2" name="cliente"/> <field colspan="2" name="cliente"/>
<field name="descripcion"/> <field name="descripcion"/>
<field name="in_cerrada" />
</tree> </tree>
</field> </field>
</record> </record>
...@@ -42,50 +43,37 @@ ...@@ -42,50 +43,37 @@
<form> <form>
<!--<sheet>--> <!--<sheet>-->
<header> <header>
<button type="object" name="splitInci" string="Separar en temas" class="oe_highlight"/> <button type="object" name="splitInci" string="Separar en incidencias" class="oe_highlight"/>
</header> </header>
<group col="4" string="Incidencia"> <group col="4" string="Incidencia">
<field name="name" colspan="2"/> <field name="in_cerrada" invisible="1" />
<field name="name" colspan="2" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
<!-- <field colspan="2" name="fecha_creacion"/> --> <!-- <field colspan="2" name="fecha_creacion"/> -->
<field colspan="2" name="in_fecha"/> <field colspan="2" name="in_fecha" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
<field colspan="2" name="descripcion"/> <field colspan="2" name="descripcion" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
<field colspan="2" name="estado"/> <field colspan="2" name="estado" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
</group> </group>
<group col="4"> <group col="4">
<field colspan="2" name="responsabilidad"/> <field colspan="2" name="responsabilidad" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
<field colspan="2" name="cliente"/> <field colspan="2" name="cliente" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
</group> </group>
<!-- <h2>Ticket</h2>
<group col="2">
<field name="url" widget="url"/>
<field name="in_numero" />
<field name="ost_cliente" />
</group> -->
<!-- <group col="4">
<field name="ost_mail" />
<field name="ost_telefeno" />
</group>
<group col="1">
<h2>Asunto</h2>
<field name="ost_asunto" nolabel="1"/>
<h2>Descripcion</h2>
<field name="descripcion" nolabel="1"/>
<h2>Mensajes</h2>
<field name="ost_mensaje" nolabel="1"/>
</group> -->
<group col="1"> <group col="1">
<h2>Temas</h2> <h2>Temas</h2>
<field name="in_temas" nolabel="1"/> <field name="in_temas" nolabel="1" attrs="{'readonly':[('in_cerrada','=',True)]}"/>
</group> </group>
<group col="2" string="Mensajes"> <group col="2" string="Mensajes">
<h3>Histórico de mensajes:</h3> <h3>Histórico de mensajes:</h3>
<field name="in_historico_mensajes" readonly="1" colspan="2" nolabel='1'/> <field name="in_historico_mensajes" readonly="1" colspan="2" nolabel='1' attrs="{'readonly':[('in_cerrada','=',True)]}"/>
<field name="in_texto_mensaje" nolabel='1' /> </group>
<button name="enviarMensaje_in" class="oe_edit_only" string="Enviar Mensaje" type="object" /> <group col="2">
<field name="in_texto_mensaje" nolabel='1' colspan="1" attrs="{'readonly':[('in_cerrada','=',True)]}" />
<button name="enviarMensaje_in" attrs="{'readonly':[('in_cerrada','=',True)]}" class="oe_edit_only" colspan="1" string="Enviar Mensaje" type="object" />
<field name="in_in_interno" attrs="{'readonly':[('in_cerrada','=',True)]}" colspan="1"/>
</group> </group>
<group> <group>
<field name="in_mensajes" required="0" nolabel="1" > <field name="in_mensajes" required="0" nolabel="1" >
...@@ -124,11 +112,38 @@ ...@@ -124,11 +112,38 @@
</notebook> </notebook>
<!--</sheet>--> <!--</sheet>-->
<h2>MOD. VIEJO - OSTicket</h2>
<group col="2">
<field name="url" widget="url"/>
<field name="in_numero" />
<field name="ost_cliente" />
</group>
<group col="4">
<field name="ost_mail" />
<field name="ost_telefeno" />
</group>
<group col="1">
<h2>Asunto</h2>
<field name="ost_asunto" nolabel="1"/>
<h2>Descripcion</h2>
<field name="descripcion" nolabel="1"/>
<h2>Mensajes</h2>
<field name="ost_mensaje" nolabel="1"/>
</group>
</form> </form>
</field> </field>
</record> </record>
<record id="view_incidencias_search" model="ir.ui.view">
<field name="name">Incidencias</field>
<field name="model">hgt.incidencias</field>
<field name="arch" type="xml">
<search>
<field name="name" />
</search>
</field>
</record>
</data> </data>
</odoo> </odoo>
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
<menuitem name="Incidencias" id="hgt_incidencias_incidencias" parent="asw_crm.asw_crm_root" /> <menuitem name="Incidencias" id="hgt_incidencias_incidencias" parent="asw_crm.asw_crm_root" />
<menuitem name="Ver Incidencias" parent="hgt_incidencias_incidencias" id="hgt_incidencias_accion" action="action_incidencias_act_window" /> <menuitem name="Ver Incidencias" parent="hgt_incidencias_incidencias" id="hgt_incidencias_accion" action="action_incidencias_act_window" />
<menuitem name="Configuracion incidencia" parent="hgt_incidencias_incidencias" id="hgt_conf_incidencias_accion" action="action_incidenciasconfig_act_window" /> <menuitem name="Configuracion incidencia" parent="hgt_incidencias_incidencias" id="hgt_conf_incidencias_accion" action="action_incidenciasconfig_act_window" />
<menuitem name="BORRAR MENSAJES" parent="hgt_incidencias_incidencias" id="hgt_incidencias_mensajes" action="action_hgt_incidencias_mensaje_act_window" />
<menuitem name="Temas" id="hgt_incidencias_temas" parent="asw_crm.asw_crm_root" /> <menuitem name="Temas" id="hgt_incidencias_temas" parent="asw_crm.asw_crm_root" />
<menuitem name="Ver Temas" parent="hgt_incidencias_temas" id="hgt_temas_accion" action="action_hgt_incidencias_temas_act_window" /> <menuitem name="Ver Temas" parent="hgt_incidencias_temas" id="hgt_temas_accion" action="action_hgt_incidencias_temas_act_window" />
<menuitem name="Agrupar Incidencias" parent="hgt_incidencias_temas" id="hgt_merge_it" action="action_hgt_merge_incidenciastemas_act_window" /> <menuitem name="Agrupar Incidencias" parent="hgt_incidencias_temas" id="hgt_merge_it" action="action_hgt_merge_incidenciastemas_act_window" />
......
...@@ -49,6 +49,12 @@ ...@@ -49,6 +49,12 @@
<field name="t_incidencias" colspan="2" nolabel="1"/> <field name="t_incidencias" colspan="2" nolabel="1"/>
</group> </group>
<group col="4" string="Responder a todas">
<field name="t_texto_mensaje" nolabel='1' colspan="1" />
<button name="enviarMensaje_t" class="oe_edit_only" colspan="1" string="Enviar Mensaje" type="object" />
<field name="t_t_interno" colspan="1"/>
</group>
<group col="4" string="Tareas"> <group col="4" string="Tareas">
<field name="t_tareas" colspan="2" nolabel="1"/> <field name="t_tareas" colspan="2" nolabel="1"/>
</group> </group>
......
...@@ -13,6 +13,11 @@ class hgt_incidencias_temas_split(models.TransientModel): ...@@ -13,6 +13,11 @@ class hgt_incidencias_temas_split(models.TransientModel):
related="split_incidencia.name" related="split_incidencia.name"
) )
split_descripcion = fields.Text(
string=u'Descripción',
related="split_incidencia.descripcion"
)
split_responsabilidad = fields.Selection( split_responsabilidad = fields.Selection(
string=u'Responsabilidad', string=u'Responsabilidad',
related="split_incidencia.responsabilidad" related="split_incidencia.responsabilidad"
...@@ -23,9 +28,6 @@ class hgt_incidencias_temas_split(models.TransientModel): ...@@ -23,9 +28,6 @@ class hgt_incidencias_temas_split(models.TransientModel):
related="split_incidencia.cliente" related="split_incidencia.cliente"
) )
# split_incidenciastd = fields.Many2one('hgt.split_tema_descr',
# string='Nuevas Incidencias')
split_incidenciastd = fields.One2many( split_incidenciastd = fields.One2many(
string='Nuevas incidencias', string='Nuevas incidencias',
comodel_name='hgt.split_tema_descr', comodel_name='hgt.split_tema_descr',
...@@ -33,18 +35,36 @@ class hgt_incidencias_temas_split(models.TransientModel): ...@@ -33,18 +35,36 @@ class hgt_incidencias_temas_split(models.TransientModel):
) )
def splitIncidencia(self): def splitIncidencia(self):
#metodo que crea incidencias a partir de las descripciones aportadas x usuario y las reune en un mismo tema
titulo_tema = "Split - "+ self.split_name
descrip_tema = "Tema que reune la división en incidencias de la incidencia original " + self.split_name
datos_tema = {'t_titulo': titulo_tema, 't_descripcion': descrip_tema}
nvo_tema = self.env['hgt.incidencias_temas'].create(datos_tema)
texto = "TICKET CERRADO - SEPARADO EN: "
for inc in self.split_incidenciastd: for inc in self.split_incidenciastd:
nombre = inc.splittd_descr nombre = inc.splittd_nom
tema = inc.splittd_tema descripcion = inc.splittd_descr
tema = nvo_tema
datos = {'name': nombre, datos = {'name': nombre,
'descripcion': descripcion,
'responsabilidad': self.split_responsabilidad, 'responsabilidad': self.split_responsabilidad,
'cliente': self.split_cliente.id, 'cliente': self.split_cliente.id,
} }
nva_inci = self.env['hgt.incidencias'].create(datos) nva_inci = self.env['hgt.incidencias'].create(datos)
#nva_inci.in_temas = (4, tema.id) nvo_tema.t_incidencias = (4, nva_inci.id)
temita = self.env['hgt.incidencias_temas'].search([('id', '=', tema.id)])
temita.t_incidencias = (4, nva_inci.id) #creacion de las mismas incidencias en soporte p q el cliente las vea
nva_inci.enviarIncidencia()
texto += " -"+nombre
self.cerrarIncidencia(texto)
def cerrarIncidencia(self, texto):
self.split_incidencia.in_texto_mensaje = texto
self.split_incidencia.enviarMensaje_in()
self.split_incidencia.in_texto_mensaje = ""
self.split_incidencia.in_cerrada = True
self.split_incidencia.cerrarIncidencia()
return "Exito"
\ No newline at end of file \ No newline at end of file
...@@ -20,19 +20,20 @@ ...@@ -20,19 +20,20 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<form> <form>
<!--<sheet>--> <!--<sheet>-->
<group col="4" string="Descripción incidencia original"> <group col="4" string="Incidencia original">
<field name="split_name" colspan="2" readonly="1" nolabel="1"/> <field name="split_name" colspan="4" readonly="1" nolabel="1"/>
<field name="split_descripcion" colspan="4" readonly="1" nolabel="1"/>
</group> </group>
<group col="4" string="Elegir temas y escribir descripción de nuevas incidencias"> <group col="4" string="Escribir descripción de nuevas incidencias">
<field name="split_incidenciastd" nolabel="1"> <field name="split_incidenciastd" nolabel="1">
<tree create="1" edit="1" editable="1"> <tree create="1" edit="1" editable="1">
<field name="splittd_tema"/> <field name="splittd_nom"/>
<field name="splittd_descr"/> <field name="splittd_descr"/>
</tree> </tree>
</field> </field>
</group> </group>
<footer> <footer>
<button name="splitIncidencia" type="object" string="Dividir y crear nuevas incidencias"/> <button name="splitIncidencia" type="object" class="oe_highlight" string="Dividir y crear nuevas incidencias"/>
<button string="Cancel" class="btn-default" special="cancel"/> <button string="Cancel" class="btn-default" special="cancel"/>
</footer> </footer>
<!--</sheet>--> <!--</sheet>-->
......
...@@ -5,13 +5,14 @@ from odoo import models, fields, api ...@@ -5,13 +5,14 @@ from odoo import models, fields, api
class hgt_split_tema_descr(models.TransientModel): class hgt_split_tema_descr(models.TransientModel):
_name = "hgt.split_tema_descr" _name = "hgt.split_tema_descr"
splittd_tema = fields.Many2one('hgt.incidencias_temas',
string='Tema')
splittd_descr = fields.Text( splittd_descr = fields.Text(
string=u'Descripción', string=u'Descripción',
) )
splittd_nom = fields.Char(
string=u'Nombre',
)
rel_split = fields.Many2one( rel_split = fields.Many2one(
string='Split', string='Split',
comodel_name='hgt.incidencias_temas_split', comodel_name='hgt.incidencias_temas_split',
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!