Пример #1
0
    def borrar_by_id(self,id_tipo_fase):
        """
        Elimina el Tipo de Fase.         
        """

        DBSession.delete(DBSession.query(Tipo_Fase).get(id_tipo_fase))
        DBSession.flush()
Пример #2
0
    def borrar_by_id(self,id_historial):
        """
        Elimina un historial.
        """

        DBSession.delete(DBSession.query(Historial).get(id_historial))
        DBSession.flush()	
Пример #3
0
    def post_tipo_item(self, nombre_tipo_item, codigo_tipo_item, descripcion, campo, valor):
        tipo_item = Tipo_Item(
            nombre_tipo_item=nombre_tipo_item, codigo_tipo_item=codigo_tipo_item, descripcion=descripcion
        )

        DBSession.add(tipo_item)

        if campo is not None:
            if not isinstance(campo, list):
                campo = [campo]

        if valor is not None:
            if not isinstance(valor, list):
                valor = [valor]

        indice = 0
        id_tipo = Tipo_Item.get_ultimo_id()
        for c in campo:
            if len(c) > 0:
                camp = Tipo_Campos(id_tipo_item=id_tipo, nombre_campo=c, valor_campo=valor[indice])
                DBSession.add(camp)
            indice += 1

        flash("Tipo Item Agregado!")
        redirect("/tipo_item/tipo_item")
Пример #4
0
    def borrar_by_id(self,id_tipo_item):
        """
        Obtiene la lista de todos los tipo_item         
        """

        DBSession.delete(DBSession.query(Tipo_Item).get(id_tipo_item))
        DBSession.flush()	
Пример #5
0
    def borrar_by_id(self,rel_id):
        """
        Elimina una relación.
        """

        DBSession.delete(DBSession.query(Relaciones).get(rel_id))
        DBSession.flush()
Пример #6
0
    def seleccionar_tipo(self,id_fase,*args, **kw):
        nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
        nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")

        if id_fase is not None:
            id_fase=int(id_fase)

        fase = DBSession.query(Fase).get(id_fase)
        tipos_items = DBSession.query(Tipo_Item).all()
        
        tipos = fase.tipos_items
        tipos_items2 = []
        for tip in tipos:
            tipos_items2.append(tip.id_tipo_item)

        if request.method != 'PUT':  
            values = dict(id_fase=fase.id_fase, 
                            nombre_fase=fase.nombre_fase, 
                            id_tipo_fase=fase.id_tipo_fase,
                            nombre_tipo_fase=fase.nombre_tipo_fase,
                            estado=fase.estado,
                            linea_base=fase.linea_base,
                            descripcion=fase.descripcion,
                            )

        return dict(pagina="seleccionar_tipo",values=values,
                        tipos_items=tipos_items,tipos_items2=tipos_items2,
                         nom_proyecto=nom_proyecto,nom_fase=nom_fase)
Пример #7
0
    def borrar_by_id(self,id_campos):
        """
        Elimina un campo.
        """

        DBSession.delete(DBSession.query(Campos).get(id_campos))
        DBSession.flush()	
Пример #8
0
    def put_seleccionar_tipo(self, id_fase, nombre_fase, id_tipo_fase, tipos_items,
                    descripcion, asmSelect0, nombre_tipo_fase,**kw):

        if id_fase is not None:
            id_fase=int(id_fase)

        if id_tipo_fase is not None:
            id_tipo_fase=int(id_tipo_fase)

        fase = Fase.get_fase_by_id(id_fase)

        if not isinstance(tipos_items, list):
			tipos_items = [tipos_items]
        tipos_items = [DBSession.query(Tipo_Item).get(tipo_item) for tipo_item
                                 in tipos_items]

        fase.nombre_fase = nombre_fase
        fase.id_tipo_fase=id_tipo_fase
        fase.estado = fase.estado
        fase.linea_base = fase.linea_base
        fase.descripcion = descripcion
        fase.tipos_items=tipos_items

        DBSession.flush()
        flash("Tipos Item agregados!")
        redirect('/proyecto/proyecto')
