Ejemplo n.º 1
0
# -*- coding: utf-8 -*-
# app/api/data.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server
from app.models import OrderState, OrderType, OrderPicture
from app.email import send_mail_template

from .utils import token_required, role_required, get_current_user, order_states

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("data")

picture_model = api.model(
    "picture_model",
    {'picture': fields.Boolean(required=True, description='Picture value')})


@ns.route('/orders')
class DataOrderCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    @role_required(["DATA"])
    def get(self):

        dbo = app.order_dbo
        user = get_current_user()
Ejemplo n.º 2
0
# -*- coding: utf-8 -*-
# app/api/supervisor.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server
from app.models import OrderState

from .utils import token_required, role_required, get_current_user

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("supervisor")


@ns.route('/states')
class SupervisorStateCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    def get(self):

        result = list()

        states = OrderState.select()

        for state in states:
            result.append(state.state)

        return result
Ejemplo n.º 3
0
# -*- coding: utf-8 -*-
# app/api/comment.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server

from .utils import token_required, role_required, get_current_user

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("comment")

comment_model = api.model(
    "comment_model",
    {'text': fields.String(required=True, description='Comment Text')})


@ns.route('/order/<int:_id>')
class OrderCommentCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    def get(self, _id):

        dbo = app.order_dbo
        user = get_current_user()

        if not dbo.verify_authority(_id, user):
            return 401, "Not authorized in this order"
Ejemplo n.º 4
0
# -*- coding: utf-8 -*-
# app/api/manager.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server
from app.models import OrderState, OrderType

from .utils import token_required, role_required, get_current_user, order_states

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("manager")


@ns.route('/orders')
class ManagerOrderCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    @role_required(["MANAGER", "SUPERVISOR/MANAGER"])
    def get(self):

        dbo = app.order_dbo
        user = get_current_user()

        response = dict()

        orders = dbo.read_all()
Ejemplo n.º 5
0
# -*- coding: utf-8 -*-
# app/api/research.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server
from app.models import OrderState, OrderType
from app.email import send_mail_template

from .utils import token_required, role_required, get_current_user, order_states

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("research")


@ns.route('/orders')
class ResearchOrderCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    @role_required(["RESEARCH"])
    def get(self):

        dbo = app.order_dbo
        user = get_current_user()

        result = list()

        orders = dbo.read_all()
Ejemplo n.º 6
0
# -*- coding: utf-8 -*-
# app/api/client.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server

from .utils import token_required, role_required

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("admin")

client_code_model = api.model(
    "client_code_model",
    {'code': fields.String(required=True, description='Client Code')})


@ns.route('/client-code')
class AdminClientCodeCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    @role_required(["ADMIN"])
    def get(self):

        result = list()

        dbo = app.client_code_dbo
Ejemplo n.º 7
0
# -*- coding: utf-8 -*-
# app/api/auth.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server

from .utils import token_required

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("auth")

login_model = api.model(
    "login_model", {
        'username': fields.String(required=True, description='Username'),
        'password': fields.String(required=True, description='Password')
    })


@ns.route('/login')
class AuthLoginResource(Resource):
    @ns.expect(login_model)
    def post(self):

        dbo = app.user_dbo

        payload = api.payload
Ejemplo n.º 8
0
# -*- coding: utf-8 -*-
# app/api/company.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server

from .utils import token_required, role_required

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("admin")

company_model = api.model(
    "company_model", {
        'company': fields.String(required=True, description='Company name'),
        'website': fields.String(required=True, description='Company website'),
        'user': fields.String(required=True, description='Company user'),
        'password': fields.String(required=True,
                                  description='Company password')
    })


@ns.route('/companies')
class AdminCompanyCollectionResource(Resource):
    @api.doc(security='apikey')
    @token_required
    @role_required(["ADMIN"])
    def get(self):
Ejemplo n.º 9
0
# -*- coding: utf-8 -*-
# app/api/attachment.py

from flask import request
from flask_restplus import Resource, fields
from playhouse.shortcuts import model_to_dict

from app.server import server

from .utils import token_required, role_required, get_current_user, file_types

api = server.get_api()
app = server.get_app()
ns = server.get_namespace("attachment")

upload_model = api.model(
    "upload_model", {
        'filename': fields.String(required=True, description='File name'),
        'filetype': fields.String(required=True, description='File type'),
        'base64': fields.String(required=True, description='File base64')
    })


@ns.route('/upload')
class UploadResource(Resource):
    @api.doc(security='apikey')
    @ns.expect(upload_model)
    @token_required
    @role_required(["SUPERVISOR", "RESEARCH"])
    def post(self):