コード例 #1
0
    def atributosDef(self, id, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
        fase = DBSession.query(Fase).filter_by(id=tipoItem.fase_id).one()
        atributos = DBSession.query(TipoItemUsuarioAtributos).filter_by(
            tipo_item_id=id).order_by(TipoItemUsuarioAtributos.id)
        from webhelpers import paginate
        count = atributos.count()
        page = int(named.get('page', '1'))
        currentPage = paginate.Page(
            atributos,
            page,
            item_count=count,
            items_per_page=3,
        )
        atributos = currentPage.items

        return dict(page='tipoItemUsuario',
                    user=user,
                    fase=fase,
                    atributos=atributos,
                    tipoItem=tipoItem,
                    subtitulo='ABM-TipoItemUsuario',
                    currentPage=currentPage)
コード例 #2
0
 def save_usuario_fase(self, fase, user, rol, **named):
     try:
         rol = int(rol)
         try:
             usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == fase).filter(UsuarioFaseRol.user_id == user).filter(UsuarioFaseRol.rol_id == rol).one()
             DBSession.delete(usuarioFaseRol)
         except:
             pass
         new = UsuarioFaseRol(user_id=user,
                                 fase_id=fase,
                                 rol_id=rol
                              ) 
         
         DBSession.add(new)
         
     except:
         
         for rol1 in rol:
             try:
                 usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == fase).filter(UsuarioFaseRol.user_id == user).filter(UsuarioFaseRol.rol_id == rol1).one()
                 DBSession.delete(usuarioFaseRol)
             except:
                 pass
             new = UsuarioFaseRol(user_id=user,
                                 fase_id=fase,
                                 rol_id=rol1
                              ) 
         
             DBSession.add(new)
             
     CambiarEstadoFase = DBSession.query(Fase).filter(Fase.id == fase).one()
     CambiarEstadoFase.estado_id = 1
     redirect('/proyecto/usuario_faseList/' + fase)
コード例 #3
0
   def eliminar_tipoItem(self,idFase,id):
 
       tipoAtrib=DBSession.query(TipoItemUsuarioAtributos).filter(TipoItemUsuarioAtributos.tipo_item_id==id)
       for i, atri in enumerate(tipoAtrib):
           DBSession.delete(atri) 
       DBSession.delete(DBSession.query(TipoItemUsuario).filter_by(id=id).one())
       redirect( '/tipoItems/tipoItemUsuario/'+ idFase+'/lista') 
コード例 #4
0
    def save_usuario_fase(self, fase, user, rol, **named):
        try:
            rol = int(rol)
            try:
                usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
                    UsuarioFaseRol.fase_id == fase).filter(
                        UsuarioFaseRol.user_id == user).filter(
                            UsuarioFaseRol.rol_id == rol).one()
                DBSession.delete(usuarioFaseRol)
            except:
                pass
            new = UsuarioFaseRol(user_id=user, fase_id=fase, rol_id=rol)

            DBSession.add(new)

        except:

            for rol1 in rol:
                try:
                    usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
                        UsuarioFaseRol.fase_id == fase).filter(
                            UsuarioFaseRol.user_id == user).filter(
                                UsuarioFaseRol.rol_id == rol1).one()
                    DBSession.delete(usuarioFaseRol)
                except:
                    pass
                new = UsuarioFaseRol(user_id=user, fase_id=fase, rol_id=rol1)

                DBSession.add(new)

        CambiarEstadoFase = DBSession.query(Fase).filter(Fase.id == fase).one()
        CambiarEstadoFase.estado_id = 1
        redirect('/proyecto/usuario_faseList/' + fase)
コード例 #5
0
 def accionSolicitud( self, idFase, **named):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     
     lbs=DBSession.query(LineaBase).filter_by(fase_id=idFase).filter_by(estado_id = 2).all()
     for lb in lbs:
         accion=named.get(str(lb.id),'')
         if (accion!="") and (accion=="Cerrar"):
             lb.estado_id=1
             DBSession.flush()
             ###Cambia Estado del Item
             items=DBSession.query(ItemUsuario).filter_by(linea_base_id=lb.id).all()
             for item in items:
                 if(item.estado_id == 5):
                     item.estado_id=3
                     DBSession.flush
             estados=[1,2,3,4,5,8]
             itemsEnLB=DBSession.query(ItemUsuario).filter(ItemUsuario.fase_id==idFase).filter(ItemUsuario.estado_id.in_(estados)).order_by(ItemUsuario.id).all()
             faseConLB=0
             for itemP in itemsEnLB:
                 if itemP.estado_id!=3:
                     faseConLB=1
             if faseConLB==0:
                 fase=DBSession.query(Fase).filter_by(id=idFase).one()
                 fase.estado_id=4
                 DBSession.flush()
     fase=DBSession.query(Fase).filter_by(id=idFase).one()
               
     redirect( '/item/itemList/'+str(fase.id) )
