07/05/2026 - 17h

Signed-off-by: Cherif <cbalde@mysy-training.com>
master_Elyos_FI
Cherif 2026-05-07 17:02:47 +02:00
parent 18fdf72633
commit 9aa74df58b
10 changed files with 499 additions and 75058 deletions

View File

@ -4,12 +4,17 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="04/05/2026 - 19h">
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="05/05/2026 - 19h">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Dashbord_queries/BPF.py" beforeDir="false" afterPath="$PROJECT_DIR$/Dashbord_queries/BPF.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/Dashbord_queries/factures_tbd_qries.py" beforeDir="false" afterPath="$PROJECT_DIR$/Dashbord_queries/factures_tbd_qries.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$/Session_Formation.py" beforeDir="false" afterPath="$PROJECT_DIR$/Session_Formation.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/class_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/class_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/partner_client.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_client.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/prj_common.py" beforeDir="false" afterPath="$PROJECT_DIR$/prj_common.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/stage_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/stage_mgt.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/wrapper.py" beforeDir="false" afterPath="$PROJECT_DIR$/wrapper.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -453,7 +458,7 @@
<option name="project" value="LOCAL" />
<updated>1747251650255</updated>
</task>
<option name="localTasksCounter" value="573" />
<option name="localTasksCounter" value="574" />
<servers />
</component>
<component name="Vcs.Log.Tabs.Properties">
@ -495,7 +500,6 @@
</option>
</component>
<component name="VcsManagerConfiguration">
<MESSAGE value="14/03/2026 - 22h" />
<MESSAGE value="17/03/2026 - 22h" />
<MESSAGE value="18/03/2026 - 22h" />
<MESSAGE value="20/03/2026 - 9h" />
@ -520,6 +524,7 @@
<MESSAGE value="29/04/26 - 21h" />
<MESSAGE value="04/05/2026 - 13h" />
<MESSAGE value="04/05/2026 - 19h" />
<option name="LAST_COMMIT_MESSAGE" value="04/05/2026 - 19h" />
<MESSAGE value="05/05/2026 - 19h" />
<option name="LAST_COMMIT_MESSAGE" value="05/05/2026 - 19h" />
</component>
</project>

View File

