
    j*                     @    d dl mZmZmZ  G d dej                  ZdS )    )apifieldsmodelsc                      e Zd ZdZdZdZddgZdZ ej	        ddd	d	
          Z
 ej	        dd	          Z ej	        dd	          Z ej	        dd	d	          Z ej        dd          Z ej        dd          Z ej        dd          Z ej        dd          Z ej        dd          Z ej        ddd	d	          Z ej        dddd	d          Z ej        dd d!"          Z ej        d#d$%          Z ej        d&"          Z ej        d	'          Z ej         d(d)d*          d+             Z! ej         d,          d-             Z"d. Z#d/S )0RelsumMachineu   Máquina del cliente (alternador, motor, grupo electrógeno…).

    Una máquina puede tener N OTs históricas — permite trazabilidad cruzada
    por número de serie a lo largo de los años.
    zrelsum.machineu   Máquina del clientezmail.threadzmail.activity.mixinzmarca, tipo, numero_serieu   Identificación_compute_nameT)stringcomputestoreindexMarca)r	   trackingzTipo / Modelou   Nº de serie)r	   r   r   zVoltios (V))
      )r	   digitszPotencia (kVA)RPM)r   r   zAmperios (A)zFrecuencia (Hz)zres.partnerPropietario)r	   r   r   u   Planta / Ubicaciónz [('parent_id', '=', partner_id)]uS   Sede del cliente donde está instalada la máquina (contacto hijo del propietario).)r	   domainr   helprepair.orderrelsum_machine_idu   Histórico de OTs)r	   u
   Nº de OTs_compute_repair_count)r	   r
   Notas)defaultmarcatiponumero_seriec                     | D ]>}d |j         |j        |j        fD             }|rd                    |          nd|_        ?d S )Nc                     g | ]}||S  r    ).0ps     :/opt/odoo/custom_addons/ot_relsum/models/relsum_machine.py
<listcomp>z/RelsumMachine._compute_name.<locals>.<listcomp>R   s    MMM11MQMMM    z / z(sin identificar))r   r   r   joinname)selfrecpartss      r#   r   zRelsumMachine._compute_nameO   s`     	K 	KCMMCHc6F GMMME,1Juzz%(((7JCHH	K 	Kr%   repair_order_idsc                 B    | D ]}t          |j                  |_        d S )N)lenr+   repair_count)r(   r)   s     r#   r   z#RelsumMachine._compute_repair_countU   s1     	9 	9C"3#788C	9 	9r%   c                 f    |                                   dd| j        z  dddd| j        j        fgdS )Nzir.actions.act_windowz	OTs de %sr   z	list,formidin)typer'   	res_model	view_moder   )
ensure_oner'   r+   ids)r(   s    r#   action_view_repair_ordersz'RelsumMachine.action_view_repair_orders^   sG    +$)+'$dD$9$=>?
 
 	
r%   N)$__name__
__module____qualname____doc___name_description_inherit_orderr   Charr'   r   r   r   FloatvoltioskvarpmamperioshzMany2one
partner_id	planta_idOne2manyr+   Integerr.   TextnotesBooleanactiver   dependsr   r   r7   r    r%   r#   r   r      s:        
 E)L45H(F6; 	  D FKw666E6;o===D6;nD4PPPL fl-@@@G
&,.w
?
?
?C
&,eG
4
4
4Cv|>'BBBH	.w	?	?	?B !	  J  $1b  I 'v"  
 "6>'  L
 FKw'''EV^D)))F S[&.11K K 21K
 S[#$$9 9 %$9
 
 
 
 
r%   r   N)odoor   r   r   Modelr   r    r%   r#   <module>rS      sc    $ $ $ $ $ $ $ $ $ $b
 b
 b
 b
 b
FL b
 b
 b
 b
 b
r%   