
    h                         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_)	WordAlias)WordAliasCreateSchemaWordAliasFilterSchemaWordAliasOutputSchemaWordAliasUpdateSchemaWordAliasSchema)API_PREFIXES)settingsNdbpayloadpageper_pagereturnc           
      B  K   	 |dz
  |z  }| j                  t              j                  t        j                  j	                  d            }|r8|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)
z2Retrieve all word aliases with optional filtering.   N T)queryschemaurloffsetlimituse_ormget_all_word_aliases	exceptionzError retrieving word aliases.)moduleerrorstatus_codemessage)r   r   filter
deleted_atis_type
alias_typer	   r   joinstrr   api_base_urlr   
WORD_ALIASpaginate	Exceptionr   r   HTTP_500_INTERNAL_SERVER_ERROR)r   r   r   r   r"   r   	paginatores           f/var/www/html/wine-match-dev/backend/winematch-backend/src/apps/wine/word_alias/services/word_alias.pyr%   r%      s     
(h&#**9+?+?+C+CD+IJ||Y%9%9W\\%IJ" 5277CH]H]H_D`bnbybyCz;{  EK  S[  ei
	 !!## 
)A'==4	
 	

s)   DC!C& %D&	D/(DDD)Nr   
   )!r   uuidr   sqlalchemy.ormr   fastapir   r   src.core.exceptionsr   src.utils.paginationr	   
sqlalchemyr
   r   r   r   r   *src.apps.wine.word_alias.models.word_aliasr   +src.apps.wine.word_alias.schemas.word_aliasr   r   r   r   r   src.utils.constantsr   src.core.configr   intanyr%        r9   <module>rI      sp      " ) , / 3 3 @ `  ` , $
 &*	

"
 
 	

 	
rH   