U
    YHg,	                     @   sX   d dl mZ d dlmZ d dlmZ d dlmZ G dd deZG dd deej	Z
d	S )
    )absolute_import)	BaseQuery)db)TimestampMixinc                   @   s.   e Zd Zdd ZdddZdd Zdd	 Zd
S )ProviderNumberQueryc                 C   s   |  tj|k S N)filterProviderNumberphonefirst)selfr
    r   7/var/www/dostadmin/dostadmin/db_model/providernumber.pyfind_provider_number_with_phone   s    z3ProviderNumberQuery.find_provider_number_with_phone
MAIN_PHONEc                 C   s   |  tj|k S r   )r   r	   namer   )r   r   r   r   r   find_provider_number_with_name   s    z2ProviderNumberQuery.find_provider_number_with_namec                 C   s   |   tjS r   )r   order_byr	   idr   r   r   r   get_all_phone_names   s    z'ProviderNumberQuery.get_all_phone_namesc                 C   s   |  tjtjjk S r   )r   r	   r   Name	LIVE_CALLallr   r   r   r   get_live_call_provider_number   s    z1ProviderNumberQuery.get_live_call_provider_numberN)r   )__name__
__module____qualname__r   r   r   r   r   r   r   r   r      s   
r   c                   @   s   e Zd ZdZeZG dd dZG dd dZej	ej
ddZej	edd	d
Ze	edZe	ej
edZe	ej
edZe	ej
edZej	edd	d
ZejddddZedd ZdS )r	   providernumberc                   @   s$   e Zd ZdZdZdZdZdZdZdS )zProviderNumber.NameMAIN_PHONE_OLDC3_OLDC3r   r   TIKTOKN)	r   r   r   r   r    r!   r   r   r"   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdZdS )zProviderNumber.StatusactiveinactiveN)r   r   r   ACTIVEINACTIVEr   r   r   r   Status!   s   r'   T)primary_key2   F)unique   z
content.idz
partner.idzlanguage.idPartnerprovider_numberz'ProviderNumber.partner_id == Partner.id)backrefprimaryjoinc                 C   sP   t j|}|r||_||_n$t |||||t jjd}tj	| tj
  d S )N)r
   r   
content_idlanguage_id
partner_idstatus)r	   queryr   r   r0   r'   r%   r   sessionaddcommit)clsr
   r   r0   r1   r2   Zexisting_provider_numberr-   r   r   r   add_provider_number3   s     z"ProviderNumber.add_provider_numberN)r   r   r   __tablename__r   query_classr   r'   r   ColumnIntegerr   Stringr   r
   
ForeignKeyr0   r2   r1   r3   relationshippartnerclassmethodr9   r   r   r   r   r	      s$   r	   N)
__future__r   flask_sqlalchemyr   	dostadminr   dostadmin.mixinsr   r   Modelr	   r   r   r   r   <module>   s
   