# Guarda o "Número de Série da Base (Aparelho)" que o motorista registra no
# checkout do SimpliRoute.
#
# POR QUE UMA TABELA NOSSA: o campo existe como coluna no espelho
# (db_reem_simplerout_2026.numero_de_serie_da_base_aparelho), mas o processo que
# alimenta o espelho NUNCA o preenche — conferido em fev/mar/mai/jul/2026, 0 de
# ~6.000 linhas. O espelho é READ-ONLY (jamais escrever nele), então o job que
# busca o dado na API do SimpliRoute grava aqui, e a planilha do cliente faz o
# LEFT JOIN por tracking_id.
class CreateSeriesAparelho < ActiveRecord::Migration[7.1]
  def change
    create_table :series_aparelho do |t|
      # tracking_id (SR...) é a chave do espelho — é por ele que a planilha casa.
      t.string   :tracking_id, null: false
      t.string   :reference_id                # NF, só para conferência/depuração
      t.string   :numero_serie, null: false
      t.date     :planned_date                # data varrida na API
      t.datetime :sincronizado_em, null: false

      t.timestamps
    end

    add_index :series_aparelho, :tracking_id, unique: true
    add_index :series_aparelho, :planned_date
  end
end
