fix: poids et temps sont ceux du plateau entier, divisés par pièces/plateau
Deploy via Portainer / deploy (push) Successful in 0s
Deploy via Portainer / deploy (push) Successful in 0s
This commit is contained in:
@@ -244,17 +244,20 @@ def calc(weight_g, print_time_s, design_mult, gross_margin_pct, discount_pct,
|
|||||||
if pieces_per_plate < 1:
|
if pieces_per_plate < 1:
|
||||||
pieces_per_plate = 1
|
pieces_per_plate = 1
|
||||||
|
|
||||||
|
# weight_g et print_time_s = valeurs PLATEAU complet (Bambu Studio)
|
||||||
|
# Tous les coûts sont ramenés à la pièce en divisant par pieces_per_plate
|
||||||
price_kg = price_per_kg_override if price_per_kg_override is not None else s['filament_price_per_kg']
|
price_kg = price_per_kg_override if price_per_kg_override is not None else s['filament_price_per_kg']
|
||||||
mat = (price_kg / 1000) * weight_g
|
weight_per_piece = weight_g / pieces_per_plate
|
||||||
|
mat = (price_kg / 1000) * weight_per_piece
|
||||||
mat_margin = mat * (s['material_margin_pct'] / 100)
|
mat_margin = mat * (s['material_margin_pct'] / 100)
|
||||||
design = mat * design_mult
|
design = mat * design_mult
|
||||||
# Manutention divisée par le nombre de pièces sur le plateau
|
# Manutention, usure et élec divisées par pièces/plateau
|
||||||
handling = (s['handling_rate_per_hour'] / 60) * s['handling_minutes_per_plate'] / pieces_per_plate
|
handling = (s['handling_rate_per_hour'] / 60) * s['handling_minutes_per_plate'] / pieces_per_plate
|
||||||
printer_w = (s['printer_price'] / (s['printer_lifespan_hours'] * 3600)) * print_time_s
|
printer_w = (s['printer_price'] / (s['printer_lifespan_hours'] * 3600)) * print_time_s / pieces_per_plate
|
||||||
nozzle_w = (s['nozzle_price'] / (s['nozzle_lifespan_hours'] * 3600)) * print_time_s
|
nozzle_w = (s['nozzle_price'] / (s['nozzle_lifespan_hours'] * 3600)) * print_time_s / pieces_per_plate
|
||||||
plate_w = (s['plate_price'] / (s['plate_lifespan_hours'] * 3600)) * print_time_s
|
plate_w = (s['plate_price'] / (s['plate_lifespan_hours'] * 3600)) * print_time_s / pieces_per_plate
|
||||||
wear = printer_w + nozzle_w + plate_w
|
wear = printer_w + nozzle_w + plate_w
|
||||||
elec = s['printer_power_kw'] * (print_time_s / 3600) * s['electricity_price_kwh']
|
elec = s['printer_power_kw'] * (print_time_s / 3600) * s['electricity_price_kwh'] / pieces_per_plate
|
||||||
|
|
||||||
cout_fixe = mat + mat_margin + wear + elec
|
cout_fixe = mat + mat_margin + wear + elec
|
||||||
sous_total = cout_fixe + handling + design
|
sous_total = cout_fixe + handling + design
|
||||||
|
|||||||
Reference in New Issue
Block a user