
    h                         d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ d Zd Zd Zd Zy)    )RoleType)CodeScan)
Permission)Role)RolePermission)User)pwd_context)PermissionCreate)
RoleCreate)RolePermissionCreate)
UserCreate)SessionLocalc                     t               } | j                  t              j                         }|D ]  }| j	                  |        | j                          | j                  t              j                         }|D ]  }| j	                  |        | j                          | j                  t              j                         }|D ]  }| j	                  |        | j                          | j                  t              j                         }|D ]  }| j	                  |        | j                          | j                  t              j                         }	|	D ]  }
| j	                  |
        | j                          y )N)
r   queryr   alldeletecommitr   r   r   r   )dbdb_codescandb_csdb_ussdb_usdb_role_pss
db_role_psdb_permsdb_permdb_rolesdb_roles              =/home/www/lekema-backend.kofcorporation.com/app/utils/role.pyempty_databaser       s0   	B((8$((*K 
		%IIK XXd^!F 
		%IIK((>*..0K! 

		*IIKxx
#'')H 
		'IIKxx~!!#H 
		'IIK    c                  n   t               } | j                  t              j                         }|D ]  }| j	                  |        | j                          t        dd      g}|D ]M  }t        di |j                         }| j                  |       | j                          | j                  |       O y)Nz	user-listzVoir les utilisateurs)labeldescriptionzAll permissions created )
r   r   r   r   r   r   r
   
model_dumpaddrefresh)r   r   r   list_permissions
permissiondb_permissions         r   create_all_permissionsr,   -   s    	Bxx
#'')H 
		'IIK 	{8OP ' "
"=Z%:%:%<=
}
		


=!	" %r!   c            
         t               } t        dt        j                  g       }|j	                  dh      }t        di |}| j                  |       | j                          | j                  |       | j                  t              j                         }|D ]n  }t        |j                  |j                        }t        di |j                         }| j                  |       | j                          | j                  |       p t!        ddt#        j$                  d      |j                  d	d
dd      }t'        di |j                         }	| j                  |	       | j                          | j                  |	       y)NzSuper Adminr#   typepermissionsr0   exclude)role_idpermission_idSuperAdmin	123456789z+22870000000zsuperadmin@gmail.comT   )	firstnamelastnamepasswordr3   phoneemailemail_verifystatuszRole Super Admin createdr%   )r   r   r   ADMINdictr   r'   r   r(   r   r   r   r   idr   r&   r   r	   hashr   )
r   role_super_admin	role_datar   r   r*   role_permissiondb_role_permissionuserdb_users
             r   create_super_admin_rolerJ   A   sH   	B!^^
 !%%}o%>IYGFF7OIIKJJwxx
#'')H '
.wzzQ[Q^Q^_+Ko.H.H.JK
!"
		


%&' !!+.

$	D 'T__&'GFF7OIIKJJw%r!   c                  6   t               } t        dt        j                  g       t        dt        j                  g       g}|D ]R  }|j	                  dh      }t        di |}| j                  |       | j                          | j                  |       T y)NParticulierr.   
Entrepriser0   r1   zOthers role createdr%   )	r   r   r   OTHERSrA   r   r'   r   r(   )r   
list_rolesrolerE   r   s        r   create_others_rolerQ   i   s    	B 		

 		
J  II}oI6	##
w
		


7 !r!   N)app.enums.role_typer   app.models.code_scanr   app.models.permissionr   app.models.roler   app.models.role_permissionr   app.models.userr   app.routers.authr	   app.schemas.permissionr
   app.schemas.roler   app.schemas.role_permissionr   app.schemas.userr   app.utils.databaser   r    r,   rJ   rQ   r%   r!   r   <module>r^      s>    ( ) ,   5   ( 3 ' < ' +<%(%&P!r!   