§
    t�’j<  ã                  óz   — d dl mZ d dlZd dlmZ d dlmZ ddlmZ  ej	        d¦  «        Z
 G d„ d	e¦  «        ZdS )
é    )ÚannotationsN)ÚMapping)ÚAnyé   )ÚPayloadSectionBuildersMixinz#dscons.generation_payload.assemblerc                  ó   — e Zd ZdZdd„ZdS )	ÚPayloadAssemblerMixinz1Main assembly pipeline for site handover payload.Úsource_dataúMapping[str, Any]ÚreturnÚ&BienBanBanGiaoMatBangGenerationPayloadc                ó0  — |                       ¦   «         }|                      |dddd¦  «        }|                      |dddd¦  «        }|                      |d	d
dd¦  «        }|                      |dddd¦  «        }|                      |ddddd¦  «        }|                      |dd|                      |ddd¦  «        |                      |ddd¦  «        |                      |dd¦  «        |                      |d d!¦  «        ¬"¦  «        }|                      |d#d$|                      |d%d&d'¦  «        |                      |d(d)d*¦  «        |                      |d+d,¦  «        |                      |d-d.¦  «        ¬"¦  «        }	|                      |d/d0|                      |dd1¦  «        |                      |d d2¦  «        |||¬3¦  «        }
|                      |d4d5|                      |d+d6¦  «        |                      |d-d7¦  «        |	||¬3¦  «        }|                      |||||||¬8¦  «        }t          |||||||	|||
g |                      ¦   «         |                      ¦   «         |¬9¦  «        }| j         	                    |¦  «        \  }}| 
                    ||d:œ¬;¦  «        S )<uQ   Táº¡o payload hoÃ n chá»‰nh, gáº¯n template active, field statuses vÃ  readiness.Úproject_namezproject.project_namezproject.namezproject_info.project_nameÚdossier_codeÚdocument_numberzproject.project_codezproject.codeÚhandover_date_textzhandover.date_textzhandover.dateÚmeeting_date_textÚhandover_locationzhandover.locationzsite.locationÚlocationÚsite_descriptionÚhandover_scope_summaryzhandover.scope_summaryzsite.descriptionÚ	site_nameÚhanding_over_organization)Útransferor_organizationÚtransferor_orgÚinvestorzproject.investorÚtransferor_org_nameÚinvestor_namezproject.investor_nameÚtransferor_org_addressÚinvestor_addresszproject.investor_addressÚtransferor_signatory_full_namez handing_over_signatory.full_nameÚtransferor_signatory_titlezhanding_over_signatory.title)Úprimary_pathÚfallback_pathsÚdefault_nameÚdefault_addressÚdefault_representative_nameÚdefault_representative_titleÚreceiving_organization)Úrecipient_organizationÚrecipient_orgzcontract.contractorÚ
contractorÚrecipient_org_namezcontract.contractor.nameÚcontractor_nameÚrecipient_org_addresszcontract.contractor.addressÚcontractor_addressÚrecipient_signatory_full_namezreceiving_signatory.full_nameÚrecipient_signatory_titlezreceiving_signatory.titleÚhanding_over_signatory)Útransferor_signatoryz-handing_over_organization.representative_namez.handing_over_organization.representative_title)r#   r$   Údefault_full_nameÚdefault_titleÚorganizationÚdefault_signing_placeÚdefault_signing_date_textÚreceiving_signatory)Úrecipient_signatoryz*receiving_organization.representative_namez+receiving_organization.representative_title)r
   Útemplater   r   r   r   r   )r<   r   r   r   r   r   r)   r   r:   r3   Úfield_statusesÚ	readinessÚreview_workflowÚextra_context)r=   r>   )Úupdate)Ú_require_active_templateÚ_pick_first_strÚ_build_organization_infoÚ_build_signatory_infoÚ_build_extra_contextr   Ú_build_initial_readinessÚ_build_default_review_workflowÚ_readiness_serviceÚbuild_generation_payload_statusÚ
model_copy)Úselfr
   r<   r   r   r   r   r   r   r)   r3   r:   r@   Úplaceholder_payloadr=   r>   s                   ú>C:\Projects\DSCons\app\modules\agents\application\assembler.pyÚassemblezPayloadAssemblerMixin.assemble   sÖ  € ð
 ×0Ò0Ñ2Ô2ˆØ×+Ò+ØØØ"ØØ'ñ
ô 
ˆð ×+Ò+ØØØØ"Øñ
ô 
ˆð "×1Ò1ØØ Ø ØØñ
ô 
Ðð !×0Ò0ØØØØØñ
ô 
Ðð  ×/Ò/ØØØ$Ø$ØØñ
ô 
Ðð %)×$AÒ$AØØ4ðð ×-Ò-ØØ%ØØ'ñ	ô ð !×0Ò0ØØ(Ø"Ø*ñ	ô ð )-×(<Ò(<ØØ0Ø2ñ)ô )ð
 *.×)=Ò)=ØØ,Ø.ñ*ô *ð5 %Bñ %
ô %
Ð!ð@ "&×!>Ò!>ØØ1ðð ×-Ò-ØØ$Ø*Ø!ñ	ô ð !×0Ò0ØØ'Ø-Ø$ñ	ô ð )-×(<Ò(<ØØ/Ø/ñ)ô )ð
 *.×)=Ò)=ØØ+Ø+ñ*ô *ð5 "?ñ "
ô "
ÐðB "&×!;Ò!;ØØ1Ø4Ø"×2Ò2ØØ0Ø?ñô ð
 ×.Ò.ØØ,Ø@ñô ð
 3Ø"3Ø&8ð! "<ñ "
ô "
Ðð$ #×8Ò8ØØ.Ø3Ø"×2Ò2ØØ/Ø<ñô ð
 ×.Ò.ØØ+Ø=ñô ð
 0Ø"3Ø&8ð! 9ñ 
ô 
Ðð& ×1Ò1Ø#ØØ%Ø%Ø1Ø/Ø-ð 2ñ 
ô 
ˆõ EØØ%Ø%Ø1Ø/Ø-Ø#9Ø&?Ø 3Ø#9ØØ×3Ò3Ñ5Ô5Ø ×?Ò?ÑAÔAØ'ð
ñ 
ô 
Ðð$ Ô#×CÒCÐDWÑXÔXñ 	"ˆ˜	ð #×-Ò-à"0Ø&ðð ð .ñ 
ô 
ð 	
ó    N)r
   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__rO   © rP   rN   r	   r	      s4   € € € € € Ø;Ð;ðu
ð u
ð u
ð u
ð u
ð u
rP   r	   )Ú
__future__r   ÚloggingÚcollections.abcr   Útypingr   Úsection_buildersr   Ú	getLoggerÚloggerr	   rU   rP   rN   ú<module>r]      s¨   ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð à 9Ð 9Ð 9Ð 9Ð 9Ð 9à	ˆÔ	Ð@Ñ	AÔ	A€ðx
ð x
ð x
ð x
ð x
Ð7ñ x
ô x
ð x
ð x
ð x
rP   