
    i                        d Z ddlmZ ddlmZmZmZmZmZ ddl	m
Z
 ddlmZ ddlmZ ddlmZ ddlmZmZ  ed	d
g      Zej+                  de       ed       ed       ee       ee      fdededede
dedefd       Zej+                  de       ed       ed       ee       ee      fdededede
dedefd       Zy)z&Router for Dashboard summary endpoint.    )date)	APIRouterDependsHTTPExceptionQuerystatus)AsyncSession)get_db)get_current_user)User)analytics_servicedashboard_servicez/spbus/{spbu_id}/dashboard	dashboard)prefixtagsz/summary)response_model.spbu_idtanggal_mulaitanggal_akhirdbcurrent_userreturnc                   K   ||kD  rt        t        j                  d      	 t        j                  || ||       d{   }d|j                         iS 7 # t
        $ r)}t        t        j                  t        |            d}~ww xY ww)z2Get aggregated dashboard summary for a date range.:tanggal_mulai harus sebelum atau sama dengan tanggal_akhirstatus_codedetailNdata)r   r   HTTP_400_BAD_REQUESTr   get_summary
ValueErrorstr
model_dump)r   r   r   r   r   summaryes          7/var/www/html/spbu.com/backend/app/routers/dashboard.pyr    r       s      }$33O
 	
T)55
 

 G&&())
  T(C(CCPQFSSTs9   !BA A A BA 	B
!$BB

Bz/trendc                    K   ||kD  rt        t        j                  d      t        j                  || ||       d{   }d|iS 7 w)z*Get daily trend data for dashboard charts.r   r   Nr   )r   r   r   r   get_daily_trend)r   r   r   r   r   r   s         r&   	get_trendr)   *   sT      }$33O
 	
 #222w}]]DD> ^s   <A	A	A	N)__doc__datetimer   fastapir   r   r   r   r   sqlalchemy.ext.asyncior	   app.core.databaser
   app.dependenciesr   app.models.userr   app.servicesr   r   routergetdictintr    r)        r&   <module>r8      s$   ,  D D / $ -   =	'

 Jt,  **v !12*** * 		*
 * 
* -*, HT*  **v !12  		
  
 +r7   