コード例 #6
0
 def listar_linea_base(self, idproyecto,idfase, **named):
     
     expresion=""
    
     submit=named.get( 'submit')
     
     if(submit=="Buscar"): 
         expresion=named.get( 'filtro')
         
         if expresion.isdigit():
             lista=DBSession.query(LineaBase).filter(LineaBase.estado_id == 1).filter(LineaBase.fase_id==idfase).filter(LineaBase.id == int(expresion)).all()
         else:
             lista=DBSession.query(LineaBase).filter(LineaBase.estado_id == 1).filter(LineaBase.fase_id==idfase).all()
     else:
         lista=DBSession.query(LineaBase).filter(LineaBase.estado_id == 1).filter(LineaBase.fase_id==idfase).all()
     
     
     fase = DBSession.query(Fase).filter(Fase.id == idfase).one()
     proyecto = DBSession.query(Proyecto).filter(Proyecto.id == idproyecto).one()
     
     
     from webhelpers import paginate
     #count = items.count()
     count = lista.__len__()
     page =int( named.get( 'page', '1' ))
     currentPage = paginate.Page(
         lista, page, item_count=count, 
         items_per_page=2,
     )
     
     lista = currentPage.items
     
     return dict(lista=lista, fase=fase, proyecto=proyecto,filtro=expresion, currentPage=currentPage, page=page)
コード例 #7
0
 def items_linea_base(self, lb_id, idfase, **named):
     
    
     expresion=""
     
     submit=named.get( 'submit')
     
     if(submit=="Buscar"): 
         expresion=named.get( 'filtro')
         expre_cad=expresion
         items=DBSession.query(ItemUsuario).filter(ItemUsuario.estado_id==3).filter(ItemUsuario.linea_base_id==lb_id).filter(or_(ItemUsuario.descripcion.like('%'+str(expre_cad)+'%'),(ItemUsuario.cod_item.like('%'+str(expre_cad)+'%')))).all()
     else:
         items = DBSession.query(ItemUsuario).filter(ItemUsuario.linea_base_id == lb_id).all()
     
     
     fase = DBSession.query(Fase).filter(Fase.id == idfase).one()
     lineabase = DBSession.query(LineaBase).filter(LineaBase.id == lb_id).one()
     
     from webhelpers import paginate
     #count = items.count()
     count = items.__len__()
     page =int( named.get( 'page', '1' ))
     currentPage = paginate.Page(
         items, page, item_count=count, 
         items_per_page=2,
     )
     items = currentPage.items
     
     return dict(items=items, fase=fase, filtro=expresion, lineabase=lineabase, page = page, currentPage=currentPage)
コード例 #8
0
    def agregar_tipoItem(self, id):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']

        fase = DBSession.query(Fase).filter_by(id=id).one()
        proyecto = DBSession.query(Proyecto).filter_by(
            id=fase.proyecto_id).one()
        todosItems = DBSession.query(TipoItemUsuario).filter_by(
            fase_id=fase.id)
        codigos = []
        for i, itemUser in enumerate(todosItems):
            codigos.append(itemUser.codigo)
            codigos.append(",")

        tipoItem = TipoItemUsuario()
        tipoItem.descripcion = ''
        tipoItem.codigo = ''
        #fases=DBSession.query(Fase).filter_by(proyecto_id=id)
        return dict(page='Nuevo recurso',
                    user=user,
                    codigos=codigos,
                    fase=fase,
                    proyecto=proyecto,
                    tipoItem=tipoItem,
                    subtitulo='ABM-Recurso')
コード例 #9
0
 def atributo_editar(self,id,idAtributo):
     atributo = DBSession.query(TipoItemUsuarioAtributos).filter_by(id=idAtributo).one()
     tipoItem=DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipo=DBSession.query(Tipo).filter_by(id=atributo.tipo_id).order_by(Tipo.id)
     tipos=DBSession.query(Tipo).order_by(Tipo.id)
     return dict(page='Editar Atributo',
                 id=id,tipo=tipo,idTipo=atributo.tipo_id,tipos=tipos,tipoItem=tipoItem,atributo=atributo,subtitulo='Atributo-Editar')
