def items(self, *args, **kw): '''Muestra la lista de items ''' params=kw fase, navegacion = self.verificarPermiso(params) id_proyecto=fase.id_proyecto if ProyectoManager().getById(id_proyecto).estado=='creado': flash(('Debe finalizar la creacion del proyecto para acceder a una fase'), 'warning') raise redirect("/fase/fases_por_proyecto", id_proyecto=id_proyecto, link_creacion=True) busqueda_filler = ItemTableFiller(DBSession) busqueda_filler.init(kw["id_fase"]) tmpl_context.widget = self.table value = busqueda_filler.get_value() permiso,globo_relaciones, globo_tipos, globo_lb = self.getPermisos(int(kw['id_fase'])) globo_revivir = EvaluarPermiso("Crear Item", id_fase = kw['id_fase'] ).is_met(request.environ) fm = FaseManager() fase = fm.getById(kw['id_fase']) mostrar_new = False if fase.estado == 'desarrollo' or fase.estado== 'finalizado': mostrar_new = True return dict(value_list=value, model="Item",tipo_items=fase.tipo_items,id_fase=kw['id_fase'],\ navegacion=navegacion, if_permiso = permiso, if_relaciones = globo_relaciones, \ if_tipos = globo_tipos\ ,if_lb = globo_lb, mostrar_new = mostrar_new, if_revivir = globo_revivir)
def getNavegacionFromIdFase(self, id_fase): '''Muestra la Navegacion''' fm = FaseManager() fase = fm.getById(int(id_fase)) proyecto = ProyectoManager().getById(fase.id_proyecto) navegacion = dict(id_fase = fase.id_fase, id_proyecto = fase.id_proyecto, fase = fase.nombre, proyecto=proyecto.nombre, admin_sistema=False) return (fase, navegacion)
def buscar(self, **kw): '''Muestra la lista de items segun la busqueda realizada''' params = kw try: fase, navegacion = self.verificarPermiso(params) except: flash(('Direccion no valida.'), 'error') raise redirect("/index") if not(Secure().FiltrarByFase(fase.id_fase, 'lista_items')): flash(('USTED NO CUENTA CON PERMISOS SUFICIENTES.'), 'error') raise redirect("/index") busqueda_filler = BusquedaTableFiller(DBSession) busqueda_filler.init(params["parametro"],kw['id_fase']) tmpl_context.widget = self.table value = busqueda_filler.get_value() permiso,globo_relaciones, globo_tipos, globo_lb = self.getPermisos(int(params['id_fase'])) mostrar_new = False fm = FaseManager() fase = fm.getById(kw['id_fase']) if fase.estado == 'desarrollo' or fase.estado== 'finalizado': mostrar_new = True globo_revivir = EvaluarPermiso("Crear Item", id_fase = kw['id_fase'] ).is_met(request.environ) return dict(value_list=value, model="Item", tipo_items=fase.tipo_items, id_fase=kw['id_fase'],\ navegacion=navegacion, if_permiso = permiso, if_relaciones = globo_relaciones, \ if_tipos = globo_tipos,if_lb = globo_lb, mostrar_new = mostrar_new,if_revivir = globo_revivir)
def getItemsAprobados(self,id_fase): '''Obtiene los items desaprobados de una determinada fase @param: id_fase @return: lista de items aprobados de la fase''' im = ItemManager() fm = FaseManager() items = im.getItemsAprobados(id_fase) fase_actual = fm.getById(id_fase) lista = [] if fase_actual.orden != 1 : #Comprobar relaciones de los items for item in items : #por cada item en la lista de items aprobados relaciones = self.getByItem(item.id_item) #obtener sus relaciones bandera = False if relaciones: #Si tiene relaciones for relacion in relaciones: if im.esActual(relacion.id_item1) and im.esActual(relacion.id_item2): #la relacion es valida bandera= True break if bandera: lista.append(item) else: #es la primera fase lista = items return lista
def getNavegacionFromIdFase(self, id_fase): '''Obtiene el contexto de navegacion mediante el id de la fase actual''' fm = FaseManager() fase = fm.getById(int(id_fase)) proyecto = ProyectoManager().getById(fase.id_proyecto) navegacion = dict(id_fase = fase.id_fase, id_proyecto = fase.id_proyecto, fase = fase.nombre, proyecto=proyecto.nombre,admin_sistema=False) return (fase, navegacion)
def buscar(self, **kw): params = kw busqueda_filler = BusquedaTableFiller(DBSession) busqueda_filler.init(params["parametro"],kw['id_fase']) tmpl_context.widget = self.table value = busqueda_filler.get_value() fm = FaseManager() fase = fm.getById(params['id_fase']) return dict(value_list=value, model="Item", tipo_items=fase.tipo_items, id_fase=kw['id_fase'])
def put(self, *args, **kw): '''editar''' rm = FaseManager() p = rm.getById(args) params = kw p.descripcion = params['descripcion'] p.nombre = params['nombre'] rm.update(p) raise redirect('../')
def put(self, *args, **kw): '''editar''' rm = FaseManager() p = rm.getById(args) params = kw p.descripcion = params['descripcion'] p.nombre = params['nombre'] rm.update(p) raise redirect('../')
def put(self, *args, **kw): '''editar''' rm = FaseManager() p = rm.getById(args) params = kw p.descripcion = params['descripcion'] p.nombre = params['nombre'] rm.update(p) raise redirect('/fase/fases_por_proyecto', id_proyecto=session['id_proyecto'])
def getItemsARelacionar(self,id_fase_actual): fm = FaseManager() fase_actual = fm.getById(id_fase_actual) lista = self.getItemsFaseActual(id_fase_actual) if fase_actual.orden != 1: #no es la primera fase fase_anterior = fm.getFaseAnterior(id_fase_actual) id_fase_anterior = fase_anterior.id_fase lista += DBSession.query(Item).filter((Item.id_fase == id_fase_anterior) & (Item.actual == 'true') & (Item.estado == 'finalizado')).all() return lista
def buscar(self, **kw): params = kw busqueda_filler = BusquedaTableFiller(DBSession) busqueda_filler.init(params["parametro"], kw['id_fase']) tmpl_context.widget = self.table value = busqueda_filler.get_value() fm = FaseManager() fase = fm.getById(params['id_fase']) return dict(value_list=value, model="Item", tipo_items=fase.tipo_items, id_fase=kw['id_fase'])
def items(self, *args, **kw): params = kw busqueda_filler = ItemTableFiller(DBSession) busqueda_filler.init(params["id_fase"]) tmpl_context.widget = self.table value = busqueda_filler.get_value() #obtener tipos de items de la fase fm = FaseManager() fase = fm.getById(params['id_fase']) session['id_fase']=fase.id_fase; session.save() session['fase']=fase.nombre; session.save() return dict(value_list=value, model="Item",tipo_items=fase.tipo_items,id_fase=params['id_fase'])
def items(self, *args, **kw): params = kw if session['estado']=='creado': flash(('Debe finalizar la creacion del proyecto para acceder a una fase'), 'warning') raise redirect("/fase/fases_por_proyecto", id_proyecto=session['id_proyecto'], link_creacion=True) busqueda_filler = ItemTableFiller(DBSession) busqueda_filler.init(params["id_fase"]) tmpl_context.widget = self.table value = busqueda_filler.get_value() #obtener tipos de items de la fase fm = FaseManager() fase = fm.getById(params['id_fase']) session['id_fase']=fase.id_fase; session.save() session['fase']=fase.nombre; session.save() return dict(value_list=value, model="Item",tipo_items=fase.tipo_items,id_fase=params['id_fase'])
def items(self, *args, **kw): params = kw busqueda_filler = ItemTableFiller(DBSession) busqueda_filler.init(params["id_fase"]) tmpl_context.widget = self.table value = busqueda_filler.get_value() #obtener tipos de items de la fase fm = FaseManager() fase = fm.getById(params['id_fase']) session['id_fase'] = fase.id_fase session.save() session['fase'] = fase.nombre session.save() return dict(value_list=value, model="Item", tipo_items=fase.tipo_items, id_fase=params['id_fase'])
def getItemsARelacionar(self,id_item_actual): '''Obtener la lista de items para relacionar @param id_item_actual: id de item con el cual se quiere crear una relacion ''' item = self.getById(id_item_actual) id_fase_actual = item.id_fase fm = FaseManager() fase_actual = fm.getById(id_fase_actual) lbm = LineaBaseManager() lista = self.getItemsFaseActualRelacion(id_fase_actual, id_item_actual) if fase_actual.orden != 1: #no es la primera fase fase_anterior = fm.getFaseAnterior(id_fase_actual) id_fase_anterior = fase_anterior.id_fase lista_items = DBSession.query(Item).filter((Item.id_fase == id_fase_anterior) & (Item.actual == 'true') & (Item.estado == 'finalizado')).all() for item in lista_items: lb = lbm.getById(item.id_linea_base) if lb.estado == 'valido'or lb.estado == 'liberado': lista.append(item) return lista
def post_delete(self, *args, **kw): pm = FaseManager() id_proyecto = pm.getById(args).id_proyecto pm.deleteById(args) raise redirect('/fase/fases_por_proyecto', id_proyecto=id_proyecto)