Skip to content

Renomear coluna numero para id da fase sucessional #488

Description

@edvaldoszy

GitHub: esta issue bloqueia as duas issues de Fase sucessional da API v2 (listar e buscar; cadastrar, renomear e remover). Não bloqueia Vegetação, Relevo nem Solo.

Por que isso importa

Fase sucessional é o único catálogo de paisagem cuja chave primária se chama numero em vez de id. Os outros (vegetacoes, relevos, solos) e o restante da API usam id. As colunas de FK já se chamam fase_sucessional_id; o descompasso está só na tabela de lookup.

Enquanto isso não for renomeado, cada endpoint novo de Fase sucessional precisaria de um caso especial. Esta issue remove essa exceção para que o CRUD siga o mesmo padrão dos outros catálogos.

História

Como Curador, quero que as fases sucessionais sejam identificadas da mesma forma que solo, relevo e vegetação, para que todos os catálogos de paisagem se comportem igual na API nova.

Critérios de aceite

  • A coluna fase_sucessional.numero passa a se chamar id. Os valores existentes (incluindo os seeds 7, 8 e 9) não mudam — é rename, não reescrita de dados.
  • id é a chave primária e novos registros continuam recebendo um id automático.
  • As FKs que apontavam para fase_sucessional(numero) passam a apontar para fase_sucessional(id) (tombos.fase_sucessional_id, locais_coleta.fase_sucessional_id e a FK residual locais_coleta.fase_numero, se ainda existir).
  • O código legado que lê ou grava numero neste model passa a usar id.
  • Listar e cadastrar no legado continuam funcionando. O JSON deste recurso usa { id, nome }, como solos/relevos/vegetacoes (não { numero, nome }).
  • A migration aplica em um banco que ainda tem a coluna antiga.

Fora de escopo

  • Não construir /api/v2/fases-sucessionais aqui — isso é a issue de listar e buscar, bloqueada por esta.
  • Não alterar o valor gravado em tombos.fase_sucessional_id nos espécimes (os números continuam os mesmos).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

  • Status
    to do

Relationships

None yet

Development

No branches or pull requests

Issue actions