
    |h	                         S SK Jr  S SKJr  S SKJr  S SKJr  S SKJr  S SK	r	\
" S5        \" 5       r\" 5       r\" 5       r " S S	\5      r " S
 S\5      r\R!                  S5      S\4S j5       rg)    )	APIRouter)API_BaseRequest)API_BaseResponse)EasySQL)EasyUserNzSEARCH USERS API ENDPOINTc                   \    \ rS rSr% Sr\\S'   Sr\\S'   Sr\	\S'   Sr
\	\S'   Sr\	\S'   S	rg
)API_Request    account_typejob_locationr   pagetotal_pagesresults_per_page N)__name__
__module____qualname____firstlineno__r   str__annotations__r   r   intr   r   __static_attributes__r       .C:\DailyRate\Backend\api\users\search_users.pyr	   r	      s4    L#L#D#MKcr   r	   c                   2    \ rS rSr% Sr\\S'   Sr\\S'   Sr	g)API_Response   r   countr   resultsr   N)
r   r   r   r   r   r   r   r    r   r   r   r   r   r   r      s    E3NGSr   r   z/users/search_usersrequestc                 t   [        5       nU R                  n[        R                  U5      nUS:X  a  SUl        SUl        SUl        U$ [        R                  5         [        R                  5         [        R                  S5      n/ nU H  n[        R                  " US   5      nUR                  S5      nUR                  S5      n	UR                  S5      n
S	nU R                  S
:w  a  XR                  :w  a  SnU R                  S
:w  a   U(       d  M  0 nUS   US'   UR                  S5      US'   XS'   UR!                  U5        M     U R"                  U R$                  -  nXR$                  -   nX]U nS	Ul        SUl        S
Ul        ['        U5      Ul        [        R*                  " U5      Ul        U$ )NFi  zLogin Failureusers
attributesr   	post_codelocation_rangeTr   usernameavatar   )r   session_hashuserauthenticate_sessionsuccessstatus_codereasonsql_connectiondb_init
db_connectselectjsonloadsgetr   r   appendr   r   lenr   dumpsr    )r!   api_responser*   r'   	all_usersfiltered_usersaccount_userusers_attributes	user_typeuser_location
user_rangeuser_okuser_detailsstart_index	end_indexreturned_resultss                   r   search_usersrG      s     >L''L((6H5$#& -  %%g.IN "::l<&@A$((8	(,,[9%))*:;
2%0002%7L'3J'?L$%5%9%9(%CL"+4(!!,/' ", ,,!9!99K666I%)<L"LL-.L::&67Lr   )fastapir   api.core.EasyMessager   r   api.core.EasySQLr   api.core.EasyUserr   r4   printrouterr0   r+   r	   r   postrG   r   r   r   <module>rO      su   
  0 1 $ &  ! "	z/ #  "#5+ 5 $5r   