Improve the inventory page
This commit is contained in:
@@ -418,4 +418,28 @@ class IngredientRepository(BaseRepository[Ingredient, IngredientCreate, Ingredie
|
||||
|
||||
except Exception as e:
|
||||
logger.error("Failed to get ingredients by category", error=str(e), category=category, tenant_id=tenant_id)
|
||||
raise
|
||||
|
||||
async def delete_by_id(self, ingredient_id: UUID, tenant_id: UUID) -> bool:
|
||||
"""Hard delete an ingredient by ID"""
|
||||
try:
|
||||
from sqlalchemy import delete
|
||||
|
||||
# Delete the ingredient
|
||||
stmt = delete(self.model).where(
|
||||
and_(
|
||||
self.model.id == ingredient_id,
|
||||
self.model.tenant_id == tenant_id
|
||||
)
|
||||
)
|
||||
|
||||
result = await self.session.execute(stmt)
|
||||
await self.session.commit()
|
||||
|
||||
# Return True if a row was deleted
|
||||
return result.rowcount > 0
|
||||
|
||||
except Exception as e:
|
||||
await self.session.rollback()
|
||||
logger.error("Failed to hard delete ingredient", error=str(e), ingredient_id=ingredient_id, tenant_id=tenant_id)
|
||||
raise
|
||||
Reference in New Issue
Block a user