
    wh                         d dl mZmZmZ d dlmZ ddlmZ ddlm	Z	m
Z
 d dlmZ  eddg	      Zej                  d
e
       ee      fde	defd       Zej                  de
       ee      fdedefd       Zy)    )	APIRouterDependsHTTPException)Session   )Module10Service)Module10RequestModule10Response)get_dbz	/module10z!Module 10 - Metrics & Performance)prefixtagsz
/calculate)response_modelrequestdbc                    K   	 t        |      }|j                  |        d{   }|S 7 # t        $ r}t        dt	        |            d}~ww xY ww)z9Calculate Module 10 metrics with yearly increase analysisN  status_codedetail)r   calculate_metrics	Exceptionr   str)r   r   serviceresultes        >/var/www/html/retail-simulation-api/app/api/module10/router.pycalculate_module10_metricsr   	   sR     <!"%0099 : <CF;;<0   A, *, A, 	AAAAz"/calculate-from-db/{simulation_id}simulation_idc                    K   	 t        |      }|j                  |        d{   }|S 7 # t        $ r}t        dt	        |            d}~ww xY ww)z1Calculate Module 10 metrics using database inputsNr   r   )r   calculate_from_simulationr   r   r   )r   r   r   r   r   s        r   calculate_from_databaser"      sS     <!"%88GG H <CF;;<r   N)fastapir   r   r   sqlalchemy.ormr   r   r   schemar	   r
   app.database.main.mysqlr   routerpostr   intr"        r   <module>r,      s    5 5 " $ 5 *	+-P,Q	R\*:; &/
<
<
< <
< 1BRS &/
<
<
< T
<r+   