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')
def post_delete_proyecto(self, id_proyecto, nombre_proyecto, descripcion, tipos_fases, **kw): if id_proyecto is not None: id_proyecto=int(id_proyecto) proyecto = Proyecto.get_proyecto_by_id(id_proyecto) miembros=Equipo_Desarrollo.get_miembros_by_proyecto(proyecto.idusuario) for miembro in miembros: id_miembro=miembro.id_equipo Equipo_Desarrolloborrar_by_id(id_miembro) DBSession.flush() fases=Fase.get_fase_by_proyecto(id_proyecto) for fase in fases: Fase.borrar_by_id(fase.id_fase) DBSession.flush() Proyecto.borrar_by_id(id_proyecto) DBSession.flush() flash("Proyecto eliminado!") redirect('/proyecto/proyecto')
def put_proyecto(self, id_proyecto, nombre_proyecto, idusuario, descripcion, asmSelect0, tipos_fases,**kw): nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual") nom_fase=Variables.get_valor_by_nombre("nombre_fase_actual") if id_proyecto is not None: id_proyecto=int(id_proyecto) if idusuario is not None: idusuario=int(idusuario) nombres=Proyecto.get_nombres() proyecto = DBSession.query(Proyecto).get(id_proyecto) if not isinstance(nombres, list): nombres = [nombres] nombres.remove(proyecto.nombre_proyecto) if nombre_proyecto not in nombres: miembro=Equipo_Desarrollo.get_miembro_by_usuario_by_proyecto( proyecto.idusuario,proyecto.id_proyecto) id_miembro=miembro.id_equipo Equipo_Desarrollo.borrar_by_id(id_miembro) DBSession.flush() fases=Fase.get_fase_by_proyecto(proyecto.id_proyecto) for fase in fases: Fase.borrar_by_id(fase.id_fase) DBSession.flush() if not isinstance(tipos_fases, list): tipos_fases = [tipos_fases] tipos_fases = [DBSession.query(Tipo_Fase).get(tipo_fase) for tipo_fase in tipos_fases] cant=1 for tipo_fase in tipos_fases: fase = Fase (nombre_fase=tipo_fase.nombre_tipo_fase, id_tipo_fase=tipo_fase.id_tipo_fase, estado ="Nuevo", proyecto=proyecto.id_proyecto,orden=cant, linea_base="Abierta", descripcion=tipo_fase.descripcion) DBSession.add(fase) DBSession.flush() cant+=1 proyecto.idusuario = idusuario proyecto.nombre_proyecto=nombre_proyecto proyecto.descripcion = descripcion proyecto.tipos_fases = tipos_fases proyecto.estado="Desactivado" DBSession.flush() fases = Fase.get_fase_by_proyecto(Proyecto.get_ultimo_id()) nom="Lider Proyecto" mirol=Rol.get_rol_by_nombre(nom) equipo = Equipo_Desarrollo(proyecto=Proyecto.get_ultimo_id(), idusuario=idusuario, idrol=mirol.idrol,fases=fases) DBSession.add(equipo) DBSession.flush() fases = Fase.get_fase_by_proyecto(proyecto.id_proyecto) flash("Proyecto Modificado!") return dict(pagina="/fase/listar_fase", fases=fases, nom_proyecto=nom_proyecto,nom_fase=nom_fase) else: flash("nombre proyecto repetido!") redirect('/proyecto/editar_proyecto?id_proyecto=%d' % id_proyecto)