models:
  Centro_custo:
    nome: string unique
    timestamps: true
    softDeletes: true
    relationships:
      belongsToMany: Documento
  
  Documento:
    id_centro_custo: id foreign
    id_documento: id foreign:documentos nullable
    agrupador: boolean default:0
    data_documento: date
    descricao: string
    valor: decimal:10,2
    observacao: text
    timestamps: true
    softDeletes: true
    relationships:
      belongsToMany: Movimento
  
  Conta:
    nome: string
    descricao: text
    valor: decimal:10,2
    timestamps: true
    softDeletes: true
    relationships:
      belongsToMany: Fechamento

  Fechamento:
    id_conta: id foreign
    data_inicial: date
    data_final: date nullable
    saldo_inicial: decimal:10,2
    saldo_final: decimal:10,2 nullable
    timestamps: true
    softDeletes: true
    relationships:
      belongsToMany: Movimento

  Movimento:
    id_documento: id foreign
    id_fechamento: id foreign
    data_movimento: decimal:10,2
    valor: decimal:10,2
    tipo_movimento: enum:P,J,M,A,D,B,E,R
    timestamps: true
    softDeletes: true

seeders: Centro_custo