Consommables : capacite defaut 320, 15x20 compte double (papier + ruban)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -334,8 +334,8 @@ def compteur_restant() -> dict:
|
|||||||
limite_event = compteur.get("limite", 0)
|
limite_event = compteur.get("limite", 0)
|
||||||
if compteur.get("actif") and limite_event > 0:
|
if compteur.get("actif") and limite_event > 0:
|
||||||
restantes = min(restantes, max(0, limite_event - prises))
|
restantes = min(restantes, max(0, limite_event - prises))
|
||||||
papier_cap = conso.get("papier_capacite", 400)
|
papier_cap = conso.get("papier_capacite", 320)
|
||||||
ruban_cap = conso.get("ruban_capacite", 400)
|
ruban_cap = conso.get("ruban_capacite", 320)
|
||||||
capacite_conso = int(min(papier_cap, ruban_cap))
|
capacite_conso = int(min(papier_cap, ruban_cap))
|
||||||
return {
|
return {
|
||||||
"actif": compteur.get("actif", False),
|
"actif": compteur.get("actif", False),
|
||||||
@@ -359,7 +359,13 @@ RATIO_RUBAN_OPTIMAL = {
|
|||||||
"10x15": 0.5,
|
"10x15": 0.5,
|
||||||
"10x15-2up": 1.0,
|
"10x15-2up": 1.0,
|
||||||
"15x20": 1.0,
|
"15x20": 1.0,
|
||||||
"15x20-2up": 1.0,
|
"15x20-2up": 2.0,
|
||||||
|
}
|
||||||
|
# Poids papier : combien d'unites 10x15 une feuille consomme
|
||||||
|
POIDS_PAPIER = {
|
||||||
|
"10x15": 1, "10x15-2up": 1,
|
||||||
|
"15x20": 2, "15x20-2up": 2,
|
||||||
|
"15x15": 2, "15x15-2up": 2,
|
||||||
}
|
}
|
||||||
|
|
||||||
def maj_consommables(config: dict, copies: int, format_papier: str | None):
|
def maj_consommables(config: dict, copies: int, format_papier: str | None):
|
||||||
@@ -370,19 +376,20 @@ def maj_consommables(config: dict, copies: int, format_papier: str | None):
|
|||||||
is_2up = "-2up" in fmt
|
is_2up = "-2up" in fmt
|
||||||
|
|
||||||
feuilles = copies if not is_2up else (copies + 1) // 2
|
feuilles = copies if not is_2up else (copies + 1) // 2
|
||||||
conso["papier_utilise"] = conso.get("papier_utilise", 0) + feuilles
|
poids = POIDS_PAPIER.get(fmt, 1)
|
||||||
|
conso["papier_utilise"] = conso.get("papier_utilise", 0) + feuilles * poids
|
||||||
conso["photos_imprimees"] = conso.get("photos_imprimees", 0) + copies
|
conso["photos_imprimees"] = conso.get("photos_imprimees", 0) + copies
|
||||||
|
|
||||||
ratio_optimal = RATIO_RUBAN_OPTIMAL.get(fmt, 1.0)
|
ratio_optimal = RATIO_RUBAN_OPTIMAL.get(fmt, 1.0)
|
||||||
|
ruban_par_feuille = float(poids)
|
||||||
if rembobinage:
|
if rembobinage:
|
||||||
ruban_consomme = feuilles * ratio_optimal
|
ruban_consomme = feuilles * ratio_optimal
|
||||||
else:
|
else:
|
||||||
ruban_consomme = feuilles * 1.0
|
ruban_consomme = feuilles * ruban_par_feuille
|
||||||
|
|
||||||
conso["ruban_utilise"] = round(conso.get("ruban_utilise", 0) + ruban_consomme, 1)
|
conso["ruban_utilise"] = round(conso.get("ruban_utilise", 0) + ruban_consomme, 1)
|
||||||
|
|
||||||
# Poses perdues = ruban avance inutilement (difference entre consomme et optimal)
|
poses_perdues = feuilles * ruban_par_feuille - feuilles * ratio_optimal if not rembobinage else 0
|
||||||
poses_perdues = feuilles * 1.0 - feuilles * ratio_optimal if not rembobinage else 0
|
|
||||||
conso["poses_perdues"] = round(conso.get("poses_perdues", 0) + poses_perdues, 1)
|
conso["poses_perdues"] = round(conso.get("poses_perdues", 0) + poses_perdues, 1)
|
||||||
|
|
||||||
mettre_a_jour_config({"consommables": conso})
|
mettre_a_jour_config({"consommables": conso})
|
||||||
@@ -392,8 +399,8 @@ def consommables_etat() -> dict:
|
|||||||
"""Retourne l'etat des consommables."""
|
"""Retourne l'etat des consommables."""
|
||||||
config = charger_config()
|
config = charger_config()
|
||||||
conso = config.get("consommables", {})
|
conso = config.get("consommables", {})
|
||||||
papier_cap = conso.get("papier_capacite", 400)
|
papier_cap = conso.get("papier_capacite", 320)
|
||||||
ruban_cap = conso.get("ruban_capacite", 400)
|
ruban_cap = conso.get("ruban_capacite", 320)
|
||||||
papier_used = conso.get("papier_utilise", 0)
|
papier_used = conso.get("papier_utilise", 0)
|
||||||
ruban_used = conso.get("ruban_utilise", 0)
|
ruban_used = conso.get("ruban_utilise", 0)
|
||||||
photos = conso.get("photos_imprimees", 0)
|
photos = conso.get("photos_imprimees", 0)
|
||||||
|
|||||||
Reference in New Issue
Block a user