
    	,h                         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 d dlmZmZmZmZ  G d de      Z G d d	e      Zy
)    )Literal)	BaseModelField)VARCHAREnum
ForeignKeyInteger)Base)Mappedmapped_columnrelationshipSessionc                   2   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	<   d
Zed   ed<    ed      Zedz  ed<   y)DisplayBoardBaseN)defaultdisplay_board_idtypesizecost_per_unitunitstotalremarkStore Formate A)r   Store Formate Bstore_formate_typegroup_id)__name__
__module____qualname__r   r   int__annotations__r   strr   r   r   r   r   r   r   r        8/var/www/html/RetailAPI/app/models/main/display_board.pyr   r      s    $)$$7sTz7d+D3:+d+D3:+!&t!4MC$J4t,EC$J,t,EC$J,-FS4Z-IZ!EFZ!$/HsTz/r$   r   c            	       2   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dd      Zee   e	d<    ed e
d      dd      Zee   e	d<    e edd            Zee   e	d<    ee 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)"TblDisplayBoardtbl_displayboardr   T)primary_keyautoincrementr      N)nullableserver_defaultr   r   r   r   r   r   r   r   ztbl_group.group_idF)r,   r   TblGroupdisplay_board)back_populatesdatadbreturnc                 x    |j                         } | di |}|j                  |       |j                          |S )Nr#   )
model_dumpaddflush)clsr1   r2   	data_dictnew_datas        r%   createzTblDisplayBoard.create"   s5    OO%	##
x

r$   display_get_idc                 |    |j                  |       j                  | j                  |k(        j                         }|S N)queryfilterr   first)r8   r<   r2   get_datas       r%   get_by_display_board_dataz)TblDisplayBoard.get_by_display_board_data*   s3    88C=''(<(<(NOUUWr$   display_board_update_idc                 .   |j                  |       j                  | j                  |k(        j                         }|j	                         }|j                         D ]  \  }}|	t        |||        |j                          |j                  |       |S r>   )	r?   r@   r   rA   r5   itemssetattrcommitrefresh)r8   rD   r1   r2   update_datar9   keyvalues           r%   update_display_boardz$TblDisplayBoard.update_display_board0   s    hhsm**3+?+?CZ+Z[aacOO%	#//+JC S%0 , 			


;r$   display_board_delete_idc                     |j                  |       j                  | j                  |k(        j                         }|sy|j	                  |       |j                          y)NFT)r?   r@   r   rA   deleterH   )r8   rN   r2   delete_datas       r%   delete_display_boardz$TblDisplayBoard.delete_display_board;   sM    hhsm**3+?+?CZ+Z[aac
		+
		r$   )r   r   r   __tablename__r   r	   r   r   r    r!   r   r   r"   r   r   r   r   r   r   r   r   r   r   groupclassmethodr   r   r;   rC   rM   rR   r#   r$   r%   r'   r'      s   &M%23Ew\`pt%uvc{u&vws|d[_`D6#;`&vwVZ[D6#;["/SWhl"mMF3Km'4X\]EF3K]'4X\]EF3K](73<$_cdFVC[d'4T:KM^5_'aa)':>R3S^cdHfSkdODE*  ;L   c w J[  
 3 FV Za ev   3 G O`  r$   r'   N)typingr   pydanticr   r   
sqlalchemyr   r   r   r	   app.models.base_classr
   sqlalchemy.ormr   r   r   r   r   r'   r#   r$   r%   <module>r[      s2     % 9 9 & D D	0y 	0/d /r$   