U
    (ccr                     @   s$  d dl mZ 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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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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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G d.d/ d/ej
ZG d0d1 d1ej
Z G d2d3 d3ej
Z!G d4d5 d5ej
Z"G d6d7 d7ej
Z#G d8d9 d9e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@dA dAej
Z(G dBdC dCej
Z)G dDdE dEej
Z*G dFdG dGej
Z+G dHdI dIej
Z,G dJdK dKej
Z-G dLdM dMej
Z.G dNdO dOej
Z/G dPdQ dQej
Z0G dRdS dSej
Z1G dTdU dUej
Z2G dVdW dWej
Z3G dXdY dYej
Z4G dZd[ d[ej
Z5G d\d] d]ej
Z6G d^d_ d_ej
Z7G d`da daej
Z8G dbdc dcej
Z9G ddde deej
Z:G dfdg dgej
Z;G dhdi diej
Z<G djdk dkej
Z=G dldm dmej
Z>G dndo doej
Z?G dpdq dqej
Z@eeejAdrdwdudvZBdsS )x    )models)settings)	post_save)receiver)Tokenc                   @   sp   e Zd ZejdddZejddZejddZejddZejddZ	ejddZ
ejddZG dd dZdS )RegistrationT<   primary_key
max_lengthr   c                   @   s   e Zd ZdZdZdZdS )zRegistration.MetaFr   ))username
first_name	last_namephone_numberemailpasswordconfirm_passwordN__name__
__module____qualname__manageddb_tableunique_together r   r   -/var/www/html/project/apps/customer/models.pyMeta   s   r   N)r   r   r   r   	CharFieldr   r   r   r   r   r   r   r   r   r   r   r   r      s   r   c                   @   s(   e Zd ZejdddZG dd dZdS )	AuthGroupT   uniquer   c                   @   s   e Zd ZdZdZdS )zAuthGroup.MetaFZ
auth_groupNr   r   r   r   r   r   r   r   r   r      s   r   N)r   r   r   r   r   namer   r   r   r   r   r      s   r   c                   @   sB   e Zd ZejddZeeejZ	edejZ
G dd dZdS )AuthGroupPermissionsTr
   AuthPermissionc                   @   s   e Zd ZdZdZdZdS )zAuthGroupPermissions.MetaFZauth_group_permissions))group
permissionNr   r   r   r   r   r   "   s   r   N)r   r   r   r   BigAutoFieldid
ForeignKeyr   
DO_NOTHINGr(   r)   r   r   r   r   r   r%      s   r%   c                   @   s@   e Zd ZejddZedejZejddZ	G dd dZ
dS )r'      r   DjangoContentTyped   c                   @   s   e Zd ZdZdZdZdS )zAuthPermission.MetaFZauth_permission))content_typecodenameNr   r   r   r   r   r   -   s   r   N)r   r   r   r   r   r$   r,   r-   r1   r2   r   r   r   r   r   r'   (   s   r'   c                   @   s   e Zd ZejddZejdddZe Z	ejdddZ
ejddZejddZejddZe Ze Ze ZG dd	 d	Zd
S )AuthUser   r   Tblanknullr    r!      c                   @   s   e Zd ZdZdZdS )zAuthUser.MetaF	auth_userNr#   r   r   r   r   r   ?   s   r   N)r   r   r   r   r   r   DateTimeField
last_loginIntegerFieldis_superuserr   r   r   r   is_staff	is_activedate_joinedr   r   r   r   r   r3   3   s   r3   c                   @   sB   e Zd ZejddZeeejZ	ee
ejZG dd dZdS )AuthUserGroupsTr&   c                   @   s   e Zd ZdZdZdZdS )zAuthUserGroups.MetaFZauth_user_groups))userr(   Nr   r   r   r   r   r   I   s   r   N)r   r   r   r   r*   r+   r,   r3   r-   rB   r   r(   r   r   r   r   r   rA   D   s   rA   c                   @   sB   e Zd ZejddZeeejZ	ee
ejZG dd dZdS )AuthUserUserPermissionsTr&   c                   @   s   e Zd ZdZdZdZdS )zAuthUserUserPermissions.MetaFZauth_user_user_permissions))rB   r)   Nr   r   r   r   r   r   T   s   r   N)r   r   r   r   r*   r+   r,   r3   r-   rB   r'   r)   r   r   r   r   r   rC   O   s   rC   c                   @   s   e Zd ZejddddZejddddZejdddZejddZ	ej
dddZejddddZej
dddZejddddZG dd	 d	Zd
S )BatchHistory@   Tr   r6   r7      r5   r4   r   c                   @   s   e Zd ZdZdZdS )zBatchHistory.MetaFZbatch_historyNr#   r   r   r   r   r   d   s   r   N)r   r   r   r   r   Z
batch_nameZbatch_descriptionr<   
hotspot_idZbatch_statusr:   creationdate
creationby
updatedateupdatebyr   r   r   r   r   rD   Z   s   rD   c                   @   sZ  e Zd ZejddddZejddddZejdddddZejd	dd
Z	ejdddddZ
ejdddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejdddZejddddZejdddZejddddZG dd dZdS )BillingHistoryr4   TrF   planId)	db_columnr6   r7   Z
billAmount   rO   r   r6   r7   Z
billActionrO   r   ZbillPerformerZ
billReasonr5   c                   @   s   e Zd ZdZdZdS )zBillingHistory.MetaFZbilling_historyNr#   r   r   r   r   r      s   r   N)r   r   r   r   r   r   r<   planidZ
billamountZ
billactionZbillperformerZ
billreasonpaymentmethodcashcreditcardnamecreditcardnumbercreditcardverificationcreditcardtypecreditcardexpcouponZdiscountnotesr:   rI   rJ   rK   rL   r   r   r   r   r   rM   i   s*   rM   c                   @   s  e Zd ZejddZejddZejddZejddZejdddZ	ejdddZ
ejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZejddZ ejddZ!e" Z#ejddZ$ejddZ%ejddZ&ejd	ddZ'ejddZ(ejddZ)ejddZ*G d
d dZ+dS )BillingMerchantr4   r   rP   txnIdrR   planNamerN   rO   Z
receipt_IDc                   @   s   e Zd ZdZdZdS )zBillingMerchant.MetaFZbilling_merchantNr#   r   r   r   r   r      s   r   N),r   r   r   r   r   r   r   macpintxnidplannamer<   rS   quantityZbusiness_emailZbusiness_idZtxn_typeZtxn_idpayment_typeZpayment_taxZpayment_costZpayment_feeZpayment_totalZpayment_currencyr   r   payer_emailZpayer_address_nameZpayer_address_streetZpayer_address_countryZpayer_address_country_codeZpayer_address_cityZpayer_address_stateZpayer_address_zipr:   payment_datepayment_statusZpending_reasonZreason_codeZ
receipt_idpayment_address_statusZvendor_typepayer_statusr   r   r   r   r   r]      sJ   r]   c                   @   s  e Zd ZejddddZejddddZejddddZejddddZejdddddZ	ejdddddZ
ejdddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddd	ZejddddZejddddZ ejddddZ!G d
d dZ"dS )BillingPaypalr4   TrF   rP   r^   rQ   r_   rN   r5   c                   @   s   e Zd ZdZdZdS )zBillingPaypal.MetaFZbilling_paypalNr#   r   r   r   r   r      s   r   N)#r   r   r   r   r   r   r   ra   rb   rc   rd   rS   re   Zreceiver_emailZbusinessZtaxZmc_grossZmc_feeZmc_currencyr   r   rg   Zaddress_nameZaddress_streetZaddress_countryZaddress_country_codeZaddress_cityZaddress_stateZaddress_zipr:   rh   ri   rj   rk   r   r   r   r   r   rl      s:   rl   c                   @   s  e Zd ZejdddddZejdddddZejdddddZejdddddZejdddddZ	ejd	ddddZ
ejd
ddddZejdddddZejdddddZejdddddZejdddddZejdddddZejdddddZejdddddZejdddZejdddddZejdddddZejdddddZejdddddZejdddddZejdddZejdddZejddddZejdddZejddddZG dd dZdS ) BillingPlansr_   r4   TrQ   rN   ZplanTypeZplanTimeBankZplanTimeTypeZplanTimeRefillCostZplanBandwidthUpZplanBandwidthDownZplanTrafficTotalZplanTrafficUpZplanTrafficDownZplanTrafficRefillCostZplanRecurringZplanRecurringPeriodZplanRecurringBillingSchedulerR   ZplanCostZplanSetupCostZplanTaxZplanCurrencyZ	planGroupZ
planActive    r5   rF   c                   @   s   e Zd ZdZdZdS )zBillingPlans.MetaFZbilling_plansNr#   r   r   r   r   r      s   r   N) r   r   r   r   r   rd   rS   ZplantypeZplantimebankZplantimetypeZplantimerefillcostZplanbandwidthupZplanbandwidthdownZplantraffictotalZplantrafficupZplantrafficdownZplantrafficrefillcostZplanrecurringZplanrecurringperiodZplanrecurringbillingscheduleZplancostZplansetupcostZplantaxZplancurrencyZ	plangroupZ
planactiver:   rI   rJ   rK   rL   r   r   r   r   r   rm      s4   rm   c                   @   s6   e Zd ZejddZejddddZG dd dZdS )	BillingPlansProfilesr4   r   rG   TrF   c                   @   s   e Zd ZdZdZdS )zBillingPlansProfiles.MetaFZbilling_plans_profilesNr#   r   r   r   r   r      s   r   N)r   r   r   r   r   Z	plan_nameZprofile_namer   r   r   r   r   ro      s   ro   c                   @   s~   e Zd ZejdddZejdddZejddZej	dddZ
ejdddd	Zej	dddZejdddd	ZG d
d dZdS )BillingRatesZrateNamer4   rR   ZrateTypeZrateCostr`   Tr5   rF   c                   @   s   e Zd ZdZdZdS )zBillingRates.MetaFZbilling_ratesNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   ZratenameZratetyper<   Zratecostr:   rI   rJ   rK   rL   r   r   r   r   r   rp      s   rp   c                   @   s\   e Zd ZejddZejddZejdddZejddZe	 Z
e	 ZG dd	 d	Zd
S )Cui   r   2   TrE   r	   rn   c                   @   s   e Zd ZdZdZdZdS )zCui.MetaFcui))r   clientipaddresscallingstationidNr   r   r   r   r   r     s   r   N)r   r   r   r   r   ru   rv   r   rt   r:   rI   Zlastaccountingr   r   r   r   r   rq   	  s   rq   c                   @   s   e Zd ZejdddddZejdddddZejdddddZejdd	dddZejd
ddddZ	ejdddddZ
ejdddddZejdddddZejdddddZG dd dZdS )
DictionaryType   TrQ   	AttributerE   ValueZFormat   ZVendorrn   ZRecommendedOPZRecommendedTableZRecommendedHelperZRecommendedTooltipi   c                   @   s   e Zd ZdZdZdS )zDictionary.MetaF
dictionaryNr#   r   r   r   r   r   "  s   r   N)r   r   r   r   r   type	attributevalueformatvendorZrecommendedopZrecommendedtableZrecommendedhelperZrecommendedtooltipr   r   r   r   r   rw     s   rw   c                   @   sn   e Zd Ze ZejdddZejddZ	e
 Ze ZejdejdddZeeejZG dd dZdS )	DjangoAdminLogTr5   rP   r   r/   c                   @   s   e Zd ZdZdZdS )zDjangoAdminLog.MetaFdjango_admin_logNr#   r   r   r   r   r   0  s   r   N)r   r   r   r   r:   action_time	TextField	object_idr   object_reprPositiveSmallIntegerFieldaction_flagchange_messager,   r-   r1   r3   rB   r   r   r   r   r   r   '  s   r   c                   @   s2   e Zd ZejddZejddZG dd dZdS )r/   r0   r   c                   @   s   e Zd ZdZdZdZdS )zDjangoContentType.MetaFdjango_content_type))	app_labelmodelNr   r   r   r   r   r   9  s   r   N)r   r   r   r   r   r   r   r   r   r   r   r   r/   5  s   r/   c                   @   sF   e Zd ZejddZejddZejddZe	 Z