コード例 #10
0
    def accionSolicitud(self, idFase, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']

        lbs = DBSession.query(LineaBase).filter_by(fase_id=idFase).filter_by(
            estado_id=2).all()
        for lb in lbs:
            accion = named.get(str(lb.id), '')
            if (accion != "") and (accion == "Cerrar"):
                lb.estado_id = 1
                DBSession.flush()
                ###Cambia Estado del Item
                items = DBSession.query(ItemUsuario).filter_by(
                    linea_base_id=lb.id).all()
                for item in items:
                    if (item.estado_id == 5):
                        item.estado_id = 3
                        DBSession.flush
                estados = [1, 2, 3, 4, 5, 8]
                itemsEnLB = DBSession.query(ItemUsuario).filter(
                    ItemUsuario.fase_id == idFase).filter(
                        ItemUsuario.estado_id.in_(estados)).order_by(
                            ItemUsuario.id).all()
                faseConLB = 0
                for itemP in itemsEnLB:
                    if itemP.estado_id != 3:
                        faseConLB = 1
                if faseConLB == 0:
                    fase = DBSession.query(Fase).filter_by(id=idFase).one()
                    fase.estado_id = 4
                    DBSession.flush()
        fase = DBSession.query(Fase).filter_by(id=idFase).one()

        redirect('/item/itemList/' + str(fase.id))
コード例 #11
0
 def agregar_Atributo(self,id):
     tipoItem=DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipos=DBSession.query(Tipo).order_by(Tipo.id)
     atributo=TipoItemUsuarioAtributos()
     atributo.descripcion=''
     return dict(page='Nuevo Atributo',
                 atributo=atributo, 
                 tipoItem=tipoItem,tipos=tipos,subtitulo='Agregar-Atributos')
コード例 #12
0
 def faseDef(self, id):
     fases = DBSession.query(Fase).order_by(Fase.id)
     proyecto = DBSession.query(Proyecto).filter_by(id=id).one()
     return dict(page='Lista de Fases',
                 id=id,
                 fases=fases,
                 proyecto=proyecto,
                 subtitulo='Lista de Fases')
コード例 #13
0
    def eliminar_tipoItem(self, idFase, id):

        tipoAtrib = DBSession.query(TipoItemUsuarioAtributos).filter(
            TipoItemUsuarioAtributos.tipo_item_id == id)
        for i, atri in enumerate(tipoAtrib):
            DBSession.delete(atri)
        DBSession.delete(
            DBSession.query(TipoItemUsuario).filter_by(id=id).one())
        redirect('/tipoItems/tipoItemUsuario/' + idFase + '/lista')
コード例 #14
0
 def agregar_Atributo(self, id):
     tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipos = DBSession.query(Tipo).order_by(Tipo.id)
     atributo = TipoItemUsuarioAtributos()
     atributo.descripcion = ''
     return dict(page='Nuevo Atributo',
                 atributo=atributo,
                 tipoItem=tipoItem,
                 tipos=tipos,
                 subtitulo='Agregar-Atributos')
コード例 #15
0
    def tipoItemUsuario(self,id,expresion,**named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        
        if expresion=="lista":
            muestraBoton="false"    
            fase = DBSession.query(Fase).filter_by(id=id).one()
            proyecto = DBSession.query(Proyecto).filter_by(id=fase.proyecto_id).one()
            tiposItemUs=DBSession.query(TipoItemUsuario).filter_by(fase_id=fase.id).order_by( TipoItemUsuario.id )
        else :
            muestraBoton="true"  
            if expresion.isdigit():
                fase = DBSession.query(Fase).filter_by(id=id).one()
                proyecto = DBSession.query(Proyecto).filter_by(id=fase.proyecto_id).one()
                tiposItemUs=DBSession.query(TipoItemUsuario).filter_by(fase_id=fase.id).filter_by(id=expresion)     
            else:
                fase = DBSession.query(Fase).filter_by(id=id).one()    
                proyecto = DBSession.query(Proyecto).filter_by(id=fase.proyecto_id).one()
                tiposItemUs=DBSession.query(TipoItemUsuario).filter_by(fase_id=fase.id).filter((TipoItemUsuario.descripcion.like('%'+expresion+'%'))).order_by(TipoItemUsuario.id)
                
        from webhelpers import paginate
        count = tiposItemUs.count()
        page =int( named.get( 'page', '1' ))
        currentPage = paginate.Page(
            tiposItemUs, page, item_count=count,
            items_per_page=3,
        )
        tiposItemUs = currentPage.items 

        return dict(muestraBoton=muestraBoton,user=user,page='tipoItemUsuario',fase=fase,
                    tiposItemUs=tiposItemUs, proyecto=proyecto,
                    subtitulo='ABM-TipoItemUsuario',currentPage = currentPage)
コード例 #16
0
 def eliminar_usuario_fase(self, ufr):
     usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.id == ufr).one()
     fase = usuarioFaseRol.fase_id     
     DBSession.delete(usuarioFaseRol)         
     usuarioFaseRolcantidad = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == fase).all()
     if usuarioFaseRolcantidad.__len__() == 0:
         faseCambiarEstado = DBSession.query(Fase).filter(Fase.id == fase).one()
         faseCambiarEstado.estado_id = 3
         DBSession.flush()
                                  
     redirect('/proyecto/usuario_faseList/' + str(fase))
コード例 #17
0
 def agregar_fase(self, id):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     proyecto = DBSession.query(Proyecto).filter(Proyecto.id == id).one()
     fase = DBSession.query(Fase).filter(Fase.proyecto_id == proyecto.id).all()
     codigos = []
     for i, cod in enumerate(fase):
         codigos.append(cod.codigo_fase)
         codigos.append(",")
     return dict(page='Nueva Fase',
                 proyecto=proyecto, user=user , codigos=codigos)
コード例 #18
0
 def listar_fases_definidas(self, idfaseDestino,idproyecto, **named):
     expre_cad=""
     proyecto = DBSession.query(Proyecto).filter_by(id= idproyecto).one()
     
     submit=named.get( 'submit')
     
     if(submit=="Buscar"): 
         expresion=named.get( 'filtros')
         expre_cad=expresion
         fases = DBSession.query(Fase).filter(Fase.proyecto_id == idproyecto).filter(Fase.descripcion.like('%'+str(expre_cad)+'%')).all()
     else:
         fases = DBSession.query(Fase).filter(Fase.proyecto_id == idproyecto).all()
     return dict(proyecto=proyecto, fases=fases, filtro = expre_cad, idfaseDestino=idfaseDestino)
コード例 #19
0
    def eliminar_usuario_fase(self, ufr):
        usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
            UsuarioFaseRol.id == ufr).one()
        fase = usuarioFaseRol.fase_id
        DBSession.delete(usuarioFaseRol)
        usuarioFaseRolcantidad = DBSession.query(UsuarioFaseRol).filter(
            UsuarioFaseRol.fase_id == fase).all()
        if usuarioFaseRolcantidad.__len__() == 0:
            faseCambiarEstado = DBSession.query(Fase).filter(
                Fase.id == fase).one()
            faseCambiarEstado.estado_id = 3
            DBSession.flush()

        redirect('/proyecto/usuario_faseList/' + str(fase))
