예제 #1
0
def create_roles(test_db):
    objects = [
        Rol(id=1, name=ROLE.ADMIN.value),
        Rol(id=2, name=ROLE.BASIC.value),
    ]
    test_db.add_all(objects)
    test_db.commit()
예제 #2
0
def createRol():
    """ 
    Crea Roles de Sistema Pre establecidos 
    1. Administrador: -> Permite el acceso al Modulo de Administracion
        - administra usuarios
        - crea proyecto
        - elimina proyecto
        - asigna lider a proyecto
        - administra tipo de atributo
    2. Desarrollador: -> Permite el acceso al Modulo de Desarrollo
        - administra item
        - administra reportes
    3. Lider de Proyecto: -> Permite el acceso al Modulo de Gestion de Cambio
        - administra proyecto
        - administra fase
        - administra tipo de item
        - administra roles 
        - administra LB
        - calculo de costo
        - calculo de impacto
    """
    from models import Rol
    from ctrl.mgrRol import MgrRol
    r = Rol("Administrador", "permite el acceso al modulo de administracion",
            "all project")
    MgrRol().guardar(r)
    r = Rol("Desarrollador", "permite el acceso al modulo de desarrollo",
            "all project")
    MgrRol().guardar(r)
    r = Rol("LiderDeProyecto", "permite el acceso al modulo de gestion",
            "all project")
    MgrRol().guardar(r)
예제 #3
0
def addRol():
    from models import Rol
    from form import CreateFormRol
    from ctrl.mgrRol import MgrRol
    if g.user is None:
        return redirect(url_for('login'))
    else:
	if request.method == 'POST':
            form = CreateFormRol(request.form, nombre = request.form['nombre'], 
                        ambito = request.form['ambito'],
                        descripcion = request.form['descripcion'])
            if form.validate():
                rol = Rol(nombre = request.form['nombre'],
                        ambito = request.form['ambito'],
                        descripcion = request.form['descripcion'])    
                MgrRol().guardar(rol)
                flash('Se ha creado correctamente el rol')
                return redirect(url_for('listRolPermiso'))
            else:
                return render_template(app.config['DEFAULT_TPL']+'/formRol.html',
			       conf = app.config,
			       form = form)
    return render_template(app.config['DEFAULT_TPL']+'/formRol.html',
			       conf = app.config,
			       form = CreateFormRol())
예제 #4
0
def createRol():
    """ 
    Crea Roles de Sistema Pre establecidos 
    1. Administrador:  Permite el acceso al Modulo de Administracion
    2. Desarrollador:  Permite el acceso al Modulo de Desarrollo
    3. Lider de Proyecto: Permite el acceso al Modulo de Gestion de Cambio
    """
    from models import Rol, Permiso
    from mgrRol import MgrRol
    from mgrPermiso import MgrPermiso
    pAdmin = [Permiso("ModuloAdministracion", "permite el acceso al modulo de administracion")]
    rAdmin = Rol("Administrador", "permite el acceso al modulo de administracion", "all project", pAdmin)
    MgrRol().guardar(rAdmin)
    pDesar = [Permiso("ModuloDesarrollo", "permite el acceso al modulo de desarrollo")]
    rDesar = Rol("Desarrollador", "permite el acceso al modulo de desarrollo", "all project", pDesar)
    MgrRol().guardar(rDesar)
    pLider = [Permiso("ModuloGestion", "permite el acceso al modulo de gestion")]
    rLider=Rol("LiderDeProyecto","permite el acceso al modulo de gestion","all project", pLider)
    MgrRol().guardar(rLider)
예제 #5
0
def create_rol_cn(rol: RolBase, db: Session):
    arsene = Response_SM(status=False, result='...')
    try:
        rol_data = Rol(name=rol.name)
        db.add(rol_data)
        db.commit()
        db.refresh(rol_data)
        arsene.status = True if rol_data.id else False
        arsene.result = 'success'
    except Exception as e:
        arsene.result = f'error {e}'
        logger.error(f'error {e}')
    return arsene
