def abrirLineaBase(self, **kw): print 'abrir linea base' lineaBase = kw['idlineaBase'] estadoD = DBSession.query(Estado).filter(Estado.nom_estado == 'En Desarrollo').one() Globals.current_phase.id_estado = estadoD.id_estado estadoA = DBSession.query(Estado).filter(Estado.nom_estado == 'Abierta').one() usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one() nroLineaBase = DBSession.query(NroLineaBase).filter(NroLineaBase.id_nro_lb == lineaBase).one() aNroLineaBase = NroLineaBase() aNroLineaBase.id_linea_base = nroLineaBase.id_linea_base aNroLineaBase.nro_linea_base = nroLineaBase.nro_linea_base + 1 aNroLineaBase.id_estado = estadoA.id_estado aNroLineaBase.id_usuario_aprobo = usuario.id_usuario items = nroLineaBase.item estadoC = DBSession.query(Estado).filter(Estado.nom_estado == 'Confirmado').one() for itemGuardar in items: itemGuardar.estado = estadoC aNroLineaBase.item.append(itemGuardar) print 'ABRIR/NUEVA VERSION ID ' print aNroLineaBase.id_linea_base print 'ABRIR/NUEVA nro_linea_base ' print aNroLineaBase.nro_linea_base print 'ABRIR/NUEVA id_estado ' print aNroLineaBase.id_estado DBSession.add(aNroLineaBase) DBSession.flush() flash(_("LA LINEA BASE HA SIDO ABIERTA")) redirect("/lineaBase/index?id_fase="+str(Globals.current_phase.id_fase))
def guardarLineaBase(self, **kw): """ Funcion que se encarga de guardar los datos introducidos en el formulario para la nueva linea base. """ aLineaBase = LineaBase() fase = DBSession.query(Fase).filter(Fase.id_fase == self.fase_id).one() usuario = DBSession.query(Usuario).filter(Usuario.login_name == request.identity['repoze.who.userid']).one() estado =DBSession.query(Estado).filter(Estado.nom_estado == 'Aprobado').one() aLineaBase.id_fase = fase.id_fase aLineaBase.nom_linea_base = kw['nombreLineaBase'] aLineaBase.descripcion = kw['descripcionLineaBase'] aItemsSelecionados = kw['listaItem'] DBSession.add(aLineaBase) DBSession.flush() print aLineaBase.id_linea_base aNroLineaBase = NroLineaBase() aNroLineaBase.id_linea_base = aLineaBase.id_linea_base aNroLineaBase.nro_linea_base = 1 aNroLineaBase.id_estado = estado.id_estado aNroLineaBase.id_usuario_aprobo = usuario.id_usuario for items1 in aItemsSelecionados: itemSelect = DBSession.query(VersionItem).filter(VersionItem.id_version_item ==items1).one() print itemSelect.observaciones itemSelect.id_estado = estado.id_estado aNroLineaBase.item.append(itemSelect) DBSession.add(aNroLineaBase) DBSession.flush() flash(_("Se ha creado una nueva Linea Base: %s") %kw['nombreLineaBase'],'info') redirect("index?id_fase="+str(self.fase_id))