G dd dZdS )DjangoMigrationsTr&   r.   r   c                   @   s   e Zd ZdZdZdS )zDjangoMigrations.MetaFZdjango_migrationsNr#   r   r   r   r   r   E  s   r   N)r   r   r   r   r*   r+   r   appr$   r:   Zappliedr   r   r   r   r   r   ?  s
   r   c                   @   s8   e Zd ZejdddZe Ze Z	G dd dZ
dS )DjangoSessionT(   r	   c                   @   s   e Zd ZdZdZdS )zDjangoSession.MetaFdjango_sessionNr#   r   r   r   r   r   O  s   r   N)r   r   r   r   r   session_keyr   session_datar:   expire_dater   r   r   r   r   r   J  s   r   c                   @   sL   e Zd ZejddZejdddZejddZejddZ	G dd dZ
d	S )

HeliosTranTr&   	FirstNamerP   rR   r   c                   @   s   e Zd ZdZdZdS )zHeliosTran.MetaFZhelios_tranNr#   r   r   r   r   r   Z  s   r   N)r   r   r   r   r*   r+   r   	firstnamephoneamountr   r   r   r   r   r   T  s
   r   c                   @   sb  e Zd ZejddZejddddZejddddZejddddZ	ejddddZ
ejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejdddZejddddZejdddZejddddZG dd dZd	S )
HotspotsTr&   rP   rF   r5   r4   c                   @   s   e Zd ZdZdZdS )zHotspots.MetaFZhotspotsNr#   r   r   r   r   r   v  s   r   N)r   r   r   r   r*   r+   r   r$   ra   ZgeocodeownerZemail_ownermanagerZemail_manageraddresscompanyphone1phone2r~   ZcompanywebsiteZcompanyemailZcompanycontactZcompanyphoner:   rI   rJ   rK   rL   r   r   r   r   r   r   _  s,   r   c                   @   sf   e Zd ZejddZejddddZejddddZejddddZ	ejddddZ
G dd dZdS )BulksettingTr&   rP   rF   c                   @   s   e Zd ZdZdZdS )zBulksetting.MetaFr   Nr#   r   r   r   r   r     s   r   N)r   r   r   r   r*   r+   r   useridr   Zsenderidr   r   r   r   r   r   r   z  s   r   c                   @   sf   e Zd ZejddZejddddZejddddZejddddZ	ejddddZ
G dd dZdS )BulksmsTr&   rP   rF   c                   @   s   e Zd ZdZdZdS )zBulksms.MetaFr   Nr#   r   r   r   r   r     s   r   N)r   r   r   r   r*   r+   r   ZmobileZmsgtypemsgr   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZejdddZejdddZe Ze Z	e Z
ejddZejdddZejddddZejdddZejddddZG dd dZdS )	InvoiceTr5   r4   r   rF   c                   @   s   e Zd ZdZdZdS )zInvoice.MetaFZinvoiceNr#   r   r   r   r   r     s   r   N)r   r   r   r   r<   user_idbatch_idr:   dateZ	status_idtype_idr   r\   rI   rJ   rK   rL   r   r   r   r   r   r     s   r   c                   @   s   e Zd Ze ZejdddZejdddZejdddZ	ejdddZ
ejddZejdddZejddddZejdddZejddddZG d	d
 d
