25/03/2024 - 18h30

master
cherif 2024-03-25 18:21:45 +01:00
parent a0a955ed0e
commit 0d35d5c6e3
10 changed files with 5194 additions and 21 deletions

View File

@ -5,15 +5,13 @@
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/E_Sign_Document.py" beforeDir="false" afterPath="$PROJECT_DIR$/E_Sign_Document.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/E_Sign_Document.py" beforeDir="false" afterPath="$PROJECT_DIR$/E_Sign_Document.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/GlobalVariable.py" beforeDir="false" afterPath="$PROJECT_DIR$/GlobalVariable.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/GlobalVariable.py" beforeDir="false" afterPath="$PROJECT_DIR$/GlobalVariable.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Inscription_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/Inscription_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Log/log_file.log" beforeDir="false" afterPath="$PROJECT_DIR$/Log/log_file.log" afterDir="false" /> <change beforePath="$PROJECT_DIR$/Log/log_file.log" beforeDir="false" afterPath="$PROJECT_DIR$/Log/log_file.log" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Session_Formation.py" beforeDir="false" afterPath="$PROJECT_DIR$/Session_Formation.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/attached_file_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/attached_file_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Session_Formation_Sequence.py" beforeDir="false" afterPath="$PROJECT_DIR$/Session_Formation_Sequence.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/class_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/class_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/crm_opportunite.py" beforeDir="false" afterPath="$PROJECT_DIR$/crm_opportunite.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/email_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/email_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/emargement.py" beforeDir="false" afterPath="$PROJECT_DIR$/emargement.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/partner_order.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_order.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/prj_common.py" beforeDir="false" afterPath="$PROJECT_DIR$/prj_common.py" afterDir="false" /> <change beforePath="$PROJECT_DIR$/prj_common.py" beforeDir="false" afterPath="$PROJECT_DIR$/prj_common.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ressources_humaines.py" beforeDir="false" afterPath="$PROJECT_DIR$/ressources_humaines.py" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@ -1237,7 +1237,7 @@ def Sent_E_Document_Signature_Request(diction):
msg.attach(html_mime) msg.attach(html_mime)
msg['From'] = partner_SMTP_COUNT_From_User msg['From'] = partner_SMTP_COUNT_From_User
msg['Bcc'] = 'contact@mysy-training.com' msg['Bcc'] = 'contact@mysy-training.com'
msg['Subject'] = " Signature electronique document" msg['Subject'] = " Demande signature électronique document"
# msg['to'] = "billardman01@hotmail.com" # msg['to'] = "billardman01@hotmail.com"
msg['to'] = str(diction['user_email']) msg['to'] = str(diction['user_email'])
@ -1251,7 +1251,7 @@ def Sent_E_Document_Signature_Request(diction):
msg.attach(html_mime) msg.attach(html_mime)
msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User
msg['Bcc'] = 'contact@mysy-training.com' msg['Bcc'] = 'contact@mysy-training.com'
msg['Subject'] = " Signature electronique document" msg['Subject'] = " Demande signature électronique document"
# msg['to'] = "billardman01@hotmail.com" # msg['to'] = "billardman01@hotmail.com"
msg['to'] = str(diction['user_email']) msg['to'] = str(diction['user_email'])

View File

@ -667,4 +667,9 @@ Gestion des sequences de formation ( en rapport avec les emargements) :
- option = 1 ==> on prend la demi-journée - option = 1 ==> on prend la demi-journée
- option = 2 ==> on prend la journée - option = 2 ==> on prend la journée
""" """
EMARGEMENT_OPTION = ["0", "1", "2"] EMARGEMENT_OPTION = ["0", "1", "2"]
"""
Taille maximale des nom de fichier
"""
FILE_NAME_MAX_SIZE = 250

File diff suppressed because one or more lines are too long

View File