Пример #9
0
    def borrar_by_id(self, id_miembro):
        """
        Elimina un miembro de equipo.
        """

        DBSession.delete(DBSession.query(Equipo_Desarrollo).get(id_miembro))
        DBSession.flush()
Пример #10
0
    def borrar_by_id(self,id_proyecto):
        """
        Obtiene la lista de todos los proyecto         
        """

        DBSession.delete(DBSession.query(Proyecto).get(id_proyecto))
        DBSession.flush()	
Пример #11
0
    def borrar_by_id(self,id_campo):
        """
        Elimina el tipo de campo.         
        """

        DBSession.delete(DBSession.query(Tipo_Campos).get(id_campo))
        DBSession.flush()
Пример #12
0
    def put_privilegio(self, idprivilegio, nombreprivilegio, descripcion, **kw):
        if idprivilegio is not None:
            idprivilegio = int(idprivilegio)

        privilegio = Privilegios.get_privilegio_by_id(idprivilegio)
        nombres = Privilegios.get_nombreprivilegio()

        if not isinstance(nombres, list):
            nombres = [nombres]

        if privilegio.nombreprivilegio in nombres:
            nombres.remove(privilegio.nombreprivilegio)

        if nombreprivilegio not in nombres:

            privilegio.nombreprivilegio = nombreprivilegio
            privilegio.descripcion = descripcion

            DBSession.flush()
            flash("Privilegio modificado!")
            redirect("/privilegio")

        else:

            nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual")
            nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual")

            values = dict(idprivilegio=idprivilegio, nombreprivilegio=nombreprivilegio, descripcion=descripcion)

            flash("Nombre del Privilegio ya existe!")
            return dict(pagina="editar_privilegio", values=values, nom_proyecto=nom_proyecto, nom_fase=nom_fase)
Пример #13
0
    def ingresar(self,id_proyecto):
        nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")

        usuario=Usuario.get_user_by_alias( request.identity['repoze.who.userid'])

        if id_proyecto is not None:
            id_proyecto=int(id_proyecto)

        proyecto=Proyecto.get_proyecto_by_id(id_proyecto)

        Variables.set_valor_by_nombre("fase_actual",0)
        Variables.set_valor_by_nombre("proyecto_actual",proyecto.id_proyecto)
        Variables.set_valor_by_nombre("nombre_proyecto_actual",
                                            proyecto.nombre_proyecto)

        miembros=Equipo_Desarrollo.get_miembros_by_proyecto(proyecto.id_proyecto)
        rol=""
        for miembro in miembros:
            if ( miembro.idusuario == usuario.idusuario ):
                temp=int (Variables.get_valor_by_nombre("rol_anterior"))
                if  temp == 0:		
                    Variables.set_valor_by_nombre("rol_anterior",
                                                    usuario.roles[0].idrol)

                Variables.set_valor_by_nombre("rol_actual",miembro.idrol)
                rol=Rol.get_rol_by_id(miembro.idrol)
                usuario.roles=[]

                DBSession.flush()
                usuario.roles.append(rol)
                DBSession.flush()
                break;
        redirect('/')
Пример #14
0
    def post_logout(self, came_from=url("/")):
        """
        Redirect the user to the initially requested page on logout and say
        goodbye as well.

        """
        condicion = int(Variables.get_valor_by_nombre("rol_anterior"))
        if condicion > 0:
            usuario = Usuario.get_user_by_alias(Variables.get_valor_by_nombre("usuario_actual"))

            Variables.set_valor_by_nombre("fase_actual", 0)
            Variables.set_valor_by_nombre("proyecto_actual", 0)
            Variables.set_valor_by_nombre("nombre_proyecto_actual", "")
            Variables.set_valor_by_nombre("nombre_fase_actual", "")
            Variables.set_valor_by_nombre("usuario_actual", "")

            rol = int(Variables.get_valor_by_nombre("rol_anterior"))
            Variables.set_valor_by_nombre("rol_actual", 0)
            Variables.set_valor_by_nombre("rol_anterior", 0)

            rol2 = Rol.get_rol_by_id(rol)
            usuario.roles = []
            usuario.roles.append(rol2)
            DBSession.flush()

        flash(_("Hasta luego!"))
        redirect("/")