コード例 #20
0
 def agregar_fase(self, id):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     proyecto = DBSession.query(Proyecto).filter(Proyecto.id == id).one()
     fase = DBSession.query(Fase).filter(
         Fase.proyecto_id == proyecto.id).all()
     codigos = []
     for i, cod in enumerate(fase):
         codigos.append(cod.codigo_fase)
         codigos.append(",")
     return dict(page='Nueva Fase',
                 proyecto=proyecto,
                 user=user,
                 codigos=codigos)
コード例 #21
0
 def editar_usuario_fase(self, ufr, **named):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.id == ufr).one()
     fase = DBSession.query(Fase).filter(Fase.id == usuarioFaseRol.fase_id).one()
     usuario = DBSession.query(User).filter(User.user_id == usuarioFaseRol.user_id).one()
     rol = DBSession.query(Rol).filter(Rol.group_id == usuarioFaseRol.rol_id).one()
     roles = DBSession.query(Rol).filter(or_(Rol.group_name == 'Aprobador', Rol.group_name == 'Desarrollador')).all()
     return dict(page='Editar Usuario de fase' + fase.descripcion,
                 fase=fase,
                 usuario=usuario,
                 roles=roles,
                 rol=rol,
                 user=user,
                 ufr=usuarioFaseRol)
コード例 #22
0
 def tipoItem_editar(self,id,idFase):
     fase=DBSession.query(Fase).filter_by(id=idFase).one()
     proyecto=DBSession.query(Proyecto).filter_by(id=fase.proyecto_id).one()
     tipoItem=DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     todosItems=DBSession.query(TipoItemUsuario).filter_by(fase_id=fase.id)
     codigos=[]
     for i, itemUser in enumerate(todosItems):
         codigos.append(itemUser.codigo)
         codigos.append(",")
     
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     
     return dict(page='Editar Tipo de Item',user=user,codigos=codigos,
                 id=id,proyecto=proyecto,fase=fase,tipoItem=tipoItem,subtitulo='TipoItem-Editar')
コード例 #23
0
 def listar_proyectos_definidos(self, idfaseDestino,**named):
     
     
     submit=named.get( 'submit')
     
     if(submit=="Buscar"): 
         expresion=named.get( 'filtros')
         expre_cad=expresion
         proyectos = DBSession.query(Proyecto).filter(or_(Proyecto.estado == 2,Proyecto.estado == 3 )).filter(Proyecto.descripcion.like('%'+str(expre_cad)+'%')).all()
     else:
         proyectos = DBSession.query(Proyecto).filter(or_(Proyecto.estado == 2,Proyecto.estado == 3 )).all()
     
     
     
     return dict(proyecto=proyectos, filtro='', proy = '1', idfaseDestino=idfaseDestino)
コード例 #24
0
 def atributo_editar(self, id, idAtributo):
     atributo = DBSession.query(TipoItemUsuarioAtributos).filter_by(
         id=idAtributo).one()
     tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipo = DBSession.query(Tipo).filter_by(id=atributo.tipo_id).order_by(
         Tipo.id)
     tipos = DBSession.query(Tipo).order_by(Tipo.id)
     return dict(page='Editar Atributo',
                 id=id,
                 tipo=tipo,
                 idTipo=atributo.tipo_id,
                 tipos=tipos,
                 tipoItem=tipoItem,
                 atributo=atributo,
                 subtitulo='Atributo-Editar')
コード例 #25
0
    def agregar_usuario_fase(self, id, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        usuarios = DBSession.query(User).join((Rol, User.groups)).filter(or_(Rol.group_name == 'Aprobador', Rol.group_name == 'Desarrollador')).all()
        roles = DBSession.query(Rol).filter(or_(Rol.group_name == 'Aprobador', Rol.group_name == 'Desarrollador')).all()
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
#        usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == id).all()
        
        
        return dict(page='Asignar Usuario a fase ' + fase.descripcion,
                    usuarios=usuarios,
                    roles=roles,
                    proyecto_id=id,
                    user=user,
                    fase=fase) 
コード例 #26
0
 def nuevo(self):
     """Handle the front-page."""
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     lideres = DBSession.query(User).join((Rol, User.groups)).filter(Rol.group_name == 'LiderProyecto').all()
     nombreProyectos = []
     proyectos = DBSession.query(Proyecto).all()
     for proyecto in proyectos:
         nombreProyectos.append(proyecto.descripcion)
         nombreProyectos.append(",")
     return dict(
         page='Nuevo Proyecto',
         lideres=lideres,
         nombreProyectos=nombreProyectos,
         user=user
     )
コード例 #27
0
 def actualizar_tipoItem( self,id,idProy, idFase,codItem,nombre, submit ):
     """Create a new movie record"""
     tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipoItem.descripcion=nombre,
     tipoItem.codigo=codItem,
     DBSession.flush()
     redirect( '/tipoItems/tipoItemUsuario/'+ idFase+'/lista')
コード例 #28
0
 def actualizar_tipoItem(self, id, idProy, idFase, codItem, nombre, submit):
     """Create a new movie record"""
     tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
     tipoItem.descripcion = nombre,
     tipoItem.codigo = codItem,
     DBSession.flush()
     redirect('/tipoItems/tipoItemUsuario/' + idFase + '/lista')
コード例 #29
0
 def nuevo(self):
     """Handle the front-page."""
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     lideres = DBSession.query(User).join(
         (Rol,
          User.groups)).filter(Rol.group_name == 'LiderProyecto').all()
     nombreProyectos = []
     proyectos = DBSession.query(Proyecto).all()
     for proyecto in proyectos:
         nombreProyectos.append(proyecto.descripcion)
         nombreProyectos.append(",")
     return dict(page='Nuevo Proyecto',
                 lideres=lideres,
                 nombreProyectos=nombreProyectos,
                 user=user)
コード例 #30
0
    def actualizar_fase(self, id, descripcion_proyecto, nombre_fase, numero_fase, submit):
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
        fase.descripcion = nombre_fase
        fase.numero_fase = numero_fase
#        fase.codigo_fase = codFase
        DBSession.flush()
        redirect('/proyecto/definir_fase/' + str(fase.proyecto_id))
コード例 #31
0
    def editar(self, id):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        
        proyecto = DBSession.query(Proyecto).filter_by(id=id).one()

        if proyecto.lider != None:
            usuarios = DBSession.query(User).join((Rol, User.groups)).filter(Rol.group_name == 'LiderProyecto').filter(User.user_id != proyecto.lider.user_id).all()
        else:
            usuarios = DBSession.query(User).join((Rol, User.groups)).filter(Rol.group_name == 'LiderProyecto')
            
        return dict(page='Editar Proyecto',
                    id=id,
                    proyecto=proyecto,
                    subtitulo='ABM-Proyecto',
                    user=user,
                    usuarios=usuarios)
コード例 #32
0
    def eliminar_fase(self, id):
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
        id_proyecto = fase.proyecto_id
        ufrs = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == id).all()
        for ufr in ufrs:
            DBSession.delete(ufr)
        DBSession.flush()
