
    Xh4                     $    d dl mZ  G d d      Zy)    )CommuneModelc                   2    e Zd Zd ZddZd Zd Zd Zd Zy)	CommuneClassc                     || _         y )N)db)selfr   s     M/var/www/intrajisbackend.com/public_html/app/backend/classes/commune_class.py__init__zCommuneClass.__init__   s	        c                    	 |dk(  rK| j                   j                  t              j                  t        j                        j                         }nj| j                   j                  t              j                  t        j                  |k(        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communeallfilter	region_id	Exceptionstr)r   r   dataeerror_messages        r	   get_allzCommuneClass.get_all   s    
	-Bww}}\2;;L<P<PQUUWww}}\299,:P:PT]:]^gghth|h|}  B  B  D&K 	-FM]O,,	-s$   B<C ?C 	C$
CC$C$c                 (   	 | j                   j                  t              j                  t	        t        |      |k(        j                  t        j                        j                         }|S # t        $ r}t        |      }d| cY d }~S d }~ww xY w)Nr   )
r   r   r   r   getattrr   r   firstr   r   )r   fieldvaluer   r   r   s         r	   getzCommuneClass.get   s    	-77==.55glE6RV[6[\eefrfzfz{  B  B  DDK 	-FM]O,,	-s   A+A. .	B7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   commune_inputsr   r   r   s        r	   storezCommuneClass.store   s[    	-1.1D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   idr   deleter&   r   r   )r   r*   r   r   r   s        r	   r+   zCommuneClass.delete&   s    
	-77==.55loo6KLRRTD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)NzNo data founndT)exclude_unsetr#   )
r   r   r   r   r*   one_or_nonedictitemssetattrr&   )r   r*   r   existing_communeexisting_commune_datakeyr    s          r	   updatezCommuneClass.update3   s    77==6==looQS>ST``b# '4 @/557 	2JC$c51	2 	r   N)r   )	__name__
__module____qualname__r
   r   r!   r(   r+   r5   r$   r   r	   r   r      s     ----r   r   N)app.backend.db.modelsr   r   r$   r   r	   <module>r:      s    .< <r   