
    [h                     x    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 d dlmZ  G d de      Z G d de      Zy	)
    )	BaseModelField)Mappedmapped_columnrelationshipSession)IntegerText
ForeignKey)Basec                   t    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<   y)MeasuringSalesProfitabilityBaseN)defaultmeasuring_idwhat_would_your_approachgroup_id)
__name__
__module____qualname__r   r   int__annotations__r   strr        T/var/www/html/retail-simulation-api/app/models/main/measuring_sales_profitability.pyr   r      s<    !&t!4LC$J4-24-@d
@"40Hd
0r   r   c            	       "   e Zd ZU dZ 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)TblMeasuringSalesProfitability!tbl_measuring_sales_profitabilityr   T)primary_keyautoincrementr   N)nullableserver_defaultr   ztbl_group.group_idTblGroupmeasuring_sales_profitability)back_populatesdatadbreturnc                 t     | di |j                         }|j                  |       |j                          |S )Nr   )
model_dumpaddflush)clsr&   r'   create_datas       r   createz%TblMeasuringSalesProfitability.create   s1    .DOO-.
{

r   c                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   all)r-   r   r'   get_datas       r   getz"TblMeasuringSalesProfitability.get   s1    88C=''(@AEEGr   c                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r1   )	r2   r3   r   firstr*   itemssetattrcommitrefresh)r-   r   r&   r'   update_data	data_dictkeyvalues           r   updatez%TblMeasuringSalesProfitability.update   s~    hhsm**3+;+;|+KLRRTOO%	$??,KC% S%0 - 			


;r   c                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          |S )NF)r2   r3   r   r8   deleter;   )r-   r   r'   delete_datas       r   rC   z%TblMeasuringSalesProfitability.delete*   sO    hhsm**3+;+;|+KLRRT
		+
		r   )r   r   r   __tablename__r   r	   r   r   r   r   r
   r   r   r   r   r   groupclassmethodr   r   r/   r6   rA   rC   r   r   r   r   r      s   7M!.~wTXhl!mL6#;m-:;UW[fj{  .Avc{  A*:w
K_@`aHvc{a4STE8 W Hh   # ' -M    +J w Zz     4T  r   r   N)pydanticr   r   sqlalchemy.ormr   r   r   r   
sqlalchemyr	   r
   r   app.models.base_classr   r   r   r   r   r   <module>rL      s/    % G G 0 0 &1i 1
&T &r   