o
    Ah                     @   s   d dl mZmZ d dlmZmZmZ d dlmZ d dl	m	Z	 d dl
mZ G dd deeZG dd	 d	eZG d
d deZG dd deZG dd deZG dd deZdS )    )	BaseModelField)OptionalUnionList)Enum)datetime)ObjectIdc                   @   s   e Zd ZdZdZdS )
EntityTypevehicle	workforceN)__name__
__module____qualname__r   r    r   r   H/var/www/html/moveengine/app/v1/models/platform/geofence_rule_mapping.pyr
      s    r
   c                   @   s   e Zd ZU eed< dZee ed< dZee ed< dZee ed< dZ	ee ed< dZ
ee ed< dZee ed< dZeee  ed	< d
diZdS )GeofenceRuleMappingBase
account_idNuser_idgeofence_idgeofence_name	rule_namegeofence_rule_idassigned_entity_typeassigned_entity_idarbitrary_types_allowedT)r   r   r   str__annotations__r   r   r   r   r   r   r   r
   r   r   model_configr   r   r   r   r      s   
 r   c                   @   s   e Zd ZdS )GeofenceRuleMappingCreateN)r   r   r   r   r   r   r   r      s    r   c                   @   s   e Zd ZU dZee ed< dZeeee	f  ed< dZ
eeee	f  ed< dZee ed< dZeee  ed< dZee ed< dZee ed< d	d
iZdS )GeofenceRuleMappingUpdateNr   r   r   r   r   r   r   r   T)r   r   r   r   r   r   r   r   r   r	   r   r   r
   r   r   r   r   r   r   r   r   r   r        s   
 r    c                   @   sB   e Zd ZU dZee ed< eej	dZ
eed< ddeeidZdS )GeofenceRuleMappingNid)default_factorycreated_dateT)populate_by_namer   json_encoders)r   r   r   r"   r   r   r   r   r   utcnowr$   r	   r   r   r   r   r   r!   .   s   
 
r!   c                   @   s*   e Zd ZU eed< ee ed< ddiZdS )GeofenceRuleMappingstotal_countusersr   TN)r   r   r   intr   r   r!   r   r   r   r   r   r(   9   s
   
 r(   N)pydanticr   r   typingr   r   r   enumr   r   bsonr	   r   r
   r   r   r    r!   r(   r   r   r   r   <module>   s    