
    h2                         d dl m Z  d dlmZ d dlmZ d dlmZmZ d dlm	Z	 d dl
mZ d dlmZmZmZmZmZ d dlmZ d d	lmZmZmZmZmZ d d
lmZ d dlmZ 	 	 ddededededef
dZ y)    )datetime)UUID)Session)HTTPExceptionstatus)APIException)QueryPaginator)funccastIntegerand_or_)WordReserved)WordReservedCreateSchemaWordReservedFilterSchemaWordReservedOutputSchemaWordReservedUpdateSchemaWordReservedSchema)API_PREFIXES)settingsdbpayloadpageper_pagereturnc           
        K   	 |dz
  |z  }| j                  t              j                  t        j                  j	                               }|j                  t        j                  j                  d             }|j                  r,|j                  t        j                  |j                  k(        }t        |t        dj                  t        t        j                               t         j"                  g      ||d      }|j%                         S # t&        $ r-}t)        ddt        |      it*        j,                  d      d }~ww xY ww)	N    T)queryschemaurloffsetlimituse_ormget_all_word_reserved	exceptionz Error retrieving reserved words.)moduleerrorstatus_codemessage)r   r   order_bydate_createddescfilter
deleted_atis_typereserved_typer	   r   joinstrr   api_base_urlr   WORD_RESERVEDpaginate	Exceptionr   r   HTTP_500_INTERNAL_SERVER_ERROR)r   r   r   r   r"   r   	paginatores           l/var/www/html/wine-match-dev/backend/winematch-backend/src/apps/wine/word_reserved/services/word_reserved.pyr%   r%      s    
(h&&//0I0I0N0N0PQ\4488>?<<LL!;!;w||!KLE" 8bggs8K`K`KbGceqee  GA  ?B  KQ  Ya  ko
	 !!## 
*A'==6	
 	

s)   E
DD E
	E(EEE
N)r   
   )!r   uuidr   sqlalchemy.ormr   fastapir   r   src.core.exceptionsr   src.utils.paginationr	   
sqlalchemyr
   r   r   r   r   0src.apps.wine.word_reserved.models.word_reservedr   1src.apps.wine.word_reserved.schemas.word_reservedr   r   r   r   r   src.utils.constantsr   src.core.configr   intanyr%        r<   <module>rL      sm      " ) , / 3 3 I u  u , $
 	

%
 
 	

 	
rK   