Пример #15
0
    def borrar_by_id(self,id_item):
        """
        Eliina un item específico.         
        """

        DBSession.delete(DBSession.query(Item).get(id_item))
        DBSession.flush()
Пример #16
0
    def post_miembro(self, idusuario, idrol, asmSelect0, fases):

        if idusuario is not None:
            idusuario = int(idusuario)      
        if idrol is not None:
            idrol = int(idrol)      

        if fases is not None:
            if not isinstance(fases, list):
                fases = [fases]
        fases = [DBSession.query(Fase).get(fase) for fase in fases]

        valor=int( Variables.get_valor_by_nombre("proyecto_actual"))
        equipo =  Equipo_Desarrollo(proyecto=valor, idusuario=idusuario, 
							        idrol=idrol, fases=fases)

#        usuario =  Usuario.get_user_by_id(idusuario)
#        rol = Rol.get_rol_by_id(idrol)
#        usuario.roles=[]
#        usuario.roles.append(rol)
        
        DBSession.add(equipo)
        DBSession.flush()

        flash("Miembro Agregado Agregado!")  
        redirect('/equipo/equipo')
Пример #17
0
    def post_delete_miembro(self, id_equipo, nombre_usuario, nombre_rol, **kw):
        if id_equipo is not None:
            id_equipo=int(id_equipo)

        Equipo_Desarrollo.borrar_by_id(id_equipo)
        DBSession.flush()	
        flash("Miembro eliminado!")
        redirect('/equipo/equipo')
Пример #18
0
    def post_delete_fase(self, id_fase, nombre_fase,  nombre_tipo_fase, estado,
                                descripcion, **kw):

        Fase.borrar_by_id(id_fase)
        DBSession.flush()

        flash("Fase eliminada!")
        redirect('/fase/fase')
Пример #19
0
 def finalizar(self, id_item):
     """
     
     """
     proyecto = DBSession.query(Item).get(id_item)
     if item.estado == "con_linea_base":
         item.estado="finalizado"
         DBSession.flush()
Пример #20
0
    def post_delete_rol(self, idrol, nombrerol, descripcion, privilegios, **kw):
        if idrol is not None:
            idrol = int(idrol)

        Rol.borrar_by_id(idrol)
        DBSession.flush()

        flash("Rol eliminado!")
        redirect("/rol")
Пример #21
0
    def post_delete_privilegio(self, idprivilegio, nombreprivilegio, descripcion, **kw):
        if idprivilegio is not None:
            idprivilegio = int(idprivilegio)

        Privilegios.borrar_by_id(idprivilegio)
        DBSession.flush()

        flash("Privilegio eliminado!")
        redirect("/privilegio")
Пример #22
0
    def con_linea_base(self, id_item):
        """
        Se asigna al item como parte de la linea base.
        """

        item = DBSession.query(Item).get(id_item)
        if item.estado == "aprobado":
            item.estado="con_linea_base"
            DBSession.flush()