ZdS )InvoiceItemsTr5   
      
max_digitsdecimal_placesr4   r   rF   c                   @   s   e Zd ZdZdZdS )zInvoiceItems.MetaFZinvoice_itemsNr#   r   r   r   r   r     s   r   N)r   r   r   r   r<   
invoice_idZplan_idDecimalFieldr   Z
tax_amounttotalr   r\   r:   rI   rJ   rK   rL   r   r   r   r   r   r     s   r   c                   @   sn   e Zd ZejddZejddZejdddZejddddZ	ejdddZ
ejddddZG dd dZd	S )
InvoiceStatusrn   r   r4   Tr5   rF   c                   @   s   e Zd ZdZdZdS )zInvoiceStatus.MetaFZinvoice_statusNr#   r   r   r   r   r     s   r   Nr   r   r   r   r   r   r\   r:   rI   rJ   rK   rL   r   r   r   r   r   r     s   r   c                   @   sn   e Zd ZejddZejddZejdddZejddddZ	ejdddZ
ejddddZG dd	 d	Zd
S )InvoiceTypern   r     Tr5   r4   rF   c                   @   s   e Zd ZdZdZdS )zInvoiceType.MetaFZinvoice_typeNr#   r   r   r   r   r     s   r   Nr   r   r   r   r   r     s   r   c                   @   s   e Zd ZejddZejddddZejddddZejdddZ	ejddZ
ejd	dddZejd
dddZejddddZG dd dZdS )Nasr4   r   rn   TrF   ry   r5   r   rE   rs   rP   c                   @   s   e Zd ZdZdZdS )zNas.MetaFZnasNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   Znasname	shortnamer~   r<   ZportssecretserverZ	communitydescriptionr   r   r   r   r   r     s   r   c                   @   s  e Zd Ze Ze ZejddZ	ejddZ
ejddZejddZejddZejddZejddZejddZejddZejddZejdddZejddZejddZejddZejddZe ZejddZejd	dd
Ze ZejddZejddZejddZejddZ ejddZ!ejddZ"ejddZ#e Z$ejddZ%ejddZ&e' Z(ejddddZ)ejddddZ*ejddddZ+ejddddZ,ejddddZ-ejddddZ.ejddddZ/ejddddZ0ejddddZ1ejddddZ2ejddddZ3ejddddZ4ejddddZ5ejddddZ6ejddddZ7ejddddZ8ejddddZ9G dd dZ:dS )Noder0   r   r|   rs         Tr!   zgw-qualrR      r4   rF   c                   @   s   e Zd ZdZdZdS )z	Node.MetaFnodeNr#   r   r   r   r   r     s   r   N);r   r   r   r   r:   timer<   Znetidr   r$   r   ZlatitudeZ	longitudeZ
owner_nameZowner_emailZowner_phoneZowner_addressZapproval_statusipra   ZuptimeZrobinZbatmanZmemfreer   ZnbsZgatewayZgw_qualroutesusersZkbdownZkbupZhopsZrankZssidZpssidZgateway_bitZmemlowZusershi
FloatFieldZcpuZ	wan_ifaceZwan_ipZwan_macZwan_gatewayZ
wifi_ifaceZwifi_ipZwifi_macZ	wifi_ssidZwifi_keyZwifi_channelZ	lan_ifaceZlan_macZlan_ipZwan_bupZ	wan_bdownZfirmwareZfirmware_revisionr   r   r   r   r   r     sd   r   c                   @   s  e Zd ZejddZejddZejdddZejddZejddZ	ejddZ
ejddZejddZejddZejddZejddZejddZejddZejddZejdddZejdddZejddddZejdddZejddddZG dd	 d	Zd
S )	Operatorsrn   r   Tr   r"   r4   r5   rF   c                   @   s   e Zd ZdZdZdS )zOperators.MetaF	operatorsNr#   r   r   r   r   r   &  s   r   N)r   r   r   r   r   r   r   r   lastnametitle
departmentr   r   r   Zemail1Zemail2Z
messenger1Z
messenger2r\   r:   Z	lastloginrI   rJ   rK   rL   r   r   r   r   r   r     s(   r   c                   @   s6   e Zd Ze ZejddZe ZG dd dZ	dS )OperatorsAclr4   r   c                   @   s   e Zd ZdZdZdS )zOperatorsAcl.MetaFZoperators_aclNr#   r   r   r   r   r   0  s   r   N)
r   r   r   r   r<   Zoperator_idr   fileaccessr   r   r   r   r   r   +  s   r   c                   @   s>   e Zd ZejddZejddZejddZG dd dZdS )OperatorsAclFilesr4   r   c                   @   s   e Zd ZdZdZdS )zOperatorsAclFiles.MetaFZoperators_acl_filesNr#   r   r   r   r   r   :  s   r   N)	r   r   r   r   r   r   categorysectionr   r   r   r   r   r   5  s   r   c                   @   s   e Zd Ze ZejdddZe Z	e Z
ejddZejdddZejddddZejdddZejddddZG d	d
 d
