U
    r;dK                     @   s*   d dl T d dlmZ G dd dejZdS )    )*)cmf_timesheets_teamc                       s(   e Zd Z fddZ fddZ  ZS )CmfTimesheetsTeamc           
         sv   t tdd | jj}t | j }|| }|| }|D ]}|  q8|D ]}tjj	| |d}	|	
  qJt j
||S )Nc                 S   s   | j S )N)person)x r   2./modules/timesheets/models/cmf_timesheets_team.py<lambda>       z(CmfTimesheetsTeam.save.<locals>.<lambda>)parentr   )setmapteam_membersvaluemembersZ
all_nesteddeleteZmodelsZCmfTimesheetsTeamMemberZcreatesavesuper)
selfargskwargsZteam_member_personsr   Zmembers_unprocessedZteam_members_danglingZteam_membermemberZtm	__class__r   r   r      s    

zCmfTimesheetsTeam.savec                    s   t   ddg S )Nr   zteam_members.person)r   save_preload_fields)r   r   r   r   r      s    z%CmfTimesheetsTeam.save_preload_fields)__name__
__module____qualname__r   r   __classcell__r   r   r   r   r      s   r   N)Zcmf.includeZmodules.timesheets.fieldsr   r   r   r   r   r   <module>   s   