
    }Ri                         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mZmZ d dlmZ  G d de      Z G d d	e      Zy
)    )List)	BaseModelField)Mappedmapped_columnSessionrelationship)DoubleIntegerVARCHARFloat
ForeignKeyText)Basec                   b   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	<    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)	SalesBaseN)defaultsales_idaverage_traffic_expectedaverage_remarknumber_of_transaction_per_monthnumber_remarkaverage_transaction_valuetransaction_remarkcogscogs_remarkgroup_id)__name__
__module____qualname__r   r   int__annotations__r   floatr   strr   r   r   r   r   r   r        </var/www/html/retail-simulation-api/app/models/main/sales.pyr   r      s    !$/HsTz/.3D.Aut|A"'"5NS4Z55:45H#edlH!&t!4MC$J4/4T/BB&+D&9t9-D54<-$T2K#*2!$/HsTz/r&   r   c            	          e Zd ZU dZ ededd      Zee   e	d<    ede
      Zee   e	d<    ede      Zee   e	d<    ede
      Zee   e	d<    ede      Zee   e	d<    ed	e
      Zee   e	d	<    ed
e      Zee   e	d
<    ede
      Zee   e	d<    ede      Zee   e	d<    ed 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)TblSales	tbl_salesr   T)primary_keyautoincrementr   r   r   r   r   r   r   r   r   ztbl_group.group_idTblGroupsales)back_populatesdatadbreturnc                 t     | di |j                         }|j                  |       |j                          |S )Nr%   )
model_dumpaddflush)clsr0   r1   new_datas       r'   create_saleszTblSales.create_sales"   s2     +*+
x

r&   c                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   all)r7   r   r1   get_datas       r'   	get_saleszTblSales.get_sales2   s1    88C=''(@AEEGr&   	update_idc                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r;   )	r<   r=   r   firstr4   itemssetattrcommitrefresh)r7   rA   r0   r1   update_data	data_dictkeyvalues           r'   update_saleszTblSales.update_sales7   s|    hhsm**3<<9+DEKKMOO%	#//+JC S%0 , 			


;r&   c                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          y)NFT)r<   r=   r   rC   deleterF   )r7   r   r1   delete_datas       r'   delete_saleszTblSales.delete_salesB   sJ    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   r   r   r	   groupclassmethodr   r   r9   r@   rL   rP   r%   r&   r'   r)   r)      s   M*:wD`deHvc{e/<=WY_/`ve}`#01A4#HNVC[H6CDegm6n#fUmn"/"FMF3KF0=>Y[a0bub'45I4'PP(8D6%=8 -mT BK&+B*:zBV7WXHvc{XG<Ey W 
     :   C i G z   3 7 j  r&   r)   N)typingr   pydanticr   r   sqlalchemy.ormr   r   r   r	   
sqlalchemyr
   r   r   r   r   r   app.models.base_classr   r   r)   r%   r&   r'   <module>rY      s2     % G G H H &
0	 
06t 6r&   