ZdS )Paymentr   r   r   r4   r   Tr5   rF   c                   @   s   e Zd ZdZdZdS )zPayment.MetaFZpaymentNr#   r   r   r   r   r   J  s   r   N)r   r   r   r   r<   r   r   r   r:   r   r   r   r\   rI   rJ   rK   rL   r   r   r   r   r   r   ?  s   r   c                   @   sn   e Zd ZejddZejddZejdddZejddddZ	ejdddZ
ejddddZG dd dZd	S )
PaymentTypern   r   r4   Tr5   rF   c                   @   s   e Zd ZdZdZdS )zPaymentType.MetaFrf   Nr#   r   r   r   r   r   W  s   r   Nr   r   r   r   r   r   O  s   r   c                   @   s   e Zd ZejddZejddddZejdddZ	ejdddZ
ejdddZejdddZejdddZejddddZejdddZejddddZG dd dZdS )	ProxysTr&   r4   rF   r5   c                   @   s   e Zd ZdZdZdS )zProxys.MetaFZproxysNr#   r   r   r   r   r   h  s   r   N)r   r   r   r   r*   r+   r   Z	proxynamer<   Zretry_delayZretry_countZ	dead_timeZdefault_fallbackr:   rI   rJ   rK   rL   r   r   r   r   r   r   \  s   r   c                   @   s  e Zd ZejddZejddZejdddZejddZ	ejddZ
ejddddZejddZejddddZejddddZejddd	Zejddd	Zejddd	Zejddd	Zejddd	ZejddddZejd
dddZejd
dddZejddd	Zejddd	Zejd
dZejd
dZejddZejddddZ ejddddZ!ejddddZ"ejddddZ#ejddddZ$ejddddZ%ejddZ&G dd dZ'dS )RadacctTr&   rE   r   rn   r!   rF   rr   r5   rs   c                   @   s   e Zd ZdZdZdS )zRadacct.MetaFZradacctNr#   r   r   r   r   r     s   r   N)(r   r   r   r   r*   Z	radacctidr   ZacctsessionidZacctuniqueidr   	groupnameZrealmnasipaddress	nasportidZnasporttyper:   ZacctstarttimeZacctupdatetimeZacctstoptimer<   ZacctintervalPositiveIntegerFieldZacctsessiontimeZacctauthenticZconnectinfo_startZconnectinfo_stopBigIntegerFieldZacctinputoctetsZacctoutputoctetscalledstationidrv   ZacctterminatecauseZservicetypeZframedprotocolZframedipv6addressZframedipv6prefixZframedinterfaceidZdelegatedipv6prefixframedipaddressr   r   r   r   r   r   m  s<   r   c                   @   sJ   e Zd ZejddZejddZejddZejddZG dd dZ	dS )RadcheckrE   r   r      c                   @   s   e Zd ZdZdZdS )zRadcheck.MetaFZradcheckNr#   r   r   r   r   r     s   r   N
r   r   r   r   r   r   r   opr   r   r   r   r   r   r     s
   r   c                   @   sL   e Zd ZejdddZejddZejddZejddZG dd dZ	d	S )
