
    'h
                     H   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 d dlmZ d dl	m
Z
 d dlZ ed	            e            Z e            Z e
            Z G d
 de          Z G d de          Ze                    d           ed          fdedefd            ZdS )    )Response)Cookie)	APIRouter)API_BaseRequest)API_BaseResponse)EasySQL)EasyUserNzSEARCH USERS API ENDPOINTc                   V    e Zd ZU dZeed<   dZeed<   dZeed<   dZ	eed<   dZ
eed<   dS )	API_Request account_typejob_locationr   pagetotal_pagesresults_per_pageN)__name__
__module____qualname__r   str__annotations__r   r   intr   r        :C:\xampp\htdocs\dev\Site\Backend\api\users\search_users.pyr   r      s`         L#L#D#MMMKcr   r   c                   ,    e Zd ZU dZeed<   dZeed<   dS )API_Responser   countr   resultsN)r   r   r   r   r   r   r   r   r   r   r   r   r      s/         E3NNNGSr   r   z/users/search_usersrequestsession_tokenc                    t                      }t                              |          }|dk    rd|_        d|_        d|_        |S t                                           t                                           t          	                    d          }g }|D ]}t          j        |d                   }|                    d          }|                    d          }	|                    d          }
d	}| j        d
k    r|| j        k    rd}| j        d
k    r	 |r?i }|d         |d<   |                    d          |d<   ||d<   |                    |           | j        | j        z  }|| j        z   }|||         }d	|_        d|_        d
|_        t%          |          |_        t          j        |          |_        |S )NFi  zLogin Failureusers
attributesr   	post_codelocation_rangeTr   usernameavatar   )r   userauthenticate_sessionsuccessstatus_codereasonsql_connectiondb_init
db_connectselectjsonloadsgetr   r   appendr   r   lenr   dumpsr   )r   r    api_responser&   	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_usersrE      s     >>L((77H5$#& -  %%g..IN " 0 0:l<&@AA$((88	(,,[99%))*:;;
2%%G0002%% 	0L'3J'?L$%5%9%9(%C%CL"+4L(!!,/// ,!99Kg66I%k)&;<L"LL-..L:&677Lr   )fastapir   r   r   api.core.EasyMessager   r   api.core.EasySQLr   api.core.EasyUserr	   r2   printrouterr.   r)   r   r   postr   rE   r   r   r   <module>rM      sk                     0 0 0 0 0 0 1 1 1 1 1 1 $ $ $ $ $ $ & & & & & &  ! " " "	xzz    /       #    "##<BF4LL 4 4+ 4c 4 4 4 $#4 4 4r   