
    Xj                     B    d dl mZmZmZ  G d dej                        Zy)    )apifieldsmodelsc                        e Zd ZdZ ej
                  ddddd      Z ej                  dd	      Z	 ej                  d
ddd      Zej                   fd       Z xZS )
HrEmployeezhr.employeezHRSystem Employee CodeTFzhr.group_hr_usera  employee_code from HRSystem's employees table (same code scheme printed on the Monthly Attendance report: 10XXXX hired before 2023, 20XXXX from 2023, 30XXXX maintenance/cleaners, 40XXXX interns). Bridges this record to HRSystem without relying on name or email matching.)stringindexcopygroupshelpzunique(xeno_employee_code)zBThis HRSystem employee code is already linked to another employee.xeno.employee.typezEmployee Typeat  Mirrors XENHR's Employee Types setting. For an employee created directly in Odoo (post-cutover, no HRSystem code to bridge to) with no xeno_employee_code already given, sets one automatically from this type's prefix + next sequence number on creation. Never regenerates or overwrites an existing code, and has no effect on employees already linked to a real HRSystem code.)r   r   r   c                     |D ]Z  }|j                  d      s|j                  d      r'| j                  d   j                  |d         }|j                         |d<   \ t        |   |      S )Nxeno_employee_type_idxeno_employee_coder   )getenvbrowse_xeno_next_codesupercreate)self	vals_listvalsemp_type	__class__s       B/home/susu/odoo-hr-migration/xeno_attendance/models/hr_employee.pyr   zHrEmployee.create#   su     	HDxx/0BV9W88$89@@013-5-E-E-G)*		H
 w~i((    )__name__
__module____qualname___inheritr   Charr   r   
Constraint_xeno_employee_code_uniqMany2oner   r   model_create_multir   __classcell__)r   s   @r   r   r      s    H$'t%
 ":;  1v00$L 
 ,FOO_=O/0 	) )r   r   N)odoor   r   r   Modelr    r   r   <module>r+      s    $ $&) &)r   