§
    ÔŸ’j  ã                  óH   — d dl mZ d dlmZmZ d dlmZ  G d„ d¦  «        ZdS )é    )Úannotations)ÚdateÚdatetime)ÚAnyc                  ó   — e Zd ZdZ	 ddd	„Zd
S )ÚFidicAssemblerMixinz/FIDIC IPC clearance and dossier assembly mixin.é   Úproject_id_or_codeÚstrÚ
ipc_numberÚintÚreturnúdict[str, Any]c                óô  — | j                              |¦  «        }|sddiS t          |d         ¦  «        }d}d}	 | j                              ¦   «         5 }|                     ¦   «         5 }|                     |||f¦  «         |                     ¦   «         }ddd¦  «         n# 1 swxY w Y   ddd¦  «         n# 1 swxY w Y   n# t          $ r Y nw xY wt          | 	                    d¦  «        pd¦  «        }	|rft          |d         ¦  «        }
t          |d	         ¦  «        }t          |d
         ¦  «        }t          |d         ¦  «        }|d         }|dv rd}nTd}nQt          |	dz  d¦  «        }
t          |
dz  d¦  «        }t          |
dz  d¦  «        }t          |
|z
  |z
  d¦  «        }d}d| 	                    d¦  «        | 	                    d¦  «        | 	                    d¦  «        | 	                    d¦  «        pdd|d›�t          j        ¦   «                              d¦  «        |	|
|||dœddd d!œd"dd#d!œd$dd%d!œd&dd'd!œd(dd)d!œg|d*t          j        ¦   «                              d+¦  «        d,œS )-u`   Tá»± Ä‘á»™ng gom vÃ  láº¯p rÃ¡p trá»�n bá»™ há»“ sÆ¡ Ä‘á»� nghá»‹ thanh toÃ¡n IPC chuáº©n FIDIC.ÚerrorzProject not foundÚidzk
            SELECT * FROM erp_project_ipcs
            WHERE project_id = %s AND ipc_number = %s;
        NÚcontract_valuel    rT Úgross_claimed_amount_vndÚadvance_recovery_amount_vndÚretention_withheld_amount_vndÚnet_certified_amount_vndÚstatus)Ú	certifiedÚpaidÚDA_GIAI_NGANÚSAN_SANG_GIAI_NGANgffffffÖ?r	   gš™™™™™¹?gš™™™™™©?Ú	assembledÚproject_codeÚproject_nameÚclient_nameÚcontract_numberu   08.3/2026/HÄ�XD-FIDICu   Ä�á»£t Ú02dz%d/%m/%Y)Úcontract_total_amount_vndÚcumulative_claimed_to_date_vndÚ less_advance_recovery_10_pct_vndÚless_retention_money_5_pct_vndÚnet_ipc_certified_amount_vnduL   1. Báº£ng xÃ¡c Ä‘á»‹nh khá»‘i lÆ°á»£ng hoÃ n thÃ nh nghiá»‡m thu (BoQ Sheet)Úverifiedu   14 Háº¡ng má»¥c)Únamer   ÚcountuM   2. BiÃªn báº£n nghiá»‡m thu cÃ´ng viá»‡c xÃ¢y dá»±ng giai Ä‘oáº¡n ná»�n mÃ³ngu   06 BiÃªn báº£nuJ   3. Phiáº¿u káº¿t quáº£ thÃ­ nghiá»‡m nÃ©n máº«u bÃª tÃ´ng R28 (LAS-XD 112)u   03 Phiáº¿u káº¿t quáº£uL   4. Chá»©ng chá»‰ xuáº¥t xÆ°á»Ÿng vÃ  CO/CQ thÃ©p HÃ²a PhÃ¡t & xi mÄƒng Vicemu   04 Chá»©ng chá»‰uK   5. Nháº­t kÃ½ thi cÃ´ng Ä‘iá»‡n tá»­ cÃ³ chá»¯ kÃ½ sá»‘ cá»§a Ká»¹ sÆ° TVGSu   30 NgÃ y thi cÃ´ngÚnam_financial_directorz%d/%m/%Y %H:%M:%S)r   r   r   r    r!   Úipc_period_numberÚperiod_ending_dateÚfinancial_summaryÚattached_dossier_checklistsÚipc_clearance_statusÚgenerated_by_agentÚ	timestamp)ÚrepoÚget_project_detailr   Úget_connectionÚcursorÚexecuteÚfetchoneÚ	ExceptionÚfloatÚgetÚroundr   ÚtodayÚstrftimer   Únow)Úselfr
   r   ÚdetailÚ
