B
    GDb'                 @   sX   d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
mZmZ d dlZG dd deZdS )    )ladonize)
request_valid
get_hr_minget_hr_min_sec
user_photostamp2datetimedatetime2stampinterface_responseonline_employee_newSUCCESS_CODEthis_week_periodNc            	   @   sN   e Zd ZdZeeeeeeeddd Zeeeeeeeeddd Z	dS )BioTimeAppProfileu   
    【Profile】
    )Zrtypec       
      C   sl   t |}i }|rX|jr|jjp d}|jr0|jjp2d}t|j}	|j|j|	||| d}t	t
t|ddS )u   
         get employee infomation
        @param source:          data source(1: IOS， 2：Android)
        @param device_token:    Token for push message
        @param language:
        @param token:
        @rtype:
         )ZpinnameZphoto
departmentpositionZarea
successful)r
   r   Z	dept_namer   Zposition_namer   Zemp_codeZ
first_nameZget_attarear	   r   jsondumps)
selfsourcedevice_tokenlanguagetokenempprofiler   r   Z	photo_url r   ;G:\easytimepro\master/mysite/mobile\services\app_profile.pyr      s    
zBioTimeAppProfile.profilec             C   sx  ddl }ddlm} |}t|}t|\}	}
t|}|jj|j|	|
fd	dddd}i }d}|rx|D ]|}|d 
d	}|d r|d pd}|d r|d pd}|d r|d pd}||7 }t|d t|t|t|d
||< qhW g }i }|	}xn||krb|
d	}||t|dddd
}|| ||jdd7 }|djttt|d |d}qW ttt|ddS )u\  
        get work time
        @param current_day:
        @param source:          data source(1: IOS， 2：Android)
        @param device_token:    Token for push message
        @param language:
        @param token:
        @rtype:
         ["items":[{"date": "", "work_time": "05:00", "remaining_time": "03:00", "overtime": "00:00"}]]
        r   N)PayloadBase)Zemp_idZatt_date__rangeZatt_dateZtotal_workedZ	remainingZovertime__total_otz%Y%m%d)date	work_timeZremaining_timeZovertimez00:00   )Zdaysz{0}:{1}:)current_daytotal_work_timeitemsr   r   )datetimeZmysite.att.modelsr   r   r   r
   Zobjectsfilteridvaluesstrftimer   r   getappendZ	timedeltaformatmapfloatsplitr	   r   r   r   )r   r#   r   r   r   r   r&   r   Zstamp_currentstartendr   ZrowsZvalsr$   rkeyr    Z
short_timeZ	over_timer%   dataZ
loop_startitemr   r   r   r    (   sN    




zBioTimeAppProfile.work_timeN)
__name__
__module____qualname____doc__r   r   intstrr   r    r   r   r   r   r      s
   r   )Zmysite.ladon.ladonizerr   Zmysite.mobile.utilsr   r   r   r   r   r   r	   r
   r   r   r   objectr   r   r   r   r   <module>   s   0