
    ŻfV
                     d    d dl Z d dlmZ ddlmZmZmZmZ  e       Z e       Z	d Z
d Zd Zd Zy)	    N)AsyncIOScheduler   )!generate_interventions_for_clientMONGODB_DATABASEmongodb_connectprocess_interventions_by_periodc            	        K   t        t        t           d   j                               } | D ]  }t        t        t           d   j                  d|d   i            }|D ]^  }t        t        t           d   j                  d|d   i            }t	        |||      }|s@t        t           d   j                  |       `  y w)Nclientspools
client_subsubinterventionspool_sub)listmongodb_clientr   findr   insert_many)r
   clientr   poolexisting_interventionsnew_interventionss         KC:\Users\ChattiNader\Documents\EpsilonGroupe\api-vastappli\app\scheduler.py
daily_taskr      s     >"23I>CCEFG a^$45g>CC\SYZ_S`Dabc 	aD%).9I*J?*[*`*`blnrsxnyaz*{%|" A&$Pf g /0AMMN_`		aas   BC$Cc                  f    t         j                  t        ddd       t         j                          y )Ncronr   )hourminute)	scheduleradd_jobr   start     r   start_schedulerr#      s#    j&q;OOr"   c                  4   K   t         j                          y w)N)r   shutdownr!   r"   r   stop_schedulerr&      s     s   c                 n  K   t         t           d   j                  d| i      }t        t         t           d   j	                  d| i            }|D ]  }t        t         t           d   j	                  d|d   i            }t        |||      }t        j                  j                         j                  }|d   d   D ]K  }t        |||      }|s|D 	cg c]  }	|	d   	 }
}	t         t           d   j                  d	|
i|d   d
       M |st         t           d   j                  |        y c c}	w w)Nr
   r   r   r   r   r   maintenance_info	frequencyz$in)r   r   )r   r   find_oner   r   r   datetimedatetodayyearr   delete_manyr   )r   r   r   r   r   r   current_year
month_infointerventions_to_removeiintervention_subs_to_removes              r   #regenerate_interventions_for_clientr5      sS    ,-i8AA5*BUVF 01':??z@Z[\E ]!%n5E&F&W&\&\^hjnotju]v&w!x >fdLbc  }}**,11 !34[A 		J&EF\^hjv&w# 'AX.YAqx.Y+.Y/0AMM!#>? $UO 		 +,_=IIJ[\-] /Zs   CD5D5D0 -D5'D5)r+   apscheduler.schedulers.asyncior   utilsr   r   r   r   r   r   r   r#   r&   r5   r!   r"   r   <module>r8      s9     ; x x "		a
]r"   