Skip to content
Snippets Groups Projects

Met en cohérence le calcul par dotation pour /commune et /calculate

6 files
+ 17
8
Compare changes
  • Side-by-side
  • Inline

Files

import logging
from leximpact_dotations_back.computing.dotations_simulation import DotationsSimulation
from leximpact_dotations_back.main_types import UiDisplayedImpacts
from leximpact_dotations_back.main_types import ApiCommuneRequest, UiDisplayedImpacts
from leximpact_dotations_back.mapping.criteres_dgcl_2024 import montants_dotations_2024
from leximpact_dotations_back.computing.calculate_impact_commune import format_commune_impact
@@ -13,13 +13,14 @@ from leximpact_dotations_back.computing.calculate_impact_total import format_tot
logger = logging.getLogger()
def calculate_impact_base(dotation_simulation: DotationsSimulation, request_base, year_period) -> UiDisplayedImpacts:
def calculate_impact_base(dotation_simulation: DotationsSimulation, request_base: UiDisplayedImpacts, year_period) -> UiDisplayedImpacts:
# construit la réponse en enrichissant le contenu de la requete
base_response = request_base # conserve request_base.dotations
# cas types
for commune_index, commune_request in enumerate(request_base.casTypes):
for commune_index, commune in enumerate(request_base.casTypes):
commune_request: ApiCommuneRequest = commune
commune_impact = format_commune_impact(commune_request, dotation_simulation)
base_response.casTypes[commune_index] = commune_impact
Loading