
    }NBjS"                     R    d dl Zd dlmZ d dlmZmZ  G d dej                        Zy)    N)settings)
migrationsmodelsc                   J   e Zd ZdZ ej
                  ej                        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                  ddd      fd e
j                  dddd      fd e
j                  dd      fd e
j                   dddej$                  j                  j&                  j(                  ej                  d      fd e
j                   dddej$                  j                  j&                  j(                  dej                  d      fgdd dgd!"       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%d&d'd(d)*      fd e
j                   dddej$                  j                  j&                  j(                  ej                  d      fd e
j                   dddej$                  j                  j&                  j(                  dej                  d      fgd+d+d,"       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d./      fd e
j                  dd0dd      fd e
j                  dd      fd e
j                   dddej$                  j                  j&                  j(                  ej                  d      fd1 e
j                   ej$                  j                  j&                  j,                  d2d3d4      fd e
j                   dddej$                  j                  j&                  j(                  dej                  d      fg	d5d6d7dgd8hd9"       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d;/      fd e
j                  dd<dd      fd e
j                  dd      fd e
j                   dddej$                  j                  j&                  j(                  ej                  d      fd e
j                   dddej$                  j                  j&                  j(                  dej                  d      fd= e
j                   ej$                  j                  j&                  j,                  d>d?d54      fg	d@dAg dBdChd9"       ej                  dDd e
j                  dddd      fd e
j                  ddd	      fd
 e
j                  dd      fdE e
j.                  dFdGH      fdI e
j                  g dJdKddLM      fdN e
j.                  ddOddPQ      fdR e
j*                  d%d&dSdTU      fdV e
j*                  d%d&dWdSdX*      fdY e
j*                  d%d&dZdSd[*      fd\ e
j*                  d%d&d]dSd^*      fd e
j                   dddej$                  j                  j&                  j(                  ej                  d      fd e
j                   dddej$                  j                  j&                  j(                  dej                  d      fd_ e
j                   ej$                  j                  j&                  j,                  d`dad@4      fgdbdcg dddehd9"      gZyf)g	MigrationT
BudgetHeadidFID)auto_createdprimary_key	serializeverbose_name
created_atz
Created At)auto_now_addnullr   	is_activez	Is Active)defaultr   name   z	Head Name)
max_lengthuniquer   code   zBudget Code)editabler   r   r   descriptionDescription)blankr   
created_byz
Created By)r   r   r   	on_deletetor   modified_byz%(class)s_modified_byzModified By)r   r   r   r   related_namer    r   zBudget HeadzBudget Heads)r   verbose_name_pluralordering)r   fieldsoptionsBudgetSettingsoverrun_limit_percent   r   z|Maximum percentage by which a request may exceed the remaining budget balance before it is blocked.  0 = no overrun allowed.   zOver-budget Limit (%))decimal_placesr   	help_text
max_digitsr   zBudget Settings)r   r#   BudgetSubHeadzSub-Head Name)r   r      head	sub_headszbudget.budgethead)r   r"   r    r   zBudget Sub-HeadzBudget Sub-Heads
head__name)r0   r   )r   r#   r$   unique_together
BudgetItemz	Item Name(   sub_headitemszbudget.budgetsubheadzBudget ItemzBudget Items)sub_head__head__namesub_head__namer   )r6   r   BudgetAllocationfiscal_yearu!   e.g. 2025 for FY 2025 (Jan–Dec)zFiscal Year)r,   r   period_type))annualAnnual)	quarterly	Quarterly)monthlyMonthly)weeklyWeeklyr=   zPeriod Type)choicesr   r   r   period_valueuJ   Quarter (1–4), Month (1–12), or Week (1–53). Leave blank for Annual.zPeriod Value)r   r,   r   r   allocated_amount   u   Allocated Amount (₦))r+   r   r-   r   committed_amountz,Total of pending/submitted expense requests.u   Committed Amount (₦)approved_amountz1Total of approved but not yet disbursed requests.u   Approved Amount (₦)disbursed_amountzTotal actually paid out.u   Disbursed Amount (₦)itemallocationszbudget.budgetitemzBudget AllocationzBudget Allocations)z-fiscal_yearr<   rF   )rL   r;   r<   rF   N)__name__
__module____qualname__initialr   swappable_dependencyr   AUTH_USER_MODELdependenciesCreateModelr   BigAutoFieldDateTimeFieldBooleanField	CharField	TextField
ForeignKeydjangodbdeletionSET_NULLDecimalFieldCASCADEPositiveSmallIntegerField
operations     B/var/www/python-projects/worksol/budget/migrations/0001_initial.pyr   r      s	   G 	(
''(@(@AL
 	
*v**$Z_nrst3v33D_klm1f11$[YZ)))ST_`a)))5RPTcpqr 0 0 0t- XY0v00teRVbhbkbkbrbrb{b{  cE  cE  JR  Jb  Jb  q}   ~   1 1 1uSWciclclcscsc|c|  dF  dF  Ul  qy  qI  qI  Xe  !f  g	 !.'5#H	
$ 	
!*v**$Z_nrst3v33D_klm1f11$[YZ(*=&*=*=QXY  fd  qr  AX  +Y  Z0v00teRVbhbkbkbrbrb{b{  cE  cE  JR  Jb  Jb  q}   ~   1 1 1uSWciclclcscsc|c|  dF  dF  Ul  qy  qI  qI  Xe  !f  g !2'8	
 	
 *v**$Z_nrst3v33D_klm1f11$[YZ)))SWX)))5RPTcpqr 0 0 0t- XY0v00teRVbhbkbkbrbrb{b{  cE  cE  JR  Jb  Jb  q}   ~  ***VYY5E5E5N5N5V5Vep  vI  Xe  f  g 1 1 1uSWciclclcscsc|c|  dF  dF  Ul  qy  qI  qI  Xe  !f  g
 !2'9)62$4#5		
( 	
*v**$Z_nrst3v33D_klm1f11$[YZ)))S{ST)))5RPTcpqr 0 0 0t- XY0v00teRVbhbkbkbrbrb{b{  cE  cE  JR  Jb  Jb  q}   ~   1 1 1uSWciclclcscsc|c|  dF  dF  Ul  qy  qI  qI  Xe  !f  g.V..9I9I9R9R9Z9Zip  vL  [l  m  n
 !.'5N$8#9		
( 	
#*v**$Z_nrst3v33D_klm1f11$[YZ @ @ @Kn  ~K  !L  M 0 0 0  :Z  dl  y{  JW  !X  Y!A!A!A  Ye  lp  M  "N  O#%8V%8%8STac  sK  &L  M#%8V%8%8ST  aO  \^  mE  &F  G"$7F$7$7qRS  `S  `b  qH  %I  J#%8V%8%8ST`z  HJ  Yq  &r  s0v00teRVbhbkbkbrbrb{b{  cE  cE  JR  Jb  Jb  q}   ~   1 1 1uSWciclclcscsc|c|  dF  dF  Ul  qy  qI  qI  Xe  !f  g***VYY5E5E5N5N5V5Ver  xK  Zg  h  i  !4';K$Z#[	#	
UbJre   r   )django.db.models.deletionr\   django.confr   	django.dbr   r   r   rd   re   rf   <module>rj      s$    !   (j
$$ jre   