@ -3541,6 +3541,8 @@ def Get_Qery_Generate_BPF_From_partner_invoice_header_work(diction):
])
print(" ### C2_pipe_qry_invoice_header_partner__invoice_line_detail__partner_type_organisme_financement__type_apprenant qry = ", C2_pipe_qry_invoice_header_partner__invoice_line_detail__partner_type_organisme_financement__type_apprenant)
C3_C8_pipe_qry_invoice_header_partner__invoice_line_detail__partner_type_pouvoir_public = ([
{"$addFields": {
"mysy_invoice_date": {

View File

@ -2665,6 +2665,374 @@ def Get_Qery_List_Factures_For_List_Class(diction):
return False, " Impossible de récupérer les données "
"""
Cette fonction permet de recuperer les factures par inscrit
db.partner_invoice_header.aggregate([
{
"$addFields":{
"mysy_invoice_date":{
"$dateFromString":{
"dateString":"$invoice_date",
"format":"%d/%m/%Y"
}
}
}
},
{
"$match":{
"$and":[
{
"valide":"1",
"invoice_header_type":"facture",
"credit_note_ref":{
"$exists":false
},
"partner_owner_recid":"43598820dd270936c3d2fd822717d0f18f194b1a1b894aaf89"
},
{invoice_header_ref_interne: 'NEW_Invoice_56'},
]
}
},
{
"$lookup":{
"from":"partner_invoice_line_detail",
"let":{
"invoice_header_id":{
"$toString":"$_id"
},
"partner_invoice_line_partner_owner_recid":"$partner_owner_recid",
"partner_invoice_line_invoice_header_ref_interne":"$invoice_header_ref_interne"
},
"pipeline":[
{
"$match":{
"$expr":{
"$and":[
{
"$eq":[
"$valide",
"1"
]
},
{
"$eq":[
"$invoice_header_ref_interne",
"$$partner_invoice_line_invoice_header_ref_interne"
]
},
{
"$eq":[
"$partner_owner_recid",
"$$partner_invoice_line_partner_owner_recid"
]
}
]
}
}
}
],
"as":"collection_partner_invoice_line"
}
},
{
"$unwind":"$collection_partner_invoice_line"
},
{
"$lookup":{
"from":"inscription",
"let":{
"inscription_id":"$collection_partner_invoice_line.order_line_inscription_id"
},
"pipeline":[
{
"$match":{
"$expr":{
"$and":[
{
"$eq":[
"$_id",
{
"$convert":{
"input":"$$inscription_id",
"to":"objectId",
"onError":{
"error":"true"
},
"onNull":{
"isnull":"true"
}
}
}
]
},
{
"$eq":[
"$valide",
"1"
]
}
]
}
}
}
],
"as":"inscription_collection"
}
},
{
"$unwind":"$inscription_collection"
},
])
"""
def Get_Qery_List_Factures_For_List_Inscrit(diction):
try:
diction = mycommon.strip_dictionary(diction)
"""
Verification des input acceptés
"""
field_list = ['token', 'periode_start_date', 'periode_end_date', 'filter_value',
'tab_formation_ids', 'from_beginning']
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'est pas autorisé ")
return False, " Les informations fournies sont incorrectes",
"""
Verification des champs obligatoires
"""
field_list_obligatoire = ['token', ]
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 la liste des arguments ")
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
tab_formation_ids_split = []
tab_formation_ids = []
tab_formation_internal_url = []
if ("tab_formation_ids" in diction.keys()):
tab_formation_ids_split = str(diction['tab_formation_ids']).split(",")
for tmp in tab_formation_ids_split:
if (tmp):
tab_formation_ids.append((str(tmp)))
local_class_data = MYSY_GV.dbname['myclass'].find_one({'_id':ObjectId(str(tmp)),
'partner_owner_recid':str(my_partner['recid'])}, {'internal_url':1})
if( local_class_data and "internal_url" in local_class_data.keys() and local_class_data['internal_url']):
tab_formation_internal_url.append(str(local_class_data['internal_url']))
filt_periode_start_date = ""
if ("periode_start_date" in diction.keys() and diction['periode_start_date']):
filt_periode_start_date = str(diction['periode_start_date'])[0:10]
local_status = mycommon.CheckisDate(filt_periode_start_date)
if (local_status is False):
mycommon.myprint(str(
inspect.stack()[0][3]) + " Le filtre : 'date de debut' n'est pas au format jj/mm/aaaa.")
return False, " Le filtre : 'date de debut' n'est pas au format jj/mm/aaaa."
filt_periode_end_date = ""
if ("periode_end_date" in diction.keys() and diction['periode_end_date']):
filt_periode_end_date = str(diction['periode_end_date'])[0:10]
local_status = mycommon.CheckisDate(filt_periode_end_date)
if (local_status is False):
mycommon.myprint(str(
inspect.stack()[0][3]) + " Le filtre : 'date de fin' n'est pas au format jj/mm/aaaa.")
return False, " Le filtre : 'date de fin' n'est pas au format jj/mm/aaaa."
"""
Si la valeur de 'filter_value' est m0 ou m1, on va aller recuperer les date du mois correspondant.
On ecrase les valeur de filt_session_start_date et filt_session_end_date
"""
if ('filter_value' in diction.keys()):
# print(" filter_value = ", diction['filter_value'])
if (str(diction['filter_value']) == "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
filt_periode_start_date = start_current_month_date
filt_periode_end_date = end_current_month_date
# print(" ### filt_session_start_date = ", filt_session_start_date, " ### filt_session_end_date = ", filt_session_end_date)
elif (str(diction['filter_value']) == "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
filt_periode_start_date = start_current_month_date
filt_periode_end_date = end_current_month_date
filt_periode_start_date_ISODATE = datetime.strptime(str(filt_periode_start_date), '%d/%m/%Y')
filt_periode_end_date_ISODATE = datetime.strptime(str(filt_periode_end_date), '%d/%m/%Y')
if ("from_beginning" in diction.keys() and diction['from_beginning'] == "1"):
filt_mysy_invoice_date = {}
else:
filt_mysy_invoice_date = {
'mysy_invoice_date': {'$gte': filt_periode_start_date_ISODATE,
'$lte': filt_periode_end_date_ISODATE}}
filt_list_class_internal_url = {}
filt_list_class_id = {}
if (len(tab_formation_ids) > 0):
filt_list_class_id = {'$in': ["$class_id", tab_formation_ids]}
filt_list_class_internal_url = {'$in': ["$order_line_formation", tab_formation_internal_url]}
qery_match = {'$and': [{"partner_owner_recid": str(my_partner['recid'])},
{"valide": '1'},
filt_mysy_invoice_date, ]}
pipe_qry = ([
{"$addFields": {
"mysy_invoice_date": {
'$dateFromString': {
'dateString': '$invoice_date',
'format': "%d/%m/%Y"
}
}
}
},
{'$match': qery_match},
{'$lookup': {
'from': 'partner_invoice_line',
"let": {"invoice_header_id": {'$toString': "$_id"},
'partner_invoice_line_partner_owner_recid': '$partner_owner_recid',
'partner_invoice_line_invoice_header_ref_interne': '$invoice_header_ref_interne'},
'pipeline': [
{'$match':
{'$expr':
{'$and':
[
{'$eq': ["$valide", "1"]},
filt_list_class_internal_url,
{'$eq': ["$invoice_header_ref_interne",'$$partner_invoice_line_invoice_header_ref_interne']},
{'$eq': ["$partner_owner_recid", '$$partner_invoice_line_partner_owner_recid']},
]
}
}
},
],
'as': 'collection_partner_invoice_line'
}
},
{
'$unwind': '$collection_partner_invoice_line'
},
{'$group': {
'_id': {
"class_internal_url": "$collection_partner_invoice_line.order_line_formation",
},
"TotalAmount_HT": {
"$sum": {'$toDouble': '$collection_partner_invoice_line.order_line_montant_hors_taxes'}},
"count": {"$sum": 1}
}
},
{
'$sort': {'count': -1}
},
])
print(" ### Get_Qery_List_Factures_Data_By_Class ici pipe_qry = ", pipe_qry)
RetObject = []
val_tmp = 0
axis_data = []
series_TotalAmount_data = []
tab_data = []
tab_axis_data_class_code = []
tab_axis_data_class_title = []
"""
On recupere les données, on les format dans le 'range_date_month' et on retourne"""
for retval in MYSY_GV.dbname['partner_invoice_header'].aggregate(pipe_qry):
val_tmp = val_tmp + 1
node = {}
node['class_internal_url'] = retval['_id']['class_internal_url']
node['TotalAmount_HT'] = retval['TotalAmount_HT']
node['label'] = retval['TotalAmount_HT']
node['nb_line'] = retval['count']
# Recuperation des données de la formation
class_data = MYSY_GV.dbname['myclass'].find_one({'internal_url':str(retval['_id']['class_internal_url']),
'partner_owner_recid':str(my_partner['recid']),
'valide':'1'})
if( class_data and "title" in class_data.keys() ):
node['class_title'] = class_data['title']
tab_axis_data_class_title.append(class_data['title'])
else:
node['class_title'] = ""
tab_axis_data_class_title.append("")
if (class_data and "external_code" in class_data.keys()):
node['class_external_code'] = class_data['external_code']
tab_axis_data_class_code.append(class_data['external_code'])
else:
node['class_external_code'] = ""
tab_axis_data_class_code.append("")
tab_data.append(node)
json_retval = {}
json_retval['data'] = tab_data
json_retval['axis_class_code'] = tab_axis_data_class_code
json_retval['axis_class_title'] = tab_axis_data_class_title
print(" ### Get_Qery_List_Factures_Data_By_Class json_retval = ", json_retval)
RetObject.append(mycommon.JSONEncoder().encode(json_retval))
return True, RetObject
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 de récupérer les données "
"""

View File

@ -12671,7 +12671,7 @@ def Sent_Convention_Stagiaire_By_Email(tab_files, Folder, diction):
"""
new_model_courrier_with_code_tag = str(
sourceHtml) + " <p style='width: 300px; text-align: right;'> Signature Client <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
sourceHtml) + " <p style='width: 300px; text-align: right;'> Signature manuscrite <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
" <p style='width: 300px; text-align: center;'> <img style='height:150px; width:150px;' src='{{ params.mysy_qrcode_securite }}'>&nbsp;</p> "
"""
new_model_courrier_with_code_tag = " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
@ -12679,7 +12679,7 @@ def Sent_Convention_Stagiaire_By_Email(tab_files, Folder, diction):
" <nav style = 'font-size: 10px; font-style: italic;' > Sécurisé par MySy Training Technology </nav>" \
" <br/> </div> </div>" + \
str(sourceHtml) + " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
" Signature Client <br/> <img style = 'height:100px; width:100px' " \
" Signature manuscrite <br/> <img style = 'height:100px; width:100px' " \
" src = '{{ params.mysy_manual_signature_img }}' > <br/> " \
" </div> </div>"
@ -14723,7 +14723,7 @@ def Sent_Convention_Stagiaire_By_Email_By_Partner_client(tab_files_name_full_pat
sourceHtml = contenu_doc_Template.render(params=body["params"])
"""
new_model_courrier_with_code_tag = str(sourceHtml) + " <p style='width: 300px; text-align: right;'> Signature Client <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
new_model_courrier_with_code_tag = str(sourceHtml) + " <p style='width: 300px; text-align: right;'> Signature manuscrite <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
" <p style='width: 300px; text-align: center;'> <img style='height:150px; width:150px;' src='{{ params.mysy_qrcode_securite }}'>&nbsp;</p> "
"""
new_model_courrier_with_code_tag = " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
@ -14731,7 +14731,7 @@ def Sent_Convention_Stagiaire_By_Email_By_Partner_client(tab_files_name_full_pat
" <nav style = 'font-size: 10px; font-style: italic;' > Sécurisé par MySy Training Technology </nav>" \
" <br/> </div> </div>" + \
str(sourceHtml)+ " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
" Signature Client <br/> <img style = 'height:100px; width:100px' " \
" Signature manuscrite <br/> <img style = 'height:100px; width:100px' " \
" src = '{{ params.mysy_manual_signature_img }}' > <br/> " \
" </div> </div>"
@ -14802,7 +14802,7 @@ def Sent_Convention_Stagiaire_By_Email_By_Partner_client(tab_files_name_full_pat
new_e_document_diction['file_cononical_name'] = cononic_name
new_e_document_diction['type'] = "convention"
#print(" ### 011 new_e_document_diction = ", new_e_document_diction)
print(" ### 011 new_e_document_diction = ", new_e_document_diction)
local_status_e_doc, local_retval_e_doc = E_Sign_Document.Create_E_Document(new_e_document_diction)
if(local_status_e_doc is False ):

File diff suppressed because one or more lines are too long

View File

@ -6945,7 +6945,7 @@ def Prepare_and_Send_Convention_From_Session_For_Selected_Inscrit_By_Email(tab_f
)
print(" ### la liste des liste_client_rattachement_id = ", liste_client_rattachement_id)
#print(" ### la liste des liste_client_rattachement_id = ", liste_client_rattachement_id)
# Sauvegarde des fichiers joints depuis le front
@ -6958,7 +6958,7 @@ def Prepare_and_Send_Convention_From_Session_For_Selected_Inscrit_By_Email(tab_f
tab_saved_file_full_path.append(saved_file_full_path)
print(" #### tab_saved_file_full_path = ", tab_saved_file_full_path)
#print(" #### tab_saved_file_full_path = ", tab_saved_file_full_path)
# Recupération des données du modèle de document
is_convention_by_client = "0"
@ -6990,7 +6990,7 @@ def Prepare_and_Send_Convention_From_Session_For_Selected_Inscrit_By_Email(tab_f
mycommon.myprint(" Impossible de récupérer les contacts de communication du client ")
return False, " Impossible de récupérer les contacts de communication du client "
#print(" ### partner_client_contact_communication = ", partner_client_contact_communication)
print(" ### partner_client_contact_communication = ", partner_client_contact_communication)
tab_local_email_production = []
for tmp in partner_client_contact_communication:
tmp_JSON = ast.literal_eval(tmp)
@ -7011,7 +7011,7 @@ def Prepare_and_Send_Convention_From_Session_For_Selected_Inscrit_By_Email(tab_f
new_diction_client['request_digital_signature'] = diction['request_digital_signature']
#print(" ##### new_diction_client 0102 = ", new_diction_client)
print(" ##### new_diction_client 0102 = ", new_diction_client)
local_status, local_retval = Inscription_mgt.Sent_Convention_Stagiaire_By_Email_By_Partner_client(tab_saved_file_full_path, Folder, new_diction_client)

View File

@ -6411,6 +6411,27 @@ def get_class_by_metier(diction):
if ("inscription_direct" not in user.keys()):
user['inscription_direct'] = ""
"""
07/05/2026 - recuperer le code du domaine
"""
domaine_code = ""
if ("domaine" in user.keys() and user['domaine']):
"""
Verifier la validé du domaine
"""
class_domaine_data = MYSY_GV.dbname['class_domaine'].find_one(
{'_id': ObjectId(str(user['domaine'])),
'valide': '1',
'locked': '0',
'partner_owner_recid': str(
user['partner_owner_recid'])
})
if (class_domaine_data and 'code' in class_domaine_data.keys()):
domaine_code = class_domaine_data['code']
user['domaine_code'] = str(domaine_code)
RetObject.append(JSONEncoder().encode(user))
# print(" 22222 ")
retVal_for_stat = retVal

View File

@ -3509,7 +3509,7 @@ def Get_Partner_Client_Communication_Contact(diction):
new_diction['locked'] = "0"
new_diction['include_com'] = "1"
print(" ### REQ Get_Partner_Client_Communication_Contact = ", new_diction)
RetObject = []
val_tmp = 1

View File

@ -2059,7 +2059,7 @@ def Sent_Etudiant_Convention_Stage_By_Email(tab_files, Folder, diction):
"""
new_model_courrier_with_code_tag = str(
sourceHtml) + " <p style='width: 300px; text-align: right;'> Signature Client <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
sourceHtml) + " <p style='width: 300px; text-align: right;'> Le maitre de stage <br/> <img style='height:150px; width:150px' src='{{ params.mysy_manual_signature_img }}'>&nbsp;</p> <br/> " \
" <p style='width: 300px; text-align: center;'> <img style='height:150px; width:150px;' src='{{ params.mysy_qrcode_securite }}'>&nbsp;</p> "
"""
new_model_courrier_with_code_tag = " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
@ -2067,7 +2067,7 @@ def Sent_Etudiant_Convention_Stage_By_Email(tab_files, Folder, diction):
" <nav style = 'font-size: 10px; font-style: italic;' > Sécurisé par MySy Training Technology </nav>" \
" <br/> </div> </div>" + \
str(sourceHtml) + " <div style='width: 100%'> <div style = 'width: 100%; text-align: center;' >" \
" Signature Client <br/> <img style = 'height:100px; width:100px' " \
" Le maitre de stage <br/> <img style = 'height:100px; width:100px' " \
" src = '{{ params.mysy_manual_signature_img }}' > <br/> " \
" </div> </div>"

View File

@ -287,6 +287,27 @@ def get_all_class(diction):
mytoday = datetime.today()
for x in coll_name.aggregate(pipe):
"""
07/05/2026 - recuperer le code du domaine
"""
domaine_code = ""
if ("domaine" in x.keys() and x['domaine']):
"""
Verifier la validé du domaine
"""
class_domaine_data = MYSY_GV.dbname['class_domaine'].find_one(
{'_id': ObjectId(str(x['domaine'])),
'valide': '1',
'locked': '0',
'partner_owner_recid': str(
x['partner_owner_recid'])
})
if( class_domaine_data and 'code' in class_domaine_data.keys()):
domaine_code = class_domaine_data['code']
x['domaine_code'] = str(domaine_code)
"""
24/10/2025 - Pour verifie si le prix est HT ou TTC du PRORITAIRE DE LA FORMATION
on va aller chercher la valeur de TVA dans la collecion :'base_partner_setup'
@ -1002,6 +1023,26 @@ def recherche_text_simple(diction):
x['partnaire_tva'] = str(partnaire_tva)
"""
07/05/2026 - recuperer le code du domaine
"""
domaine_code = ""
if ("domaine" in x.keys() and x['domaine']):
"""
Verifier la validé du domaine
"""
class_domaine_data = MYSY_GV.dbname['class_domaine'].find_one(
{'_id': ObjectId(str(x['domaine'])),
'valide': '1',
'locked': '0',
'partner_owner_recid': str(
x['partner_owner_recid'])
})
if (class_domaine_data and 'code' in class_domaine_data.keys()):
domaine_code = class_domaine_data['code']
x['domaine_code'] = str(domaine_code)
val = x['description']
no_html = mycommon.cleanhtml(x['description'])
@ -1489,6 +1530,27 @@ def recherche_text_simple_for_partner_catalog(diction):
else:
x['description'] = no_html
"""
07/05/2026 - recuperer le code du domaine
"""
domaine_code = ""
if ("domaine" in x.keys() and x['domaine']):
"""
Verifier la validé du domaine
"""
class_domaine_data = MYSY_GV.dbname['class_domaine'].find_one(
{'_id': ObjectId(str(x['domaine'])),
'valide': '1',
'locked': '0',
'partner_owner_recid': str(
x['partner_owner_recid'])
})
if (class_domaine_data and 'code' in class_domaine_data.keys()):
domaine_code = class_domaine_data['code']
x['domaine_code'] = str(domaine_code)
insertObject.append(JSONEncoder().encode(user))
# mycommon.myprint(" insertObject = ", insertObject)
@ -1590,6 +1652,8 @@ def recherche_text_simple_for_partner_catalog(diction):
x['partnaire_tva'] = str(partnaire_tva)
nb_result = nb_result + 1
tab_selected_business_prices = []
@ -1645,6 +1709,28 @@ def recherche_text_simple_for_partner_catalog(diction):
x['description'] = no_html[:MYSY_GV.MAX_CARACT] + " ..."
else:
x['description'] = no_html
"""
07/05/2026 - recuperer le code du domaine
"""
domaine_code = ""
if ("domaine" in x.keys() and x['domaine']):
"""
Verifier la validé du domaine
"""
class_domaine_data = MYSY_GV.dbname['class_domaine'].find_one(
{'_id': ObjectId(str(x['domaine'])),
'valide': '1',
'locked': '0',
'partner_owner_recid': str(
x['partner_owner_recid'])
})
if (class_domaine_data and 'code' in class_domaine_data.keys()):
domaine_code = class_domaine_data['code']
x['domaine_code'] = str(domaine_code)
insertObject.append(JSONEncoder().encode(user))
'''