Improve AI logic
This commit is contained in:
@@ -31,7 +31,17 @@ class IngredientRepository(BaseRepository[Ingredient, IngredientCreate, Ingredie
|
||||
create_data['tenant_id'] = tenant_id
|
||||
|
||||
# Handle product_type enum conversion
|
||||
product_type_value = create_data.get('product_type', 'ingredient')
|
||||
product_type_value = create_data.get('product_type')
|
||||
|
||||
# Log warning if product_type is missing (should be provided by frontend)
|
||||
if not product_type_value:
|
||||
logger.warning(
|
||||
"product_type not provided, defaulting to 'ingredient'",
|
||||
ingredient_name=create_data.get('name'),
|
||||
tenant_id=tenant_id
|
||||
)
|
||||
product_type_value = 'ingredient'
|
||||
|
||||
if 'product_type' in create_data:
|
||||
from app.models.inventory import ProductType
|
||||
try:
|
||||
@@ -43,10 +53,20 @@ class IngredientRepository(BaseRepository[Ingredient, IngredientCreate, Ingredie
|
||||
break
|
||||
else:
|
||||
# If not found, default to INGREDIENT
|
||||
logger.warning(
|
||||
"Invalid product_type value, defaulting to INGREDIENT",
|
||||
invalid_value=product_type_value,
|
||||
tenant_id=tenant_id
|
||||
)
|
||||
create_data['product_type'] = ProductType.INGREDIENT
|
||||
# If it's already an enum, keep it
|
||||
except Exception:
|
||||
except Exception as e:
|
||||
# Fallback to INGREDIENT if any issues
|
||||
logger.error(
|
||||
"Error converting product_type to enum, defaulting to INGREDIENT",
|
||||
error=str(e),
|
||||
tenant_id=tenant_id
|
||||
)
|
||||
create_data['product_type'] = ProductType.INGREDIENT
|
||||
|
||||
# Handle category mapping based on product type
|
||||
|
||||
Reference in New Issue
Block a user