
    siE                     V    d dl Zd dlZd dlZd dlmZmZ  G d dej                        Z	y)    N)
migrationsmodelsc            /       F   e Zd ZdZg Z ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej                  ej                  j                  j                  gd      fd ej                  dd      fd ej                   ddd      fd ej                  dd      fd ej                   ddd      fd ej"                  dddej                  j                  j$                  gd       fd! ej"                  ddej                  j                  j$                  gd"#      fd$ ej"                  ddej                  j                  j$                  gd%#      fd& ej                  dd'      fd( ej                  dd)      fd* ej&                  dd+      fd, ej&                  ddd-.      fd/ ej&                  d01      fd2 ej                  dd3      fd4 ej                  dd5      fd6 ej                  dd7      fd8 ej(                  d9dd:;      fd< ej"                  g d=d>d?d@      fdA ej                  d1      fdB ej*                  ddC      fgddDg dEdFdGgdHI       ej                  dJd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej                  dej                  j                  j                  gdKL      fdM ej                  dN      fdO ej                  ddP      fdQ ej                   dRS      fdT ej                  ddU      fdV ej                  dN      fdW ej                   ddX      fg
dYg dZiI       ej                  d[d ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd\ ej                  d1      fd] ej                  dd^d_`      fgdadiI       ej                  dbd ej                  dddd      fd
 ej                  dd      fdc ej"                  dddegdfdgh      fd ej                  ddi      fgdYdjgiI       ej                  dkd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fdl ej"                  ddmn      fdo ej,                  d01      fdp ej"                  dqdddrs      fdt ej"                  dddej                  j                  j$                  gd       fdu ej"                  dddej                  j                  j$                  gdv       fdw ej"                  ddfej                  j                  j$                  gdx#      fdy ej&                  d0ddz{      fd| ej&                  d0dd}{      fd, ej&                  d0dd~{      fgddddgdI       ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej(                  d9dd;      fgdadiI       ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej.                  ej                  j2                        fgdadiI       ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej"                  dej                  j                  j$                  gd      fd ej"                  dddej                  j                  j$                  g      fd ej"                  dddej                  j                  j$                  g      fd ej                  dd      fgdadiI       ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej"                  ddn      fgdadiI       ej                  dd ej                  dddd      fd ej                  ddd	      fd
 ej                  dd      fd ej"                  ddej                  j                  j4                  gd#      fd ej&                         fd ej                  ddd`      fd ej                  ddd`      fd ej                  d1      fgdadiI       ej                  dd ej6                  dddd      fd ej                  dddd      fd
 ej                  dd      fd ej"                  ddfd      fd ej(                  dN      fd ej                  dd      fd ej                  ej                  j                  j                  gd      fd ej                  dd      fd ej                   ddd      fd ej                  dd      fd ej                   ddd      fd ej"                  dddej                  j                  j$                  gd       fd! ej"                  ddej                  j                  j$                  gd"#      fd$ ej"                  ddej                  j                  j$                  gd%#      fd& ej                  dd'      fd( ej                  dd)      fd* ej&                  dd+      fd, ej&                  ddd-.      fd/ ej&                  d01      fd2 ej                  dd3      fd4 ej                  dd5      fd6 ej                  dd7      fd8 ej(                  d9dd:;      fd< ej"                  g d=d>d?d@      fdA ej                  d1      fdB ej*                  ddC      fd ej8                  dd      fd ej                  d      fd ej"                  dd      fd ej"                  g dd      fgdddddej                  j<                  ej>                  f       ej                  dd ej                  dddd      fd ej"                  ddd      fd ej"                  g ddd      fd ej                  dd+      fd ej"                  ddddej                  j                  j$                  gī      fd ej"                  ddddej                  j                  j$                  gī      fd* ej&                  dd0dƫ      fd ej&                  dd0dƫ      fd ej(                  d9ɫ      fd ej"                  ddd      fd ej                  d1      fd ej                  d1      fd ej@                  d01      fd ej                  dd+      fgdddҜI      gZ!y)	MigrationT
AttendanceidFID)auto_createdprimary_key	serializeverbose_name
created_atz
Created At)auto_now_addnullr   	is_activez	Is Active)defaultr   attendance_datezAttendance date)
validatorsr   attendance_clock_in_datezCheck-In Date)r   r   attendance_clock_inzFirst Check-In TimezCheck-In)	help_textr   r   attendance_clock_out_datezCheck-Out Dateattendance_clock_outzLast Check-Out Timez	Check-Outattendance_worked_hourz00:00
   zWorked Hours)r   
max_lengthr   r   r   minimum_hourzMinimum hour)r   r   r   r   attendance_overtimeOvertimeattendance_overtime_approvezOvertime Approveattendance_validatedzAttendance Validateat_work_second)blankr   overtime_secondzOvertime In Second)r#   r   r   approved_overtime_secondr   )r   is_validate_requestzIs validate requestis_bulk_request)r   editableis_validate_request_approvedzIs validate request approvedrequest_description   zRequest Description)r   r   r   request_type))create_requestzCreate Request)update_requestzUpdate Request)created_requestzCreated Requestr.      )choicesr   r   r   
is_holidayrequested_data)r(   r   Attendances)-attendance_date employee_id__employee_first_namer   )change_validateattendancezValidate Attendance)change_approveovertimezChange Approve Overtime)r   verbose_name_pluralorderingpermissions)namefieldsoptionsAttendanceActivityzAttendance Date)r   r   r   in_datetime)r   clock_in_datezIn Dateclock_inzCheck In)r   clock_out_datezOut Dateout_datetime	clock_outz	Check Outr:   )r5   r6   rB   AttendanceGeneralSettingtime_runnerenable_check_inzfEnabling this feature allows employees to record their attendance using the Check-In/Check-Out button.zEnable Check in/Check out)r   r   r   abstractAttendanceLateComeEarlyOuttype)	late_comez	Late Come)	early_outz	Early Out   Type)r1   r   r   )r   r   z-attendance_id__attendance_dateAttendanceOverTimemonthMonth)r   r   month_sequenceyear2026Year)r   r   r   r   worked_hourspending_hourszPending HoursovertimezOvertime Hourshour_account_secondzWorked Seconds)r   r   r   hour_pending_secondzPending SecondszOvertime SecondszHour AccountzHour Accountsz-yearz-month_sequence)r   r9   r:   AttendanceRequestCommentcommentCommentAttendanceRequestFilefile)	upload_toAttendanceValidationConditionvalidation_at_workzWorked Hours Auto Approve Till)r   r   r   minimum_overtime_to_approve)r#   r   r   r   overtime_cutoffauto_approve_otzAuto Approve OTBatchAttendancetitle   Title	GraceTimeallowed_timez00:00:00zAllowed Timeallowed_time_in_secsallowed_clock_inz1Allcocate this grace time for Check-In AttendancezAllowed Clock-Inallowed_clock_outz2Allcocate this grace time for Check-Out AttendancezAllowed Clock-Out
is_defaultHistoricalAttendance)r
   r#   db_indexr   )r#   r(   r   r   history_title)r#   r   r   history_descriptionhistory_highlight)r   r   
history_id)r   r   history_date)rr   history_change_reasond   )r   r   history_type))+Created)~Changed)-Deleted   )r1   r   zhistorical Attendancezhistorical Attendances)z-history_datez-history_id)rw   rv   )r   r9   r:   get_latest_by)r<   r=   r>   basesWorkRecordsrecord_name   work_record_type))FDPPresent)HDPzHalf Day Present)ABSAbsent)HDzHoliday/Company Leave)CONFConflict)DFTDraft)r1   r   r   dateat_work)r#   r   r   r   r   min_hour)r#   r   r   min_hour_secondnote)r   message   is_attendance_recordis_leave_recordday_percentagelast_updatezWork RecordzWork Records)r   r9   N)"__name__
__module____qualname__initialdependenciesr   CreateModelr   BigAutoFieldDateTimeFieldBooleanField	DateField
attendancemethodsutilsattendance_date_validate	TimeField	CharFieldvalidate_time_formatIntegerField	TextField	JSONFieldPositiveSmallIntegerField	FileFieldhorillaupload_pathvalidate_hh_mm_ss_formatBigIntegerField	AutoFieldsimple_historyHistoricalChangesModel
FloatField
operations     F/var/www/python-projects/worksol/attendance/migrations/0001_initial.pyr   r   	   s   GL 	
*v**$Z_nrst3v33D_klm1f11$[YZ"$4F$4$4ASASAYAYArAr@s  CT  %U  V+-=V-=-=4Ve-fg&(8(8(8CX_cr|(}~,.>f.>.>DWg.hi')9)9)9DY`ds~)  A)+;6+;+;GXZaes}  tF  tF  tL  tL  ta  ta  sb  q  ,@  A!1!1!1'b^h^p^p^v^v  _L  _L  ^M  \j  "k  l&(8(8(8UWeoewewe}e}  fS  fS  eT  cm  )n  o.0C0C0CE`r0st')<)<)<UYn)op!#66#6#6T#MN"$7F$7$7d\p$qr+-@V-@-@-KL&(;(;(;EXm(no"$7F$7$7PU$VW/1D1D1DUa  2A  B&(8(8(8Cdav(wx!1!1!1  ;o  yI  VX  _c  "d  e2v225AB!#36#3#3U#NO/4 !-'4k T  WL   M	7!	
D 	
%*v**$Z_nrst3v33D_klm1f11$[YZ"$4F$4$4$JL^L^LdLdL}L}K~  N_  %`  a 4 4 4$ ?@ "2&"2"29"UV-V--:FG!#36#3#3J#WX!5!5!54!@A.f..D{ST `	
$ 	
+*v**$Z_nrst3v33D_klm1f11$[YZ 3 3 3D AB"$7F$7$7  Qy  Hc  %d  e E	
 	
-*v**$Z_nrst1f11$[YZ)))3MOi2jwy  IO  P  Q3v33DQR	 >?	
 	
