예제 #1
0
class LpoItemSchema(ma.ModelSchema):
    item = ma.Nested(ItemSchema, only=('name','uuid'))
    order = ma.Nested(LocalPurchaseOrderSchema, only=('id','uuid', 'vendor_id'))
    not_empty = validate.Length(min=1, max=50, error="Field cant be empty.")
    
    order_id = ma.String(required=True)
    item_id = ma.String(required=True, validate=[not_empty])
    quantity = ma.Integer(required=True)
    unit_price = ma.Integer(required=True)

    class Meta:
        model = LpoItem
        sqla_session = db.session

        additional = ("creator", "amount")
예제 #2
0
class ChargeSchema(ma.ModelSchema):
    not_empty = validate.Length(min=1, max=50, error="Field cant be empty.")
    types = validate.OneOf(["flat", "percentage"])

    code = ma.String(required=True, validate=[not_empty])
    min_value = ma.Integer(required=True)
    max_value = ma.Integer(required=True)
    amount = ma.Integer(required=True)
    charge_type = ma.String(required=True, validate=[types])

    class Meta:
        model = Charge
        sqla_session = db.session

        additional = ("tarriff", )
예제 #3
0
class AccountSchema(ma.ModelSchema):
    minimum_balance = ma.Integer(required=True)

    class Meta:
        model = Account
        sqla_session = db.session

        additional = ("creator", "balance", "name", "wallets")
예제 #4
0
class WorkItemSchema(ma.ModelSchema):

    request = ma.Nested(ServiceRequestSchema)
    not_empty = validate.Length(min=1, max=50,
                                error='Field cant be empty.')

    request_id = ma.String(required=True)
    item = ma.String(required=True, validate=[not_empty])
    quantity = ma.Integer(required=True)
    unit_cost = ma.Integer(required=True)
    entity_id = ma.String(required=True)

    class Meta:

        model = WorkItem
        sqla_session = db.session

        additional = ('creator', 'cost')
예제 #5
0
class EntrySchema(ma.ModelSchema):
    creator = ma.Nested(UserSchema)

    debit = ma.Integer()
    credit = ma.Integer()
    reference = ma.String(required=True)
    debit = ma.String(required=True)
    credit = ma.String(required=True)
    amount = ma.Integer(required=True)
    description = ma.String(required=True)
    tran_type = ma.String(required=True)
    pay_type = ma.String(required=True)
    entity_id = ma.String(required=True)

    class Meta:
        model = Entry
        sqla_session = db.session

        additional = ("debit_account", "credit_account", "entity")
예제 #6
0
class JobItemSchema(ma.ModelSchema):
    item = ma.Nested(ItemSchema, only=('id', 'name', 'price'))
    job = ma.Nested(JobSchema,
                    only=('id', 'employee_id', 'request_id', 'is_complete'))

    not_empty = validate.Length(min=1, max=50, error='Field cant be empty.')

    job_id = ma.String(required=True)
    item_id = ma.String(required=True, validate=[not_empty])
    quantity = ma.Integer(required=True)
    unit_cost = ma.Integer(required=True)
    entity_id = ma.String(required=True)

    class Meta:

        model = JobItem
        sqla_session = db.session

        additional = ('creator', 'cost')
예제 #7
0
class ItemSchema(ma.ModelSchema):

    entity = ma.Nested(EntitySchema,
                       only=("name", "address", "email", "phone"))
    category = ma.Nested(ItemCategorySchema)
    vendor = ma.Nested(VendorSchema)

    name = ma.String(required=True)
    code = ma.String(required=True)
    model_id = ma.String(required=True)
    category_id = ma.String(required=True)
    price = ma.Integer(required=True)
    make_id = ma.Integer(required=True)
    item_type = ma.String(required=True)
    entity_id = ma.String(required=True)

    class Meta:
        model = Item
        sqla_session = db.session

        additional = ("creator", "quantity")
예제 #8
0
class ItemLogSchema(ma.ModelSchema):
    item = ma.Nested(ItemSchema, only=('name', 'uuid'))

    entity = ma.Nested(EntitySchema,
                       only=('name', 'address', 'email', 'phone'))

    item_id = ma.String(required=True)
    debit = ma.String(required=True)
    credit = ma.String(required=True)
    reference = ma.String(required=True)
    category = ma.String(required=True)
    quantity = ma.Integer(required=True)
    amount = ma.Integer(required=True)
    unit_cost = ma.Integer(required=True)
    entity_id = ma.String(required=True)

    class Meta:
        model = ItemLog
        sqla_session = db.session

        additional = ("debit_account", "credit_account", "creator")
예제 #9
0
class TransactionSchema(ma.ModelSchema):

    tranid = ma.String(required=True)
    reference = ma.String(required=True)
    is_synchronous = ma.Boolean(required=True)
    amount = ma.Integer(required=True)
    narration = ma.String(required=True)
    phone = ma.String(required=True)
    tran_type = ma.String(required=True)
    pay_type = ma.String(required=True)

    class Meta:
        model = Transaction
        sqla_session = db.session

        additional = ("creator",)