Пример #23
0
    def put_fase(self, id_fase, nombre_fase, id_tipo_fase, tipos_items,
                    descripcion, asmSelect0,  **kw):

        if id_fase is not None:
            id_fase=int(id_fase)

        if id_tipo_fase is not None:
            id_tipo_fase=int(id_tipo_fase)

        fase =Fase.get_fase_by_id(id_fase)
        nombres=Fase.get_nombres_by_id(fase.proyecto)
        nombres.remove(fase.nombre_fase)
        
        if not isinstance(tipos_items, list):
			tipos_items = [tipos_items]
        tipos_items = [DBSession.query(Tipo_Item).get(tipo_item) for tipo_item
                                 in tipos_items]

        if nombre_fase not in nombres:
            fase.nombre_fase = nombre_fase
            fase.id_tipo_fase=id_tipo_fase
            fase.estado = fase.estado
            fase.linea_base = fase.linea_base
            fase.descripcion = descripcion
            fase.tipos_items=tipos_items

            DBSession.flush()
            flash("Fase modificada!")
            redirect('/fase/fase')
    
        else:
            nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual")
            nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual")

            id_tipo_fase=fase.id_tipo_fase
            tipos_fases = Tipo_Fase.get_tipo_fases()
            tipos = fase.tipos_items

            lista=[]
            lista.append(id_tipo_fase)
            tipos = fase.tipos_items

            tipos_items2 = []
            for tip in tipos:
                tipos_items2.append(tip.id_tipo_item)

            values = dict(id_fase=id_fase, 
                            nombre_fase=nombre_fase, 
                            descripcion=descripcion,
                            )
            flash("El nombre de fase solicitado ya existe!")

            return dict(pagina="editar_fase",values=values,
                                tipos_fases=tipos_fases,tipos_items=tipos_items,
                                tipos_items2=tipos_items2,lista=lista, 
                                id_tipo_fase=id_tipo_fase,nom_fase=nom_fase,
                                nom_proyecto= nom_proyecto )
Пример #24
0
    def activar(self, id_item):
        """
        Activa un item.
        """

        item = DBSession.query(Item).get(id_item)
        if item.estado == "nuevo":
            item.estado="en_desarrollo"
            DBSession.flush()
Пример #25
0
    def revisar(self, id_item):
        """
        El item se pasa al estado 'a revisar'.
        """

        item = DBSession.query(Item).get(id_item)
        if item.estado == "aprobado" or item.estado == "con_linea_base":
            item.estado="a_revisar"
            DBSession.flush()
Пример #26
0
    def aprobar(self, id_item):
        """
        Aprueba un item en estado en desarrollo.
        """

        item = DBSession.query(Item).get(id_item)
        if item.estado == "en_desarrollo":
            item.estado="aprobado"
            DBSession.flush()
Пример #27
0
    def post_revivir_item(self, id_item, nombre_item , codigo_item, 
                            nombre_tipo_item, estado, complejidad, **kw):
        item = Item.get_item_by_id(id_item)
        item.estado_oculto="Activo"

        DBSession.add(item)
        DBSession.flush()

        flash("item Revivido!")
        redirect('/item/item')
Пример #28
0
    def set_valor_by_nombre(self, nombre, valor):
        """
        Setea el nombre de una variable.
        """

        variables = DBSession.query(Variables).all()
        for var in variables:
            if (var.nombre == nombre):
                var.valor=valor
                DBSession.flush()
Пример #29
0
    def post_delete_tipo_fase(self, id_tipo_fase, nombre_tipo_fase, descripcion,
                                     **kw):
	
        if id_tipo_fase is not None:
            id_tipo_fase=int(id_tipo_fase)

        Tipo_Fase.borrar_by_id(id_tipo_fase)
        DBSession.flush()
        flash("Tipo de Fase eliminada!")
        redirect('/tipo_fase')
Пример #30
0
    def get_proyectos_por_filtro(self,param,texto):
        """
        Obtiene los proyectos buscados por nombre o descripción del proyecto.
        """

        if param == "nombre":
            proyectos = DBSession.query(Proyecto).filter(Proyecto.nombre_proyecto.like('%s%s%s' % ('%',texto,'%'))).all()
        elif param == "descripcion":
            proyectos = DBSession.query(Proyecto).filter(Proyecto.descripcion.like('%s%s%s' % ('%',texto,'%'))).all()
            
        return proyectos