o
    g                     @   s   d dl mZ d dlmZ d dlmZmZmZmZm	Z	 G dd dej
ZG dd dej
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)DeveloperSerializer)DevelopmentDevelopmentTranslateCurrencyFlatFlatTranslatec                   @   s"   e Zd Ze ZG dd dZdS )CurrencySerializerc                   @      e Zd ZeZg dZdS )zCurrencySerializer.Meta)idnamecodedemonymmajor_singlemajor_pluraliso_numsymbolsymbol_nativeminor_singleminor_plural
iso_digitsdecimal_digitsnum_to_basicgbp_rateN)__name__
__module____qualname__r   modelfields r   r   8/var/www/Entralon-Web-Backend/development/serializers.pyMeta       r!   N)r   r   r   r   
FloatFieldr   r!   r   r   r   r    r	      s    r	   c                   @   s   e Zd ZG dd dZdS )FlatSerializerc                   @   r
   )FlatSerializer.Meta)bedrooms_numis_sold_out
base_priceareaN)r   r   r   r   r   r   r   r   r   r    r!      r"   r!   N)r   r   r   r!   r   r   r   r    r$      s    r$   c                   @   sL   e Zd ZedddZe Ze Z	e Z
G dd dZdd Zdd Zd	S )
MasterDevelopmentSerializerT)many	read_onlyc                   @   r
   )z MasterDevelopmentSerializer.Meta)r   titleslugcountrycityimageaddress	developerr'   is_ready_to_moveflatsN)r   r   r   r   r   r   r   r   r   r    r!      r"   r!   c                 C      |j jS N)r/   r   selfobjr   r   r    get_country      z'MasterDevelopmentSerializer.get_countryc                 C   r6   r7   )r0   r   r8   r   r   r    get_city   r<   z$MasterDevelopmentSerializer.get_cityN)r   r   r   r$   r5   r   r3   r   SerializerMethodFieldr/   r0   r!   r;   r=   r   r   r   r    r*      s    r*   c                   @   sr   e Zd ZejddZe Ze Ze Z	e Z
ejddZG dd dZdd Zdd	 Zd
d Zdd ZdS )DevelopmentListSerializerzdevelopment.title)sourcezdevelopment.imagec                   @   r
   )zDevelopmentListSerializer.Meta)	r   r-   r.   r)   	min_price	max_pricer2   summaryr1   N)r   r   r   r   r   r   r   r   r   r    r!   ,   r"   r!   c                 C   s   d|j j S )N	property-)developmentr.   r8   r   r   r    get_slug1   s   z"DevelopmentListSerializer.get_slugc                 C   s   z|j jdW S    Y dS )N,.0f0)rE   r)   r8   r   r   r    get_area4   s   z"DevelopmentListSerializer.get_areac                 C   &   z|j j d jdW S    Y dS )Nr   rG   rH   rE   r5   allr(   r8   r   r   r    get_min_price:      z'DevelopmentListSerializer.get_min_pricec                 C   rJ   )NrG   rH   rK   r8   r   r   r    get_max_price@   rN   z'DevelopmentListSerializer.get_max_priceN)r   r   r   r   	CharFieldr-   r>   r.   r)   rA   rB   r1   r!   rF   rI   rM   rP   r   r   r   r    r?   $   s    r?   c                   @   s:   e Zd Ze Ze Ze ZG dd dZ	dd Z
dS )r$   c                   @   r
   )r%   )r   r   rE   r)   price_per_meterr(   r&   price_historyN)r   r   r   r   r   r   r   r   r   r    r!   K   r"   r!   c                 C   s   |j jjd|j jj dS )NrD   )r-   r.   )flatrE   r-   r.   r8   r   r   r    get_developmentP   s   zFlatSerializer.get_developmentN)r   r   r   r   rQ   r   r>   rE   rS   r!   rU   r   r   r   r    r$   F   s    N)rest_frameworkr   developer.serializersr   development.modelsr   r   r   r   r   ModelSerializerr	   r$   r*   r?   r   r   r   r    <module>   s    	"