コード例 #1
0
ファイル: UsuarioMan.py プロジェクト: javierpf/SGP
 def getProyectos(self, u_id):
     print "Get Proyectos"
     u = self.getById(u_id)
     l = []
     print u.roles
     for i in u.roles:
         for x in i.permisos_recursos:
             if x.recurso.proyecto in l:
                 pass
             else:
                 if x.recurso.proyecto !=None:
                     l.append(x.recurso.proyecto)
                     print x.recurso.proyecto
             if x.recurso.fase != None:
                 p =ProyectoManager().getById(x.recurso.fase.id_proyecto) 
                 if not(p in l):
                     l.append(ProyectoManager().getById(x.recurso.fase.id_proyecto))
     return l
コード例 #2
0
ファイル: fase.py プロジェクト: javierpf/SGP
 def terminar(self, **kw):
     print "terminar"
     print("id_proyecto:" + session['id_proyecto'])
     pm = ProyectoManager()
     p = pm.getById(int(session['id_proyecto']))
     p.estado = 'iniciado'
     pm.update(p)
     raise redirect('/fase/fases_por_proyecto?id_proyecto=' +
                    session['id_proyecto'])
コード例 #3
0
ファイル: PermisoMan.py プロジェクト: javierpf/SGP
 def getFases(self, id_proyecto):
     p = ProyectoManager().getById(int(id_proyecto))
     l = []
     for i in p.fases:
         r = rec()
         r.nombre = i.nombre
         r.id = self.getIdRecursoFase(i.id_fase)
         l.append(r)
     return l
コード例 #4
0
 def post_delete(self, *args, **kw):
     '''delete'''
     pm = ProyectoManager()
     proyecto = pm.getById(args)
     if proyecto.estado == 'creado':
         pm.deleteById(args)
         raise redirect('./')
     else:
         raise redirect('/proyecto')
コード例 #5
0
    def fases_por_proyecto(self, *args, **kw):
        params = kw
        fase_filler = FasesProyectoTableFiller(DBSession)
        id_proyecto = params['id_proyecto']
        session['id_proyecto'] = id_proyecto
        session.save()

        session['proyecto'] = ProyectoManager().getById(
            int(id_proyecto)).nombre
        session.save()
        session['conn_tipo'] = 0
        session.save()
        proyecto = ProyectoManager().getById(int(id_proyecto))
        if proyecto.estado == "creado":
            raise redirect('/proyecto/' + params['id_proyecto'] + '/edit')
        fase_filler.init(id_proyecto)

        tmpl_context.widget = self.table_fases
        value = fase_filler.get_value()
        return dict(value_list=value, model="Fase")
コード例 #6
0
ファイル: proyecto.py プロジェクト: javierpf/SGP
 def post(self, **kw):
     '''New'''
     p = Proyecto()
     pm = ProyectoManager()
     params = kw
    
     p.descripcion = params['descripcion']
     p.nombre = params['nombre']
     p.estado = 'creado'
     p.id_administrador = params['id_administrador']
     pm.add(p)
     raise redirect('./')
コード例 #7
0
ファイル: proyecto.py プロジェクト: javierpf/SGP
 def put(self, *args, **kw):
     '''update'''
     pm=ProyectoManager()
     p = pm.getById(args)
     params = kw
     p.nombre= params['nombre']
     p.descripcion = params ['descripcion']
     p.fecha_inicio = params['fecha_inicio']
     p.fecha_finalizacion = params['fecha_finalizacion']
     p.costo_estimado = params['costo_estimado']
     pm.update(p)
    
     raise redirect('../')    
コード例 #8
0
ファイル: fase.py プロジェクト: javierpf/SGP
    def buscar_proyecto_fases(self, *args, **kw):
        params = kw
        busqueda_filler = BusquedaProyectoTableFiller(DBSession)
        print params['id_proyecto']
        busqueda_filler.init(params['parametro'], params['id_proyecto'])
        self.table_fases(ProyectoManager().getById(int(
            params['id_proyecto'])).estado)
        tmpl_context.widget = self.table_fases
        value = busqueda_filler.get_value()

        return dict(value_list=value,
                    model="Fase",
                    id_proyecto=params['id_proyecto'])
コード例 #9
0
ファイル: UsuarioMan.py プロジェクト: javierpf/SGP
 def getMenu(self, id_user):
     print "Get Menu"
     u = self.getById(id_user)
     l = []
     for x in u.roles:
         for y in x.permisos_recursos:
             m = menu_class();
             if y.recurso.proyecto != None:
                 m.nombre = y.recurso.proyecto.nombre; m.id = y.recurso.proyecto.id_proyecto
                 if not(self.esta(m,l)):
                     l.append(m)
             if y.recurso.fase != None:
                 m.nombre = y.recurso.fase.nombre; m.id = y.recurso.fase.id_fase
                 m2 = menu_class()
                 m2.nombre = ProyectoManager().getById(y.recurso.fase.id_proyecto).nombre
                 m2.id = ProyectoManager().getById(y.recurso.fase.id_proyecto).id_proyecto
                 if self.esta(m2,l):
                     if self.esta(m, l[self.index(m2,l)].fases):
                         l[l.index(m2)].fases.append(m)
                 else:
                     m2.fases.append(m)
                     l.append(m2)
     return l
