master
cherif 2024-05-16 20:26:42 +02:00
parent 3d5e6764fd
commit 6ac94e5a56
4 changed files with 2316 additions and 22 deletions

View File

@ -1,15 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="sdsdd">
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="ddd">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" 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$/main.py" beforeDir="false" afterPath="$PROJECT_DIR$/main.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/partner_base_setup.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_base_setup.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/partner_client.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_client.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$/partner_invoice.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_invoice.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -79,13 +75,6 @@
<option name="presentableId" value="Default" />
<updated>1680804787304</updated>
</task>
<task id="LOCAL-00252" summary="01/04/24 - 23h30">
<created>1712006756164</created>
<option name="number" value="00252" />
<option name="presentableId" value="LOCAL-00252" />
<option name="project" value="LOCAL" />
<updated>1712006756165</updated>
</task>
<task id="LOCAL-00253" summary="01/04/24 - 23h50">
<created>1712009802358</created>
<option name="number" value="00253" />
@ -422,7 +411,14 @@
<option name="project" value="LOCAL" />
<updated>1715805416759</updated>
</task>
<option name="localTasksCounter" value="301" />
<task id="LOCAL-00301" summary="ddd">
<created>1715857414078</created>
<option name="number" value="00301" />
<option name="presentableId" value="LOCAL-00301" />
<option name="project" value="LOCAL" />
<updated>1715857414079</updated>
</task>
<option name="localTasksCounter" value="302" />
<servers />
</component>
<component name="Vcs.Log.Tabs.Properties">
@ -464,7 +460,6 @@
</option>
</component>
<component name="VcsManagerConfiguration">
<MESSAGE value="22/04/2024 - 17h30" />
<MESSAGE value="23/04/2024 - 14h06" />
<MESSAGE value="25/04/2024 - 19h" />
<MESSAGE value="27/04/2024 - 22h" />
@ -489,6 +484,7 @@
<MESSAGE value="14/05/2024 - 21h30" />
<MESSAGE value="sds" />
<MESSAGE value="sdsdd" />
<option name="LAST_COMMIT_MESSAGE" value="sdsdd" />
<MESSAGE value="ddd" />
<option name="LAST_COMMIT_MESSAGE" value="ddd" />
</component>
</project>

View File

