
    7>h                        d dl mZ d dlmZmZmZmZ d dlmZ d dl	m
Z
  G d de      Z G d de      Z G d	 d
e      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d d      Zy)    )	BaseModel)ListDictAnyOptional)	PAGE_SIZE)Messagec                       e Zd ZU eed<   y)BaseResponseModelmessageN)__name__
__module____qualname__str__annotations__     4/var/www/html/DP/alpha_backend/app/utils/response.pyr   r      s    Lr   r   c                   Z    e Zd ZU ee   ed<   dZee   ed<   dZ	ee
   ed<   dZee
   ed<   y)ListResponseModelentitiesNr   	page_sizetotal_count)r   r   r   r   r   r   r   r   r   r   intr   r   r   r   r   r      s6    3i!GXc]!#Ix}#!%K#%r   r   c                   6    e Zd ZU dZee   ed<   dZee   ed<   y)TargetListResponseModelr   assigned_sale_targetassigned_recovery_targetN)r   r   r   r   r   floatr   r   r   r   r   r   r      s     ,-(5/-01huo1r   r   c                   "    e Zd ZU dZee   ed<   y)LedgerListResponseModelr   total_balanceN)r   r   r   r"   r   r   r   r   r   r   r!   r!      s    %&M8E?&r   r!   c                   J    e Zd ZU eeef   ed<   dZee	   ed<   dZ
ee	   ed<   y)CustomLedgerListResponseModelentityNr   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r$   r$      s,    cN#Ix}#!%K#%r   r$   c                       e Zd ZU eed<   y)ObjectResponseModelr%   N)r   r   r   r   r   r   r   r   r'   r'   "   s    Kr   r'   c                   6    e Zd ZU dZee   ed<   dZee   ed<   y)LoginResponseModelNuseraccess_token)	r   r   r   r*   r   r   r   r+   r   r   r   r   r)   r)   &   s    D(3-"&L(3-&r   r)   c                       e Zd ZU ee   ed<   y)ErrorResponseModelerrorsN)r   r   r   r   r   r   r   r   r   r-   r-   +   s    Ir   r-   c                   R   e Zd Zededdfdee   dededede	f
d	       Z
e	 	 d!dee   ded
edededefd       Zed"dee   dededefd       Ze	 	 	 d#dedee   dee   defd       Zed$dedededefd       Zed$dedededefd       Ze	 	 	 	 	 d%dedededee   dee   de	fd       Zeej2                  j4                  fdedefd       Zed&dededefd       Zed'dedefd       Zed'dedefd       Zeej@                  jB                  dfdedee   de"fd        Z#y)(Responser   FEntities
collectiontotalr   entities_onlyreturnc                 p    t        t        j                  j                  |z  | |s|nd |s|      S d       S N)r   r   r   r   r   r	   Success
OBJECT_GET)r2   r3   r   r4   names        r   get_listzResponse.get_list0   sA     !OO..5'4i$%2	
 	
 9=	
 	
r   sale_targetrecovery_targetc                 |    t        t        j                  j                  dz  | |st	        |       nd |s|nd ||      S )Nr1   )r   r   r   r   r   r   )r   r	   r9   r:   len)r2   r3   r=   r>   r4   s        r   get_target_listzResponse.get_target_list:   s>     'OO..;-:c*o%2!,%4
 	
r   r"   c                 j    t        t        j                  j                  dz  | t	        |       ||      S )NLedger)r   r   r   r   r"   )r!   r	   r9   r:   r@   )r2   r3   r"   s      r   get_ledger_listzResponse.get_ledger_listF   s1    &OO..9*o'
 	
r   Nr   r*   r+   c                     t        | r| n>|j                  d      r,t        j                  j                  |j                  d      z  nd||      S )Nr;   Userr   r*   r+   )r)   getr	   r9   LOGIN_SUCCESSrG   s      r   
login_userzResponse.login_user]   sL     "&G`d`h`haGOO,I,IDHHU[L\,\#%	
 	
r   objr;   c                 f    t        |r||       S t        j                  j                  |z  |       S N)r   r%   )r'   r	   r9   OBJECT_SAVEDrK   r;   r   s      r   postzResponse.postj   s6    "&G
 	
,3OO,H,H4,O
 	
r   c                 f    t        |r||       S t        j                  j                  |z  |       S rM   )r'   r	   r9   r:   rO   s      r   rH   zResponse.getq   s6    "&G
 	
,3OO,F,F,M
 	
r   r   r   c                 ^    t        |r|nt        j                  j                  |z  | ||      S r7   r8   )r   r;   r   r   r   s        r   listzResponse.listx   s0     !&GGOO,F,F,M#	
 	
r   c                     t        |       S Nr   )r   rV   s    r   successzResponse.success   s     
 	
r   c                 d    t        t        j                  j                  |z  | |       S d       S rM   )r'   r	   r9   OBJECT_UPDATED)rK   r;   s     r   putzResponse.put   s5    "OO22T9/3
 	
/3
 	
r   c                 P    t        t        j                  j                  | z        S rU   )r   r	   r9   OBJECT_DELETEDr;   s    r   deletezResponse.delete   s!     OO22T9
 	
r   c                 P    t        t        j                  j                  | z        S rU   )r   r	   r9   OBJECT_CANCELLEDr]   s    r   cancelzResponse.cancel   s!     OO44t;
 	
r   r.   c                 V    t        | |xs t        j                  j                  g      S )Nr   r.   )r-   r	   ErrorINTERNAL_SERVER_ERRORrc   s     r   errorzResponse.error   s'    !BgmmAAB
 	
r   )r   r   r   F)r   r   ) NN)NObjectN)Nrh   N
   N)Nrh   )rh   )$r   r   r   staticmethodr   r   r   r   boolr   r<   r   r   rA   r!   rD   r   r   r)   rJ   r'   rP   rH   rS   r	   r9   REQUEST_SUCCESSr   rW   rZ   r^   ra   rd   re   r-   rf   r   r   r   r0   r0   /   s   56jo 
T#Y 
s 
3 
cg 
%6
 
 pq.3	
DI 	
c 	
E 	
hm 	
'+	
8O	
 	
 
DI 
c 
e 
\s 
 
, "&*.



3-

 #3-

 
	

 

 
# 
C 
S 
L_ 
 
 
 
3 
C 
K^ 
 
 !! (**.	

s 





 !

 #3-	

 4E	

 

 &>> 
 
CT 
 

 
 
3 
6I 
 
 
S 
(9 
 

 
S 
(9 
 

 $]]@@VZ 
s 
$s) 
_q 
 
r   r0   N)pydanticr   typingr   r   r   r   app.utils.constantsr   app.utils.messagesr	   r   r   r   r!   r$   r'   r)   r-   r0   r   r   r   <module>rq      s     , , ) &	 &) &2/ 2
'/ '&$5 &+ '* '
* t
 t
r   