%*v**$Z_nrst3v33D_klm1f11$[YZ*&**bwOP!#C6#C#CA#NO)))&Rdaghi!1!1!1'bW[isi{i{  jB  jB  jW  jW  iX  gu  "v  w "2&"2"27rX\jtj|j|  kC  kC  kX  kX  jY  hw  #x  y-V--g"ZdZlZlZrZr  [H  [H  ZI  Xh  i  j&(;(;(;AD_o(pq&(;(;(;AD_p(qr"$7F$7$7[m$no !/'6$&78!	
, 	
+*v**$Z_nrst3v33D_klm1f11$[YZ,F,,$U^_`	 E	
 	
(*v**$Z_nrst3v33D_klm1f11$[YZ)))GNN4N4NOP	 E	
 	
0*v**$Z_nrst3v33D_klm1f11$[YZ%'7v'7'72S]SeSeSkSk  TA  TA  SB  Qq  (r  s.0@0@0@tXZaes}  tF  tF  tL  tL  ta  ta  sb  1c  d"$4F$4$44BUYgqgygygg  hU  hU  gV  %W  X"$7F$7$7Te$fg E	
 	
"*v**$Z_nrst3v33D_klm1f11$[YZ*&**cPQ	 E	
 	
*v**$Z_nrst3v33D_klm1f11$[YZ!1!1!1*QSakasasayay  bS  bS  aT  cq  "r  s')<)<)<)>?#%8V%8%8  RE  Tf  &g  h$&9f&9&9%  TH  Wj  'k  l2v225AB	 E	
  	
'-v--4tVZimno3v33$UYhtuv1f11$[YZ "2&"2"2"SW"XY&(8(8(8d(CD$&9f&9&9%d&ST"$4F$4$4ASASAYAYArAr@s  CT  %U  V+-=V-=-=4Ve-fg&(8(8(8CX_cr|(}~,.>f.>.>DWg.hi')9)9)9DY`ds~)  A)+;6+;+;GXZaes}  tF  tF  tL  tL  ta  ta  sb  q  ,@  A!1!1!1'b^h^p^p^v^v  _L  _L  ^M  \j  "k  l&(8(8(8UWeoewewe}e}  fS  fS  eT  cm  )n  o.0C0C0CE`r0st')<)<)<UYn)op!#66#6#6T#MN"$7F$7$7d\p$qr+-@V-@-@-KL&(;(;(;EXm(no"$7F$7$7PU$VW/1D1D1DUa  2A  B&(8(8(8Cdav(wx!1!1!1  ;o  yI  VX  _c  "d  e2v225AB!#36#3#3U#NO/v//DERS!5!5!5t!DE(*:&*:*:cPT*UV!1!1!1:p}~!  A=B !8'?<!?	 "((::FLLIQ)	
T 	
*v**$Z_nrst 0 0 0tRV WX#%5V%5%5  ?L  Y[  bf  &g  h)))4@A,F,,4UW^bpz  qC  qC  qI  qI  q^  q^  p_  `  a-V--D'VX_cq{  rD  rD  rJ  rJ  r_  r_  q`  a  b!#66#6#6T1SW#XY"$7F$7$7dATX$YZ)))S9:,F,,4BTRS')<)<)<U)KL"$7F$7$7$FG!#46#4#4Q#?@ 4 4 44d KL" !.'5%	
chJr   r   )
attendance.methods.utilsr   horilla.modelsr   simple_history.modelsr   	django.dbr   r   r   r   r   r   <module>r      s'        (o
$$ or   