diff --git a/config/machine_settings/st-ten-12.ini b/config/machine_settings/st-ten-12.ini index a586a07..6d0f3bf 100644 --- a/config/machine_settings/st-ten-12.ini +++ b/config/machine_settings/st-ten-12.ini @@ -41,6 +41,7 @@ recipe_name_field: codice_ricetta part_number_field: codice_ricetta label_template_field: modello_etichetta description_field: descrizione +codice_dima_field: [recipes_defaults] tester_discharge_enable: yes diff --git a/src/lib/helpers/recipe_manager.py b/src/lib/helpers/recipe_manager.py index b6f7591..927d65f 100644 --- a/src/lib/helpers/recipe_manager.py +++ b/src/lib/helpers/recipe_manager.py @@ -206,6 +206,7 @@ def import_recipes(config, csv_path=None, defaults=None, unsupported_steps=None, recipe_name_field = config.get("recipe", {}).get("recipe_name_field", "codice_ricetta").strip() part_number_field = config.get("recipe", {}).get("part_number_field", "part_number").strip() description_field = config.get("recipe", {}).get("description_field", "descrizione").strip() + codice_dima_field = config.get("recipe", {}).get("codice_dima_field", "codice_dima").strip() barcode_enable_field = config.get( "recipe", {} ).get("barcode_enable_field", "verifica_codice_a_barre_abilitata").strip() @@ -237,8 +238,8 @@ def import_recipes(config, csv_path=None, defaults=None, unsupported_steps=None, recipe.client = row.get("cliente", defaults["cliente"]) recipe.part_number = row.get(part_number_field, defaults["part_number"]) recipe.description = row.get(description_field, defaults["descrizione"]) - # New field: Codice Dima (supports both 'codice_dima' and 'codice dima' in CSV) - recipe.codice_dima = row.get("codice_dima", row.get("codice_dima", None)) + # New field: Codice Dima (supports mapping and common variants) + recipe.codice_dima = (row.get(codice_dima_field) or row.get("codice_dima") or row.get("codice dima") or None) # Recipe specifications steps = {} @@ -327,6 +328,7 @@ def export_recipes(config, csv_path=None, logger=None): os.makedirs(os.path.dirname(csv_path), exist_ok=True) recipe_name_field = config.get("recipe", {}).get("recipe_name_field", "codice_ricetta").strip() + codice_dima_field = config.get("recipe", {}).get("codice_dima_field", "codice_dima").strip() barcode_enable_field = config.get("recipe", {}).get("barcode_enable_field", "verifica_codice_a_barre_abilitata").strip() barcode_serial_field = config.get("recipe", {}).get("barcode_serial_field", "codice_a_barre").strip() @@ -345,11 +347,11 @@ def export_recipes(config, csv_path=None, logger=None): recipe_name_field: recipe.name, "cliente": recipe.client, "part_number": recipe.part_number, - "codice_dima": getattr(recipe, "codice_dima", None), + codice_dima_field: getattr(recipe, "codice_dima", None), } # Add base fields to the fieldnames - fieldnames.update([recipe_name_field, "cliente", "part_number"]) + fieldnames.update([recipe_name_field, "cliente", "part_number", codice_dima_field]) # Check and add steps conditionally if "connector" in steps: