
    Xh#	                     ,    d dl mZ d dlZ G d d      Zy)    )NationalityModelNc                   0    e Zd Zd Zd Zd Zd Zd Zd Zy)NationalityClassc                     || _         y )N)db)selfr   s     Q/var/www/intrajisbackend.com/public_html/app/backend/classes/nationality_class.py__init__zNationalityClass.__init__   s	        c                     	 | j                   j                  t              j                  t        j                        j                         }|sy|S # t        $ r}t        |      }d| cY d }~S d }~ww xY w)NNo data foundError: )r   queryr   order_byidall	Exceptionstr)r   dataeerror_messages       r	   get_allzNationalityClass.get_all   sf    	-77==!12;;<L<O<OPTTVD&K 	-FM]O,,	-s$   AA A 	A4A/)A4/A4c                 >   	 | j                   j                  t              j                  t	        t        |      |k(        j                         }|r'|j                         }t        j                  |      }|S y# t        $ r}t        |      }d| cY d }~S d }~ww xY w)Nz3No se encontraron datos para el campo especificado.r   )r   r   r   filtergetattrfirstas_dictjsondumpsr   r   )r   fieldvaluer   nationality_dataserialized_datar   r   s           r	   getzNationalityClass.get   s    	-77==!1299'BRTY:Z^c:cdjjlD#'<<>  #'**-=">&& M 	-FM]O,,	-s   A5A9 9	BBBBc                     	 t        di |}| j                  j                  |       | j                  j                          y# t        $ r}t        |      }d| cY d }~S d }~ww xY w)N   r    )r   r   addcommitr   r   )r   nationality_inputsr   r   r   s        r	   storezNationalityClass.store&   s\    	-#9&89DGGKKGGNN 	-FM]O,,	-s   A A 	A&A!A&!A&c                 \   	 | j                   j                  t              j                  t        j                  |k(        j                         }|r6| j                   j                  |       | j                   j                          yy# t        $ r}t        |      }d| cY d }~S d }~ww xY w)Nr&   r   r   )
r   r   r   r   r   r   deleter)   r   r   )r   r   r   r   r   s        r	   r-   zNationalityClass.delete0   s    
	-77==!1299:J:M:MQS:STZZ\Dt$ & 	-FM]O,,	-s   BB 	B+B& B+&B+c                 F   | j                   j                  t              j                  t        j                  |k(        j                         }|sy|j                  d      }|j                         D ]  \  }}t        |||        | j                   j                          y)Nr   T)exclude_unsetr&   )
r   r   r   r   r   one_or_nonedictitemssetattrr)   )r   r   nationalityexisting_nationalityexisting_nationality_datakeyr!   s          r	   updatezNationalityClass.update=   s    #ww}}-=>EEFVFYFY]_F_`lln#"$/$4$44$4$H!399; 	6JC(#u5	6 	r   N)	__name__
__module____qualname__r
   r   r$   r+   r-   r8   r'   r   r	   r   r      s     --(--r   r   )app.backend.db.modelsr   r   r   r'   r   r	   <module>r=      s    2 E Er   