RadgroupcheckrE   Tr   r   r   r   c                   @   s   e Zd ZdZdZdS )zRadgroupcheck.MetaFZradgroupcheckNr#   r   r   r   r   r     s   r   N
r   r   r   r   r   r   r   r   r   r   r   r   r   r   r     s
   r   c                   @   sL   e Zd ZejdddZejddZejddZejddZG dd dZ	d	S )
RadgroupreplyrE   Tr   r   r   r   c                   @   s   e Zd ZdZdZdS )zRadgroupreply.MetaFZradgroupreplyNr#   r   r   r   r   r     s   r   Nr   r   r   r   r   r     s
   r   c                   @   sB   e Zd ZejddZejddZejddddZG dd dZdS )	RadhuntgrouprE   r   rr   TrF   c                   @   s   e Zd ZdZdZdS )zRadhuntgroup.MetaFZradhuntgroupNr#   r   r   r   r   r     s   r   N)	r   r   r   r   r   r   r   r   r   r   r   r   r   r     s   r   c                   @   s|   e Zd ZejddZejddZejddZejddZejddZ	ej
dddZejddZejddZG dd dZd	S )
	Radippoolry   r   rr   Tr5   rE   c                   @   s   e Zd ZdZdZdS )zRadippool.MetaFZ	radippoolNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   Z	pool_namer   r   r   rv   r:   Zexpiry_timer   Zpool_keyr   r   r   r   r   r     s   r   c                   @   sH   e Zd ZejddZejdddZejddZe Z	G dd dZ
