
    Dh	                         d dl mZ 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
)    )Literal)	BaseModelField)Mappedmapped_columnrelationshipSession)
ForeignKeyIntegerVARCHAREnum)Basec                       e Zd ZU  ed      Zedz  ed<    ed      Zedz  ed<   e	d   ed<    ed      Z
edz  ed<    ed      Zedz  ed<   y)	PrivateLabllingBaseN)default
private_idcategory_name)YesNoprivate_labelrationalgroup_id)__name__
__module____qualname__r   r   int__annotations__r   strr   r   r        G/var/www/html/retail-simulation-api/app/models/main/private_lablling.pyr   r      sY    #D1Jt1!&t!4MC$J4K((!$/HsTz/!$/HsTz/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d      Zee   e	d<    e ed	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)TblPrivateLabllingtbl_private_labllingr   T)primary_keyautoincrementr      N)nullableserver_defaultr   r   )r(   r   r   r   ztbl_group.group_idTblGroupprivate_lablling)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_private_labllingz*TblPrivateLablling.create_private_lablling   s5    OO%	##
x

r    private_get_idc                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   first)r4   r8   r.   get_datas       r!   get_private_labllingz'TblPrivateLablling.get_private_lablling#   s1    88C=''.(HIOOQr    private_update_idc                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r:   )	r;   r<   r   r=   r1   itemssetattrcommitrefresh)r4   r@   r-   r.   update_datar5   keyvalues           r!   update_private_labllingz*TblPrivateLablling.update_private_lablling(   s}    hhsm**3>>=N+NOUUWOO%	#//+JC S%0 , 			


;r    c                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          y)NFT)r;   r<   r   r=   deleterD   )r4   r   r.   delete_datas       r!   delete_private_labllingz*TblPrivateLablling.delete_private_lablling3   sJ    hhsm**3>>Z+GHNNP
		+
		r    )r   r   r   __tablename__r   r   r   r   r   r   r   r   r   r   r   r   r
   r   r   groupclassmethodr   r	   r7   r?   rI   rM   r   r    r!   r#   r#      sU   *M,\7PTdhiJi"/X\mq"rMF3Kr"/UD0AD"QMF3KQ*:ws|dcghHvc{h*:w
K_@`aHvc{a4FGE*= ' Ma     DX   s AT Y` dx     CW  r    r#   N)typingr   pydanticr   r   sqlalchemy.ormr   r   r   r	   
sqlalchemyr
   r   r   r   app.models.base_classr   r   r#   r   r    r!   <module>rV      s2     % D D 7 7 &0) 0+ +r    