Beispiel #1
0
from flask_restplus import fields

from rest import api
from rest.common.base_models import meta, custom_fields

entity_type_request = api.model('entity_type_request', {
    'name': fields.String(description='entity name', required=True),
    'display_name': fields.String(description='entity display name', required=True),
    'parent': fields.String(description='parent entity'),
    'type': fields.String(description='entity display name', enum=["ORGANIZATION", "WORKSPACE", "ITEM"], default=""),
    'fields': fields.List(fields.Nested(custom_fields), description='custom_fields')
})

entity_type = api.inherit('entity_type', entity_type_request, {
    'meta': fields.Nested(meta),
})

entity_type_response = api.inherit('entity_type_response', entity_type, {
    '_id': fields.String(description='unique id', required=True),
})
Beispiel #2
0
# from rest.entity_types.models import entity_type_response
from rest.utils.dateutils import reformat
from datetime import datetime


class Fields(fields.Raw):
    def format(self, data):
        for key, value in data.items():
            if isinstance(value, datetime):
                data[key] = reformat(value, '%m/%d/%Y %H:%M')
        return data


stock_request = api.model('stock request', {
    'entity_name': fields.String(required=True, description='entity name'),
    'entity_id': fields.String(required=True, description='entity id'),
    'availability': fields.Integer(required=True, description='availability'),
    'fields': Fields(description='fields', default={})
})

stock_update_request = api.inherit('stock update', stock_request, {

})

stock_entity = api.inherit('stock', stock_request, {
    'meta': fields.Nested(meta),
    'tags': fields.List(fields.Nested(tag)),
    'stock_status': fields.String(default='AVAILABLE', description='stock status'),
})