#        itemusuarios = DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.fase_id == id).all()
                    
        DBSession.delete(fase)
        fases = DBSession.query(Fase).filter(Fase.proyecto_id == id_proyecto).order_by(Fase.id).all()
        for i, fase in enumerate(fases):
            fase.numero_fase = i + 1
            DBSession.flush()
        
        
        redirect('/proyecto/definir_fase/' + str(id_proyecto))    
コード例 #33
0
 def editar_fase(self, id):
     
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     fase = DBSession.query(Fase).filter(Fase.id == id).one()
     fases = DBSession.query(Fase).filter(Fase.proyecto_id == fase.proyecto_id).all()
     codigos = []
     for i, cod in enumerate(fases):
         codigos.append(cod.codigo_fase)
         codigos.append(",")
         
     return dict(page='Editar fase',
                 id=id,
                 fase=fase,
                 user=user,
                 codigos=codigos,
                 subtitulo='ABM-Fase')
コード例 #34
0
 def actualizar_atributo( self,tipo_item_id, id, nombre,idTipo, submit ):
     """Create a new movie record"""
     atributo = DBSession.query(TipoItemUsuarioAtributos).filter_by(id=id).one()
     atributo.nombre_atributo=nombre,
     atributo.tipo_item_id=tipo_item_id,
     atributo.tipo_id=idTipo,
     DBSession.flush()
     redirect( './atributosDef/'+ tipo_item_id)
コード例 #35
0
 def actualizar_fase(self, id, descripcion_proyecto, nombre_fase,
                     numero_fase, submit):
     fase = DBSession.query(Fase).filter(Fase.id == id).one()
     fase.descripcion = nombre_fase
     fase.numero_fase = numero_fase
     #        fase.codigo_fase = codFase
     DBSession.flush()
     redirect('/proyecto/definir_fase/' + str(fase.proyecto_id))
コード例 #36
0
ファイル: root.py プロジェクト: rudyvallejos/GestionItems
 def agregar_permiso(self):
     permiso = Permission
     permiso.permission_name = ''
     permiso.description =''
     permisos=DBSession.query(Permission)
     return dict(page = 'Nuevo Permiso',
                 permisos = permisos, 
                 permiso = permiso, subtitulo = 'ABM-Permiso')
コード例 #37
0
    def listar_linea_base(self, idproyecto, idfase, **named):

        expresion = ""

        submit = named.get('submit')

        if (submit == "Buscar"):
            expresion = named.get('filtro')

            if expresion.isdigit():
                lista = DBSession.query(LineaBase).filter(
                    LineaBase.estado_id == 1).filter(
                        LineaBase.fase_id == idfase).filter(
                            LineaBase.id == int(expresion)).all()
            else:
                lista = DBSession.query(LineaBase).filter(
                    LineaBase.estado_id == 1).filter(
                        LineaBase.fase_id == idfase).all()
        else:
            lista = DBSession.query(LineaBase).filter(
                LineaBase.estado_id == 1).filter(
                    LineaBase.fase_id == idfase).all()

        fase = DBSession.query(Fase).filter(Fase.id == idfase).one()
        proyecto = DBSession.query(Proyecto).filter(
            Proyecto.id == idproyecto).one()

        from webhelpers import paginate
        #count = items.count()
        count = lista.__len__()
        page = int(named.get('page', '1'))
        currentPage = paginate.Page(
            lista,
            page,
            item_count=count,
            items_per_page=2,
        )

        lista = currentPage.items

        return dict(lista=lista,
                    fase=fase,
                    proyecto=proyecto,
                    filtro=expresion,
                    currentPage=currentPage,
                    page=page)
コード例 #38
0
    def proyectoDef(self, id, **named):
        fases = DBSession.query(Fase).filter(Fase.proyecto_id == id)

        proyecto_id = id

        return dict(page='Definir Proyecto',
                    proyecto_id=proyecto_id,
                    subtitulo='Definir Proyecto')