@ -1375,6 +1375,11 @@ def GetAllClassStagiaire(diction):
user['client_rattachement_id'] = client_rattachement_id
user['client_rattachement_nom'] = client_rattachement_nom
if ("facture_client_rattachement_id" in retval.keys()):
user['facture_client_rattachement_id'] = retval['facture_client_rattachement_id']
else:
user['facture_client_rattachement_id'] = ""
#-----
financeur_rattachement_id = ""
financeur_rattachement_nom = ""
@ -3017,7 +3022,8 @@ def AddStagiairetoClass_mass_for_many_session(file=None, Folder=None, diction=No
'''
field_list = ['formation_code_externe', 'code_session', 'prenom', 'nom', 'employeur',
'telephone', 'email', 'modefinancement', 'opco', 'status', 'prix', 'adresse', 'code_postal',
'ville', 'pays', 'client_rattachement_email', 'client_rattachement_nom']
'ville', 'pays', 'client_rattachement_email', 'client_rattachement_nom','facture_client_rattachement_email'
'facture_client_rattachement_nom']
# Controle du nombre de lignes dans le fichier.
@ -3241,6 +3247,50 @@ def AddStagiairetoClass_mass_for_many_session(file=None, Folder=None, diction=No
if( local_client_retval_data is not None ):
mydata['client_rattachement_id'] = str(local_client_retval_data['_id'])
""""
Gestion du client facturer/
Avec l'email et le nom, on va aller récupérer l'_id du client
"""
facture_client_rattachement_email = ""
if ("facture_client_rattachement_email" in df.keys()):
if (str(df['facture_client_rattachement_email'].values[n]) and str(
df['facture_client_rattachement_email'].values[n]) != "nan"):
client_rattachement_email = str(df['facture_client_rattachement_email'].values[n]).strip()
facture_client_rattachement_nom = ""
if ("facture_client_rattachement_nom" in df.keys()):
if (str(df['facture_client_rattachement_nom'].values[n]) and str(
df['facture_client_rattachement_nom'].values[n]) != "nan"):
facture_client_rattachement_nom = str(df['facture_client_rattachement_nom'].values[n]).strip()
if (facture_client_rattachement_email and facture_client_rattachement_nom):
local_client_retval_qry = {'email': str(facture_client_rattachement_email), 'nom': str(facture_client_rattachement_nom),
'valide': '1', 'locked': '0', 'partner_recid': str(partner_recid)}
print(" ### local_client_retval_qry = ", local_client_retval_qry)
local_client_retval_count = MYSY_GV.dbname['partner_client'].count_documents(local_client_retval_qry)
if (local_client_retval_count > 1):
mycommon.myprint(
str(inspect.stack()[0][3]) + "Ligne : " + str(
n + 2) + ". Plusieurs entités de facturation correspondent aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email))
return False, "Ligne : " + str(
n + 2) + ". Plusieurs entités de facturation correspondent aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email)
if (local_client_retval_count < 1):
mycommon.myprint(
str(inspect.stack()[0][3]) + "Ligne : " + str(
n + 2) + ". Aucune entité de facturation ne repond aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email))
return False, "Ligne : " + str(n + 2) + ". Aucune entité de facturation ne repond aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email)
local_client_retval_data = MYSY_GV.dbname['partner_client'].find_one(local_client_retval_qry)
if (local_client_retval_data is not None):
mydata['facture_client_rattachement_id'] = str(local_client_retval_data['_id'])
mydata['status'] = str(df['status'].values[n]).strip()
if( str(mydata['status']) != "0" and str(mydata['status']) != "1" and str(mydata['status']) != "2"):
@ -3541,6 +3591,52 @@ def Controle_AddStagiairetoClass_mass_for_many_session(saved_file=None, Folder=N
if( local_client_retval_data is not None ):
mydata['client_rattachement_id'] = str(local_client_retval_data['_id'])
""""
Gestion du client facturer/
Avec l'email et le nom, on va aller récupérer l'_id du client
"""
facture_client_rattachement_email = ""
if ("facture_client_rattachement_email" in df.keys()):
if (str(df['facture_client_rattachement_email'].values[n]) and str(
df['facture_client_rattachement_email'].values[n]) != "nan"):
client_rattachement_email = str(df['facture_client_rattachement_email'].values[n]).strip()
facture_client_rattachement_nom = ""
if ("facture_client_rattachement_nom" in df.keys()):
if (str(df['facture_client_rattachement_nom'].values[n]) and str(
df['facture_client_rattachement_nom'].values[n]) != "nan"):
facture_client_rattachement_nom = str(df['facture_client_rattachement_nom'].values[n]).strip()
if (facture_client_rattachement_email and facture_client_rattachement_nom):
local_client_retval_qry = {'email': str(facture_client_rattachement_email),
'nom': str(facture_client_rattachement_nom),
'valide': '1', 'locked': '0', 'partner_recid': str(partner_recid)}
print(" ### local_client_retval_qry = ", local_client_retval_qry)
local_client_retval_count = MYSY_GV.dbname['partner_client'].count_documents(local_client_retval_qry)
if (local_client_retval_count > 1):
mycommon.myprint(
str(inspect.stack()[0][3]) + "Ligne : " + str(
n + 2) + ". Plusieurs entités de facturation correspondent aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email))
return False, "Ligne : " + str(
n + 2) + ". Plusieurs entités de facturation correspondent aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email)
if (local_client_retval_count < 1):
mycommon.myprint(
str(inspect.stack()[0][3]) + "Ligne : " + str(
n + 2) + ". Aucune entité de facturation ne repond aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email))
return False, "Ligne : " + str(
n + 2) + ". Aucune entité de facturation ne repond aux critères de nom :" + str(
facture_client_rattachement_nom) + " et email : " + str(facture_client_rattachement_email)
local_client_retval_data = MYSY_GV.dbname['partner_client'].find_one(local_client_retval_qry)
if (local_client_retval_data is not None):
mydata['facture_client_rattachement_id'] = str(local_client_retval_data['_id'])
mydata['status'] = str(df['status'].values[n]).strip()
if( str(mydata['status']) != "0" and str(mydata['status']) != "1" and str(mydata['status']) != "2"):
@ -6793,6 +6889,11 @@ def Get_Statgaire_List_Partner_with_filter(diction):
val['client_rattachement_id'] = client_rattachement_id
val['client_rattachement_nom'] = client_rattachement_nom
if ("facture_client_rattachement_id" in retVal.keys()):
val['facture_client_rattachement_id'] = retVal['facture_client_rattachement_id']
else:
val['facture_client_rattachement_id'] = ""
# ----
invoiced = ""

File diff suppressed because one or more lines are too long

View File

@ -1680,15 +1680,41 @@ def GerneratePDF_Partner_Invoice(diction):
#print(" ### Order_header_data = ", Order_header_data)
#print(" ### Order_header_lines_data = ", Order_header_lines_data)
# Recuperation des données du partenaire associé à l'utilisateur connecté
"""
Recuperation du dictionnaire des info
"""
tab_client = []
tab_client.append(ObjectId(str(Order_header_client_data['_id'])))
new_diction = {}
new_diction['token'] = diction['token']
new_diction['list_stagiaire_id'] = []
new_diction['list_session_id'] = []
new_diction['list_class_id'] = []
new_diction['list_client_id'] = tab_client
new_diction['list_apprenant_id'] = []
local_status, local_retval = mycommon.Get_Dictionnary_data_For_Template(new_diction)
if (local_status is False):
return local_status, local_retval
convention_dictionnary_data = local_retval
company_data = {
"params": convention_dictionnary_data,
}
"""
# Recuperation des données du partenaire associé à l'utilisateur connecté
local_status, local_retval = mycommon.Get_Connected_User_Partner_Data_From_RecID(my_partner['recid'])
if (local_status is False):
return local_status, local_retval
return local_status, local_retval
local_company_data = local_retval
# Recuperation des données de la société
company_data = {}
@ -1723,8 +1749,9 @@ def GerneratePDF_Partner_Invoice(diction):
company_data.update(new_field_logo)
company_data.update(new_field_cachet)
"""
print("company_data = ", company_data)
sourceHtml = contenu_doc_Template.render(params=Order_header_data, param_order_lines=Order_header_lines_data, company_data=company_data)
@ -2000,7 +2027,7 @@ def Send_Partner_Invoice_By_Email(diction):
local_status, local_retval = mycommon.Get_Connected_User_Partner_Data_From_RecID(my_partner['recid'])
if (local_status is False):
return local_status, local_retval
return local_status, local_retval
local_company_data = local_retval