Compare commits

..

4 Commits

Author SHA1 Message Date
Ambulance Clerc
d751edd248 update version 2024-11-01 20:31:56 +01:00
Ambulance Clerc
516ab4ac3f update suite à MAJ Attrib 2024-11-01 20:29:46 +01:00
Ambulance Clerc
32c8a5ca3f débug auto-update 2023-12-01 17:21:08 +01:00
Ambulance Clerc
f2422762d2 comment line 2023-12-01 17:20:39 +01:00
5 changed files with 35 additions and 28 deletions

View File

@@ -1,5 +1,6 @@
from version import * from version import *
import urllib.request import urllib.request
import urllib.error
import ssl import ssl
import io import io
@@ -22,15 +23,22 @@ class auto_updater:
ctx.verify_mode = ssl.CERT_NONE ctx.verify_mode = ssl.CERT_NONE
data = urllib.request.urlopen("https://gitea.prod.resk-u.ch/CLERC/AttribWinbiz/raw/branch/master/dl_version", context=ctx) data = urllib.request.urlopen("https://gitea.prod.resk-u.ch/CLERC/AttribWinbiz/raw/branch/master/dl_version", context=ctx)
self.dl_version = str(data.read()).replace('b', '').replace("'", "") self.dl_version = str(data.read()).replace('b', '').replace("'", "").replace("\n","").replace('n',"")
ssl._create_default_https_context = ssl._create_unverified_context ssl._create_default_https_context = ssl._create_unverified_context
if self.dl_version != VERSION: if self.dl_version != VERSION:
print(f"Version différente trouvée {self.dl_version} téléchargement en cours => {self.temp_dir}update.exe") print(f"Version différente trouvée {self.dl_version} téléchargement en cours => {self.temp_dir}clerc_update.exe")
try: try:
urllib.request.urlretrieve(url=f"https://gitea.prod.resk-u.ch/CLERC/AttribWinbiz/releases/download/{self.clean(self.dl_version)}/Clercattrib2Biz_setup.exe", filename=f"{self.temp_dir}update.exe") url = f"https://gitea.prod.resk-u.ch/CLERC/AttribWinbiz/releases/download/{self.clean(self.dl_version)}/Clercattrib2Biz_setup.exe"
except: urllib.request.urlretrieve(url=url, filename=f"{self.temp_dir}clerc_update.exe")
print("ERREUR de téléchargement mise à jours") except urllib.error.URLError as e:
print(f"ERREUR de téléchargement mise à jour : {e.reason} \n {url}")
return "ERROR"
except urllib.error.HTTPError as e:
print(f"ERREUR HTTP lors du téléchargement : {e.code} {e.reason} \n {url}")
return "ERROR"
except Exception as e:
print(f"Erreur inattendue : {e} \n {url}")
return "ERROR" return "ERROR"
ret = True ret = True
return ret return ret

View File

@@ -30,7 +30,7 @@ class cls_debitors:
default = [] default = []
if int(code) < 100: if int(code) < 100:
return default return default
for deb in self.items: for deb in self.items: # items contient lensemble des objects détiteur provenant dun export BDD
if deb.code == int(code): if deb.code == int(code):
return deb.names return deb.names
return default return default

View File

@@ -1 +1 @@
20231128-1639 20231201-1716

37
main.py
View File

