
    NRi	                     |    d dl mZmZ d dlmZmZmZmZ d dlm	Z	m
Z
mZmZ d dlmZ  G d de      Z G d de      Zy	)
    )	BaseModelField)DOUBLE
ForeignKeyStringText)Mappedmapped_columnrelationshipSession)Basec                       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<    ed      Zedz  ed<    ed      Ze	dz  ed	<   y)
PlumbingBaseN)defaultplumb_idgroup_idtypeunitscost_per_unittotalremarks)__name__
__module____qualname__r   r   int__annotations__r   r   strr   r   floatr   r        ?/var/www/html/retail-simulation-api/app/models/main/Plumbing.pyr   r      s    !$/HsTz/ .HcDj.T*D#**d+E3:+"'"5M54<5 .EEDL.-GS4Z-r    r   c            	          e Zd ZU dZ edd      Zee   ed<    e e	d      d      Z
ee   ed<    e ed      d      Zee   ed	<    eed      Zee   ed
<    eed      Zee   ed<    eed      Zee   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)TblPlumbingtbl_plumbingT)primary_keyautoincrementr   ztbl_group.group_id)nullabler   2   r   r   r   r   r   TblGroupplumbing)back_populatesdatadbreturnc                 x    |j                         } | di |}|j                  |       |j                          |S )Nr   )
model_dumpaddflush)clsr,   r-   	data_dict	new_entrys        r!   createzTblPlumbing.create   s6    OO%	$)$	
y

r    zTblPlumbing | Nonec                 x    |j                  |       j                  | j                  |k(        j                         S N)queryfilterr   first)r3   r   r-   s      r!   	get_by_idzTblPlumbing.get_by_id%   s-    xx}##CLLH$<=CCEEr    c                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r8   )	r9   r:   r   r;   r0   itemssetattrcommitrefresh)r3   r   r,   r-   update_datar4   keyvalues           r!   updatezTblPlumbing.update)   s|    hhsm**3<<8+CDJJLOO%	#//+JC S%0 , 			


;r    c                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          |S )NF)r9   r:   r   r;   deleter@   )r3   r   r-   delete_datas       r!   rG   zTblPlumbing.delete4   sM    hhsm**3<<8+CDJJL
		+
		r    N)r   r   r   __tablename__r
   r   r	   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   groupclassmethodr   r   r6   r<   rE   rG   r   r    r!   r#   r#      s`   "M)d$OHfSkO)*5I*JUYZHfSkZ%fRj4@D&+@&v=E6#;=#0$#GM6%=G'>E&->(t<GVC[<J?E 7 }   F F' F6J F F S |  =   S W   r    r#   N)pydanticr   r   
sqlalchemyr   r   r   r   sqlalchemy.ormr	   r
   r   r   app.models.mainr   r   r#   r   r    r!   <module>rP      s/    % 7 7 G G  .9 .+$ +r    