B
    Ob                 @   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
 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dS )    )models)gettext_lazy)timezone)	APP_LABEL)Employee)OutdoorSchedulePlanner)ClientDetails)AdminRuntimeWarning)AbstractCloudc                   s  e Zd ZejeedejdZdZ	ej
edde	dZejejdZejeddejd	Zejeddejd	Zejed
ddddZejedddZejedddZejedddZejedddZejedddZejedddZejedddddZejedddddZejddZ ejddZ!ejddZ"dd Z#ede#_$dd Z%ede%_$dd Z&ede&_$ fddZ'G d d! d!Z(  Z)S )"OutdoorTrackZscheduleEmp_field_employee)verbose_name	on_delete))r   ZSchedule)   zUn-ScheduleZ outdoorTrack_field_schedule_typer   )defaultchoices)r   T)nullblankr   ZoutdoorTrack_field_client_name )r   r   r   ZoutdoorTrack_field_checkin)r   ZoutdoorTrack_field_checkoutZ#outdoorTrack_field_checkin_latitudeZ$outdoorTrack_field_checkout_latitudeZ$outdoorTrack_field_checkin_longitudeZ%outdoorTrack_field_checkout_longitudeZtransaction_field_gpsLocationc             C   s   | j }|jS )N)employeeZemp_code)selfemp r   =G:\easytimepro\master/mysite/att\models\model_outdoortrack.pyget_emp_code#   s    zOutdoorTrack.get_emp_codeZemp_field_employeeCodec             C   s   | j }|jS )N)r   Z
first_name)r   r   r   r   r   get_emp_first_name)   s    zOutdoorTrack.get_emp_first_nameZemp_field_firstNamec             C   s   | j }|jS )N)r   	last_name)r   r   r   r   r   get_emp_last_name/   s    zOutdoorTrack.get_emp_last_nameZemp_field_lastNamec                sv   t jj| j| j| j| j| jd}|r`t jj| j| j| j| jdj| j	| j
| j| j| j| jd ntt | jf | d S )N)employee_id	client_idschedule_typedateclient_name)r   r   r    r!   )checkoutcheckout_latitudecheckout_addresscheckout_longitudecheckout_capturesummary)r   Zobjectsfilterr   clientr   r    r!   updater"   r#   r$   r%   r&   r'   supersave)r   argsZoutDoorTrack)	__class__r   r   r,   5   s    zOutdoorTrack.savec               @   s    e Zd ZeZedZeZdZdS )zOutdoorTrack.MetaZatt_model_OutdoorTrack)adddeleteZchangeviewN)	__name__
__module____qualname__r   Z	app_label_r   Zverbose_name_pluralZdefault_permissionsr   r   r   r   Meta?   s   r6   )*r2   r3   r4   r   Z
ForeignKeyr   r5   ZCASCADEr   ZenableBooleansZSmallIntegerFieldr   Z	DateFieldr   Znowr    r   Zscheduler   r)   Z	TextFieldr!   Z	TimeFieldZcheckinr"   Z
FloatFieldZcheckin_latituder#   Zcheckin_longituder%   Zcheckin_addressr$   Zcheckin_capturer&   r'   r   Zshort_descriptionr   r   r,   r6   __classcell__r   r   )r.   r   r      s6   



r   N)Z	django.dbr   Zdjango.utils.translationr   r5   Zdjango.utilsr   Zmysite.att.db_constr   Zmysite.personnel.modelsr   Zmysite.att.modelsr   r   Zmysite.admin.exceptionsr	   Z!mysite.admin.abstract_cloud_modelr
   r   r   r   r   r   <module>   s   