Ë
    Îri¸  ã                   ó4  — d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZmZmZ d dlmZ d dlmZ  e«       Zej+                  d	d
¬«       ee«       eej,                  «      fdede	defd„«       Zej+                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Zej+                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Zej9                  dd
¬«      d
 ee«       eej,                  «      fded
z  de	defd„«       Zej+                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Zej9                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Zej+                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Z ej+                  dd
¬«       ee«       eej,                  «      fdede	defd„«       Z!ej9                  d d
¬«       ee«       eej,                  «      fdede	defd!„«       Z"ej9                  d"d
¬«       ee«       eej,                  «      fdede	defd#„«       Z#ej+                  d$d
¬«       ee«       eej,                  «      fdede	defd%„«       Z$ej+                  d&d
¬«       ee«       eej,                  «      fdede	defd'„«       Z%ej9                  d(d
¬«       ee«       eej,                  «      fdede	defd)„«       Z&ej9                  d*d
¬«       ee«       eej,                  «      fdede	defd+„«       Z'ej+                  d,d
¬«       ee«       eej,                  «      fde	defd-„«       Z(y
).é    )ÚList)Ú	APIRouterÚDependsÚQuery)ÚFileResponse)ÚSession)ÚReportService)ÚCrew_report_by_statusÚCrew_report_by_typeÚcrew_report)Úget_db)Ú
JWTManagerz//generate_vessel_report_by_company/{company_id}N)Úresponse_model_excludeÚ
company_idÚdbÚtokenc              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­w©N)r	   Úcreate_excel_report©r   r   r   s      ú2/var/www/html/beacon-api/app/api/reports/router.pyÚ!generate_vessel_report_by_companyr      ó$   è ø€ ä˜r 5Ó)×=Ñ=¸jÓI×IÐIÐIúó   ‚(¡&¢(z,/generate_vessel_pdf_by_company/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úgenerate_vessel_pdfr   s      r   Úgenerate_vessel_pdf_by_companyr      r   r   z$/get_all_company_vessel/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_all_vessel_by_companyr   s      r   Úget_all_company_vesselr       s$   è ø€ ä˜r 5Ó)×CÑCÀJÓO×OÐOÐOúr   z/generate_crew_excel_by_companyÚrequestc              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úcrew_report_excel_by_vessel©r!   r   r   s      r   Úgenerate_crew_excel_by_companyr%      s$   è ø€ ä˜r 5Ó)×EÑEÀgÓN×NÐNÐNúr   z/get_all_crew/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_crew_by_datar   s      r   Úget_all_crewr(      s$   è ø€ ä˜r 5Ó)×:Ñ:¸:ÓF×FÐFÐFúr   z/generate_crew_pdf_report)Úresponse_model_exclude_nonec              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úcrew_report_pdf_by_vesselr$   s      r   Úgenerate_crew_pdf_reportr,       s$   è ø€ ä˜r 5Ó)×CÑCÀGÓL×LÐLÐLúr   z(/get_vessel_name_by_company/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_all_vessel_name_by_companyr   s      r   Úget_vessel_name_by_companyr/   $   ó$   è ø€ ä˜r %Ó(×GÑGÈ
ÓS×SÐSÐSúr   z-/get_all_seafarer_by_vessel_type/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_all_seafarer_by_vesseltyper   s      r   Úget_all_seafarer_by_vesel_typer3   (   s$   è ø€ ä˜b %Ó(×GÑGÈ
ÓS×
SÐSÐ
Súr   z'/generate_seafarer_excel_by_vessel_typec              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Ú%generate_seafarer_excel_by_vesseltyper$   s      r   Ú&generate_seafarer_excel_by_vessel_typer6   ,   s%   è ø€ ä˜r 5Ó)×OÑOÐPWÓX×XÐXÐXúr   z%/generate_seafarer_pdf_by_vessel_typec              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Ú#generate_seafarer_pdf_by_vesseltyper$   s      r   Ú$generate_seafarer_pdf_by_vessel_typer9   0   s$   è ø€ ä˜r 5Ó)×MÑMÈgÓV×VÐVÐVúr   z%/get_vessel_type_company/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_all_vessel_type_by_companyr   s      r   Úget_vessel_type_companyr<   4   r0   r   z%/get_all_seafarer_status/{company_id}c              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úget_all_seafarer_by_statusr   s      r   Úget_all_seafarer_statusr?   8   s$   è ø€ ä˜r %Ó(×CÑCÀJÓO×OÐOÐOúr   z/generate_seafarer_excel_statusc              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Ú!generate_seafarer_excel_by_statusr$   s      r   Úgenerate_seafarer_excel_statusrB   <   s$   è ø€ ä˜r %Ó(×JÑJÈ7ÓS×SÐSÐSúr   z/generate_seafarer_pdf_statusc              ƒ   óT   K  — t        ||«      j                  | «      ƒ d {  –—† S 7 Œ­wr   )r	   Úgenerate_seafarer_pdf_by_statusr$   s      r   Úgenerate_seafarer_pdf_statusrE   @   s$   è ø€ ä˜r %Ó(×HÑHÈÓQ×QÐQÐQúr   z/status_dropdownc              ƒ   óR   K  — t        | |«      j                  «       ƒ d {  –—† S 7 Œ­wr   )r	   Úseafarer_status_dropdown)r   r   s     r   Ústatus_dropdownrH   D   s"   è ø€ ä˜r %Ó(×AÑAÓC×CÐCÐCús   ‚' %¡'))Útypingr   Úfastapir   r   r   Úfastapi.responsesr   Úsqlalchemy.ormr   Úapp.api.reports.servicer	   Úapp.api.reports.schemar
   r   r   Úapp.database.main.mysqlr   Úapp.dependency.authanticationr   Úreport_routerÚgetÚverify_tokenÚintÚdictr   r   r    Úpostr%   r(   r,   r/   r3   r6   r9   r<   r?   rB   rE   rH   © ó    r   ú<module>rY      s  ðÝ ß -Ñ -Ý *Ý "Ý 2ß ZÑ ZÝ *Ý 4á“€à×ÑÐDÐ]aÐÓbÙIPÐQWËÑhoÐpz÷  qHñ  qHó  iIñ J°sð J¸wð JÐaeò Jó cðJð ×ÑÐAÐZ^ÐÓ_ÙGNÈvÃÑfmÐnx÷  oFñ  oFó  gGñ J°Cð J¸Wð JÐ_cò Jó `ðJð ×ÑÐ9ÐRVÐÓWÙAHÈÃÑ`gÐhr×hÑhó  aAñ P¨cð P°wð PÐY]ò Pó XðPð ×ÑÐ5ÈdÐÓSØGKÑ[bÐciÓ[jñ  {Bð  CM÷  CZñ  CZó  {[ñ O°;ÀÑ3Dð OÐQXð OÐswò Oó TðOð ×ÑÐ0È4ÐÓPÙ8?À»ÑW^Ð_i×_vÑ_vÓWwñ G Cð G¨gð GÐPTò Gó QðGð ×ÑÐ/ÈdÐÓSÙHOÐPVËÑhoÐpz÷  qHñ  qHó  iIñ M¨[ð M¸gð MÐaeò Mó TðMð ×ÑÐ=ÐVZÐÓ[ÙELÈVÃ_ÑelÐmw÷  nEñ  nEó  fFñ T°#ð T¸7ð TÐ^bò Tó \ðTð ×ÑÐBÐ[_ÐÓ`ÙHOÐPVËÑgnÐoy÷  pGñ  pGó  hHñ T°cð T¸gð TÐ`dò Tó aðTð ×ÑÐ=ÐW[ÐÓ\Ù_fÐgmÓ_nñ  @Gð  HR÷  H_ñ  H_ó  @`ñ YÐ;Nð YÐU\ð YÐx|ò Yó ]ðYð ×ÑÐ;ÐUYÐÓZÙ\cÐdjÓ\kñ  }Dð  EO÷  E\ñ  E\ó  }]ñ WÐ8Kð WÐRYð WÐuyò Wó [ðWð ×ÑÐ:ÐTXÐÓYÙCJÈ6Ã?ÑcjÐku÷  lCñ  lCó  dDñ T¨sð T¸ð TÐ\`ò Tó ZðTð ×ÑÐ:ÐSWÐÓXÙCJÈ6Ã?ÑbiÐjt÷  kBñ  kBó  cCñ P¨sð P¸ð PÐ\`ò Pó YðPð ×ÑÐ5ÈdÐÓSÙY`ÐagÓYhÑxð  AK÷  AXñ  AXó  yYñ TÐ3Hð TÈwð TÐrvò Tó TðTð ×ÑÐ3ÈDÐÓQÙW^Ð_eÓWfÑv}ð  I÷  Vñ  Vó  wWñ RÐ1Fð RÈWð RÐptò Ró RðRð ×ÑÐ%¸dÐÓCÙ'.¨v£ÁwÈz×OfÑOfÓGgñ D˜Wð DÀò Dó DñDrX   