def borrar_by_id(self,id_historial): """ Elimina un historial. """ DBSession.delete(DBSession.query(Historial).get(id_historial)) DBSession.flush()
def borrar_by_id(self,id_campos): """ Elimina un campo. """ DBSession.delete(DBSession.query(Campos).get(id_campos)) DBSession.flush()
def agregar_tipo_fase(self,cancel=False,**data): errors = {} tipo_fase = None if request.method == 'POST': if cancel: redirect('/tipo_fase') form = TipoFaseForm() try: data = form.to_python(data) tipo_fase = Tipo_Fase(nombre_tipo_fase=data.get('nombre_tipo_fase'),descripcion=data.get('descripcion')) #if isinstance(tipo_fase,Tipo_Fase) : DBSession.add(tipo_fase) DBSession.flush() #DBSession.commit() #transaction.commit() print tipo_fase flash("Tipo de Fase agregada!") except Invalid, e: print e tipo_fase = None errors = e.unpack_errors() flash(_("Favor complete los datos requeridos"),'warning') except IntegrityError: flash("LLave duplicada") DBSession.rollback() redirect('/agregar_tipo_fase')
def agregar_privilegio(self,cancel=False,**data): errors = {} privilegio = None if request.method == 'POST': if cancel: redirect('/privilegio') form = PrivilegioForm() try: data = form.to_python(data) privilegio = Privilegios(nombreprivilegio=data.get('nombreprivilegio'),descripcion=data.get('descripcion')) #if isinstance(usuario,Usuario) : DBSession.add(privilegio) DBSession.flush() #DBSession.commit() #transaction.commit() print privilegio flash("Privilegio agregado!") except Invalid, e: print e privilegio = None errors = e.unpack_errors() flash(_("Favor complete los datos requeridos"),'warning') except IntegrityError: flash("LLave duplicada") DBSession.rollback() redirect('/agregar_privilegio')
def borrar_by_id(self,id_tipo_fase): """ Elimina el Tipo de Fase. """ DBSession.delete(DBSession.query(Tipo_Fase).get(id_tipo_fase)) DBSession.flush()
def borrar_by_id(self,id_campo): """ Elimina el tipo de campo. """ DBSession.delete(DBSession.query(Tipo_Campos).get(id_campo)) DBSession.flush()
def put_item(self, nombre_tipo_item, codigo_tipo_item, descripcion, campo, valor, **kw): tipo_item = Tipo_Item( nombre_tipo_item=nombre_tipo_item, descripcion=descripcion, codigo_tipo_item=codigo_tipo_item ) DBSession.add(tipo_item) if campo is not None: if not isinstance(campo, list): campo = [campo] if valor is not None: if not isinstance(valor, list): valor = [valor] indice = 0 id_tipo = Tipo_Item.get_ultimo_id() for c in campo: if len(c) > 0: camp = Tipo_Campos(id_tipo_item=id_tipo, nombre_campo=c, valor_campo=valor[indice]) DBSession.add(camp) indice += 1 DBSession.flush() flash("Tipo de Item clonada!") redirect("/tipo_item/tipo_item")
def ingresar(self,id_proyecto): nom_proyecto=Variables.get_valor_by_nombre("nombre_proyecto_actual") usuario=Usuario.get_user_by_alias( request.identity['repoze.who.userid']) if id_proyecto is not None: id_proyecto=int(id_proyecto) proyecto=Proyecto.get_proyecto_by_id(id_proyecto) Variables.set_valor_by_nombre("fase_actual",0) Variables.set_valor_by_nombre("proyecto_actual",proyecto.id_proyecto) Variables.set_valor_by_nombre("nombre_proyecto_actual", proyecto.nombre_proyecto) miembros=Equipo_Desarrollo.get_miembros_by_proyecto(proyecto.id_proyecto) rol="" for miembro in miembros: if ( miembro.idusuario == usuario.idusuario ): temp=int (Variables.get_valor_by_nombre("rol_anterior")) if temp == 0: Variables.set_valor_by_nombre("rol_anterior", usuario.roles[0].idrol) Variables.set_valor_by_nombre("rol_actual",miembro.idrol) rol=Rol.get_rol_by_id(miembro.idrol) usuario.roles=[] DBSession.flush() usuario.roles.append(rol) DBSession.flush() break; redirect('/')
def borrar_by_id(self, id_miembro): """ Elimina un miembro de equipo. """ DBSession.delete(DBSession.query(Equipo_Desarrollo).get(id_miembro)) DBSession.flush()
def put_seleccionar_tipo(self, id_fase, nombre_fase, id_tipo_fase, tipos_items, descripcion, asmSelect0, nombre_tipo_fase,**kw): if id_fase is not None: id_fase=int(id_fase) if id_tipo_fase is not None: id_tipo_fase=int(id_tipo_fase) fase = Fase.get_fase_by_id(id_fase) if not isinstance(tipos_items, list): tipos_items = [tipos_items] tipos_items = [DBSession.query(Tipo_Item).get(tipo_item) for tipo_item in tipos_items] fase.nombre_fase = nombre_fase fase.id_tipo_fase=id_tipo_fase fase.estado = fase.estado fase.linea_base = fase.linea_base fase.descripcion = descripcion fase.tipos_items=tipos_items DBSession.flush() flash("Tipos Item agregados!") redirect('/proyecto/proyecto')
def borrar_by_id(self,rel_id): """ Elimina una relación. """ DBSession.delete(DBSession.query(Relaciones).get(rel_id)) DBSession.flush()
def post_miembro(self, idusuario, idrol, asmSelect0, fases): if idusuario is not None: idusuario = int(idusuario) if idrol is not None: idrol = int(idrol) if fases is not None: if not isinstance(fases, list): fases = [fases] fases = [DBSession.query(Fase).get(fase) for fase in fases] valor=int( Variables.get_valor_by_nombre("proyecto_actual")) equipo = Equipo_Desarrollo(proyecto=valor, idusuario=idusuario, idrol=idrol, fases=fases) # usuario = Usuario.get_user_by_id(idusuario) # rol = Rol.get_rol_by_id(idrol) # usuario.roles=[] # usuario.roles.append(rol) DBSession.add(equipo) DBSession.flush() flash("Miembro Agregado Agregado!") redirect('/equipo/equipo')
def agregar_privilegio(self, cancel=False, **data): nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual") nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual") errors = {} privilegio = None if request.method == "POST": if cancel: redirect("/privilegio") form = PrivilegioForm() try: data = form.to_python(data) privilegio = Privilegios( nombreprivilegio=data.get("nombreprivilegio"), descripcion=data.get("descripcion") ) DBSession.add(privilegio) DBSession.flush() print privilegio flash("Privilegio agregado!") redirect("/privilegio") except Invalid, e: print e privilegio = None errors = e.unpack_errors() flash(_("Favor complete los datos requeridos"), "warning") except IntegrityError: flash("LLave duplicada") DBSession.rollback() redirect("/agregar_privilegio")
def agregar_usuario(self,cancel=False,**data): errors = {} usuario = None if request.method == 'POST': if cancel: redirect('/usuario') form = UsuarioForm() try: data = form.to_python(data) usuario = Usuario(alias=data.get('alias'),nombre=data.get('nombre'),apellido=data.get('apellido'),email_address=data.get('email'),_password=data.get('clave')) #if isinstance(usuario,Usuario) : DBSession.add(usuario) DBSession.flush() #DBSession.commit() #transaction.commit() print usuario flash("Usuario agregado!") except Invalid, e: print e usuario = None errors = e.unpack_errors() flash(_("Favor complete los datos requeridos"),'warning') except IntegrityError: flash("LLave duplicada") DBSession.rollback() redirect('/agregar_usuario')
def put_privilegio(self, idprivilegio, nombreprivilegio, descripcion, **kw): if idprivilegio is not None: idprivilegio = int(idprivilegio) privilegio = Privilegios.get_privilegio_by_id(idprivilegio) nombres = Privilegios.get_nombreprivilegio() if not isinstance(nombres, list): nombres = [nombres] if privilegio.nombreprivilegio in nombres: nombres.remove(privilegio.nombreprivilegio) if nombreprivilegio not in nombres: privilegio.nombreprivilegio = nombreprivilegio privilegio.descripcion = descripcion DBSession.flush() flash("Privilegio modificado!") redirect("/privilegio") else: nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual") nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual") values = dict(idprivilegio=idprivilegio, nombreprivilegio=nombreprivilegio, descripcion=descripcion) flash("Nombre del Privilegio ya existe!") return dict(pagina="editar_privilegio", values=values, nom_proyecto=nom_proyecto, nom_fase=nom_fase)
def borrar_by_id(self,id_proyecto): """ Obtiene la lista de todos los proyecto """ DBSession.delete(DBSession.query(Proyecto).get(id_proyecto)) DBSession.flush()
def put(self, id_tipo_item, nombre_tipo_item, codigo_tipo_item, descripcion, campo, valor, **kw): if id_tipo_item is not None: id_tipo_item = int(id_tipo_item) tipo_item = Tipo_Item.get_tipo_item_by_id(id_tipo_item) campos2 = Tipo_Campos.get_campos_by_tipo_item(tipo_item.id_tipo_item) for cam in campos2: Tipo_Campos.borrar_by_id(cam.id_tipo_campos) DBSession.flush() tipo_item.nombre_tipo_item = nombre_tipo_item tipo_item.descripcion = descripcion tipo_item.codigo_tipo_item = codigo_tipo_item if campo is not None: if not isinstance(campo, list): campo = [campo] if valor is not None: if not isinstance(valor, list): valor = [valor] indice = 0 for c in campo: if len(c) > 0: camp = Tipo_Campos(id_tipo_item=id_tipo_item, nombre_campo=c, valor_campo=valor[indice]) DBSession.add(camp) indice += 1 DBSession.flush() flash("Tipo de Item modificada!") redirect("/tipo_item/tipo_item")
def post_logout(self, came_from=url("/")): """ Redirect the user to the initially requested page on logout and say goodbye as well. """ condicion = int(Variables.get_valor_by_nombre("rol_anterior")) if condicion > 0: usuario = Usuario.get_user_by_alias(Variables.get_valor_by_nombre("usuario_actual")) Variables.set_valor_by_nombre("fase_actual", 0) Variables.set_valor_by_nombre("proyecto_actual", 0) Variables.set_valor_by_nombre("nombre_proyecto_actual", "") Variables.set_valor_by_nombre("nombre_fase_actual", "") Variables.set_valor_by_nombre("usuario_actual", "") rol = int(Variables.get_valor_by_nombre("rol_anterior")) Variables.set_valor_by_nombre("rol_actual", 0) Variables.set_valor_by_nombre("rol_anterior", 0) rol2 = Rol.get_rol_by_id(rol) usuario.roles = [] usuario.roles.append(rol2) DBSession.flush() flash(_("Hasta luego!")) redirect("/")
def borrar_by_id(self,id_item): """ Eliina un item específico. """ DBSession.delete(DBSession.query(Item).get(id_item)) DBSession.flush()
def borrar_by_id(self,id_tipo_item): """ Obtiene la lista de todos los tipo_item """ DBSession.delete(DBSession.query(Tipo_Item).get(id_tipo_item)) DBSession.flush()
def agregar_usuario(self, cancel=False, **data): nom_proyecto = Variables.get_valor_by_nombre("nombre_proyecto_actual") nom_fase = Variables.get_valor_by_nombre("nombre_fase_actual") usuarios = Usuario.get_alias() errors = {} usuario = None if request.method == "POST": if cancel: redirect("/usuario") form = UsuarioForm() try: data = form.to_python(data) usuario = Usuario( alias=data.get("alias"), nombre=data.get("nombre"), apellido=data.get("apellido"), email_address=data.get("email"), nacionalidad=data.get("nacionalidad"), tipodocumento=data.get("tipodocumento"), nrodoc=data.get("nrodoc"), _password=data.get("clave"), ) if usuario.alias not in usuarios: usuario._set_password(data.get("clave")) rol = Rol.get_rol_by_nombre("Usuario Basico") usuario.roles.append(rol) DBSession.add(usuario) DBSession.flush() print usuario flash("Usuario agregado!") redirect("/usuario") else: flash(_("Favor cambie el alias es repetido"), "warning") return dict( pagina="usuarios", usuario=usuario, errors=errors, data=data.get("alias"), nom_proyecto=nom_proyecto, nom_fase=nom_fase, usuarios=usuarios, ) except Invalid, e: print e usuario = None errors = e.unpack_errors() flash(_("Favor complete los datos requeridos"), "warning") except IntegrityError: flash("LLave duplicada") DBSession.rollback() redirect("/agregar_usuario")
def finalizar(self, id_item): """ """ proyecto = DBSession.query(Item).get(id_item) if item.estado == "con_linea_base": item.estado="finalizado" DBSession.flush()
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_miembro(self, id_equipo, nombre_usuario, nombre_rol, **kw): if id_equipo is not None: id_equipo=int(id_equipo) Equipo_Desarrollo.borrar_by_id(id_equipo) DBSession.flush() flash("Miembro eliminado!") redirect('/equipo/equipo')
def aprobar(self, id_item): """ Aprueba un item en estado en desarrollo. """ item = DBSession.query(Item).get(id_item) if item.estado == "en_desarrollo": item.estado="aprobado" DBSession.flush()
def post_delete_rol(self, idrol, nombrerol, descripcion, privilegios, **kw): if idrol is not None: idrol = int(idrol) Rol.borrar_by_id(idrol) DBSession.flush() flash("Rol eliminado!") redirect("/rol")
def post_delete_privilegio(self, idprivilegio, nombreprivilegio, descripcion, **kw): if idprivilegio is not None: idprivilegio = int(idprivilegio) Privilegios.borrar_by_id(idprivilegio) DBSession.flush() flash("Privilegio eliminado!") redirect("/privilegio")
def activar(self, id_item): """ Activa un item. """ item = DBSession.query(Item).get(id_item) if item.estado == "nuevo": item.estado="en_desarrollo" DBSession.flush()
def con_linea_base(self, id_item): """ Se asigna al item como parte de la linea base. """ item = DBSession.query(Item).get(id_item) if item.estado == "aprobado": item.estado="con_linea_base" DBSession.flush()
def revisar(self, id_item): """ El item se pasa al estado 'a revisar'. """ item = DBSession.query(Item).get(id_item) if item.estado == "aprobado" or item.estado == "con_linea_base": item.estado="a_revisar" DBSession.flush()