コード例 #10
0
ファイル: proyecto.py プロジェクト: javierpf/SGP
    def post(self, **kw):
        '''New'''
        p = Proyecto()
        pm = ProyectoManager()
        params = kw

        p.descripcion = params['descripcion']
        p.nombre = params['nombre']
        p.estado = 'creado'
        p.id_administrador = params['administrador']
        p.prefijo = params['prefijo']
        p.nro_fase = 0
        id = pm.add(p)
        p = pm.getByNombre(params['nombre'])
        raise redirect('/proyecto/' + str(p.id_proyecto) + '/edit')
コード例 #11
0
ファイル: fase.py プロジェクト: javierpf/SGP
 def ordenar(self):
     proyecto = ProyectoManager().getById(int(session['id_proyecto']))
     cantidad = len(proyecto.fases)
     orden = []
     for i in range(cantidad):
         x = i + 1
         orden.append(x)
     fases = []
     for f in proyecto.fases:
         fa = faselist()
         fa.nombre = f.nombre
         fa.id = f.id_fase
         fases.append(fa)
     print fases
     print orden
     return dict(orden=orden, fases=fases)
コード例 #12
0
ファイル: UsuarioMan.py プロジェクト: javierpf/SGP
 def getProyecto(self, uid):
     u = self.getById(uid)
     l = []
     sistema = False
     for i in u.roles:
         if i.id_proyecto >=0:
             l.append(ProyectoManager().getById(i.id_proyecto))
         if i.id_proyecto == -1:
             sistema = True
     
     y = DBSession.query(Proyecto).all()
     for i in y:
         if i.id_administrador == u.id_usuario:
             if not(i in l):
                 l.append(i)
     return (l,sistema)
コード例 #13
0
    def put(self, *args, **kw):
        '''update'''
        pm = ProyectoManager()
        p = pm.getById(args)
        params = kw
        p.nombre = params['nombre']
        p.descripcion = params['descripcion']
        p.fecha_inicio = params['fecha_inicio']
        p.fecha_finalizacion = params['fecha_finalizacion']
        p.costo_estimado = params['costo_estimado']
        #p.estado = 'iniciado'
        pm.update(p)

        session['id_proyecto'] = args[0]
        session.save()

        raise redirect('/fase/')
コード例 #14
0
ファイル: fase.py プロジェクト: javierpf/SGP
    def fases_por_proyecto(self, *args, **kw):
        print "Fases por proyecto"
        params = kw
        fase_filler = FasesProyectoTableFiller(DBSession)
        id_proyecto = params['id_proyecto']
        proyecto = ProyectoManager().getById(int(id_proyecto))
        session['id_proyecto'] = id_proyecto
        session.save()
        session['proyecto'] = proyecto.nombre
        session.save()
        session['conn_tipo'] = 0
        session.save()

        if proyecto.estado != "creado":
            session['estado'] = "iniciado"
        else:
            session['estado'] = "creado"
        session.save()
        if proyecto.estado == "creado":
            if proyecto.fases == []:
                try:
                    if not (params['sist']):
                        raise redirect('/proyecto/' + params['id_proyecto'] +
                                       '/edit')
                except:
                    raise redirect('/proyecto/' + params['id_proyecto'] +
                                   '/edit')
        cantidad = False
        if len(proyecto.fases) > 1:
            cantidad = True
        fase_filler.initEstado(proyecto.estado)
        fase_filler.init(id_proyecto)
        #self.table_fases.init(proyecto.estado)
        if proyecto.estado == "iniciado":
            tmpl_context.widget = self.table_fases_action_null
        else:
            tmpl_context.widget = self.table_fases

        value = fase_filler.get_value()

        return dict(value_list=value, model="Fase", cant_fases=cantidad)
コード例 #15
0
ファイル: proyecto.py プロジェクト: javierpf/SGP
 def put(self, *args, **kw):
     '''update'''
     pm = ProyectoManager()
     p = pm.getById(args)
     params = kw
     try:
         p.nombre = params['nombre']
         p.descripcion = params['descripcion']
     except:
         pass
     p.fecha_inicio = params['fecha_inicio']
     p.fecha_finalizacion = params['fecha_finalizacion']
     p.costo_estimado = params['costo_estimado']
     #p.estado = 'iniciado'
     pm.update(p)
     print "Proyecto actualizado"
     session['id_proyecto'] = args[0]
     session.save()
     raise tg.redirect('/fase/fases_por_proyecto',
                       id_proyecto=args[0],
                       sist=True)
コード例 #16
0
 def _do_get_provider_count_and_objs(self, buscado="", **kw):
     pm = ProyectoManager()
     proyectos = pm.buscar(self.buscado)
     return len(proyectos), proyectos
コード例 #17
0
 def cantidad(self, id_proyecto):
     if len(ProyectoManager().getById(id_proyecto).fases) > 2:
         return True
     else:
         return False
コード例 #18
0
ファイル: proyecto.py プロジェクト: javierpf/SGP
 def post_delete(self, *args, **kw):
     '''delete'''
     pm = ProyectoManager()
     pm.deleteById(args)
     raise redirect('./')
コード例 #19
0
ファイル: PermisoMan.py プロジェクト: javierpf/SGP
 def getProyecto(self, id_proyecto):
     p = ProyectoManager().getById(int(id_proyecto))
     r = rec()
     r.nombre = p.nombre
     r.id = self.getIdRecursoProyecto(p.id_proyecto)
     return [r]