コード例 #39
0
 def importar_tipoItems_proyecto(self, idfaseDestino,idfase, **named):
     
     #proyecto= DBSession.query(Proyecto).filter(Proyecto.id == idproyecto).one()
     itemSeleccionado=DBSession.query(TipoItemUsuario).filter_by(id=-1)
     
     itemselect=named.get( 'itemselect','0')
     
     if (itemselect!=0 ):
         
         try:
             itemselect=int(itemselect)
             itemselect=[itemselect]
             itemSeleccionado=DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.id.in_(itemselect)).order_by(TipoItemUsuario.id)
             
         except:
             itemSeleccionado=DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.id.in_(itemselect)).order_by(TipoItemUsuario.id)
     
     fase= DBSession.query(Fase).filter(Fase.id == idfase).one()
     
     proyecto = DBSession.query(Proyecto).filter(Proyecto.id == fase.proyecto_id).one()
     
     submit=named.get('submit')
     
     if(submit=="Buscar"): 
         expresion=named.get( 'filtros')
         expre_cad=expresion
         itemUsuarios = DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.fase_id == idfase).filter(or_(TipoItemUsuario.descripcion.like('%'+str(expre_cad)+'%'),(TipoItemUsuario.codigo.like('%'+str(expre_cad)+'%')))).all()
     else:
         itemUsuarios = DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.fase_id == idfase).all()
     
     
         
     
     return dict(listaItemUser=itemUsuarios, proyecto=proyecto, itemSeleccionado=itemSeleccionado, filtro = "",fase=fase,idfaseDestino=idfaseDestino)
コード例 #40
0
    def actualizar_usuario_fase(self, fase, ufr, submit, **named):
        rol = named.get('rol')
        usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
            UsuarioFaseRol.id == ufr).one()
        user = usuarioFaseRol.user_id

        if rol == None:
            usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
                UsuarioFaseRol.id == ufr).one()
            DBSession.delete(usuarioFaseRol)

        else:

            try:
                rol = int(rol)
                try:
                    usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
                        UsuarioFaseRol.fase_id == fase).filter(
                            UsuarioFaseRol.user_id == user).filter(
                                UsuarioFaseRol.rol_id == rol).one()
                    DBSession.delete(usuarioFaseRol)
                except:
                    pass
                new = UsuarioFaseRol(user_id=user, fase_id=fase, rol_id=rol)

                DBSession.add(new)

            except:

                for rol1 in rol:
                    try:
                        usuarioFaseRol = DBSession.query(
                            UsuarioFaseRol).filter(
                                UsuarioFaseRol.fase_id == fase).filter(
                                    UsuarioFaseRol.user_id == user).filter(
                                        UsuarioFaseRol.rol_id == rol1).one()
                        DBSession.delete(usuarioFaseRol)
                    except:
                        pass
                    new = UsuarioFaseRol(user_id=user,
                                         fase_id=fase,
                                         rol_id=rol1)

                    DBSession.add(new)
        redirect('/proyecto/usuario_faseList/' + fase)
コード例 #41
0
    def editar_fase(self, id):

        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
        fases = DBSession.query(Fase).filter(
            Fase.proyecto_id == fase.proyecto_id).all()
        codigos = []
        for i, cod in enumerate(fases):
            codigos.append(cod.codigo_fase)
            codigos.append(",")

        return dict(page='Editar fase',
                    id=id,
                    fase=fase,
                    user=user,
                    codigos=codigos,
                    subtitulo='ABM-Fase')
