o
    $nh                     @   sh   d dl mZ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 G dd deZG dd deZd	S )
    )	BaseModelField)
ForeignKeyString)Mappedmapped_columnrelationshipSession)Basec                   @   s   e Zd ZU eddZedB ed< eddZedB ed< eddZe	dB ed< eddZ
edB ed< eddZedB ed< eddZedB ed< eddZe	dB ed	< dS )
PlumbingBaseN)defaultplumb_idgroup_idtypeunitscost_per_unittotalremarks)__name__
__module____qualname__r   r   int__annotations__r   r   strr   r   floatr   r    r   r   3/var/www/html/RetailAPI/app/models/main/Plumbing.pyr      s   
 r   c                   @   s   e Zd ZU dZedddZee ed< ee	dddZ
ee ed< eedd	dZee ed
< ed	dZee ed< ed	dZee ed< ed	dZee ed< eedd	dZee ed< edddZedededd fddZedededdfddZdS )TblPlumbingtbl_plumbingT)primary_keyautoincrementr   ztbl_group.group_id)nullabler   2   Fr   r   r   r   d   r   TblGroupplumbing)back_populatesdatadbreturnc                 C   s,   |  }| di |}|| |  |S )Nr   )
model_dumpaddflush)clsr'   r(   	data_dict	new_entryr   r   r   create   s
   
zTblPlumbing.createzTblPlumbing | Nonec                 C   s   | | | j|k S )N)queryfilterr   first)r-   r   r(   r   r   r   	get_by_id%   s   zTblPlumbing.get_by_idN)r   r   r   __tablename__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   groupclassmethodr   r	   r0   r4   r   r   r   r   r      s   
 r   N)pydanticr   r   
sqlalchemyr   r   sqlalchemy.ormr   r   r   r	   app.models.mainr
   r   r   r   r   r   r   <module>   s    
