Ë
    	,¹h¥  ã                   ó|   — d dl mZmZ d dlmZ d dlmZmZmZm	Z	 d dl
mZmZmZmZ  G d„ de«      Z G d„ de«      Zy	)
é    )Ú	BaseModelÚField)ÚBase)ÚMappedÚmapped_columnÚrelationshipÚSession)Ú
ForeignKeyÚIntegerÚVARCHARÚFloatc                   ó¸   — e Zd ZU  ed¬«      Zedz  ed<    ed¬«      Zedz  ed<    ed¬«      Z	edz  ed<    ed¬«      Z
edz  ed<    ed¬«      Zedz  ed<   y)ÚGrossMarginContributionBaseN)ÚdefaultÚgross_idÚcontribution_to_total_salesÚcontribution_to_gross_marginÚ	rationaleÚgroup_id)Ú__name__Ú
__module__Ú__qualname__r   r   ÚintÚ__annotations__r   Úfloatr   r   Ústrr   © ó    úE/var/www/html/RetailAPI/app/models/main/gross_margin_contributions.pyr   r      sc   … Ù!¨$Ô/€HˆsT‰zÓ/Ù05¸dÔ0CÐ ¨¡ÓCÙ27ÀÔ2EÐ  5¨4¡<ÓEÙ#¨DÔ1€It‘Ó1Ù!¨$Ô/€HˆsT‰zÔ/r   r   c            	       ó~  — e Zd ZU dZ ededd¬«      Zee   e	d<    ede
dd¬«      Zee   e	d<    ed	e
dd¬«      Zee   e	d	<    ed
 ed«      dd¬«      Zee   e	d
<    ede ed«      «      Zee   e	d<    edd¬«      Zedededd fd„«       Zedededd fd„«       Zededededd fd„«       Zedededd fd„«       Zy)ÚTblGrossMarginContributionÚtbl_gross_margin_contributionr   T)Úprimary_keyÚautoincrementr   FN)ÚnullableÚserver_defaultr   r   éÿ   r   ztbl_group.group_idÚTblGroupÚgross_margin_contribution)Úback_populatesÚdataÚdbÚreturnc                 óx   — |j                  «       } | di |¤Ž}|j                  |«       |j                  «        |S )Nr   )Ú
model_dumpÚaddÚflush)Úclsr+   r,   Ú	data_dictÚnew_datas        r   Ú create_gross_margin_contributionz;TblGrossMarginContribution.create_gross_margin_contribution   s5   € à—O‘OÓ%ˆ	ÙÑ#˜Ñ#ˆØ
‰ˆxÔØ
‰Œ
Øˆr   Úgross_margin_get_idc                 ó|   — |j                  | «      j                  | j                  |k(  «      j                  «       }|S ©N)ÚqueryÚfilterr   Úfirst)r2   r6   r,   Úget_datas       r   Úget_gross_margin_contributionz8TblGrossMarginContribution.get_gross_margin_contribution$   s2   € à—8‘8˜C“=×'Ñ'¨¯©Ð8KÑ(KÓL×RÑRÓTˆØˆr   Úgross_margin_update_idc                 ó.  — |j                  | «      j                  | j                  |k(  «      j                  «       }|j	                  «       }|j                  «       D ]  \  }}|€Œ	t        |||«       Œ |j                  «        |j                  |«       |S r8   )	r9   r:   r   r;   r/   ÚitemsÚsetattrÚcommitÚrefresh)r2   r>   r+   r,   Úupdate_datar3   ÚkeyÚvalues           r   Ú update_gross_margin_contributionz;TblGrossMarginContribution.update_gross_margin_contribution)   s}   € à—h‘h˜s“m×*Ñ*¨3¯<©<Ð;QÑ+QÓR×XÑXÓZˆØ—O‘OÓ%ˆ	Ø#Ÿ/™/Ö+‰JˆCØÑ Ü˜ S¨%Õ0ð ,ð 		‰	ŒØ

‰
;ÔØÐr   Úgross_margin_delete_idc                 óÂ   — |j                  | «      j                  | j                  |k(  «      j                  «       }|sy|j	                  |«       |j                  «        y)NFT)r9   r:   r   r;   ÚdeleterB   )r2   rH   r,   Údelete_datas       r   Ú delete_gross_margin_contributionz;TblGrossMarginContribution.delete_gross_margin_contribution4   sK   € à—h‘h˜s“m×*Ñ*¨3¯<©<Ð;QÑ+QÓR×XÑXÓZˆÙØØ
	‰	+ÔØ
	‰	ŒØr   )r   r   r   Ú__tablename__r   r   r   r   r   r   r   r   r   r   r   r   r   r
   r   r   ÚgroupÚclassmethodr   r	   r5   r=   rG   rL   r   r   r   r!   r!      sq  … Ø3€MÙ*¨:°wÈDÐ`dÔe€Hˆvc‰{ÓeÙ2?Ð@]Ð_dÐotð  FJô  3KÐ &¨¡-ó  KÙ3@ÐA_ÐafÐqvð  HLô  4MÐ  6¨%¡=ó  MÙ,¨[¹'À#»,ÐQUÐfjÔk€I˜‘ÓkÙ*¨:°wÁ
ÐK_Ó@`Óa€Hˆvc‰{Óaá˜Ð4OÔP€Eð ðÐ3Nð ÐSZð Ð^zò ó ðð ð¸sð Àwð ÐRnò ó ðð ðÀSð ÐOjð Ðovð ð  {Wò ó ðð ðÀSð ÈWð ÐXtò ó ñr   r!   N)Úpydanticr   r   Úapp.models.base_classr   Úsqlalchemy.ormr   r   r   r	   Ú
sqlalchemyr
   r   r   r   r   r!   r   r   r   ú<module>rT      s/   ðß %Ý &ß DÓ Dß 8Ó 8ô0 )ô 0ô. õ .r   