08/11/2023 - 23h

master
cherif 2023-11-09 15:35:52 +01:00
parent 74c7fee2e3
commit 7d50901dd0
3 changed files with 1514 additions and 20 deletions

View File

@ -1,11 +1,10 @@
<?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="30/10/23 - 16h">
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="08/11/2023 - 23h">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" 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_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" />
@ -75,13 +74,6 @@
<option name="presentableId" value="Default" />
<updated>1680804787304</updated>
</task>
<task id="LOCAL-00090" summary="30/08/23 - 14h">
<created>1693397579848</created>
<option name="number" value="00090" />
<option name="presentableId" value="LOCAL-00090" />
<option name="project" value="LOCAL" />
<updated>1693397579849</updated>
</task>
<task id="LOCAL-00091" summary="30/08/23 - 17h">
<created>1693408957444</created>
<option name="number" value="00091" />
@ -418,7 +410,14 @@
<option name="project" value="LOCAL" />
<updated>1698679792177</updated>
</task>
<option name="localTasksCounter" value="139" />
<task id="LOCAL-00139" summary="08/11/2023 - 23h">
<created>1699480833289</created>
<option name="number" value="00139" />
<option name="presentableId" value="LOCAL-00139" />
<option name="project" value="LOCAL" />
<updated>1699480833290</updated>
</task>
<option name="localTasksCounter" value="140" />
<servers />
</component>
<component name="Vcs.Log.Tabs.Properties">
@ -433,7 +432,6 @@
</option>
</component>
<component name="VcsManagerConfiguration">
<MESSAGE value="26/09/23 - 19h" />
<MESSAGE value="26/09/23 - 23h" />
<MESSAGE value="28/09/23 - 23h" />
<MESSAGE value="30/09/2023 - 14h" />
@ -458,6 +456,7 @@
<MESSAGE value="23/10/2023 - 13h" />
<MESSAGE value="23/10/2023 - 16h" />
<MESSAGE value="30/10/23 - 16h" />
<option name="LAST_COMMIT_MESSAGE" value="30/10/23 - 16h" />
<MESSAGE value="08/11/2023 - 23h" />
<option name="LAST_COMMIT_MESSAGE" value="08/11/2023 - 23h" />
</component>
</project>

File diff suppressed because it is too large Load Diff

View File

@ -258,10 +258,19 @@ def Invoice_Partner_Order(diction):
new_invoice_data_line['invoice_date'] = invoice_date_time
new_invoice_data_line['invoice_header_id'] = str(inserted_invoice_id)
inserted_line_id = MYSY_GV.dbname['partner_invoice_line'].insert_one(new_invoice_data_line).inserted_id
#print(" ### on Va inserer la ligne de factue new_invoice_data_line = ", new_invoice_data_line)
inserted_line = MYSY_GV.dbname['partner_invoice_line'].insert_one(new_invoice_data_line)
#print(" ### inserted_line de la ligne inserée = ", inserted_line)
inserted_line_id = inserted_line.inserted_id
#print(" ### inserted_line_id de la ligne inserée = ", inserted_line_id)
if (not inserted_line_id):
# Vu quil y a un soucis avec l'une des ligne, on fait un roll back complet de la facturation
# Vu quil y a un souci avec l'une des lignes, on fait un roll back complet de la facturation
order_updated = MYSY_GV.dbname['partner_order_header'].update_one({{'_id': ObjectId(
str(diction['order_id'])), 'order_header_ref_interne': str(diction['order_ref_interne']),
'partner_owner_recid': my_partner[
@ -1316,7 +1325,7 @@ def GerneratePDF_Partner_Invoice(diction):
if (local_status is not True):
return local_status, my_partner
# Verification de la validité de l'order
# Verification de la validité de la facture
qry = {'_id': ObjectId(str(diction['invoice_id'])), 'valide': '1', 'locked': '0',
'partner_owner_recid': str(my_partner['recid'])}
print(" ### qry = ", qry)
@ -1383,6 +1392,9 @@ def GerneratePDF_Partner_Invoice(diction):
if ("email" in Order_header_client_data.keys()):
Order_header_data['client_email'] = Order_header_client_data['email']
# Ajout d'un parametre pour le data time du jour de l'edition (c'est une data static qui peut servir pour l'horodatage
Order_header_data['current_date_time'] = str(datetime.now().strftime("%d/%m/%Y, %H:%M:%S") )
# Recuperation des details de lignes de : partner_invoice_line
filt_class_partner_recid = {'partner_owner_recid': str(my_partner['recid'])}
@ -1404,7 +1416,7 @@ def GerneratePDF_Partner_Invoice(diction):
}
}
]
#print("#### Get_Given_Partner_Order_Lines_From_order_ref_interne : query pip= ", query)
print("#### Get_Given_Partner_Order_Lines_From_order_ref_interne : query pip= ", query)
val_tmp = 0
Order_header_lines_data = []
for retval in MYSY_GV.dbname['partner_invoice_line'].aggregate(query):
@ -1418,12 +1430,10 @@ def GerneratePDF_Partner_Invoice(diction):
user['order_line_prix_unitaire'] = retval['order_line_prix_unitaire']
user['order_header_id'] = retval['order_header_id']
user['order_header_ref_interne'] = retval['order_header_ref_interne']
user['invoice_header_ref_interne'] = retval['invoice_header_ref_interne']
user['invoice_line_type'] = retval['invoice_line_type']
user['invoice_date'] = retval['invoice_date']
user['valide'] = retval['valide']
user['locked'] = retval['locked']
@ -1511,6 +1521,10 @@ def GerneratePDF_Partner_Invoice(diction):
#print(" #### Order_header_data = ", Order_header_data)
#sourceHtml = contenu_doc_Template.render(params=Order_header_data)
#print(" ### Order_header_data = ", Order_header_data)
#print(" ### Order_header_lines_data = ", Order_header_lines_data)
sourceHtml = contenu_doc_Template.render(params=Order_header_data, param_order_lines=Order_header_lines_data)
@ -1634,7 +1648,18 @@ def Send_Partner_Invoice_By_Email(diction):
3]) + " - Le client est invalide")
return False, " Le client est invalide"
### Ajout des données du client sur l'entete de la commande, exemple : le nom, email, etc
if ("raison_sociale" in Order_header_client_data.keys()):
Order_header_data['client_raison_sociale'] = Order_header_client_data['raison_sociale']
if ("nom" in Order_header_client_data.keys()):
Order_header_data['client_nom'] = Order_header_client_data['nom']
if ("email" in Order_header_client_data.keys()):
Order_header_data['client_email'] = Order_header_client_data['email']
# Ajout d'un parametre pour le data time du jour de l'edition (c'est une data static qui peut servir pour l'horodatage
Order_header_data['current_date_time'] = str(datetime.now().strftime("%d/%m/%Y, %H:%M:%S"))
# Recuperation des details de lignes de : partner_order_line
filt_class_partner_recid = {'partner_owner_recid': str(my_partner['recid'])}
@ -1676,7 +1701,6 @@ def Send_Partner_Invoice_By_Email(diction):
user['invoice_date'] = retval['invoice_date']
user['invoice_header_id'] = retval['invoice_header_id']
user['valide'] = retval['valide']
user['locked'] = retval['locked']