예제 #6
0
 def asignarUsuario(self, nombre,  nameUser, nombreRol, descripcionRol):
     """
     Asigna a un proyecto el usuario con el rol designado
     @param nombre corresponde al nombre del proyecto
     @param nombreUser corresponde al nombre del usuario que sera asignado al proyecto
     @param nombreRol corresponde al nombre del rol que sera asignado al usuario
     """
     from models import Rol
     from mgrProyectoXUser import MgrProyectoXUser
     from mgrUserXRol import MgrUserXRol
     from mgrRol import MgrRol
     # crea el rol
     nombreRol = nombreRol+"-"+nombre+"-"+nameUser
     rol = Rol(nombreRol, descripcionRol,nombre)
     MgrRol().guardar(rol)
     # asigna el rol al usuario
     MgrUserXRol().guardar(nameUser, nombreRol) 
     # asigna al proyecto el usuario 
     MgrProyectoXUser().guardar(nombre, nameUser)
예제 #7
0
def todos_los_roles(id=None):

#----------------------------- METODO GET --------------------------------------------------

    if request.method == "GET":
        if id is not None:
            rol = Rol.query.get(id)
            if rol:
                return jsonify(rol.serialize()), 205
            return jsonify({'msg': 'Este rol no existe'}), 405
        else:
            roles = Rol.query.all()
            roles = list(map(lambda rol: rol.serialize(), roles))
            return jsonify(roles), 205

#------------------------------ METODO PUT ------------------------------------------------
    
    elif request.method == 'PUT':
        roles = Rol.query.get(id)
        roles.rol = request.json.get("rol","")

        roles.actualizar()
        return jsonify({"msg": "Actualizado satisfactoriamente"}), 205

#------------------------------ METODO DELETE -------------------------------------------------

    elif request.method == "DELETE":
        rol = Rol.query.get(id)
        
        rol.borrar()
        return jsonify({"msg": "Borrado satisfactoriamente"}), 205

#------------------------------ METODO POST ----------------------------------------------

    elif request.method == "POST":
        rol = Rol()
        rol.rol = request.json.get("rol","")
        rol.usuario_id = request.json.get("usuario_id","")

        rol.guardar()
        return jsonify(rol.serialize()), 205
예제 #8
0
 def asignarLider(self, nombre, nombreLider):
     """
     Asigna un lider a un proyecto 
     @param nombre corresponde al nombre del proyecto
     @param nombreLider corresponde al nombre del usuario que sera lider del proyecto
     """
     from models import Proyecto, Rol , User
     from mgrProyectoXUser import MgrProyectoXUser
     from mgrUserXRol import MgrUserXRol
     from mgrRol import MgrRol
     # se crea el rol lider de proyecto 
     nombreRol = "liderDeProyecto"+"-"+nombre+"-"+nombreLider
     rol = Rol(nombreRol, "se asigno un lider al proyecto ",nombre)
     MgrRol().guardar(rol)
     # asigna el rol al usuario
     MgrUserXRol().guardar(nombreLider, nombreRol) 
     # asigna al proyecto el usuario 
     #MgrProyectoXUser().guardarLider(nombre, nombreLider)
     print "nombre del lider" + nombreLider
     print "nombre del proyecto" + nombre
     proyecto = Proyecto.query.filter(Proyecto.nombre == nombre).first_or_404()
     user = User.query.filter(User.name == nombreLider).first_or_404()
     user.listaproyectos.append(proyecto)
     db.session.commit()
예제 #9
0
async def create_rol(rol: Rol):
    ret = db.roles.insert_one(rol.dict(by_alias=True))
    rol.id = ret.inserted_id
    return {'rol': rol}
예제 #10
0
async def list_roles():
    roles = []
    print(db.roles)
    for rol in db.rols.find():
        roles.append(Rol(**rol))
    return {'roles': roles}