10/11/2023 - 16h
parent
ba57249927
commit
30a7a39782
|
@ -1,11 +1,15 @@
|
|||
<?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="08/11/2023 - 23h">
|
||||
<list default="true" id="c6d0259a-16e1-410d-91a1-830590ee2a08" name="Changes" comment="09/11/2023 - 23h">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/GlobalVariable.py" beforeDir="false" afterPath="$PROJECT_DIR$/GlobalVariable.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$/email_inscription_mgt.py" beforeDir="false" afterPath="$PROJECT_DIR$/email_inscription_mgt.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_invoice.py" beforeDir="false" afterPath="$PROJECT_DIR$/partner_invoice.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" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
@ -75,13 +79,6 @@
|
|||
<option name="presentableId" value="Default" />
|
||||
<updated>1680804787304</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00092" summary="30/08/23 - 22h">
|
||||
<created>1693425919707</created>
|
||||
<option name="number" value="00092" />
|
||||
<option name="presentableId" value="LOCAL-00092" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1693425919707</updated>
|
||||
</task>
|
||||
<task id="LOCAL-00093" summary="01/09/23 - 19h">
|
||||
<created>1693586455361</created>
|
||||
<option name="number" value="00093" />
|
||||
|
@ -418,7 +415,14 @@
|
|||
<option name="project" value="LOCAL" />
|
||||
<updated>1699540554777</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="141" />
|
||||
<task id="LOCAL-00141" summary="09/11/2023 - 23h">
|
||||
<created>1699567383854</created>
|
||||
<option name="number" value="00141" />
|
||||
<option name="presentableId" value="LOCAL-00141" />
|
||||
<option name="project" value="LOCAL" />
|
||||
<updated>1699567383855</updated>
|
||||
</task>
|
||||
<option name="localTasksCounter" value="142" />
|
||||
<servers />
|
||||
</component>
|
||||
<component name="Vcs.Log.Tabs.Properties">
|
||||
|
@ -433,7 +437,6 @@
|
|||
</option>
|
||||
</component>
|
||||
<component name="VcsManagerConfiguration">
|
||||
<MESSAGE value="26/09/23 - 23h" />
|
||||
<MESSAGE value="28/09/23 - 23h" />
|
||||
<MESSAGE value="30/09/2023 - 14h" />
|
||||
<MESSAGE value="30/09/2023 - 18h" />
|
||||
|
@ -458,6 +461,7 @@
|
|||
<MESSAGE value="23/10/2023 - 16h" />
|
||||
<MESSAGE value="30/10/23 - 16h" />
|
||||
<MESSAGE value="08/11/2023 - 23h" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="08/11/2023 - 23h" />
|
||||
<MESSAGE value="09/11/2023 - 23h" />
|
||||
<option name="LAST_COMMIT_MESSAGE" value="09/11/2023 - 23h" />
|
||||
</component>
|
||||
</project>
|
|
@ -253,6 +253,8 @@ if (MYSY_ENV == "DEV"):
|
|||
O365_SMTP_COUNT_port = 587
|
||||
|
||||
|
||||
|
||||
|
||||
"""
|
||||
Repertoire temporaire de telechargement ou de creation de fichier
|
||||
"""
|
||||
|
@ -511,7 +513,7 @@ PARTNER_QUOTATION_STATUS = ['-1', '0', '1', '2']
|
|||
"""
|
||||
Pour mettre en place un système de configuration global, on va definir les valeur acceptée
|
||||
"""
|
||||
PARTNER_BASE_CONFIG_NAME = ['tva', 'smtp_server', 'smtp_user', 'smtp_user_pwd', 'smtp_count_from_name' ]
|
||||
PARTNER_BASE_CONFIG_NAME = ['tva', 'smtp_server', 'smtp_user', 'smtp_user_pwd', 'smtp_count_from_name', 'smtp_count_port', 'partner_smtp' ]
|
||||
|
||||
|
||||
"""
|
||||
|
|
1853
Log/log_file.log
1853
Log/log_file.log
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -88,6 +88,7 @@ def Add_Update_Partner_Basic_Setup(diction):
|
|||
if (local_status is not True):
|
||||
return local_status, my_partner
|
||||
|
||||
|
||||
if(str(diction['config_name']) not in MYSY_GV.PARTNER_BASE_CONFIG_NAME):
|
||||
mycommon.myprint(
|
||||
str(inspect.stack()[0][3]) + " - La configuration '" + str(diction['config_name']) + "' n'est pas acceptée ")
|
||||
|
@ -248,6 +249,9 @@ def Get_List_Partner_Basic_Setup(diction):
|
|||
RetObject = []
|
||||
val_tmp = 1
|
||||
for New_retVal in MYSY_GV.dbname['base_partner_setup'].find({'partner_owner_recid':str(my_partner['recid']), 'valide':'1', 'locked':'0'}):
|
||||
if( str(New_retVal['config_name']) == "smtp_user_pwd"):
|
||||
New_retVal['config_value'] = New_retVal['config_value'][:2]+"...."+str(New_retVal['config_value'])[-2:]
|
||||
|
||||
user = New_retVal
|
||||
user['id'] = str(val_tmp)
|
||||
val_tmp = val_tmp + 1
|
||||
|
|
|
@ -1801,30 +1801,105 @@ def Send_Partner_Invoice_By_Email(diction):
|
|||
print("debut envoi mail de test ")
|
||||
msg = EmailMessage()
|
||||
msg.set_content(sourceHtml, subtype='html')
|
||||
smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port)
|
||||
|
||||
|
||||
"""
|
||||
Recuperation des parametre SMTP du partner si le client a decidé d'utiliser son propre smpt
|
||||
"""
|
||||
partner_own_smtp_value = "0"
|
||||
partner_own_smtp = MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'partner_smtp',
|
||||
'valide': '1',
|
||||
'locked': '0'})
|
||||
|
||||
if( partner_own_smtp and "config_value" in partner_own_smtp.keys()):
|
||||
partner_own_smtp_value = partner_own_smtp['config_value']
|
||||
|
||||
if( str(partner_own_smtp_value) == "1"):
|
||||
partner_SMTP_COUNT_password = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_user_pwd',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value':1} )['config_value'])
|
||||
|
||||
|
||||
|
||||
partner_SMTP_COUNT_smtpsrv = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_server',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value':1})['config_value'])
|
||||
|
||||
partner_SMTP_COUNT_user = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_user',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value':1})['config_value'])
|
||||
|
||||
partner_SMTP_COUNT_From_User = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_count_from_name',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value':1})['config_value'])
|
||||
|
||||
partner_SMTP_COUNT_port = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_count_port',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value':1})['config_value'])
|
||||
|
||||
|
||||
if (str(partner_own_smtp_value) == "1"):
|
||||
smtpserver = smtplib.SMTP(partner_SMTP_COUNT_smtpsrv, partner_SMTP_COUNT_port)
|
||||
else:
|
||||
smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port)
|
||||
|
||||
"""
|
||||
La commande est envoyée à l'adresse email qui se trouve sur la commande, le champ : 'order_header_email_client'.
|
||||
|
||||
Si ce champ est vide alors on regarde si il y a un email sur la fiche client.
|
||||
"""
|
||||
client_main_mail_tmp = ""
|
||||
client_invoice_email_tmp = ""
|
||||
if( 'email' in Order_header_client_data.keys()):
|
||||
client_main_mail_tmp = Order_header_client_data['email']
|
||||
|
||||
if ('invoice_email' in Order_header_client_data.keys()):
|
||||
client_invoice_email_tmp = Order_header_client_data['invoice_email']
|
||||
if ("order_header_email_client" in Order_header_data.keys() and Order_header_data['order_header_email_client']):
|
||||
client_main_mail_tmp = str(Order_header_data['order_header_email_client'])
|
||||
|
||||
if (mycommon.isEmailValide(client_main_mail_tmp) is True):
|
||||
msg['To'] = client_main_mail_tmp
|
||||
if (mycommon.isEmailValide(client_main_mail_tmp) is True):
|
||||
msg['To'] = client_main_mail_tmp
|
||||
|
||||
if (mycommon.isEmailValide(client_invoice_email_tmp) is True):
|
||||
msg['Cc'] = client_invoice_email_tmp
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - L'adresse email sur la commande n'est pas valide ")
|
||||
return False, " L'adresse email sur la commande n'est pas valide "
|
||||
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - Aucune adresse email sur la commande ")
|
||||
return False, " Aucune adresse email sur la commande "
|
||||
|
||||
|
||||
msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(MYSY_GV.O365_SMTP_COUNT_user, MYSY_GV.O365_SMTP_COUNT_password)
|
||||
|
||||
if (str(partner_own_smtp_value) == "1"):
|
||||
msg['From'] = partner_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(partner_SMTP_COUNT_user, partner_SMTP_COUNT_password)
|
||||
|
||||
else:
|
||||
msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(MYSY_GV.O365_SMTP_COUNT_user, MYSY_GV.O365_SMTP_COUNT_password)
|
||||
|
||||
|
||||
val = smtpserver.send_message(msg)
|
||||
smtpserver.close()
|
||||
print(" Email envoyé " + str(val))
|
||||
|
|
143
partner_order.py
143
partner_order.py
|
@ -4614,38 +4614,135 @@ def Send_Partner_Order_By_Email(diction):
|
|||
|
||||
#print(" #### sourceHtml = ", sourceHtml)
|
||||
|
||||
"""
|
||||
Recuperation des parametre SMTP du partner si le client a decidé d'utiliser son propre smpt
|
||||
"""
|
||||
partner_own_smtp_value = "0"
|
||||
partner_own_smtp = MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid':str(my_partner['recid']),
|
||||
'config_name': 'partner_smtp',
|
||||
'valide': '1',
|
||||
'locked': '0'})
|
||||
|
||||
print("debut envoi mail de test ")
|
||||
msg = EmailMessage()
|
||||
msg.set_content(sourceHtml, subtype='html')
|
||||
smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port)
|
||||
if (partner_own_smtp and "config_value" in partner_own_smtp.keys()):
|
||||
partner_own_smtp_value = partner_own_smtp['config_value']
|
||||
|
||||
client_main_mail_tmp = ""
|
||||
client_invoice_email_tmp = ""
|
||||
if ('email' in Order_header_client_data.keys()):
|
||||
client_main_mail_tmp = Order_header_client_data['email']
|
||||
if (str(partner_own_smtp_value) == "1"):
|
||||
partner_SMTP_COUNT_password = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_user_pwd',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value': 1})['config_value'])
|
||||
|
||||
if ('invoice_email' in Order_header_client_data.keys()):
|
||||
client_invoice_email_tmp = Order_header_client_data['invoice_email']
|
||||
partner_SMTP_COUNT_smtpsrv = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_server',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value': 1})['config_value'])
|
||||
|
||||
if (mycommon.isEmailValide(client_main_mail_tmp) is True):
|
||||
msg['To'] = client_main_mail_tmp
|
||||
partner_SMTP_COUNT_user = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_user',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value': 1})['config_value'])
|
||||
|
||||
if (mycommon.isEmailValide(client_invoice_email_tmp) is True):
|
||||
msg['Cc'] = client_invoice_email_tmp
|
||||
partner_SMTP_COUNT_From_User = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_count_from_name',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value': 1})['config_value'])
|
||||
|
||||
partner_SMTP_COUNT_port = str(MYSY_GV.dbname['base_partner_setup'].find_one(
|
||||
{'partner_owner_recid': str(my_partner['recid']),
|
||||
'config_name': 'smtp_count_port',
|
||||
'valide': '1',
|
||||
'locked': '0'}, {'config_value': 1})['config_value'])
|
||||
|
||||
if (str(partner_own_smtp_value) == "1"):
|
||||
print("debut envoi mail de test ")
|
||||
msg = EmailMessage()
|
||||
msg.set_content(sourceHtml, subtype='html')
|
||||
smtpserver = smtplib.SMTP(partner_SMTP_COUNT_smtpsrv, partner_SMTP_COUNT_port)
|
||||
|
||||
"""
|
||||
La commande est envoyée à l'adresse email qui se trouve sur la commande, le champ : 'order_header_email_client'.
|
||||
|
||||
Si ce champ est vide alors on regarde si il y a un email sur la fiche client.
|
||||
"""
|
||||
client_main_mail_tmp = ""
|
||||
|
||||
if ("order_header_email_client" in Order_header_data.keys() and Order_header_data[
|
||||
'order_header_email_client']):
|
||||
client_main_mail_tmp = str(Order_header_data['order_header_email_client'])
|
||||
|
||||
if (mycommon.isEmailValide(client_main_mail_tmp) is True):
|
||||
msg['To'] = client_main_mail_tmp
|
||||
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - L'adresse email sur la commande n'est pas valide ")
|
||||
return False, " L'adresse email sur la commande n'est pas valide "
|
||||
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - Aucune adresse email sur la commande ")
|
||||
return False, " Aucune adresse email sur la commande "
|
||||
|
||||
msg['From'] = partner_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(partner_SMTP_COUNT_user, partner_SMTP_COUNT_password)
|
||||
val = smtpserver.send_message(msg)
|
||||
smtpserver.close()
|
||||
print(" Email envoyé " + str(val))
|
||||
|
||||
else:
|
||||
|
||||
print("debut envoi mail de test ")
|
||||
msg = EmailMessage()
|
||||
msg.set_content(sourceHtml, subtype='html')
|
||||
smtpserver = smtplib.SMTP(MYSY_GV.O365_SMTP_COUNT_smtpsrv, MYSY_GV.O365_SMTP_COUNT_port)
|
||||
|
||||
"""
|
||||
La commande est envoyée à l'adresse email qui se trouve sur la commande, le champ : 'order_header_email_client'.
|
||||
|
||||
Si ce champ est vide alors on regarde si il y a un email sur la fiche client.
|
||||
"""
|
||||
client_main_mail_tmp = ""
|
||||
|
||||
|
||||
msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
if( "order_header_email_client" in Order_header_data.keys() and Order_header_data['order_header_email_client']):
|
||||
client_main_mail_tmp = str(Order_header_data['order_header_email_client'])
|
||||
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(MYSY_GV.O365_SMTP_COUNT_user, MYSY_GV.O365_SMTP_COUNT_password)
|
||||
val = smtpserver.send_message(msg)
|
||||
smtpserver.close()
|
||||
print(" Email envoyé " + str(val))
|
||||
if (mycommon.isEmailValide(client_main_mail_tmp) is True):
|
||||
msg['To'] = client_main_mail_tmp
|
||||
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - L'adresse email sur la commande n'est pas valide ")
|
||||
return False, " L'adresse email sur la commande n'est pas valide "
|
||||
|
||||
else:
|
||||
mycommon.myprint(str(inspect.stack()[0][
|
||||
3]) + " - Aucune adresse email sur la commande ")
|
||||
return False, " Aucune adresse email sur la commande "
|
||||
|
||||
|
||||
msg['From'] = MYSY_GV.O365_SMTP_COUNT_From_User
|
||||
msg['Bcc'] = 'contact@mysy-training.com'
|
||||
msg['Subject'] = sujetHtml
|
||||
|
||||
|
||||
smtpserver.ehlo()
|
||||
smtpserver.starttls()
|
||||
smtpserver.login(MYSY_GV.O365_SMTP_COUNT_user, MYSY_GV.O365_SMTP_COUNT_password)
|
||||
val = smtpserver.send_message(msg)
|
||||
smtpserver.close()
|
||||
print(" Email envoyé " + str(val))
|
||||
|
||||
|
||||
return True, " La commande a été envoyée par email à :'"+str(client_main_mail_tmp)+"' "
|
||||
|
|
|
@ -3393,6 +3393,8 @@ def strip_dictionary(orig_diction):
|
|||
else :
|
||||
orig_diction[key] = orig_diction[key].strip()
|
||||
|
||||
|
||||
|
||||
return orig_diction
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue