o
    LNhy                     @   s<   d dl Z d dlZd dlZdd Zdd Zd	defddZdS )
    Nc                 C   s   | dr	| d S | S )NScala   )
startswith)valueunit r   $/var/www/html/ai_worker/benchmark.pyscale   s   r	   c                 C   s   t  c}| }|d| f | }|s	 W d    dS z$t|d }|dd}|dkr:W W d    dS |W W  d    S  tyf } zt	d|  d|  W Y d }~W d    dS d }~ww 1 sjw   Y  d S )Nz+SELECT dati FROM survey_users WHERE id = %sunknownr   srv_settore_appartenenzaAltrou-   ⚠️ Errore nel parsing JSON per answer_id=z: )
dbconncursorexecutefetchonejsonloadsget	Exceptionprint)	answer_id
connectionr   rowdatarawer   r   r   get_sector_from_answer   s,   

r   sectorc              
      s   t |   s	g S |d u rt| }dd  D }t  }| }|d|f  fdd|D }W d    n1 s;w   Y  g } D ]}|\}}	}
}}|||	|
t|||d qD|S )Nc                 S   s(   i | ]}|d  t t|d |d qS )r         r	   float).0rr   r   r   
<dictcomp>"      ( zcompute.<locals>.<dictcomp>z
            SELECT factor_id, AVG(best_value)
                     FROM case_study_kpi
            WHERE sector = %s OR sector = 'multi'
            GROUP BY factor_id
        c                    s(   i | ]\}}|t t| d  d qS )r   r    r!   )r#   fidavgrowsr   r   r%   -   r&   )	factor_idlabelr   company	benchmark)	r   fetch_case_valuesr   r   r   r   appendr"   r   )r   r   userr   r   benchtabler$   r'   r,   r   _r   r   r)   r   compute   s0   


r5   )N)r   numpynpr   r	   r   strr5   r   r   r   r   <module>   s
    