@@ -269,7 +269,7 @@ class ClercAttrib2Biz():
if update_available == True: if update_available == True:
self.logger.warning(f"Nouvelle version du script disponible. {auto_update.dl_version}") self.logger.warning(f"Nouvelle version du script disponible. {auto_update.dl_version}")
if messagebox.askyesno(title="Nouvelle version trouvée", message=f"Une nouvelle version a été trouvée, vous pouvez l'installer dès maintenant !", ): if messagebox.askyesno(title="Nouvelle version trouvée", message=f"Une nouvelle version a été trouvée, vous pouvez l'installer dès maintenant !", ):
subprocess.call(temp_dir + "\\update.exe") subprocess.call(temp_dir + "\\clerc_update.exe")
self.fenetre.destroy() self.fenetre.destroy()
elif update_available == "ERROR": elif update_available == "ERROR":
messagebox.showerror(title="ERREUR téléchargement", message="Erreur lors du téléchargement de la nouvelle mise à jour") messagebox.showerror(title="ERREUR téléchargement", message="Erreur lors du téléchargement de la nouvelle mise à jour")
@@ -379,22 +379,21 @@ class ClercAttrib2Biz():
data.Debtor["name"] = data.Debtor["name"].strip() data.Debtor["name"] = data.Debtor["name"].strip()
def check_code_validity(self, code,data): def check_required_field_by_code(self, code, data):
ret = True required_fields = {
check_patients = ["firstname", "lastname", "street"] 1: ["firstname", "lastname", "street"], # facturation au patient code = 1
check_Debtor = ["firstname", "lastname", "street"] }
if code == 1:
for check in check_patients: if code in required_fields:
if data.Patient[check] is None: for field in required_fields[code]:
ret = False if data.Patient[field] is None or data.Debtor[field] is None:
for check in check_Debtor: messagebox.showerror(
if data.Debtor[check] is None: title="Erreur Critique",
ret = False message=f"Les informations de la facture [{data.data['id']}] comportent trop d'erreurs. Arrêt du processus.",
if not ret: )
messagebox.showerror(title="Erreur Critique", message=f"Les informations de la factures [{data.data['id']}] comportes trop d'erreur arrêt du processus ")
return False return False
return ret return True
def compare_old_and_new_adresses(self, new, old, code): def compare_old_and_new_adresses(self, new, old, code):
print(f"compare_old_and_new_adresses ") print(f"compare_old_and_new_adresses ")
@@ -469,7 +468,7 @@ class ClercAttrib2Biz():
return False return False
if int(data.Debtor["code"]) == 1: if int(data.Debtor["code"]) == 1:
if not self.check_code_validity(data.Debtor["code"],data): if not self.check_required_field_by_code(data.Debtor["code"], data):
messagebox.showerror(title="Erreur Critique", messagebox.showerror(title="Erreur Critique",
message=f"Les informations de la factures [{data.data['id']}] comportes trop d'erreur arrêt du processus ") message=f"Les informations de la factures [{data.data['id']}] comportes trop d'erreur arrêt du processus ")
return False return False
@@ -493,7 +492,7 @@ class ClercAttrib2Biz():
exit() exit()
''' '''
''' '''
if data.Debtor["type"] == "Établissement": if data.Debtor["type_name"] == "Établissement":
self.a_listings["to_check"].append(data.Patient["fip_number"]) self.a_listings["to_check"].append(data.Patient["fip_number"])
print(data.Patient["complement"]) print(data.Patient["complement"])
self.logger.warn(f"Débiteur établissement facture N°: {data.data['id']} / {data.Patient['fip_number']} {data.Debtor['name']}") self.logger.warn(f"Débiteur établissement facture N°: {data.data['id']} / {data.Patient['fip_number']} {data.Debtor['name']}")
@@ -654,7 +653,7 @@ class ClercAttrib2Biz():
if data.Patient["country_name"] != "Suisse": if data.Patient["country_name"] != "Suisse":
csv_col.data[29] = data.Patient["country_name"] csv_col.data[29] = data.Patient["country_name"]
csv_col.data[41] = "Monsieur" if data.Patient["gender"] == "Masculin" else "Madame" csv_col.data[41] = "Monsieur" if data.Patient["gender_name "] == "Masculin" else "Madame"
csv_col.data[44] = csv_col.data[41] csv_col.data[44] = csv_col.data[41]
#csv_col.data[46] = 0 # Maj adresse #csv_col.data[46] = 0 # Maj adresse
@@ -768,7 +767,7 @@ class ClercAttrib2Biz():
csv_col.data[107] = data.Patient["fip_number"] csv_col.data[107] = data.Patient["fip_number"]
csv_col.data[107] += " - " + data.data["comments"] if data.data["comments"] is not None else "" csv_col.data[107] += " - " + data.data["comments"] if data.data["comments"] is not None else ""
csv_col.data[116] = self.ifNotNull(data.Patient["category"]) + " - " + self.ifNotNull(data.Intervention["type"]) csv_col.data[116] = self.ifNotNull(data.Patient["category_name"]) + " - " + self.ifNotNull(data.Intervention["type"])
csv_col.data[118] = data.Intervention["kilometers"] csv_col.data[118] = data.Intervention["kilometers"]
csv_col.data[135] = data.Intervention["base_name"] csv_col.data[135] = data.Intervention["base_name"]
if data.Debtor["code"] == "100" or data.Debtor["code"] == "101" or data.Debtor["code"] == "158": if data.Debtor["code"] == "100" or data.Debtor["code"] == "101" or data.Debtor["code"] == "158":

View File

@@ -1,2 +1,2 @@
VERSION = "20231128-1639" VERSION = "20241101-2031"