コード例 #42
0
    def atributosDef(self,id,**named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        tipoItem = DBSession.query(TipoItemUsuario).filter_by(id=id).one()
        fase=DBSession.query(Fase).filter_by(id=tipoItem.fase_id).one()
        atributos=DBSession.query(TipoItemUsuarioAtributos).filter_by(tipo_item_id=id).order_by( TipoItemUsuarioAtributos.id )    
        from webhelpers import paginate
        count = atributos.count()
        page =int( named.get( 'page', '1' ))
        currentPage = paginate.Page(
            atributos, page, item_count=count,
            items_per_page=3,
        )
        atributos = currentPage.items

        return dict(page='tipoItemUsuario',user=user, fase=fase,
                    atributos=atributos, tipoItem=tipoItem,
                    subtitulo='ABM-TipoItemUsuario',currentPage = currentPage)
コード例 #43
0
    def eliminar_fase(self, id):
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
        id_proyecto = fase.proyecto_id
        ufrs = DBSession.query(UsuarioFaseRol).filter(
            UsuarioFaseRol.fase_id == id).all()
        for ufr in ufrs:
            DBSession.delete(ufr)
        DBSession.flush()
        #        itemusuarios = DBSession.query(TipoItemUsuario).filter(TipoItemUsuario.fase_id == id).all()

        DBSession.delete(fase)
        fases = DBSession.query(Fase).filter(
            Fase.proyecto_id == id_proyecto).order_by(Fase.id).all()
        for i, fase in enumerate(fases):
            fase.numero_fase = i + 1
            DBSession.flush()

        redirect('/proyecto/definir_fase/' + str(id_proyecto))
コード例 #44
0
 def actualizar(self, id, descripcion, id_user , submit):
     """Create a new movie record"""
     proyecto = DBSession.query(Proyecto).filter_by(id=id).one()
     proyecto.descripcion = descripcion
     proyecto.id_lider = id_user
     
     DBSession.flush()
     
     redirect('/proyecto')
コード例 #45
0
 def actualizar_atributo(self, tipo_item_id, id, nombre, idTipo, submit):
     """Create a new movie record"""
     atributo = DBSession.query(TipoItemUsuarioAtributos).filter_by(
         id=id).one()
     atributo.nombre_atributo = nombre,
     atributo.tipo_item_id = tipo_item_id,
     atributo.tipo_id = idTipo,
     DBSession.flush()
     redirect('./atributosDef/' + tipo_item_id)
コード例 #46
0
    def actualizar(self, id, descripcion, id_user, submit):
        """Create a new movie record"""
        proyecto = DBSession.query(Proyecto).filter_by(id=id).one()
        proyecto.descripcion = descripcion
        proyecto.id_lider = id_user

        DBSession.flush()

        redirect('/proyecto')
コード例 #47
0
 def agregar_permiso(self):
     permiso = Permission
     permiso.permission_name = ''
     permiso.description = ''
     permisos = DBSession.query(Permission)
     return dict(page='Nuevo Permiso',
                 permisos=permisos,
                 permiso=permiso,
                 subtitulo='ABM-Permiso')
コード例 #48
0
    def agregar_usuario_fase(self, id, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        usuarios = DBSession.query(User).join((Rol, User.groups)).filter(
            or_(Rol.group_name == 'Aprobador',
                Rol.group_name == 'Desarrollador')).all()
        roles = DBSession.query(Rol).filter(
            or_(Rol.group_name == 'Aprobador',
                Rol.group_name == 'Desarrollador')).all()
        fase = DBSession.query(Fase).filter(Fase.id == id).one()
        #        usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(UsuarioFaseRol.fase_id == id).all()

        return dict(page='Asignar Usuario a fase ' + fase.descripcion,
                    usuarios=usuarios,
                    roles=roles,
                    proyecto_id=id,
                    user=user,
                    fase=fase)
コード例 #49
0
 def agregar_tipoItem(self,id):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     
     fase=DBSession.query(Fase).filter_by(id=id).one()
     proyecto=DBSession.query(Proyecto).filter_by(id=fase.proyecto_id).one()
     todosItems=DBSession.query(TipoItemUsuario).filter_by(fase_id=fase.id)
     codigos=[]
     for i, itemUser in enumerate(todosItems):
         codigos.append(itemUser.codigo)
         codigos.append(",")
     
     tipoItem=TipoItemUsuario()
     tipoItem.descripcion=''
     tipoItem.codigo=''
     #fases=DBSession.query(Fase).filter_by(proyecto_id=id)
     return dict(page='Nuevo recurso',user=user,codigos=codigos,fase=fase,
                 proyecto=proyecto, 
                 tipoItem=tipoItem,subtitulo='ABM-Recurso')
コード例 #50
0
    def avisoEliminarProyecto(self, id, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']
        proyecto = DBSession.query(Proyecto).filter_by(id=id).one()

        return dict(page='Aviso Editar Item',
                    user=user,
                    fases=proyecto.fases,
                    proyecto=proyecto,
                    subtitulo='Aviso')
コード例 #51
0
    def items_linea_base(self, lb_id, idfase, **named):

        expresion = ""

        submit = named.get('submit')

        if (submit == "Buscar"):
            expresion = named.get('filtro')
            expre_cad = expresion
            items = DBSession.query(ItemUsuario).filter(
                ItemUsuario.estado_id == 3).filter(
                    ItemUsuario.linea_base_id == lb_id).filter(
                        or_(
                            ItemUsuario.descripcion.like('%' + str(expre_cad) +
                                                         '%'),
                            (ItemUsuario.cod_item.like('%' + str(expre_cad) +
                                                       '%')))).all()
        else:
            items = DBSession.query(ItemUsuario).filter(
                ItemUsuario.linea_base_id == lb_id).all()

        fase = DBSession.query(Fase).filter(Fase.id == idfase).one()
        lineabase = DBSession.query(LineaBase).filter(
            LineaBase.id == lb_id).one()

        from webhelpers import paginate
        #count = items.count()
        count = items.__len__()
        page = int(named.get('page', '1'))
        currentPage = paginate.Page(
            items,
            page,
            item_count=count,
            items_per_page=2,
        )
        items = currentPage.items

        return dict(items=items,
                    fase=fase,
                    filtro=expresion,
                    lineabase=lineabase,
                    page=page,
                    currentPage=currentPage)
コード例 #52
0
    def listar_fases_definidas(self, idfaseDestino, idproyecto, **named):
        expre_cad = ""
        proyecto = DBSession.query(Proyecto).filter_by(id=idproyecto).one()

        submit = named.get('submit')

        if (submit == "Buscar"):
            expresion = named.get('filtros')
            expre_cad = expresion
            fases = DBSession.query(Fase).filter(
                Fase.proyecto_id == idproyecto).filter(
                    Fase.descripcion.like('%' + str(expre_cad) + '%')).all()
        else:
            fases = DBSession.query(Fase).filter(
                Fase.proyecto_id == idproyecto).all()
        return dict(proyecto=proyecto,
                    fases=fases,
                    filtro=expre_cad,
                    idfaseDestino=idfaseDestino)
コード例 #53
0
    def listar_proyectos_definidos(self, idfaseDestino, **named):

        submit = named.get('submit')

        if (submit == "Buscar"):
            expresion = named.get('filtros')
            expre_cad = expresion
            proyectos = DBSession.query(Proyecto).filter(
                or_(Proyecto.estado == 2, Proyecto.estado == 3)).filter(
                    Proyecto.descripcion.like('%' + str(expre_cad) +
                                              '%')).all()
        else:
            proyectos = DBSession.query(Proyecto).filter(
                or_(Proyecto.estado == 2, Proyecto.estado == 3)).all()

        return dict(proyecto=proyectos,
                    filtro='',
                    proy='1',
                    idfaseDestino=idfaseDestino)
コード例 #54
0
 def avisoEliminarProyecto(self,id, **named):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     proyecto = DBSession.query(Proyecto).filter_by(id=id).one()
     
     return dict(page='Aviso Editar Item',
                 user=user,
                 fases=proyecto.fases,
                 proyecto=proyecto,
                 subtitulo='Aviso')
コード例 #55
0
    def proyectoDef(self, id, **named):
        fases = DBSession.query(Fase).filter(Fase.proyecto_id == id)
        
        proyecto_id = id
                
        return dict(page='Definir Proyecto',
                    proyecto_id=proyecto_id,

                    subtitulo='Definir Proyecto'
                    )
コード例 #56
0
    def tipoItemUsuario(self, id, expresion, **named):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']

        if expresion == "lista":
            muestraBoton = "false"
            fase = DBSession.query(Fase).filter_by(id=id).one()
            proyecto = DBSession.query(Proyecto).filter_by(
                id=fase.proyecto_id).one()
            tiposItemUs = DBSession.query(TipoItemUsuario).filter_by(
                fase_id=fase.id).order_by(TipoItemUsuario.id)
        else:
            muestraBoton = "true"
            if expresion.isdigit():
                fase = DBSession.query(Fase).filter_by(id=id).one()
                proyecto = DBSession.query(Proyecto).filter_by(
                    id=fase.proyecto_id).one()
                tiposItemUs = DBSession.query(TipoItemUsuario).filter_by(
                    fase_id=fase.id).filter_by(id=expresion)
            else:
                fase = DBSession.query(Fase).filter_by(id=id).one()
                proyecto = DBSession.query(Proyecto).filter_by(
                    id=fase.proyecto_id).one()
                tiposItemUs = DBSession.query(TipoItemUsuario).filter_by(
                    fase_id=fase.id).filter(
                        (TipoItemUsuario.descripcion.like('%' + expresion +
                                                          '%')
                         )).order_by(TipoItemUsuario.id)

        from webhelpers import paginate
        count = tiposItemUs.count()
        page = int(named.get('page', '1'))
        currentPage = paginate.Page(
            tiposItemUs,
            page,
            item_count=count,
            items_per_page=3,
        )
        tiposItemUs = currentPage.items

        return dict(muestraBoton=muestraBoton,
                    user=user,
                    page='tipoItemUsuario',
                    fase=fase,
                    tiposItemUs=tiposItemUs,
                    proyecto=proyecto,
                    subtitulo='ABM-TipoItemUsuario',
                    currentPage=currentPage)
コード例 #57
0
ファイル: root.py プロジェクト: rudyvallejos/GestionItems
 def actualizar_permiso( self, id, name,descripcion, submit ):
     """Create a new movie record"""
    
     permiso = DBSession.query(Permission).filter_by(permission_id=id).one()
    
     permiso.permission_name = name
     permiso.description = descripcion
     
     DBSession.flush()
    
     redirect( './permiso' )
コード例 #58
0
    def actualizar_permiso(self, id, name, descripcion, submit):
        """Create a new movie record"""

        permiso = DBSession.query(Permission).filter_by(permission_id=id).one()

        permiso.permission_name = name
        permiso.description = descripcion

        DBSession.flush()

        redirect('./permiso')
コード例 #59
0
    def editar(self, id):
        identity = request.environ.get('repoze.who.identity')
        user = identity['user']

        proyecto = DBSession.query(Proyecto).filter_by(id=id).one()

        if proyecto.lider != None:
            usuarios = DBSession.query(User).join((Rol, User.groups)).filter(
                Rol.group_name == 'LiderProyecto').filter(
                    User.user_id != proyecto.lider.user_id).all()
        else:
            usuarios = DBSession.query(User).join(
                (Rol, User.groups)).filter(Rol.group_name == 'LiderProyecto')

        return dict(page='Editar Proyecto',
                    id=id,
                    proyecto=proyecto,
                    subtitulo='ABM-Proyecto',
                    user=user,
                    usuarios=usuarios)
コード例 #60
0
 def editar_usuario_fase(self, ufr, **named):
     identity = request.environ.get('repoze.who.identity')
     user = identity['user']
     usuarioFaseRol = DBSession.query(UsuarioFaseRol).filter(
         UsuarioFaseRol.id == ufr).one()
     fase = DBSession.query(Fase).filter(
         Fase.id == usuarioFaseRol.fase_id).one()
     usuario = DBSession.query(User).filter(
         User.user_id == usuarioFaseRol.user_id).one()
     rol = DBSession.query(Rol).filter(
         Rol.group_id == usuarioFaseRol.rol_id).one()
     roles = DBSession.query(Rol).filter(
         or_(Rol.group_name == 'Aprobador',
             Rol.group_name == 'Desarrollador')).all()
     return dict(page='Editar Usuario de fase' + fase.descripcion,
                 fase=fase,
                 usuario=usuario,
                 roles=roles,
                 rol=rol,
                 user=user,
                 ufr=usuarioFaseRol)