
    chY                     ,    d dl mZmZmZ  G d d      Zy)    )BranchOfficeModelRegionModel	ZoneModelc                   F    e Zd Zd ZddZddZd Zd Zd Zd Z	d	 Z
d
 Zy)BranchOfficeClassc                     || _         y )N)db)selfr	   s     S/var/www/intrajisbackend.com/public_html/app/backend/classes/branch_office_class.py__init__zBranchOfficeClass.__init__   s	        Nc                 l   	 |dk(  s
|dk(  s|dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  |k(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  |k(        j                  t        j                        j                         }S # t        $ r}t        |      }d| cY d }~S d }~ww xY w	N                     Error: )r	   queryr   filter	status_idvisibility_idorder_bybranch_officeallprincipal_supervisorid	Exceptionstrr
   rol_idrutbranch_office_iddataeerror_messages          r   get_allzBranchOfficeClass.get_all   s   	-{fkVq[ww}}%67F,66!;<F,::a?@H.<<=CE	 4 K+ 1ww}}%67F,66!;<F,::a?@F,AASHIH.<<=CE ( K 1ww}}%67F,66!;<F,::a?@H.<<=CE	  K 1ww}}%67F,66!;<F,::a?@F,//3CCDH.<<=CE  K 	-FM]O,,	-s3   BJ B0J BJ B0J 	J3J.(J3.J3c                 l   	 |dk(  s
|dk(  s|dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  dk(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  dk(        j                  t        j                  |k(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  dk(        j                  t        j                        j                         }|S |dk(  r| j                   j                  t              j                  t        j                  dk(        j                  t        j                  dk(        j                  t        j
                  dk(        j                  t        j                  |k(        j                  t        j                        j                         }S # t        $ r}t        |      }d| cY d }~S d }~ww xY wr   )r	   r   r   r   r   r   basement_idr   r   r   r   r    r!   r"   r#   s          r   get_all_basementz"BranchOfficeClass.get_all_basement)   sd   #	-{fkVq[ww}}%67F,66!;<F,::a?@F,88A=>H.<<=CE < K1 1ww}}%67F,66!;<F,::a?@F,88A=>F,AASHIH.<<=CE . K! 1ww}}%67F,66!;<F,::a?@F,88A=>H.<<=CE  K 1ww}}%67F,66!;<F,88A=>F,::a?@F,//3CCDH.<<=CE  K 	-FM]O,,	-s3   B:L =CL B0L ?CL 	L3L.(L3.L3c                     	 | j                   j                  t              j                  t        j                        j                         }|S # t        $ r}t        |      }d| cY d }~S d }~ww xY wNr   )r	   r   r   r   r   r   r!   r"   r
   r'   r(   r)   s       r   get_full_datazBranchOfficeClass.get_full_dataO   sb    	-77==!23H.<<=CE  K 	-FM]O,,	-s   AA 	A1A,&A1,A1c                 (   	 | j                   j                  t              j                  t        j                  d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   r   getaway_machine_idr   r   r   r!   r"   r0   s       r   get_with_machinez"BranchOfficeClass.get_with_machineZ   sx    		-77==!23F,??1DEH.<<=CE 
 K 	-FM]O,,	-s   A+A. .	B7BBBc                     	 | j                   j                  t              j                  t	        t        |      |k(        j                         }|S # t        $ r}t        |      }d| cY d }~S d }~ww xY wr/   )r	   r   r   r   getattrfirstr!   r"   )r
   fieldvaluer'   r(   r)   s         r   getzBranchOfficeClass.getf   sh    	-77==!23::7CTV[;\`e;efllnDK 	-FM]O,,	-s   AA 	A4A/)A4/A4c                    	 t               }|j                  |_        |j                  |_        |j                  |_        |j                  |_        |j
                  |_        |j                  |_        |j                  |_        |j                  |_        |j                  |_	        |j                  |_
        |j                  |_        |j                  |_        |j                  |_        |j                  |_        | j                  j!                  |       | j                  j#                          y# t$        $ r}t'        |      }d| cY d }~S d }~ww xY wr3   )r   r   dte_codeaddress	region_id
commune_id
segment_idzone_idprincipal_idr   r4   r,   r   r   opening_dater	   addcommitr!   r"   )r
   branch_office_inputsr   r(   r)   s        r   storezBranchOfficeClass.storen   s   	--/M*>*L*LM'%9%B%BM"$8$@$@M!&:&D&DM#';'F'FM$';'F'FM$$8$@$@M!)=)J)JM&1E1Z1ZM./C/V/VM,(<(H(HM%&:&D&DM#*>*L*LM')=)J)JM&GGKK&GGNN 	-FM]O,,	-s   D-D0 0	E9EEE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   No data foundr   )
r	   r   r   r   r    r8   deleterF   r!   r"   )r
   r    r'   r(   r)   s        r   rK   zBranchOfficeClass.delete   s    
	-77==!23::;L;O;OSU;UV\\^Dt$ & 	-FM]O,,	-s   BB 	B+B& B+&B+c                    	 | j                   j                  t              j                  t        j                  |j                  k(        j                         }|sy|j                  |_        |j                  |_        |j                  |_        |j                  |_	        |j                  |_
        |j                  |_        |j                  |_        |j                  |_        |j                  |_        |j                  |_        |j                   |_        |j"                  |_        |j$                  |_        |j&                  |_        | j                   j)                          y# t*        $ r}t-        |      }d| cY d }~S d }~ww xY w)NrJ   r   r   )r	   r   r   r   r    one_or_noner   r>   r=   r?   r@   rA   rB   rC   r   r4   r,   r   r   rD   rF   r!   r"   )r
   	form_dataexisting_branch_officer(   r)   s        r   updatezBranchOfficeClass.update   sT   	-%)WW]]3D%E%L%LM^MaMaeneqeqMq%r%~%~  &A")&3<3J3J"0-6->->"*.7.@.@"+/8/B/B",090D0D"-090D0D"--6->->"*2;2H2H"/:C:X:X"78A8T8T"51:1F1F"./8/B/B",3<3J3J"02;2H2H"/GGNN 	-FM]O,,	-s%   AE% DE% %	F.F=FF)NNN)__name__
__module____qualname__r   r*   r-   r1   r5   r;   rH   rK   rP    r   r   r   r      s1     -D$-L	-
---2--r   r   N)app.backend.db.modelsr   r   r   r   rT   r   r   <module>rV      s    K Kk- k-r   