def modificarUsuario(cls, datos): usuario = cls.validarModificacion(datos) CommonService.updateAtributes(usuario, datos, ['permisos', 'password']) cls.modificacionPassword(usuario, datos['password']) cls.asignarPermisos(usuario, datos['permisos']) from db import db db.session.commit()
def get(self,id_producto): if(id_producto): try: return CommonService.jsonMany(ProductoService().getGruposByProducto(id_producto),GrupoDeTrabajoSchema) except Exception as err: return {'Error': err.args},400 return {'Error': 'Debe indicarse id producto'},400
def get(self,id_herramienta): if(id_herramienta): try: return CommonService.json(HerramientaService.find_by_id(id_herramienta),HerramientaSchema) except Exception as err: return {'Error': err.args},400 return {'Error': 'Debe indicarse id_herramienta'},400
def get(self, id_distribuidora): try: return CommonService.json( DistribuidoraService().find_by_id(id_distribuidora), DistribuidoraSchema) except Exception as err: return {'Error': err.args}, 400
def get(self, idMuestra): if idMuestra: try: return CommonService.json( MuestraService().find_by_id(idMuestra), MuestraSchema) except Exception as err: return {'Error': err.args}, 400 return {"Error": "Se debe indicar el id de la muestra."}, 400
def get(self, id_usuario): if (id_usuario): try: usuario = UsuarioService.find_by_id(id_usuario) return CommonService.json(usuario, UsuarioSchema) except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Debe indicarse id_usuario'}, 400
def get(self, idProyecto): if idProyecto: try: return CommonService.jsonMany( MuestraService().find_all_by_proyecto(idProyecto), MuestraSchema) except Exception as err: return {'Error': err.args}, 400 return {'Error': "Se deben enviar un id de proyecto válido."}, 400
def get(self, id_espacioFisico): if id_espacioFisico: try: return CommonService.json( EspacioFisicoService.find_by_id(id_espacioFisico), EspacioFisicoSchema) except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Debe enviarse el id del espacio físico.'}, 400
def get(self, id_proyecto): if (id_proyecto): try: return CommonService.jsonMany( ProyectoService.obtenerMiembrosProyecto(id_proyecto), UsuarioSchema) except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Deben indicarse id del proyecto'}, 400
def get(self, id_proyecto): if (id_proyecto): try: return CommonService.json( ProyectoService.obtenerProyecto(id_proyecto), ProyectoExtendido), 200 except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Deben indicarse id del proyecto'}, 400
def get(self, id_usuario): if (id_usuario): try: return CommonService.jsonMany( ProyectoService.obtenerProyectosUsuario(id_usuario), ProyectoExtendido) except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Deben indicarse id de usuario'}, 400
def get(self, id_grupoDeTrabajo): if (id_grupoDeTrabajo): try: return CommonService.json( GrupoDeTrabajoService.obtenerGrupoPorId(id_grupoDeTrabajo), GrupoDeTrabajoDatosExtra) except Exception as err: return {'Error': err.args}, 400 return {'Error': 'Debe indicarse el id del grupo de trabajo.'}, 400
def post(self): datos = request.get_json() if datos: try: blogs = HerramientaService.blogHerramienta(datos) return CommonService.jsonMany(blogs,BlogSchemaExtendido) except Exception as err: return {'Error': err.args},400 return {'Error': 'Parametros requeridos'},400
def get(self, id_jaula): if id_jaula: try: #obtener nombre del proyecto y asignarlo en este momento, no guardarlo return CommonService.json(JaulaService.obtenerJaula(id_jaula), JaulaSchema) except Exception as err: return {"Error": err.args}, 400 return {"Error": "Se debe indicar el id de una jaula."}, 400
def get(self, id_fuente): if id_fuente: try: return CommonService.json( FuenteExperimentalService.find_by_id(id_fuente), FuenteExperimentalSchema) except Exception as err: return {'Error': err.args}, 400 return { 'Error': 'Es necesario indicar el id de la fuente experimental.' }, 400
def get(self, idGrupoExperimental): if idGrupoExperimental: try: return CommonService.jsonMany( MuestraService().find_all_by_grupoExperimental( idGrupoExperimental), MuestraSchema) except Exception as err: return {'Error': err.args}, 400 return { 'Error': "Se deben enviar un id del grupo experimental válido." }, 400
def get(self, codigo): if codigo: try: return CommonService.json( FuenteExperimentalService.find_by_codigo(codigo), FuenteExperimentalSchema) except Exception as err: return {'error': err.args}, 400 return { 'Error': 'Es necesario indicar el codigo de la fuente experimental.' }, 400
def get(self, id_proyecto): if id_proyecto: try: return CommonService.jsonMany( FuenteExperimentalService.find_by_proyecto(id_proyecto), FuenteExperimentalSchema) except Exception as err: return {'error': err.args}, 400 return { 'Error': 'Es necesario indicar el id del proyecto al que pertenecn las fuentes experimentales.' }, 400
def post(self): datos = request.get_json() if (datos): try: return CommonService.jsonMany( EspacioFisicoService.obtenerBlogs(datos), BlogSchemaExtendido) except Exception as err: return {'Error': err.args}, 400 return { 'Error': 'Deben enviarse los datos para obtener el blog de espacio físico.' }, 400
def loginUsuario(cls, datos): from flask import jsonify from werkzeug.security import check_password_hash from datetime import datetime, timedelta from app import app from flask_jwt import jwt LoginUsuario().load(datos) usuario = UsuarioService.find_by_email(datos['email']) usuarioJson = CommonService.json(usuario, UsuarioSchema) if usuario: if check_password_hash(usuario.password, datos['password']): dt = datetime.now() + timedelta(minutes=60 * 12) usuarioJson['exp'] = dt token = jwt.encode(usuarioJson, app.config['SECRET_KEY']) return jsonify({'token': token.decode('UTF-8')}) raise Exception("Las credenciales son incorrectas.") raise Exception("No existe ningún usuario con ese mail.")
def actualizarJaula(cls, datos): ActualizarJaulaSchema().dump(datos) jaula = cls.find_by_id(datos['id_jaula']) CommonService.updateAtributes(jaula, datos) jaula.save()
def get(self): return CommonService.jsonMany(HerramientaService.obtenerHerramientas(),HerramientaSchema)
def obtenerPermisoPorId(cls, id_permiso): try: return CommonService.json(PermisosService.find_by_id(id_permiso), PermisoSchema) except Exception as err: return {'Error': err.message}, 400
def all_permisos(cls): permisos = Permiso.query.all() return CommonService.jsonMany(permisos, PermisoExistenteSchema)
def get(self): return CommonService.jsonMany(UsuarioService.usuariosSinElPermiso(4), UsuarioSchema)
def get(self): return CommonService.jsonMany(UsuarioService.findUsuariosHabilitados(), UsuarioSchema)
def muestrasDelExperimentoDatosExtra(cls,muestras): [CommonService.asignarNombreExperimento(CommonService.asignarNombreContenedorAux(muestra)) for muestra in muestras ]
def asignarProyectoYEspFisico(cls, jaula): return CommonService.asignarNombreProyecto( CommonService.asignarNombreEspacioFisico(jaula))
def obtenerMuestrasDeFuente(cls,_id_fuente): muestras = MuestraSchema().dump(Muestra.objects(id_fuenteExperimental=_id_fuente).all(),many=True) for muestra in muestras: CommonService.asignarNombreContenedorAux(muestra) return muestras
def get(self): return CommonService.jsonMany(ExperimentoService.experimentos(), ExperimentoSchema)