diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 2c87d26..9c562b6 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -1,11 +1,12 @@
-
+
+
-
-
+
+
@@ -75,13 +76,6 @@
1680804787304
-
- 1699876222238
-
-
-
- 1699876222242
-
1699909122400
@@ -418,7 +412,14 @@
1705004951917
-
+
+ 1705071129313
+
+
+
+ 1705071129313
+
+
@@ -433,7 +434,6 @@
-
@@ -458,6 +458,7 @@
-
+
+
\ No newline at end of file
diff --git a/Dashbord_queries/ressources_humaines_tbd_qries.py b/Dashbord_queries/ressources_humaines_tbd_qries.py
index fef4c99..b502ece 100644
--- a/Dashbord_queries/ressources_humaines_tbd_qries.py
+++ b/Dashbord_queries/ressources_humaines_tbd_qries.py
@@ -5,6 +5,7 @@ import ast
import dateutil
import pymongo
+import xlsxwriter
from dateutil.relativedelta import relativedelta
from flask import send_file
from pymongo import MongoClient
@@ -790,7 +791,7 @@ def Get_Humain_Ressource_With_Planning_And_Cost(diction):
retval_agenda['collection_agenda']['event_duration_second'] = str(event_duration_second)
retval_agenda['collection_agenda']['event_duration_hour'] = str(event_duration_hour)
- json_agenda_formatted_str = json.dumps(retval_agenda, indent=2)
+ #json_agenda_formatted_str = json.dumps(retval_agenda, indent=2)
if ("collection_agenda" in retval_agenda.keys() and "partner_owner_recid" in retval_agenda[
'collection_agenda'].keys()):
@@ -800,7 +801,7 @@ def Get_Humain_Ressource_With_Planning_And_Cost(diction):
- json_formatted_str = json.dumps(retval, indent=2)
+ #json_formatted_str = json.dumps(retval, indent=2)
#print(" ### Final Line : ", json_formatted_str)
tab_lines_employe_by_contract.append(retval)
@@ -1021,3 +1022,195 @@ def Format_employee_contrat_agenda_events(tab_diction):
return False, " Impossible de reformater et de normer le tableau des tâches et coûts "
+"""
+Cette fonction permet d'experter un dashbord en Excel
+"""
+
+def TBD_RH_01_Export_Dashbord_To_Excel(diction):
+ try:
+ diction = mycommon.strip_dictionary(diction)
+
+ """
+ Verification des input acceptés
+ """
+ field_list = ['token', 'user_dashbord_id']
+
+ incom_keys = diction.keys()
+ for val in incom_keys:
+ if val not in field_list and val.startswith('my_') is False:
+ mycommon.myprint(str(
+ inspect.stack()[0][3]) + " Le champ '" + val + "' n'existe pas")
+ return False, " Les informations fournies sont incorrectes",
+
+ """
+ Verification des champs obligatoires
+ """
+ field_list_obligatoire = ['token', 'user_dashbord_id']
+ for val in field_list_obligatoire:
+ if val not in diction:
+ mycommon.myprint(
+ str(inspect.stack()[0][3]) + " - La valeur '" + val + "' n'est pas presente dans liste ")
+ return False, " Les informations fournies sont incorrectes",
+
+ """
+ Verification de l'identité et autorisation de l'entité qui
+ appelle cette API
+ """
+ token = ""
+ if ("token" in diction.keys()):
+ if diction['token']:
+ token = diction['token']
+
+ local_status, my_partner = mycommon.Check_Connexion_And_Return_Partner_Data(diction)
+ if (local_status is not True):
+ return local_status, my_partner
+
+ # Recuperation des données du user_dashbord
+ my_user_dashbord = MYSY_GV.dbname['user_dashbord'].find_one({'_id': ObjectId(str(diction['user_dashbord_id'])),
+ 'valide': '1',
+ 'locked': '0',
+ 'partner_owner_recid': str(my_partner['recid'])})
+
+ if (my_user_dashbord is None):
+ mycommon.myprint(
+ str(inspect.stack()[0][3]) + " - L'identifiant du tableau de bord est invalide ")
+ return False, " L'identifiant du tableau de bord est invalide",
+
+ new_retval_data = {}
+ my_new_diction = {}
+ my_new_diction['token'] = diction['token']
+
+ session_start_date = ""
+ session_end_date = ""
+
+ local_default_filter = ast.literal_eval(str(my_user_dashbord['default_filter']))
+ if ("session_start_date" in local_default_filter.keys() and "session_end_date" in local_default_filter.keys()):
+ session_start_date = local_default_filter['session_start_date']
+ session_end_date = local_default_filter['session_end_date']
+
+ elif ("periode" in local_default_filter.keys()):
+ my_new_diction['filter_value'] = str(local_default_filter['periode'])
+ if (str(local_default_filter['periode']) == "m0"):
+ # On recupere les date du mois en cours
+ local_status, start_current_month_date, end_current_month_date = mycommon.Get_Current_Month_Start_End_Date()
+ if (local_status is False):
+ return local_status, start_current_month_date
+
+ session_start_date = start_current_month_date
+ session_end_date = end_current_month_date
+
+ elif (str(local_default_filter['periode']) == "m1"):
+ # On recupere les date du mois en cours
+ local_status, start_current_month_date, end_current_month_date = mycommon.Get_Previous_Month_Start_End_Date()
+ if (local_status is False):
+ return local_status, start_current_month_date
+
+ session_start_date = start_current_month_date
+ session_end_date = end_current_month_date
+
+ my_new_diction['session_start_date'] = session_start_date
+ my_new_diction['session_end_date'] = session_end_date
+ my_new_diction['tab_rh_id'] = "all"
+
+ if (my_user_dashbord['dashbord_internal_code'] == "tbd_rh_01"):
+ local_status, local_retval = Get_Humain_Ressource_With_Planning(my_new_diction)
+ if (local_status is False):
+ return local_status, local_retval
+ new_retval_data = local_retval
+
+ if (my_user_dashbord['dashbord_internal_code'] == "tbd_rh_02"):
+ local_status, local_retval = Get_Humain_Ressource_With_Planning_And_Cost(my_new_diction)
+ if (local_status is False):
+ return local_status, local_retval
+ new_retval_data = local_retval
+
+
+ else:
+ mycommon.myprint(
+ str(inspect.stack()[0][3]) + " Requête inconnue ")
+ return False, " Requête inconnue ",
+
+
+ # Recuperation des colonne à exporter
+ base_config_dashbord_data = MYSY_GV.dbname['base_config_dashbord'].find_one(
+ {'dashbord_internal_code': str(my_user_dashbord['dashbord_internal_code'])})
+
+ tab_exported_fields = []
+ if ("exported_fields" in base_config_dashbord_data):
+ tab_exported_fields = base_config_dashbord_data['exported_fields']
+
+ # Remettres les dates de filtres en debut de liste
+ if ("filtre_date_fin" in tab_exported_fields):
+ tab_exported_fields.remove("filtre_date_fin")
+ tab_exported_fields.insert(0, "filtre_date_fin")
+
+ if ("filtre_date_debut" in tab_exported_fields):
+ tab_exported_fields.remove("filtre_date_debut")
+ tab_exported_fields.insert(0, "filtre_date_debut")
+
+ tab_exported_fields.insert(0, "date_extraction")
+
+
+ todays_date = str(date.today().strftime("%d/%m/%Y"))
+ ts = datetime.now().timestamp()
+ ts = str(ts).replace(".", "").replace(",", "")[-5:]
+
+ orig_file_name = "Export_csv_" + str(my_partner['recid']) + "_" + str(ts) + ".csv"
+ outputFilename = str(MYSY_GV.TEMPORARY_DIRECTORY) + "/" + str(orig_file_name)
+
+ # Create a workbook and add a worksheet.
+ workbook = xlsxwriter.Workbook(outputFilename)
+ worksheet = workbook.add_worksheet()
+ row = 0
+ column = 0
+
+ # Ecrire l'entete
+ for header_item in tab_exported_fields:
+ worksheet.write(row, column, header_item)
+ column += 1
+
+ # Ecrire le reste des lignes
+ for answers_record in new_retval_data: # Here we are using 'cursor' as an iterator
+ column = 0
+ row = row + 1
+
+ worksheet.write(row, column, str(session_start_date))
+ column += 1
+ worksheet.write(row, column, str(session_end_date))
+ column += 1
+ worksheet.write(row, column, str(todays_date))
+ column += 1
+
+
+ flattened_record = {}
+
+ for local_fiels in tab_exported_fields:
+ answers_record_JSON = ast.literal_eval(str(answers_record))
+
+ if (str(local_fiels) in answers_record_JSON.keys()):
+
+ local_status, local_retval = mycommon.IsFloat(str(answers_record_JSON[str(local_fiels)]).strip())
+ if (local_status is True):
+ no_html = answers_record_JSON[str(local_fiels)]
+ else:
+ no_html = mycommon.cleanhtml(answers_record_JSON[str(local_fiels)])
+
+ else:
+ no_html = ""
+
+ worksheet.write(row, column, no_html)
+ column += 1
+
+
+ workbook.close()
+
+ if os.path.exists(outputFilename):
+ # print(" ### ok os.path.exists(outputFilename) "+str(outputFilename))
+ return True, send_file(outputFilename, as_attachment=True)
+
+ return False, "Impossible de générer l'export csv (2) "
+
+ except Exception as e:
+ exc_type, exc_obj, exc_tb = sys.exc_info()
+ mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - Line : " + str(exc_tb.tb_lineno))
+ return False, " Impossible d'exporter les données "
diff --git a/Log/log_file.log b/Log/log_file.log
index 593b7da..3d5186a 100644
--- a/Log/log_file.log
+++ b/Log/log_file.log
@@ -2037651,3 +2037651,304 @@ INFO:root:2024-01-12 15:15:44.010868 : Security check : IP adresse '127.0.0.1'
INFO:root:2024-01-12 15:15:44.015930 : Security check : IP adresse '127.0.0.1' connected
INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 15:15:44] "POST /myclass/api/get_Ressource_Info_Data/ HTTP/1.1" 200 -
INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 15:15:44] "POST /myclass/api/get_Agenda_Event_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 18:37:47.905975 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 18:37:47.906485 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 18:37:47.906485 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 18:37:47.906485 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 18:37:47.906485 : ++ LMS_BAS_URL mysy-training.com/ ++
+INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
+ * Running on http://localhost:5001
+INFO:werkzeug:[33mPress CTRL+C to quit[0m
+INFO:werkzeug: * Restarting with stat
+INFO:root:2024-01-12 18:38:02.891917 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 18:38:02.892917 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 18:38:02.892917 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 18:38:02.892917 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 18:38:02.892917 : ++ LMS_BAS_URL mysy-training.com/ ++
+WARNING:werkzeug: * Debugger is active!
+INFO:werkzeug: * Debugger PIN: 877-541-979
+INFO:root:2024-01-12 19:24:44.895668 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 19:24:44.895668 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 19:24:44.897182 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 19:24:44.897182 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 19:24:44.897182 : ++ LMS_BAS_URL mysy-training.com/ ++
+INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
+ * Running on http://localhost:5001
+INFO:werkzeug:[33mPress CTRL+C to quit[0m
+INFO:werkzeug: * Restarting with stat
+INFO:root:2024-01-12 19:24:55.853091 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 19:24:55.853091 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 19:24:55.853091 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 19:24:55.853091 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 19:24:55.853091 : ++ LMS_BAS_URL mysy-training.com/ ++
+WARNING:werkzeug: * Debugger is active!
+INFO:werkzeug: * Debugger PIN: 877-541-979
+INFO:root:2024-01-12 19:26:40.705658 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:40.706658 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:40.707658 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:40] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:40] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:40] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:41.132616 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.134604 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:41] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:41.978396 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.981389 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.985751 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.989750 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.993751 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:41.997749 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.007172 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.012169 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.017567 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.034130 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.039140 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.043448 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.049918 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.054286 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.064528 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.067731 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.076646 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.083070 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.090673 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.099609 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.101109 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.107937 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.114601 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.122390 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.129908 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.140514 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.147341 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.152215 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:42.161492 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:42.163820 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:42] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:45.933660 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:46] "POST /myclass/api/partner_login/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:46.134577 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:46.137585 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:46.141298 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:46.148191 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:46] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:46.174352 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:46] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:46] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:46.252666 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:46.255932 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:46] "POST /myclass/api/Get_Partner_Object_Specific_Valide_Displayed_Fields/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:47.236860 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme
+INFO:root:2024-01-12 19:26:47.237870 : Get_Partner_Currency WARNING : Le partner (partner_owner_recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a ) n'a pas de configuration de devise. Utilisation de la devise par defaut du systeme
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:47] "POST /myclass/api/find_partner_class_like/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:47] "POST /myclass/api/get_partner_class/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:50.563460 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Connected_User_List_Dashbord/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:50.636919 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.641129 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.648004 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.653438 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.660449 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.666447 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Qery_Session_Repartition_Session_By_Trainer_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Qery_Formation_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Qery_List_Session_Data/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:50.768946 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.775628 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.781881 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:26:50.794770 : Get_Humain_Ressource_With_Planning_And_Cost -Object of type ObjectId is not JSON serializable - Line : 794
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:26:50.817265 : Get_Humain_Ressource_With_Planning_And_Cost -Object of type ObjectId is not JSON serializable - Line : 794
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:26:50] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Dashbord_queries\\ressources_humaines_tbd_qries.py', reloading
+INFO:werkzeug: * Restarting with stat
+INFO:root:2024-01-12 19:28:31.969388 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 19:28:31.969388 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 19:28:31.969388 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 19:28:31.970401 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 19:28:31.970401 : ++ LMS_BAS_URL mysy-training.com/ ++
+WARNING:werkzeug: * Debugger is active!
+INFO:werkzeug: * Debugger PIN: 877-541-979
+INFO:root:2024-01-12 19:29:18.951108 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:18.953100 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:18.956213 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:18] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:18.969870 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:18] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:18] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:19.019701 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Connected_User_List_Dashbord/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:19.833958 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.839974 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.845525 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.847708 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.854046 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.858807 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Qery_Session_Repartition_Session_By_Trainer_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Qery_Formation_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Qery_List_Session_Data/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:19] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:19.980751 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.987229 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:29:19.992476 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:20] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:20] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:20.623721 : Get_Humain_Ressource_With_Planning_And_Cost -Object of type ObjectId is not JSON serializable - Line : 804
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:20] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:29:20.625717 : Get_Humain_Ressource_With_Planning_And_Cost -Object of type ObjectId is not JSON serializable - Line : 804
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:29:20] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:werkzeug: * Detected change in 'C:\\Users\\billa\\Documents\\myclass.com\\Siteweb\\Production\\Ela_back\\Back_Office\\Dashbord_queries\\ressources_humaines_tbd_qries.py', reloading
+INFO:werkzeug: * Restarting with stat
+INFO:root:2024-01-12 19:29:56.981294 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-12 19:29:56.982308 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-12 19:29:56.982308 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-12 19:29:56.982308 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-12 19:29:56.982308 : ++ LMS_BAS_URL mysy-training.com/ ++
+WARNING:werkzeug: * Debugger is active!
+INFO:werkzeug: * Debugger PIN: 877-541-979
+INFO:root:2024-01-12 19:30:09.182790 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.184985 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.189010 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/getRecodedImage/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:30:09.198013 : Connexion du partner recid = dbdd36f3d86a73e2bfac7b3f10f062ce1e7c22f7da37de192a OK. Mise à jour du firstconnexion et/ou lastconnexion : OK
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/get_partner_account/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/LMS_Get_Partner_Data/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:30:09.251412 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Connected_User_List_Dashbord/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:30:09.903482 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.907393 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.911710 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.917925 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.924023 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:09.929028 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Qery_Session_Repartition_Session_By_Trainer_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Qery_Formation_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:09] "POST /myclass/api/Get_Qery_List_Session_Data/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:10] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:30:10.041163 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:10.045830 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-12 19:30:10.052806 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:10] "POST /myclass/api/Get_Humain_Ressource_With_Planning/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:10] "POST /myclass/api/Get_Humain_Ressource_With_Planning_And_Cost/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:10] "POST /myclass/api/Get_Qery_Inscription_By_Session_By_Periode/ HTTP/1.1" 200 -
+INFO:root:2024-01-12 19:30:30.586671 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [12/Jan/2024 19:30:30] "GET /myclass/api/TBD_RH_01_Export_Dashbord_To_Excel/KmaeN7QaQUKZfTQSFQnCeWQdXszTx9lWRg/6592ddbace2b8abbd0b19691 HTTP/1.1" 200 -
+INFO:root:2024-01-13 12:51:05.691855 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-13 12:51:05.691855 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-13 12:51:05.692872 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-13 12:51:05.692872 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-13 12:51:05.692872 : ++ LMS_BAS_URL mysy-training.com/ ++
+INFO:werkzeug:[31m[1mWARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.[0m
+ * Running on http://localhost:5001
+INFO:werkzeug:[33mPress CTRL+C to quit[0m
+INFO:werkzeug: * Restarting with stat
+INFO:root:2024-01-13 12:51:15.390342 : ++++ ENVIRONNEMENT DEVELOPPEMENT ++++
+INFO:root:2024-01-13 12:51:15.390342 : ++ DATABASE mongodb://localhost:27017/cherifdb_dev ++
+INFO:root:2024-01-13 12:51:15.390342 : ++ DBNAME Database(MongoClient(host=['localhost:27017'], document_class=dict, tz_aware=False, connect=True), 'cherifdb_dev') ++
+INFO:root:2024-01-13 12:51:15.390342 : ++ FLASK PORT 5001 ++
+INFO:root:2024-01-13 12:51:15.390342 : ++ LMS_BAS_URL mysy-training.com/ ++
+WARNING:werkzeug: * Debugger is active!
+INFO:werkzeug: * Debugger PIN: 918-682-955
+INFO:root:2024-01-13 15:12:56.445946 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:56.443888 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:56.456388 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:56] "POST /myclass/api/get_List_domaine_formation/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:56] "POST /myclass/api/Get_Suggested_Fr_Cities/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:56] "POST /myclass/api/Get_Suggested_Word/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.274391 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.276456 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/get_all_class/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.857360 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.861806 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.866955 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.870740 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.878522 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.883252 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.896797 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.902979 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.906366 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.914421 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.920153 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.926719 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.930785 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.936732 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.942592 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.947398 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.950412 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.956409 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.964065 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.966595 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.971930 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.977397 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.983452 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.988469 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:57.993687 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:57.996702 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:57] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:58.003481 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:58.009382 : Security check : IP adresse '127.0.0.1' connected
+INFO:root:2024-01-13 15:12:58.012751 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/getRecodedClassImage_from_front/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
+INFO:root:2024-01-13 15:12:58.019289 : Security check : IP adresse '127.0.0.1' connected
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/GetActiveSessionFormation_List/ HTTP/1.1" 200 -
+INFO:werkzeug:127.0.0.1 - - [13/Jan/2024 15:12:58] "POST /myclass/api/GetActiveSession_Cities_And_Distance_Formation_List/ HTTP/1.1" 200 -
diff --git a/class_mgt.py b/class_mgt.py
index ea8f04e..a9eba40 100644
--- a/class_mgt.py
+++ b/class_mgt.py
@@ -5084,6 +5084,7 @@ def Export_Class_To_Excel_From_from_List_Id(diction):
row = row + 1
for local_fiels in tab_exported_fields:
answers_record_JSON = ast.literal_eval(str(class_data))
+
if (str(local_fiels) in answers_record_JSON.keys()):
local_status, local_retval = mycommon.IsFloat(str(answers_record_JSON[str(local_fiels)]).strip())
if( local_status is True ):
diff --git a/main.py b/main.py
index ec40c66..ad72e39 100644
--- a/main.py
+++ b/main.py
@@ -6966,6 +6966,27 @@ def TBD_RH_01_Export_Dashbord_To_Csv(token, user_dashbord_id):
else:
return False
+
+"""
+API pour exporter en Excel les donnes du tableau de bord : tbd_rh_01
+"""
+@app.route('/myclass/api/TBD_RH_01_Export_Dashbord_To_Excel//', methods=['POST','GET'])
+@crossdomain(origin='*')
+def TBD_RH_01_Export_Dashbord_To_Excel(token, user_dashbord_id):
+ # On recupere le corps (payload) de la requete
+ payload = mycommon.strip_dictionary (request.form.to_dict())
+ payload = {}
+ payload['token'] = str(token)
+ payload['user_dashbord_id'] = str(user_dashbord_id)
+
+ print(" ### TBD_RH_01_Export_Dashbord_To_Excel payload = ",payload)
+
+ status, retval = ressources_humaines_tbd_qries.TBD_RH_01_Export_Dashbord_To_Excel(payload)
+ if(status ):
+ return retval
+ else:
+ return False
+
"""
API/ TBD / QERY / Ressources Humaines avec le cout par tache réalisée
"""