v1.3 - client and admin scaffolding
This commit is contained in:
@@ -8,13 +8,14 @@ from app.services.costing_engine import calculate_product_cost
|
||||
|
||||
def run_scenario(db: Session, scenario: Scenario) -> list[dict]:
|
||||
db.execute(delete(CostingResult).where(CostingResult.scenario_id == scenario.id))
|
||||
products = db.scalars(select(Product).order_by(Product.name)).all()
|
||||
products = db.scalars(select(Product).where(Product.tenant_id == scenario.tenant_id).order_by(Product.name)).all()
|
||||
results: list[dict] = []
|
||||
|
||||
for product in products:
|
||||
breakdown = calculate_product_cost(db, product.id, overrides=scenario.overrides or {})
|
||||
db.add(
|
||||
CostingResult(
|
||||
tenant_id=scenario.tenant_id,
|
||||
scenario_id=scenario.id,
|
||||
product_id=product.id,
|
||||
finished_product_delivered=breakdown["finished_product_delivered"],
|
||||
@@ -29,4 +30,3 @@ def run_scenario(db: Session, scenario: Scenario) -> list[dict]:
|
||||
scenario.status = "reviewed"
|
||||
db.commit()
|
||||
return results
|
||||
|
||||
|
||||
Reference in New Issue
Block a user