o
    IhS                     @   s   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
 d dl mZ d dlmZ ded	ed
edefddZd
edefddZdS )    )Chat)get_db)Session)ChatRequest)DependsHTTPException)User)defaultdictuser_message
bot_replaycurrent_userdbc                 C   s8   t |j| |d}|| |  || d|jdS )N)user_idr
   	bot_replyZsuccess)statusZchat_id)r   idaddcommitrefresh)r
   r   r   r   Znew_chat r   =/var/www/html/vive_backend/app/controllers/chat_controller.py	save_chat	   s   

r   c           
   
   C   s   zV| ttj| jktj  }t	t
}|D ]"}|jd}|jr0|| d|ji |jr=|| d|ji qg }| D ]\}}|||d qDd|dW S  tyn }	 ztddd	t|	d
dd }	~	ww )Nz%d %b %Yr
   r   )Zcreated_datemessagesT)r   datai  FzSomething went wrong.)r   messageerrors)status_codedetail)queryr   filterr   r   order_by
created_atascallr	   liststrftimer
   appendr   items	Exceptionr   str)
r   r   Z	chat_dataZgrouped_chatsrowZdate_keyr   dater   er   r   r   getUserChat   s6   (

r-   N)
app.modelsr   app.databaser   sqlalchemy.ormr   Zapp.schemasr   fastapir   r   r   collectionsr	   r)   r   r-   r   r   r   r   <module>   s    