o
    iT                     @   s   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	m
Z
mZmZ d dlmZ eddgdZd	d
 ZedeefdefddZejde
deefde	fddZejdedeefdefddZdS )    )	APIRouterHTTPExceptionDepends)	BaseModel)datetime)StartDayRequestCheckInRequestCheckInResponseMorningAssessmentRequestMorningAssessmentResponse)today_goal_modulez/goalskill-sales/apiz
Today Goal)prefixtagsc                  c   s*    t  } z
| V  W |   d S |   w )N)r   get_db_connectionclose)conn r   ?/home/air/goalskill_sales/back/app/routers/today_goal_router.pyget_db   s
   r   z
/start-dayrequestc              
   C   s  zm|j dd}t d}d}||| j|f | }d }|sLd}||| j|f |j}g d}d}	|D ]\}
}}||	||
||f q7|  n|d }d	}|||f | }|set	d
ddd||d dW S  t
y } z|  td|  t	d
t|dd }~ww )NT)
dictionaryz%Y-%m-%dz>SELECT id FROM daily_plans WHERE session_id = %s AND date = %su   
                INSERT INTO daily_plans (session_id, date, total_status) 
                VALUES (%s, %s, '進行中')
            ))u	   架電数2      件)u   繋がるための行動   r   )u   アポ   r   )u   訪問   r   )u   見積   r   )u   受注r   r   z
                INSERT INTO goals (plan_id, category, title, original_target_count, current_count, unit)
                VALUES (%s, '1', %s, %s, 0, %s)
            iduG   SELECT id FROM goals WHERE plan_id = %s AND title = '架電数' LIMIT 1  zGoal creation failedstatus_codedetailzStart successful)messageplan_idmain_goal_idzError in start_day: )cursorr   nowstrftimeexecute
session_idfetchone	lastrowidcommitr   	Exceptionrollbackprintstr)r   db_connr%   
today_date	check_sqlplanr#   insert_plan_sqldefault_goalsinsert_goal_sqltitletargetunitget_main_goal_sql	main_goaler   r   r   	start_day   s@   	
r>   z	/check-in)response_modelrequest_datac              
   C   ^   z	t || }|W S  ty } ztdt|dd }~w ty. } ztdddd }~ww )Ni  r   r   +   서버 내부 오류가 발생했습니다.)r   process_30min_checkin
ValueErrorr   r0   r-   r@   r1   resultver=   r   r   r   submit_checkinX      rH   z/morning-assessmentc              
   C   rA   )Ni  r   r   rB   )r   evaluate_morning_motivationrD   r   r0   r-   rE   r   r   r   assess_morningb   rI   rK   N)fastapir   r   r   pydanticr   r   app.schemas.today_goal_schemar   r   r	   r
   r   
app.modelsr   routerr   postr>   rH   rK   r   r   r   r   <module>   s     C	