
    j                    B    d dl mZ d dlmZmZmZmZmZmZ ddZ	dd	Z
d
S )    )annotations)FACE_SQL_DBFACE_SQL_ENABLEDFACE_SQL_HOSTFACE_SQL_PASSWORDFACE_SQL_PORTFACE_SQL_USERreturnNonec                 z    t           st          d          t          rt          rt          st          d          d S )Nz-face SQL sync is disabled by FACE_SQL_ENABLEDz+face SQL connection is not fully configured)r   RuntimeErrorr   r   r	        F/home/longshao/multi-rider-rag/modules/dispatch/repository/face_sql.py_ensure_face_sql_readyr      sN     LJKKK Jk Jm JHIIIJ Jr   	id_numberstrdictc                Z   t          | pd                                          }|si S t                       	 dd l}dd l}n%# t
          $ r}t          d|           |d }~ww xY wd}|                    t          t          t          t          t                    5 }|                    |j        j                  5 }|                    |d|i           |                                d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   si S g d}fd	|D             S )
N r   z"psycopg2-binary is not installed: a	  
        SELECT
            xm,
            lxdh,
            ds,
            dsmc,
            ssxq,
            ssxqmc,
            pcs,
            pcsmc,
            dz
        FROM ywdata.t_ap_czrk_jbxx
        WHERE gmsfhm = %(id_number)s
        LIMIT 1
    )hostportdbnameuserpassword)cursor_factoryr   )	xmlxdhdsdsmcssxqssxqmcpcspcsmcdzc                    i | ]N}|                     |          4t                               |                                                    ndOS )Nr   )getr   strip).0keyrows     r   
<dictcomp>z1fetch_dispatch_person_context.<locals>.<dictcomp>@   s]        	3773<<+Cc#''#,,%%'''  r   )r   r(   r   psycopg2psycopg2.extras	Exceptionr   connectr   r   r   r	   r   cursorextrasRealDictCursorexecutefetchone)	r   safe_id_numberr-   excsqlconncurkeysr+   s	           @r   fetch_dispatch_person_contextr<      s   b))//11N 	P P P PEEEFFCOPC  
		" 
 
 
 	! 
[[(F[GG 	!3KKk>:;;;,,..C	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	! 	!  	OOOD      sM   A 
A#AA#!D<-C5)D5C9	9D<C9	=DDDN)r
   r   )r   r   r
   r   )
__future__r   shared.config.configr   r   r   r   r   r	   r   r<   r   r   r   <module>r?      s    " " " " " "               J J J J/ / / / / /r   