
    ιhb
                         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mZ d dlmZ  G d de      Z G d de      Zy	)
    )	BaseModelField)Mappedmapped_columnrelationshipSession)
ForeignKeyIntegerVARCHAREnumFloat)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<   y)	StoreLevelStaffNeedsBaseN)defaultstore_iddesignationaverage_salarycountstore_formate_typegroup_id)__name__
__module____qualname__r   r   int__annotations__r   strr   floatr   r   r        N/var/www/html/retail-simulation-api/app/models/main/store_level_staff_needs.pyr   r      su    !$/HsTz/$T2K#*2$)$$7NUT\7t,EC$J,&+D&9t9!$/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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 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)TblStoreLevelStaffNeedstbl_store_staff_needsr   T)primary_keyautoincrementr      N)nullableserver_defaultr   r   r   zStore Format AzStore Format Br   ztbl_group.group_idTblGroupstore_level_staff_needs)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_store_level_staffz0TblStoreLevelStaffNeeds.create_store_level_staff   s5    OO%	##
x

r    c                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   all)r4   r   r.   get_datas       r!   get_store_level_staffz-TblStoreLevelStaffNeeds.get_store_level_staff"   s1    88C=''(@AEEGr    store_update_idc                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r9   )	r:   r;   r   firstr1   itemssetattrcommitrefresh)r4   r?   r-   r.   update_datar5   keyvalues           r!   update_store_level_staffz0TblStoreLevelStaffNeeds.update_store_level_staff'   s|    hhsm**3<<?+JKQQSOO%	#//+JC S%0 , 			


;r    c                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          y)NFT)r:   r;   r   rA   deleterD   )r4   r   r.   delete_datas       r!   delete_store_level_staffz0TblStoreLevelStaffNeeds.delete_store_level_staff2   sJ    hhsm**3<<8+CDJJL
		+
		r    )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   r7   r>   rI   rM   r   r    r!   r#   r#      st   +M*:wD`deHvc{e -mWS\TXim nK&+n%23CUUYjn%oNVE]o'4X\]EF3K]'45I4P`brKs'tt*:w
K_@`aHvc{a4MNE+C  Sl   C G ?X   c @X ]d   iB   s w B[  r    r#   N)pydanticr   r   sqlalchemy.ormr   r   r   r   
sqlalchemyr	   r
   r   r   r   app.models.base_classr   r   r#   r   r    r!   <module>rU      s/    % G G @ @ &0y 0*d *r    