@ -151,7 +151,7 @@ def Store_User_Downloaded_File(file=None, Folder=None, diction=None):
if diction['document_display_order']: if diction['document_display_order']:
document_display_order = diction['document_display_order'] document_display_order = diction['document_display_order']
if (len(str(file.filename)) > 100): if (len(str(file.filename)) > MYSY_GV.FILE_NAME_MAX_SIZE):
mycommon.myprint( mycommon.myprint(
str(inspect.stack()[0][ str(inspect.stack()[0][
3]) + " - Fichier invalide, trop long = " + str( 3]) + " - Fichier invalide, trop long = " + str(
@ -242,7 +242,7 @@ def Get_Stored_Downloaded_File(diction):
if diction['file_name']: if diction['file_name']:
file_name = diction['file_name'] file_name = diction['file_name']
if(len(str(file_name)) > 100 ): if(len(str(file_name)) > MYSY_GV.FILE_NAME_MAX_SIZE ):
mycommon.myprint( mycommon.myprint(
str(inspect.stack()[0][ str(inspect.stack()[0][
3]) + " - Fichier invalide, trop long = "+ str(file_name)+ ". le nom doit faire moins de 100 caractère") 3]) + " - Fichier invalide, trop long = "+ str(file_name)+ ". le nom doit faire moins de 100 caractère")
@ -472,7 +472,7 @@ def Delete_Stored_Downloaded_File(diction):
if diction['file_name']: if diction['file_name']:
file_name = diction['file_name'] file_name = diction['file_name']
if(len(str(file_name)) > 100 ): if(len(str(file_name)) > MYSY_GV.FILE_NAME_MAX_SIZE ):
mycommon.myprint( mycommon.myprint(
str(inspect.stack()[0][ str(inspect.stack()[0][
3]) + " - Fichier invalide, trop long = "+ str(file_name)+ ". le nom doit faire moins de 100 caractère") 3]) + " - Fichier invalide, trop long = "+ str(file_name)+ ". le nom doit faire moins de 100 caractère")

View File

@ -57,7 +57,7 @@ def add_class(diction):
'internal_url', 'zone_diffusion', 'metier', 'published', 'img_url', 'objectif', 'internal_url', 'zone_diffusion', 'metier', 'published', 'img_url', 'objectif',
'programme', 'prerequis', 'note', 'cpf', 'certif', 'class_inscription_url', 'pourqui', 'programme', 'prerequis', 'note', 'cpf', 'certif', 'class_inscription_url', 'pourqui',
'support', 'img_banner_detail_class', 'source', 'lms_class_code', 'formateur_id', 'support', 'img_banner_detail_class', 'source', 'lms_class_code', 'formateur_id',
'class_level'] 'class_level', 'methode_pedagogique', 'condition_handicape']
incom_keys = diction.keys() incom_keys = diction.keys()
for val in incom_keys: for val in incom_keys:
@ -277,6 +277,36 @@ def add_class(diction):
mydata['programme'] = programme mydata['programme'] = programme
methode_pedagogique = ""
if ("methode_pedagogique" in diction.keys()):
if diction['methode_pedagogique']:
programme = diction['methode_pedagogique']
if (len(mycommon.cleanhtml(diction['methode_pedagogique'])) > MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT):
mycommon.myprint(
str(inspect.stack()[0][3]) + " : le champ 'methode pedagogique' de La formation " + str(
mydata['external_code']) + " a plus de " + str(
MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères")
return False, " le champ 'methode pedagogique' de La formation " + str(
mydata['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères"
mydata['methode_pedagogique'] = methode_pedagogique
condition_handicape = ""
if ("condition_handicape" in diction.keys()):
if diction['condition_handicape']:
condition_handicape = diction['condition_handicape']
if (len(mycommon.cleanhtml(diction['condition_handicape'])) > MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT):
mycommon.myprint(
str(inspect.stack()[0][3]) + " : le champ 'condition handicape' de La formation " + str(
mydata['external_code']) + " a plus de " + str(
MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères")
return False, " le champ 'condition handicape' de La formation " + str(
mydata['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères"
mydata['condition_handicape'] = condition_handicape
prerequis = "" prerequis = ""
if ("prerequis" in diction.keys()): if ("prerequis" in diction.keys()):
if diction['prerequis']: if diction['prerequis']:
@ -614,7 +644,7 @@ def update_class(diction):
'domaine', 'internal_code', 'internal_url','zone_diffusion', 'metier', 'domaine', 'internal_code', 'internal_url','zone_diffusion', 'metier',
'published', 'img_url', 'objectif', 'programme', 'prerequis', 'note', 'published', 'img_url', 'objectif', 'programme', 'prerequis', 'note',
'cpf', 'certif', 'class_inscription_url','pourqui', 'support', 'img_banner_detail_class', 'cpf', 'certif', 'class_inscription_url','pourqui', 'support', 'img_banner_detail_class',
'duration_unit', 'source', 'lms_class_code', 'formateur_id', 'class_level'] 'duration_unit', 'source', 'lms_class_code', 'formateur_id', 'class_level','methode_pedagogique', 'condition_handicape']
incom_keys = diction.keys() incom_keys = diction.keys()
for val in incom_keys: for val in incom_keys:
@ -746,6 +776,29 @@ def update_class(diction):
diction['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères" diction['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères"
if ("methode_pedagogique" in diction.keys()):
mydata['methode_pedagogique'] = diction['methode_pedagogique']
if (len(mycommon.cleanhtml(diction['methode_pedagogique'])) > MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT):
mycommon.myprint(
str(inspect.stack()[0][3]) + " : le champ 'methode pedagogique' de La formation " + str(
diction['external_code']) + " a plus de " + str(
MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères")
return False, " le champ 'methode pedagogique' de La formation " + str(
diction['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères"
if ("condition_handicape" in diction.keys()):
mydata['condition_handicape'] = diction['condition_handicape']
if (len(mycommon.cleanhtml(diction['condition_handicape'])) > MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT):
mycommon.myprint(
str(inspect.stack()[0][3]) + " : le champ 'condition handicape' de La formation " + str(
diction['external_code']) + " a plus de " + str(
MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères")
return False, " le champ 'condition handicape' de La formation " + str(
diction['external_code']) + " a plus de " + str(MYSY_GV.CLASS_ZONE_PROGRAM_LIMIT) + " caractères"
if ("cpf" in diction.keys()): if ("cpf" in diction.keys()):
mydata['cpf'] = diction['cpf'] mydata['cpf'] = diction['cpf']
@ -2087,6 +2140,29 @@ def get_class(diction):
retVal['programme'] = no_html[:MYSY_GV.MAX_CARACT_DETAIL] + " ..." retVal['programme'] = no_html[:MYSY_GV.MAX_CARACT_DETAIL] + " ..."
if ("methode_pedagogique" in retVal.keys()):
tmp_str = retVal['methode_pedagogique']
no_html = mycommon.cleanhtml( retVal['methode_pedagogique'])
text_size = text_size + len(str(no_html))
nb_pave_a_afficher = nb_pave_a_afficher + 1
if (len(no_html) > MYSY_GV.MAX_CARACT_DETAIL):
retVal['methode_pedagogique'] = no_html[:MYSY_GV.MAX_CARACT_DETAIL] + " ..."
if ("condition_handicape" in retVal.keys()):
tmp_str = retVal['condition_handicape']
no_html = mycommon.cleanhtml( retVal['condition_handicape'])
text_size = text_size + len(str(no_html))
nb_pave_a_afficher = nb_pave_a_afficher + 1
if (len(no_html) > MYSY_GV.MAX_CARACT_DETAIL):
retVal['condition_handicape'] = no_html[:MYSY_GV.MAX_CARACT_DETAIL] + " ..."
if ("pedagogie" in retVal.keys()): if ("pedagogie" in retVal.keys()):
tmp_str = retVal['pedagogie'] tmp_str = retVal['pedagogie']
no_html = mycommon.cleanhtml(retVal['pedagogie']) no_html = mycommon.cleanhtml(retVal['pedagogie'])
@ -3024,7 +3100,8 @@ def add_class_mass(file=None, Folder=None, diction=None):
'distantiel', 'presentiel', 'prix', 'domaine', 'url','duree', 'duree_unite', 'plus_produit', 'distantiel', 'presentiel', 'prix', 'domaine', 'url','duree', 'duree_unite', 'plus_produit',
'mots_cle', 'zone_diffusion', 'metier', 'publie', 'img_url', 'mots_cle', 'zone_diffusion', 'metier', 'publie', 'img_url',
'objectif', 'programme', 'prerequis', 'formateur', 'note', 'cpf', 'certif', 'objectif', 'programme', 'prerequis', 'formateur', 'note', 'cpf', 'certif',
'class_inscription_url', 'pourqui', 'support', 'img_banner_detail_class', 'formateur_email'] 'class_inscription_url', 'pourqui', 'support', 'img_banner_detail_class', 'formateur_email',
'methode_pedagogique', 'condition_handicape']
total_rows = len(df) total_rows = len(df)
@ -3225,6 +3302,22 @@ def add_class_mass(file=None, Folder=None, diction=None):
mydata['programme'] = programme mydata['programme'] = programme
methode_pedagogique = ""
if ("methode_pedagogique" in df.keys()):
if (str(df['methode_pedagogique'].values[n])):
methode_pedagogique = str(df['methode_pedagogique'].values[n]).strip()
methode_pedagogique = mycommon.format_MySy_Text_Tag(methode_pedagogique)
mydata['methode_pedagogique'] = methode_pedagogique
condition_handicape = ""
if ("condition_handicape" in df.keys()):
if (str(df['condition_handicape'].values[n])):
condition_handicape = str(df['condition_handicape'].values[n]).strip()
condition_handicape = mycommon.format_MySy_Text_Tag(condition_handicape)
mydata['condition_handicape'] = condition_handicape
prerequis = "" prerequis = ""
if ("prerequis" in df.keys()): if ("prerequis" in df.keys()):
if (str(df['prerequis'].values[n])): if (str(df['prerequis'].values[n])):
@ -3452,7 +3545,7 @@ def Controle_add_class_mass(saved_file=None, Folder=None, diction=None):
'distantiel', 'presentiel', 'prix', 'domaine', 'url', 'duree', 'duree_unite', 'plus_produit', 'distantiel', 'presentiel', 'prix', 'domaine', 'url', 'duree', 'duree_unite', 'plus_produit',
'mots_cle', 'zone_diffusion', 'metier', 'publie', 'img_url', 'mots_cle', 'zone_diffusion', 'metier', 'publie', 'img_url',
'objectif', 'programme', 'prerequis', 'formateur', 'note', 'cpf', 'certif', 'objectif', 'programme', 'prerequis', 'formateur', 'note', 'cpf', 'certif',
'class_inscription_url', 'pourqui', 'support', 'img_banner_detail_class', 'formateur_email'] 'class_inscription_url', 'pourqui', 'support', 'img_banner_detail_class', 'formateur_email' ,'methode_pedagogique', 'condition_handicape']
total_rows = len(df) total_rows = len(df)
@ -3919,6 +4012,20 @@ def get_class_by_metier(diction):
if (len(no_html) > MYSY_GV.MAX_CARACT): if (len(no_html) > MYSY_GV.MAX_CARACT):
retVal['programme'] = no_html[:MYSY_GV.MAX_CARACT] + " ..." retVal['programme'] = no_html[:MYSY_GV.MAX_CARACT] + " ..."
if ("methode_pedagogique" in retVal.keys()):
tmp_str = retVal['methode_pedagogique']
no_html = mycommon.cleanhtml(retVal['methode_pedagogique'])
if (len(no_html) > MYSY_GV.MAX_CARACT):
retVal['methode_pedagogique'] = no_html[:MYSY_GV.MAX_CARACT] + " ..."
if ("condition_handicape" in retVal.keys()):
tmp_str = retVal['condition_handicape']
no_html = mycommon.cleanhtml(retVal['condition_handicape'])
if (len(no_html) > MYSY_GV.MAX_CARACT):
retVal['condition_handicape'] = no_html[:MYSY_GV.MAX_CARACT] + " ..."
if ("pedagogie" in retVal.keys()): if ("pedagogie" in retVal.keys()):
tmp_str = retVal['pedagogie'] tmp_str = retVal['pedagogie']
no_html = mycommon.cleanhtml(retVal['pedagogie']) no_html = mycommon.cleanhtml(retVal['pedagogie'])

View File

@ -8040,7 +8040,7 @@ def Create_E_Signature_For_E_Document():
file_img = None file_img = None
if request.method == 'POST': if request.method == 'POST':
# Create variable for uploaded file # Create variable for uploaded file
if ('signature_img' in request.files.keys()): if ('signature_img' in request.files.keys() and request.files['signature_img']):
file_img = request.files['signature_img'] file_img = request.files['signature_img']
@ -8049,6 +8049,8 @@ def Create_E_Signature_For_E_Document():
user_ip = headers_list[0] if headers_list else request.remote_addr user_ip = headers_list[0] if headers_list else request.remote_addr
payload['user_ip'] = user_ip payload['user_ip'] = user_ip
if( "signature_img" in payload.keys() ):
del payload['signature_img']
status, retval = E_Sign_Document.Create_E_Signature_For_E_Document(file_img, MYSY_GV.TEMPORARY_DIRECTORY_V2, payload) status, retval = E_Sign_Document.Create_E_Signature_For_E_Document(file_img, MYSY_GV.TEMPORARY_DIRECTORY_V2, payload)
return jsonify(status=status, message=retval) return jsonify(status=status, message=retval)

View File

@ -461,6 +461,7 @@ def Add_Partner_Order(diction):
la sequence par defaut dont partner_owner_recid = 'default' la sequence par defaut dont partner_owner_recid = 'default'
""" """
# Rcuperation de la sequence de l'objet "partner_order_header" dans la collection : "mysy_sequence" # Rcuperation de la sequence de l'objet "partner_order_header" dans la collection : "mysy_sequence"
retval_sequence_order = MYSY_GV.dbname['mysy_sequence'].find_one({'related_mysy_object': 'partner_order_header', retval_sequence_order = MYSY_GV.dbname['mysy_sequence'].find_one({'related_mysy_object': 'partner_order_header',
'valide': '1', 'partner_owner_recid':str(my_partner['recid'])}) 'valide': '1', 'partner_owner_recid':str(my_partner['recid'])})

View File

@ -4925,7 +4925,7 @@ ensuite de faire la mise à jour manuellement.
Mais ca permet d'envoir un systeme pleinement operationnel des l'activation du compte. Mais ca permet d'envoir un systeme pleinement operationnel des l'activation du compte.
Liste des points de configuration à ajoouter Liste des points de configuration à ajoouter
- Les document : Il faut créer à minima les documents suivants : - Les documents : Il faut créer à minima les documents suivants :
-> Demande d'inscription -> Demande d'inscription
-> Confirmation Inscription -> Confirmation Inscription
-> Convention individuelle -> Convention individuelle
@ -5006,7 +5006,8 @@ def Configure_Partner_Init_Setup_No_Token(diction):
liste_document_ref_interne = ['CONF_PRE_INSCRIPTION', 'CONF_INSCRIPTION', 'REFUS_INSCRIPTION','ANNULE_INSCRIPTION', liste_document_ref_interne = ['CONF_PRE_INSCRIPTION', 'CONF_INSCRIPTION', 'REFUS_INSCRIPTION','ANNULE_INSCRIPTION',
'EMARGEMENT_FORMATION', 'TABLEAU EMARGEMENT', 'EMPLOYEE_CREDENTIALS', 'EMARGEMENT' 'EMARGEMENT_FORMATION', 'TABLEAU EMARGEMENT', 'EMPLOYEE_CREDENTIALS', 'EMARGEMENT'
'CONVOCATION_STAGIAIRE', 'EMPLOYEE_CREDENTIALS_FOR_LMS', 'ATTESTATION_FORMATION', 'CONVOCATION_STAGIAIRE', 'EMPLOYEE_CREDENTIALS_FOR_LMS', 'ATTESTATION_FORMATION',
'PART_INVOICE', 'PART_ORDER', 'CONVENTION_STAGIAIRE'] 'PART_INVOICE', 'PART_ORDER', 'CONVENTION_STAGIAIRE', 'E_DOCUMENT_SIGNATURE_REQUEST', 'E_DOCUMENT_SIGNATURE_CODE',
'E_DOCUMENT_SIGNED']
""" """
Supprimer les eventuel ancienne information de ce type pour ce partenaire Supprimer les eventuel ancienne information de ce type pour ce partenaire

View File

@ -335,7 +335,7 @@ def Add_Ressource_Humaine(diction):
field_list = ['token', "nom", "email", "telephone", "website", "comment",'adr_adresse', 'adr_code_postal', field_list = ['token', "nom", "email", "telephone", "website", "comment",'adr_adresse', 'adr_code_postal',
'adr_ville', 'adr_pays', 'profil', 'telephone_mobile', 'linkedin', 'adr_ville', 'adr_pays', 'profil', 'telephone_mobile', 'linkedin',
'facebook', 'twitter', 'prenom', 'fonction', 'civilite', 'superieur_hierarchie_id', 'ismanager', 'facebook', 'twitter', 'prenom', 'fonction', 'civilite', 'superieur_hierarchie_id', 'ismanager',
'groupe_prix_achat_id', 'prix_achat', 'type_contrat', 'gategorie', 'date_naissance' 'groupe_prix_achat_id', 'prix_achat', 'type_contrat', 'gategorie', 'date_naissance', 'competence'
] ]
incom_keys = diction.keys() incom_keys = diction.keys()
@ -589,6 +589,12 @@ def Add_Ressource_Humaine(diction):
twitter = diction['twitter'] twitter = diction['twitter']
data['twitter'] = twitter data['twitter'] = twitter
competence = ""
if ("competence" in diction.keys()):
if diction['competence']:
competence = diction['competence']
data['competence'] = competence
profil = "" profil = ""
if ("profil" in diction.keys()): if ("profil" in diction.keys()):
@ -666,7 +672,7 @@ def Update_Ressource_Humaine(diction):
'adr_ville', 'adr_pays', 'profil', 'telephone_mobile', 'linkedin', 'adr_ville', 'adr_pays', 'profil', 'telephone_mobile', 'linkedin',
'facebook', 'twitter', '_id', 'prenom', 'fonction', 'civilite', 'facebook', 'twitter', '_id', 'prenom', 'fonction', 'civilite',
'superieur_hierarchie_id', 'ismanager', 'groupe_prix_achat_id', 'prix_achat', 'type_contrat', 'superieur_hierarchie_id', 'ismanager', 'groupe_prix_achat_id', 'prix_achat', 'type_contrat',
'gategorie', 'date_naissance'] 'gategorie', 'date_naissance', 'competence']
incom_keys = diction.keys() incom_keys = diction.keys()
@ -943,6 +949,10 @@ def Update_Ressource_Humaine(diction):
twitter = diction['twitter'] twitter = diction['twitter']
data_update['twitter'] = diction['twitter'] data_update['twitter'] = diction['twitter']
competence = ""
if ("competence" in diction.keys()):
data_update['competence'] = diction['competence']
""" """