import logging from flask import request from flask_restplus import Resource from flask_jwt_extended import (jwt_required, get_jwt_identity) from remanager_back.api.usuario.extra.servicios import create_user_extra, get_user_extra_by_login from remanager_back.api.usuario.extra.serializadores import usuario_extra, fotos_extra, profile_picture from remanager_back.api.restplus import api log = logging.getLogger(__name__) ns = api.namespace( 'usuario/extra', description='Servicios para manejar los datos extras del usuario') @ns.route('/') class GetUserExtra(Resource): @api.marshal_with(usuario_extra) @jwt_required def get(self): user_login = get_jwt_identity() try: extra = get_user_extra_by_login(user_login) except Exception as exception: extra = create_user_extra(user_login) return extra.to_dict()
from flask_jwt_extended import (create_access_token, jwt_required, get_jwt_identity) from remanager_back.api.usuario.autenticacion.servicios import obtener_organizacion_por_id from remanager_back.api.usuario.serializadores import usuario from remanager_back.api.usuario.autenticacion.serializadores import login, access_token from remanager_back.api.restplus import api from remanager_back.data_auth.models import UserModel from datetime import timedelta, datetime from firebase_admin import firestore log = logging.getLogger(__name__) ns = api.namespace('sesion', description='Servicios para manejar la sesión del usuario') @ns.route('/autenticar') class UserLogin(Resource): @api.marshal_with(access_token) @api.doc(security=None) @api.expect(login) def post(self): data = request.json current_user = UserModel.find_by_login(data.get('login')) if not current_user: abort( 401, 'El usuario con login {} no existe'.format(data.get('login')))
from flask import request from flask_restplus import Resource, abort from flask_jwt_extended import (jwt_required, get_jwt_identity) from remanager_back.api.svg.servicios import crear_svg, editar_svg, borrar_svg, obtener_todos_los_svgs,\ obtener_svg_por_id from remanager_back.api.svg.serializadores import svg, svg_alta from remanager_back.api.restplus import api from remanager_back.data_auth.models import UserModel from remanager_back.settings import AUTHORITY_ADMIN log = logging.getLogger(__name__) ns = api.namespace( 'svgs', description= 'Servicios para manejar los svg de la aplicación, sólo para usuario ROOT') @ns.route('/') class Svg(Resource): @api.marshal_with(svg) @api.expect(svg_alta) @jwt_required def post(self): login = get_jwt_identity() current_user = UserModel.find_by_login(login) if not current_user.has_authority(AUTHORITY_ADMIN): abort(401, 'No tiene permisos para realizar esta acción')
import logging import os import base64 from flask import request from flask_restplus import Resource from flask_jwt_extended import (jwt_required) from remanager_back.api.archivos.serializadores import envio_archivos from remanager_back.api.restplus import api from remanager_back.settings import WEB_FOLDER_NAME log = logging.getLogger(__name__) ns = api.namespace('file/upload', description='Servicios para manejar archivos') @ns.route('/') class Archivos(Resource): @api.expect(envio_archivos) @jwt_required def post(self): data = request.json folder = data.get('folder').replace(" ", "_") files = list(data.get('files')) if len(files) <= 0: return {'message', 'No files in request'}, 400 added_files = []
from flask_jwt_extended import (jwt_required, get_jwt_identity) from remanager_back.api.contrato.servicios import crear_contrato, obtener_contratos,\ obtener_contratos_por_correo_vendedor, obtener_contrato_por_contrato_id,\ obtener_contrato_por_contrato_id_y_correo_vendedor, borrar_contrato, desactivar_contrato, agregar_pago_real from remanager_back.api.cliente.servicios import obtener_cliente_por_id, obtener_cliente_por_id_correo_vendedor from remanager_back.api.producto.servicios import obtener_producto_por_id from remanager_back.api.contrato.serializadores import contrato, pago_programado, pago_real from remanager_back.api.restplus import api from remanager_back.data_auth.models import UserModel from remanager_back.settings import AUTHORITY_ADMIN, AUTHORITY_ROOT log = logging.getLogger(__name__) ns = api.namespace('contratos', description='Servicios para manejar los contratos') @ns.route('/') class Contrato(Resource): @api.marshal_with(contrato) @api.expect(contrato) @jwt_required def post(self): login = get_jwt_identity() current_user = UserModel.find_by_login(login) data = request.json if current_user.has_authority( AUTHORITY_ADMIN) or current_user.has_authority(AUTHORITY_ROOT):
obtener_productos_por_organizacion_id, obtener_producto_por_id, obtener_producto_por_id_y_organizacion_id,\ editar_producto, borrar_producto_por_id, obtener_productos_por_proyecto_id,\ obtener_productos_por_organizacion_id_y_proyecto_id, obtener_productos_por_id_seccion from remanager_back.api.contrato.servicios import obtener_contratos_por_producto_id,\ obtener_contratos_por_producto_id_y_correo_vendedor from remanager_back.api.producto.serializadores import producto from remanager_back.api.contrato.serializadores import contrato from remanager_back.api.restplus import api from remanager_back.data_auth.models import UserModel from remanager_back.settings import AUTHORITY_ADMIN, AUTHORITY_ROOT log = logging.getLogger(__name__) ns = api.namespace('productos', description='Servicios para manejar los productos') buscar_productos_parser = reqparse.RequestParser() buscar_productos_parser.add_argument('proyectoId', type=str, location='args') buscar_productos_parser.add_argument('id_seccion', type=str, location='args') @ns.route('/') class Productos(Resource): @api.marshal_with(producto) @api.expect(producto) @jwt_required def post(self): login = get_jwt_identity() current_user = UserModel.find_by_login(login)
from flask_jwt_extended import (jwt_required, get_jwt_identity) from remanager_back.api.cliente.servicios import crear_cliente, obtener_cliente_por_id,\ obtener_cliente_por_id_correo_vendedor, editar_cliente, borrar_cliente_por_id,\ obtener_todos_los_clientes_por_organizacion_id, obtener_clientes_por_correo_vendedor from remanager_back.api.contrato.servicios import obtener_contratos_por_cliente_id,\ obtener_resumen_contratos_por_cliente from remanager_back.api.cliente.serializadores import cliente, cliente_alta, resumen_cliente_contratos from remanager_back.api.restplus import api from remanager_back.data_auth.models import UserModel from remanager_back.settings import AUTHORITY_ADMIN, AUTHORITY_ROOT log = logging.getLogger(__name__) ns = api.namespace('clientes', description='Servicios para manejar los cliente') @ns.route('/') class Clientes(Resource): @api.marshal_with(cliente) @api.expect(cliente_alta) @jwt_required def post(self): login = get_jwt_identity() current_user = UserModel.find_by_login(login) data = request.json try: cliente = crear_cliente(