Files
pms/pms_api_rest/datamodels/pms_account_payment.py

53 lines
2.3 KiB
Python

from marshmallow import fields
from odoo.addons.datamodel.core import Datamodel
from odoo.addons.datamodel.fields import NestedModel
class PmsPaymentInfo(Datamodel):
_name = "pms.payment.info"
id = fields.Integer(required=False, allow_none=True)
name = fields.String(required=False, allow_none=True)
amount = fields.Float(required=False, allow_none=True)
journalId = fields.Integer(required=False, allow_none=True)
date = fields.String(required=False, allow_none=True)
partnerName = fields.String(required=False, allow_none=True)
partnerId = fields.Integer(required=False, allow_none=True)
paymentType = fields.String(required=False, allow_none=True)
partnerType = fields.String(required=False, allow_none=True)
isTransfer = fields.Boolean(required=False, allow_none=True)
reference = fields.String(required=False, allow_none=True)
createUid = fields.Integer(required=False, allow_none=True)
class PmsPaymentSearchParam(Datamodel):
_name = "pms.payment.search.param"
_inherit = "pms.rest.metadata"
pmsPropertyId = fields.Integer(required=True, allow_none=False)
filter = fields.String(required=False, allow_none=True)
dateStart = fields.String(required=False, allow_none=True)
dateEnd = fields.String(required=False, allow_none=True)
paymentMethodId = fields.Integer(required=False, allow_none=True)
# TODO: paymentTypes filter
paymentTypes = fields.List(fields.Integer(required=False, allow_none=True))
paymentType = fields.String(required=False, allow_none=True)
partnerType = fields.String(required=False, allow_none=True)
isTransfer = fields.Boolean(required=False, allow_none=True)
class PmsPaymentResults(Datamodel):
_name = "pms.payment.results"
payments = fields.List(NestedModel("pms.payment.info"))
total = fields.Float(required=False, allow_none=True)
totalPayments = fields.Integer(required=False, allow_none=True)
class PmsAccountPaymentInfo(Datamodel):
_name = "pms.account.payment.short.info"
id = fields.Integer(required=False, allow_none=True)
date = fields.String(required=False, allow_none=True)
journalId = fields.Integer(required=False, allow_none=True)
amount = fields.Float(required=False, allow_none=True)
partnerId = fields.Integer(required=False, allow_none=True)
reservationIds = fields.List(fields.Integer(), required=False)