class User(db.Document): first_name = db.StringField(required=True) last_name = db.StringField(required=True) phone_number = db.StringField(required=True, unique=True) card_number = db.StringField(required=True, unique=True) login = db.StringField(required=True, unique=True) password = db.StringField(required=True)
class Person(db.Document): cpf = db.StringField(required=True) data_consulta = db.DateTimeField(required=False) ultima_compra_cartao = db.EmbeddedDocumentField('LastBuyCard') movimentacao = db.EmbeddedDocumentListField('Transaction') @property def serialize(self): return { 'cpf': self.cpf, 'data': self.data_consulta, 'ultima_compra_cartao': { 'data': self.ultima_compra_cartao.data, 'valor': self.ultima_compra_cartao.valor }, 'movimentacoes': [{ 'tipo': moviment.tipo, 'valor': moviment.valor } for moviment in self.movimentacao] }
class UserPhoto(db.Document): first_name = db.StringField(required=True) last_name = db.StringField(required=True) phone_number = db.StringField(required=True, unique=True) img_encoding = db.ListField()
class Reservation(db.Document): hotel_name = db.StringField(required=True) user_phone_number = db.StringField(required=True, unique=True) beginning_date = db.DateTimeField(required=True) ending_date = db.DateTimeField(required=True)
class Hotel(db.Document): name = db.StringField(required=True, unique=True) price = db.DecimalField(min_value=0.0, required=True)
class Transaction(db.EmbeddedDocument): valor = db.IntField(required=True) tipo = db.StringField(required=False)
class Taxa(db.Document): tipo = db.StringField(required=True) taxas = db.StringField(required=True)
class User(db.Document): first_name = db.StringField(required=True) last_name = db.StringField() phone_number = db.StringField(required=True) encoding = db.ListField()
class Order(db.Document): user_id = db.StringField(required=True) product_ids = db.ListField(required=True)
class Product(db.Document): name = db.StringField(required=True) price = db.DecimalField(required=True, min_value=0.00, precision=2)
class Cliente(db.Document): nome = db.StringField(required=True) cpf = db.StringField(required=True) celular = db.StringField(required=True) score = db.LongField(required=True) negativado = db.BooleanField(required=True)