import enum

from sqlalchemy import Column, Integer, Float, Enum, String, ForeignKey
from sqlalchemy.orm import relationship

from ..database import Base


class TipoServico(enum.Enum):
    Fixo = "Fixo"
    Variavel = "Variavel"

class Servico(Base):
    __tablename__ = "servico"

    id = Column(Integer, primary_key=True, name="serv_id", autoincrement=True)
    nome = Column(String, name="serv_nome")
    valor = Column(Float, name="serv_valor")
    tipo = Column(Enum(TipoServico), name="serv_tipo")
    usuario_id = Column(Integer, ForeignKey("usuario.usu_id"), name="usu_id")

    usuario = relationship("Usuario", back_populates="servicos")
    orcamentos = relationship("ServicoOrcamento", back_populates="servico")
