
    7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mZ  G d de      Z G d de      Zy	)
    )	BaseModelField)Base)Mappedmapped_columnrelationshipSession)VARCHAREnum
ForeignKeyIntegerTextc                       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)	DepreciationBaseN)defaultdepreciation_iddepreciation_methoddepreciation_yearsother_depreciationremarkgroup_id)__name__
__module____qualname__r   r   int__annotations__r   strr   r   r   r        C/var/www/html/retail-simulation-api/app/models/main/depreciation.pyr   r      sw    #(#6OcDj6',T':#*:&+D&9t9&+D&9t9-FS4Z-!$/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d      Zee   e	d
<    ede ed      d      Zee   e	d<    eded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)TblDepreciationtbl_depreciationr   T)primary_keyautoincrementr      N)nullableserver_defaultr   r   r   ztbl_group.group_idF)r'   r   TblGroupdepreciation)back_populatesdatadbreturnc                 t     | di |j                         }|j                  |       |j                          |S )Nr   )
model_dumpaddflush)clsr,   r-   new_datas       r    createzTblDepreciation.create   s0    +*+
x

r   depreciation_get_idc                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   first)r3   r6   r-   get_datas       r    get_depreciation_dataz%TblDepreciation.get_depreciation_data"   s4    88C=''(;(;?R(RSYY[r   depreciation_update_idc                 .   |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_data	data_dictkeyvalues           r    update_depreciationz#TblDepreciation.update_depreciation'   s    hhsm**3+>+>BX+XY__aOO%	#//+JC S%0 , 			


;r   depreciation_delete_idc                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          y)NFT)r9   r:   r   r;   deleterB   )r3   rI   r-   delete_datas       r    delete_depreciation_dataz(TblDepreciation.delete_depreciation_data2   sM    hhsm**3+>+>BX+XY__a
		+
		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=   rH   rM   r   r   r    r"   r"      sy   &M$12CWZ^nr$sOfSks(56KWUX\dhy}(~&+~'45I7]arv'ww(73<$_cdFVC[d*:w
K_@`kpqHvc{q'45I4Z^os'ttNCE) g 9J   s w J[    BR W^ bs   S W Pa  r   r"   N)pydanticr   r   app.models.base_classr   sqlalchemy.ormr   r   r   r	   
sqlalchemyr
   r   r   r   r   r   r"   r   r   r    <module>rU      s/    % & D D > >0y 0+d +r   