dS )	RadpostauthrE   r   passrR   rn   c                   @   s   e Zd ZdZdZdS )zRadpostauth.MetaFZradpostauthNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   r   Z
pass_fieldreplyr:   authdater   r   r   r   r   r     s
   r   c                   @   sJ   e Zd ZejddZejddZejddZejddZG dd dZ	dS )RadreplyrE   r   r   r   c                   @   s   e Zd ZdZdZdS )zRadreply.MetaFZradreplyNr#   r   r   r   r   r     s   r   Nr   r   r   r   r   r     s
   r   c                   @   s:   e Zd ZejddZejddZe ZG dd dZ	dS )RadusergrouprE   r   c                   @   s   e Zd ZdZdZdS )zRadusergroup.MetaFZradusergroupNr#   r   r   r   r   r     s   r   N)
r   r   r   r   r   r   r   r<   priorityr   r   r   r   r   r     s   r   c                   @   s   e Zd ZejddZejddddZejddddZejddddZ	ejddddZ
ejddddZejddddZejdddZejdddZejdddZejdddZejddddZejdddZejddddZG d	d
 d
ZdS )RealmsTr&   r4   rF   rn   rG   rE   r5   c                   @   s   e Zd ZdZdZdS )zRealms.MetaFZrealmsNr#   r   r   r   r   r     s   r   N)r   r   r   r   r*   r+   r   Z	realmnamer~   ZauthhostZaccthostr   Zldflagr<   ZnostriphintsZnotrealmr:   rI   rJ   rK   rL   r   r   r   r   r   r     s   r   c                   @   s^   e Zd ZejddZejddZejddZejddZ	ejddZ
e ZG dd dZdS )RouterosCustomerTr&   rP   r   c                   @   s   e Zd ZdZdZdS )zRouterosCustomer.MetaFZrouteros_customerNr#   r   r   r   r   r     s   r   N)r   r   r   r   r*   r+   r   r$   r   r   trans_idr:   
created_atr   r   r   r   r   r      s   r   c                   @   s>   e Zd ZejddZejddZejddZG dd dZ	dS )RouterosDataTr&   rP   r   c                   @   s   e Zd ZdZdZdS )zRouterosData.MetaFZrouteros_dataNr#   r   r   r   r   r     s   r   N)
r   r   r   r   r*   r+   r   r$   
secondnamer   r   r   r   r   r     s   r   c                   @   s^   e Zd ZejddZejddZejddZejddZ	ejddZ
e ZG dd dZdS )RouterosDetailsTr&   rP   r   c                   @   s   e Zd ZdZdZdS )zRouterosDetails.MetaFZrouteros_detailsNr#   r   r   r   r   r     s   r   Nr   r   r   r   r*   r+   r   r   r   phonenumbertransidr:   r   r   r   r   r   r   r     s   r   c                   @   s\   e Zd ZejddZejdddZejdddZejdddZ	ej
dd	ZG d
d dZdS )RouterosStudentsTr&   r   rP   rR   
SecondNameLastNameScorer`   c                   @   s   e Zd ZdZdZdS )zRouterosStudents.MetaFZrouteros_studentsNr#   r   r   r   r   r   +  s   r   N)r   r   r   r   r*   r+   r   r   r   r   r<   scorer   r   r   r   r   r   $  s   r   c                   @   s^   e Zd ZejddZejddZejddZejddZ	ejddZ
e ZG dd dZdS )RouterosTransactionTr&   rP   r   c                   @   s   e Zd ZdZdZdS )zRouterosTransaction.MetaFZrouteros_transactionNr#   r   r   r   r   r   8  s   r   Nr   r   r   r   r   r   0  s   r   c                   @   sj  e Zd ZejdddddZejdddddZejdddZejddddZ	ejd	dddZ
ejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd
dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejd	dddZejddddZejd	dddZejd	dddZejd	dddZejd	dddZe  Z!ejddddZ"ejdddZ#ejdddZ$ejddddZ%ejddddZ&ejddddZ'ejdddZ(ej)dddZ*ejddddZ+ej)dddZ,ejddddZ-G dd dZ.dS )Userbillinfor4   T)r   r6   r7   r"   r_   rQ   r5   rn   rF   rP   r0         c                   @   s   e Zd ZdZdZdS )zUserbillinfo.MetaFZuserbillinfoNr#   r   r   r   r   r   e  s   r   N)/r   r   r   r   r   r   rd   r<   rH   ZhotspotlocationZcontactpersonr   r   r   r   citystatecountryziprT   rU   rV   rW   rX   rY   rZ   r\   Zchangeuserbillinfoleadr[   Z
ordertakerZ
billstatus	DateFieldZlastbillZnextbillZnextinvoicedueZbilldueZpostalinvoiceZ
faxinvoiceZemailinvoicer   r:   rI   rJ   rK   rL   r   r   r   r   r   r   =  sN   r   c                   @   st  e Zd ZejddddZejddddZejddddZejddddZejddddZ	ejddddZ
ejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejddddZejdddZejdddZejddddZejdddZejddddZG dd dZd	S )
Userinfor4   TrF   rP   r0   r5   c                   @   s   e Zd ZdZdZdS )zUserinfo.MetaFuserinfoNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   r   r   r   r   r   r   Z	workphoneZ	homephoneZmobilephoner   r  r  r  r  r\   ZchangeuserinfoZportalloginpasswordr<   Zenableportalloginr:   rI   rJ   rK   rL   r   r   r   r   r   r	  i  s.   r	  c                   @   sT   e Zd ZejddZe ZejddZejddZ	ej
dddZG dd dZd	S )
WimaxrE   r      r   Tr5   c                   @   s   e Zd ZdZdZdS )z
Wimax.MetaFZwimaxNr#   r   r   r   r   r     s   r   N)r   r   r   r   r   r   r:   r   ZspiZmipkeyr<   Zlifetimer   r   r   r   r   r    s   r  )senderNFc                 K   s   |rt jj|d d S )N)rB   )r   objectscreate)r  instancecreatedkwargsr   r   r   create_auth_token  s    r  )NF)C	django.dbr   django.confr   Zdjango.db.models.signalsr   django.dispatchr   Zrest_framework.authtoken.modelsr   Modelr   r   r%   r'   r3   rA   rC   rD   rM   r]   rl   rm   ro   rp   rq   rw   r   r/   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	  r  AUTH_USER_MODELr  r   r   r   r   <module>   sx   +# 	



8

$


,