stock_response = api.inherit('stock response', stock_entity, {
    '_id': fields.String(),
Beispiel #3
0
from flask_restplus import fields

from rest import api
from rest.common.base_models import meta, custom_fields
from rest.entity_types.models import entity_type_response

entity_template_request = api.model(
    'entity_template_request', {
        'entity_type':
        fields.String(description='entity type', required=True),
        'force':
        fields.Boolean(
            description='force type', default=False, enum=[True, False]),
        'fields':
        fields.List(fields.Nested(custom_fields), description='custom_fields'),
    })

entity_template = api.inherit(
    'entity_template', entity_template_request, {
        'meta':
        fields.Nested(meta),
        'entity_type_details':
        fields.Nested(entity_type_response, description='entity type details'),
    })

entity_template_response = api.inherit(
    'entity_template_response', entity_template, {
        '_id': fields.String(description='unique id', required=True),
    })
Beispiel #4
0
from rest.utils.dateutils import reformat
from datetime import datetime


class Fields(fields.Raw):
    def format(self, data):
        for key, value in data.items():
            if isinstance(value, datetime):
                data[key] = reformat(value, '%m/%d/%Y %H:%M')
        return data


booking_request = api.model(
    'booking request', {
        'entity_name': fields.String(required=True, description='entity name'),
        'entity_id': fields.String(required=True, description='entity id'),
        'quantity': fields.String(required=True, description='quantity'),
        'fields': Fields(description='fields', default={})
    })

booking_update_request = api.inherit('booking update', booking_request, {})

booking_entity = api.inherit(
    'bookings', booking_request, {
        'meta': fields.Nested(meta),
        'tags': fields.List(fields.Nested(tag)),
        'booking_status': fields.String(default='',
                                        description='booking status'),
    })

booking_response = api.inherit('booking response', booking_entity, {
Beispiel #5
0

class DateTimeISO(fields.String):
    """
    Custom Format to modify time to ISO Format
    """

    def format(self, value):
        modified_date = value + 'Z'
        return modified_date


meta = api.model('meta', {
    'is_deleted': fields.Boolean(default=False),
    'created': DateTimeISO(),
    'updated': DateTimeISO(),
    'created_by': fields.String(default=''),
    'updated_by': fields.String(default=''),
})

audit = api.model('audit event', {
    'meta': fields.Nested(meta),
    'method': fields.String(description='method'),
    'endpoint': fields.String(description='endpoint'),
    'message': fields.String(description='message'),
    'result': fields.Raw(description='fields', default={}),
    'status': fields.Integer(description='status'),
    'event': fields.String(description='event'),
    'req_data': fields.Raw(default={}, description='req_data'),
    'query_param': fields.Raw(description='query_param')
})
Beispiel #6
0
from flask_restx import fields, reqparse
from rest import api

from utils import parser_utils

CategorySchema = api.model(
    'Category', {
        'id':
        fields.Integer(required=False, description='Category id.'),
        'name':
        fields.String(required=True,
                      description='Category name min 3, max 50.'),
    })

CategoryParser = reqparse.RequestParser()
CategoryParser.add_argument('name',
                            type=parser_utils.validate_string(50, 3),
                            required=True,
                            location='json')
Beispiel #7
0
from flask_restx import fields, reqparse
from rest import api

from utils import parser_utils

MediaSchema = api.model(
    'Media', {
        'id':
        fields.String(required=False, description='Media id.'),
        'path':
        fields.String(required=True, description='Media path 10, max 200.'),
    })

MediaParser = reqparse.RequestParser()
MediaParser.add_argument('id',
                         type=parser_utils.validate_int(min_length=1),
                         required=False,
                         location='json')
MediaParser.add_argument('path',
                         type=parser_utils.validate_string(200, 10),
                         required=True,
                         location='json')

UserSchema = api.model(
    'User', {
        'username': fields.String(required=True, description='User username.'),
    })

CategorySchema = api.model(
    'Category', {
        'id': fields.Integer(required=True, description='Category id.'),
Beispiel #8
0
from flask_restplus import fields

from rest import api

application_status = api.model('application_status', {
    'status':
    fields.String(description='application status', required=True),
})
Beispiel #9
0
from flask_restx import fields, reqparse
from rest import api

from utils import parser_utils

LoginRegisterSchema = api.model(
    'User', {
        'username':
        fields.String(required=True,
                      description='User username min 5, max 50.'),
        'password':
        fields.String(required=True,
                      description='User password min 5, max 50.'),
    })

LoginRegisterParser = reqparse.RequestParser()
LoginRegisterParser.add_argument('username',
                                 type=parser_utils.validate_string(50, 5),
                                 required=True,
                                 location='json')
LoginRegisterParser.add_argument('password',
                                 type=parser_utils.validate_string(50, 5),
                                 required=True,
                                 location='json')
Beispiel #10
0
from rest.utils.dateutils import reformat
from datetime import datetime


class Fields(fields.Raw):
    def format(self, data):
        for key, value in data.items():
            if isinstance(value, datetime):
                data[key] = reformat(value, '%m/%d/%Y %H:%M')
        return data


entity_request = api.model(
    'entity request', {
        'name': fields.String(required=True, description='entity name'),
        'parent': fields.String(description='parent entity'),
        'parent_type': fields.String(description='parent entity type'),
        'entity_type': fields.String(description='entity type', required=True),
        'fields': Fields(description='fields', default={})
    })

entity_update_request = api.inherit(
    'entity update', entity_request, {
        'parent_details': fields.Raw(description='fields', default={}),
    })

entity = api.inherit(
    'entities', entity_request, {
        'meta':
        fields.Nested(meta),
        'tags':
        fields.List(fields.Nested(tag)),
Beispiel #11
0
import datetime
from flask_restplus import fields
from rest import api


meta = api.model('meta', {
    'is_deleted': fields.Boolean(default=False),
    'created': fields.DateTime(default=datetime.datetime.utcnow()),
    'updated': fields.DateTime(default=datetime.datetime.utcnow()),
    'created_by': fields.String(default=''),
    'updated_by': fields.String(default=''),
})

tag = api.model('tag', {
    'name': fields.String(description='Tag name', default=''),
    'value': fields.String(description='Tag value', default=''),
})

response = api.model('response', {
    'status': fields.Integer(description='Status code'),
    'message': fields.String(description='Message'),
    'data': fields.Raw(description='Response data', default={}),
})