
    Ui                     F    d dl Zd dlmZmZ d Zd ZdedefdZdefdZ	dS )	    N)A_DB_CONFIGloggerc                 \   d }	 t          j        j        di t          }|                                }d}|                    || ||f           |                                 n# t          $ r}|d }~ww xY w	 |r|                                 d S d S # |r|                                 w w xY w)NFINSERT INTO mbti_log (session_id, sender, message) VALUES (%s, %s, %s) )	mysql	connectorconnectr   cursorexecutecommit	Exceptionclose)
session_idsendermessageconnr   sqles          /app/app/models/mbti_module.pyinsert_chat_logr      s    D&5555VsZ9:::    	  	JJLLLLL	 	4 	JJLLLL	s*   AA# "B #
A4-A//A44B B+c                    d }	 t          j        j        di t          }|                                 |                                }d}|                    || d|f           d}|                    || |||f           |                                 t          | |           n*# t          $ r}	|r|
                                 |	d }	~	ww xY w	 |r|                                 d S d S # |r|                                 w w xY w)Nr   systema%  
            INSERT INTO mbti_Output (session_id, result, scores, description) 
            VALUES (%s, %s, %s, %s)
            ON DUPLICATE KEY UPDATE 
                result = VALUES(result),
                scores = VALUES(scores),
                description = VALUES(description)
        r   )r   r	   r
   r   start_transactionr   r   r   sync_to_user_profile_summaryr   rollbackr   )
r   
system_msg	mbti_typescores_jsondescriptionr   r   sql_chat
sql_resultr   s
             r   save_mbti_result_transactionr#      s0   D &5555    \x*h
!CDDD
 	zJ	;#TUUU 	%Z;;;;    	MMOOO 	<  	JJLLLLL	 	4 	JJLLLL	s*   BB# "C( #
C
-CC

C( (Dr   r   c                 
   d}	 t          j        j        di t          }|                                }d}|                    || |f           |                                 t          j        d|             n.# t          $ r!}t          j
        d|            Y d}~nd}~ww xY w|r*|                                 |                                 dS dS # |r)|                                 |                                 w w xY w)u>   MBTI 완료 시 user_profile_summary 테이블에도 동기화Nz
            INSERT INTO user_profile_summary
            (session_id, mbti)
            VALUES (%s, %s)
            ON DUPLICATE KEY UPDATE
                mbti = VALUES(mbti),
                updated_at = NOW()
        z1MBTI synced to user_profile_summary for session: zMBTI Summary Sync Error: r   )r   r	   r
   r   r   r   r   r   infor   errorr   )r   r   r   r   r   r   s         r   r   r   :   s   D&5555 	sZ3444T
TTUUUU   444555
  	LLNNNJJLLLLL	 	4 	LLNNNJJLLLL	s0   A4A9 8C 9
B$BC B$$C -Dc                 4   d}	 t          j        j        di t          }|                    d          }d}|                    || f           |                                }||r)|                                 |                                 S S # t          $ rN}t          j
        d|            Y d}~|r*|                                 |                                 dS dS d}~ww xY w# |r)|                                 |                                 w w xY w)u   MBTI 최종 결과 조회NT)
dictionaryz/SELECT * FROM mbti_Output WHERE session_id = %szMBTI Output Get Error: r   )r   r	   r
   r   r   r   fetchoner   r   r   r&   )r   r   r   r   resultr   s         r   
get_outputr+   W   s1   D&5555--?sZM***""
  	LLNNNJJLLLL		    2q22333ttt 	LLNNNJJLLLLL	 		  	LLNNNJJLLLL	s*   AB 
C'C"0C* "C''C* *-D)
mysql.connectorr   app.core.configr   r   r   r#   strr   r+   r       r   <module>r0      s        / / / / / / / /   " " "HS S    :3      r/   