o
    iu
                     @   sr   d dl mZ ddlT d dlmZ d dlmZ d dlmZ G dd dejZ	G d	d
 d
ej
ZG dd dej
ZdS )    )serializers   )*)datetime)JsonResponse)generateTokenc                   @   s$   e Zd Ze Ze Zdd ZdS )AddDeviceSerializerc                 C   s   d}d }|d dkrd|d< t jj|d d}| dkr!|d }|d krod }tjj|d d}| dkr;|d }nd}t|dkrKtd	|gitd
}t |t	
 t	
 |d}|  t|j|j|jj|j|jdS t|j|j|jj|j|jdS )N tokenNone)r
   r   deviceOSTypeId)idz,Invalid Device OS Type is already registerederror7   )r
   createdDateupdatedDater   )r   r
   r   r   r   )RegisteredDeviceobjectsfilter__len__DeviceOSTypelenr   ValidationErrorr   r   nowsaver   r   r
   r   r   r   )selfvalidated_dataerrorMessageregisteredDeviceregisteredDeviceListselectedDeviceOSTypedataListr
    r"   b/var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/mama_care_api/analytics/serializers.pycreate   s@   
zAddDeviceSerializer.createN)	__name__
__module____qualname__r   IntegerFieldr   	CharFieldr
   r$   r"   r"   r"   r#   r      s    r   c                   @      e Zd ZG dd dZdS )RegisteredDeviceSerializerc                   @      e Zd ZeZg dZdS )zRegisteredDeviceSerializer.Meta)r   r
   r   r   r   N)r%   r&   r'   r   modelfieldsr"   r"   r"   r#   Meta;       r/   Nr%   r&   r'   r/   r"   r"   r"   r#   r+   :       r+   c                   @   r*   )UserNavSerializerc                   @   r,   )zUserNavSerializer.Meta)r   navNamer   r   registeredDeviceIdN)r%   r&   r'   UserNavr-   r.   r"   r"   r"   r#   r/   F   r0   r/   Nr1   r"   r"   r"   r#   r3   E   r2   r3   N)rest_frameworkr   modelsr   django.httpr   common.commonr   
Serializerr   ModelSerializerr+   r3   r"   r"   r"   r#   <module>   s    3