
    )i                         S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  SSK
Jr  SSKJr  S S	KJr  \" S
S/5      S 5       r\" / SQ5      S 5       r\" S
/5      S 5       rg)    )render)api_view)Responsestatus)transaction   )SupervisorGroup)SupervisorGroupSerializer)	log_errorGETPOSTc                    U R                   S:X  a>   [        R                  R                  5       n[	        USS9n[        UR                  5      $ U R                   S:X  Ga   [        R                  " 5          U R                  R                  S	/ 5      n[        U[        5      (       Ga-  [!        U5      S
:  Ga  U R                  R                  S5      nU R                  R                  S5      nU(       d#  [        SS0[        R"                  S9sS S S 5        $ / nU H  n[	        UUXh:H  S.S9nUR%                  5       (       a6  UR'                  5       n	UR)                  [	        U	5      R                  5        M]  [        UR*                  [        R"                  S9s  sS S S 5        $    [        U(       a  US
   O0 [        R,                  S9sS S S 5        $ [	        U R                  S9nUR%                  5       (       aD  UR'                  5       n	[        [	        U	5      R                  [        R,                  S9sS S S 5        $ [        UR*                  [        R"                  S9sS S S 5        $ g ! [         a0  n[        SU5        [        SS0[        R                  S9s S nA$ S nAff = f! , (       d  f       g = f! [         a0  n[        SU5        [        SS0[        R                  S9s S nA$ S nAff = f)Nr   Tmanyzsupervisor_group_list.GETerror2An error occurred while fetching supervisor groupsr   r   usersr   groupprimaryUserzgroup is required)r   user	isprimarydatazsupervisor_group_list.POSTz1An error occurred while creating supervisor group)methodr
   objectsallr   r   r   	Exceptionr   r   HTTP_500_INTERNAL_SERVER_ERRORr   atomicget
isinstancelistlenHTTP_400_BAD_REQUESTis_validsaveappenderrorsHTTP_201_CREATED)
requestsupervisor_groups
serializerer   r   primary_usercreated_groupsuser_idsupervisor_groups
             &D:\TimeStamps\supervisorgroup\views.pysupervisor_group_listr4      s   ~~		 / 7 7 ; ; =23D4PJJOO,, 
6	!+	##%(("5eT**s5zA~#LL,,W5E#*<<#3#3M#BL '$&9:#)#>#>  &% &(N#(%>%*$+)5)@E &

 &..00/9/@,*112KL\2]2b2bc#+J,=,=fFaFa#bb3 &% $) $N1$5RX^XoXop; &%@ ";!MJ!**,,+5??+<('(ABR(S(X(XagaxaxyG &%H $J$5$5f>Y>YZI &% 
"  	115NO<< 	 &%J  	2A6MN<< 	s   <I. !J< 6BJ+	J< BJ+	J< '%J+	J< A"J+8	J< !J+#	J< .
J(8%J#J(#J(+
J95J< 9J< <
K6%K1+K61K6)r   PUTDELETEc                 6    [         R                  R                  US9nU R                  S:X  a!   [        U5      n[	        UR                  5      $ U R                  S	:X  a   [        R                  " 5          [        X R                  S
9nUR                  5       (       a7  UR!                  5       n[	        [        U5      R                  5      sS S S 5        $ [	        UR"                  [
        R$                  S9sS S S 5        $ U R                  S:X  aG   [        R                  " 5          UR'                  5         [	        [
        R(                  S9sS S S 5        $ g ! [         R                   a    [	        [
        R                  S9s $ [         a0  n[        SU5        [	        SS0[
        R                  S9s S nA$ S nAff = f! [         a0  n[        SU5        [	        SS0[
        R                  S9s S nA$ S nAff = f! , (       d  f       g = f! [         a0  n[        SU5        [	        SS0[
        R                  S9s S nA$ S nAff = f! , (       d  f       g = f! [         a0  n[        SU5        [	        SS0[
        R                  S9s S nA$ S nAff = f)N)pkr   z,supervisor_group_detail.get_supervisor_groupr   z1An error occurred while fetching supervisor groupr   zsupervisor_group_detail.GETz9An error occurred while fetching supervisor group detailsr5   r   zsupervisor_group_detail.PUTz1An error occurred while updating supervisor groupr6   zsupervisor_group_detail.DELETEz1An error occurred while deleting supervisor group)r
   r   r!   DoesNotExistr   r   HTTP_404_NOT_FOUNDr   r   r   r   r   r   r   r    r&   r'   r)   r%   deleteHTTP_204_NO_CONTENT)r+   r8   r2   r.   r-   updated_supervisor_groups         r3   supervisor_group_detailr>   H   s:   	
*2266"6= ~~	23CDJJOO,, 
5	 	##%67Gll[
&&((/9/@,#$=>V$W$\$\]	 &%
  
 1 1&:U:UV &% 
8	#		##% '')v'A'AB &% 
$G '' :v8899 
@!DIJ88
 	

  	3Q7UV<< 	 &%  	3Q7MN<< 	 &%  	6:MN<< 	s   E G !H 6AG?	H !G?7	H I ''I	I +F?	F?%F:4F?:F?
G<%G71G<7G<?
H	H H 
I
%I?I
I

II I 
J(%JJJc                      [         R                  R                  US9n[        USS9n[	        UR
                  5      $ ! [         a0  n[        SU5        [	        SS0[        R                  S9s S nA$ S nAff = f)N)r1   Tr   get_supervisor_groups_by_userr   r   r   )
r
   r   filterr   r   r   r   r   r   r   )r+   r1   r,   r-   r.   s        r3   r@   r@   {   sw    	
+33::7:K./@tL

(( 
115JK88
 	

s   ;> 
A8%A3-A83A8N)django.shortcutsr   rest_framework.decoratorsr   rest_framework.responser   rest_frameworkr   	django.dbr   modelsr
   serializersr   ErrorLogs.utilsr   r4   r>   r@        r3   <module>rL      sq    # . , ! ! # 2 % 
5&/9 9v 

"#0 $0d 
5'

 

rK   