project_idÚsql_ipcÚ
ipc_recordÚconnÚcurÚcontract_valÚcurr_claimed_valÚadvance_recoveryÚretention_withheldÚnet_payableÚstatus_textÚclearance_statuss                   ú@C:\Projects\DSCons\app\services\ai_site_diary\fidic_assembler.pyÚassemble_fidic_ipc_dossierz.FidicAssemblerMixin.assemble_fidic_ipc_dossier
   s’  € ð ”×-Ò-Ð.@ÑAÔAˆØð 	2ØÐ0Ð1Ð1å˜ œÑ&Ô&ˆ
ðˆð ˆ
ð	Ø”×)Ò)Ñ+Ô+ð ,¨t°T·[²[±]´]ð ,ÀcØ—’˜G j°*Ð%=Ñ>Ô>Ð>Ø Ÿ\š\™^œ^�
ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øøõ ð 	ð 	ð 	ØˆDð	øøøõ ˜VŸZšZÐ(8Ñ9Ô9ÐG¸ZÑHÔHˆàð 	4Ý$ ZÐ0JÔ%KÑLÔLÐÝ$ ZÐ0MÔ%NÑOÔOÐÝ!& zÐ2QÔ'RÑ!SÔ!SÐÝ 
Ð+EÔ FÑGÔGˆKØ$ XÔ.ˆKØÐ3Ð3Ð3Ø#1Ð Ð à#7Ð Ð å$ \°DÑ%8¸!Ñ<Ô<ÐÝ$Ð%5¸Ñ%<¸aÑ@Ô@ÐÝ!&Ð'7¸$Ñ'>ÀÑ!BÔ!BÐÝØ Ð#3Ñ3Ð6HÑHÈ!ñô ˆKð  4Ðð "Ø"ŸJšJ ~Ñ6Ô6Ø"ŸJšJ ~Ñ6Ô6Ø!Ÿ:š: mÑ4Ô4Ø%ŸzšzÐ*;Ñ<Ô<ÐWÐ@WØ!;¨:Ð!;Ð!;Ð!;Ý"&¤*¡,¤,×"7Ò"7¸
Ñ"CÔ"Cà-9Ø2BØ4DØ2DØ0;ð"ð "ð kØ(Ø.ðð ð lØ(Ø-ðð ð iØ(Ø5ðð ð kØ(Ø/ðð ð jØ(Ø1ðð ð+,ð6 %5Ø":Ý!œ™œ×0Ò0Ð1DÑEÔEðY-
ð -
ð -	
sY   »C ÁB9Á)-B"ÂB9Â"B&	Â&B9Â)B&	Â*B9Â-C Â9B=Â=C Ã B=ÃC Ã
CÃCN)r	   )r
   r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__rO   © ó    rN   r   r      s?   € € € € € Ø9Ð9ð :;ðW
ð W
ð W
ð W
ð W
ð W
ð W
rU   r   N)Ú
__future__r   r   r   Útypingr   r   rT   rU   rN   ú<module>rX      s}   ðØ "Ð "Ð "Ð "Ð "Ð "à #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð ðZ
ð Z
ð Z
ð Z
ð Z
ñ Z
ô Z
ð Z
ð Z
ð Z
rU   