Sistemato attività
This commit is contained in:
@@ -10,6 +10,7 @@ async function main() {
|
||||
{ id: "PU", nome: "Pubblicato" },
|
||||
{ id: "BO", nome: "Bozza" },
|
||||
{ id: "PR", nome: "Privato" },
|
||||
{ id: "IA", nome: "In attesa di approvazione" },
|
||||
].map((stato) =>
|
||||
prisma.statoAttivita.upsert({
|
||||
where: { id: stato.id },
|
||||
@@ -102,6 +103,19 @@ async function main() {
|
||||
create: { ...categoria, utenteModifica: UTENTE_MODIFICA },
|
||||
});
|
||||
}
|
||||
|
||||
// Branca/Categoria/PeriodoAnno sopra sono inserite con id espliciti: l'upsert non passa
|
||||
// mai dal DEFAULT della colonna, quindi la sequence Postgres dell'id non avanza e resta
|
||||
// disallineata rispetto al MAX(id) reale. Se non la si risincronizza qui, la prima riga
|
||||
// creata in seguito con id auto-generato (es. una tassonomia proposta da un utente) va in
|
||||
// conflitto su un id già esistente.
|
||||
await Promise.all(
|
||||
["branca", "categoria", "periodo_anno", "materiale"].map((tabella) =>
|
||||
prisma.$executeRawUnsafe(
|
||||
`SELECT setval(pg_get_serial_sequence('"${tabella}"', 'id'), COALESCE((SELECT MAX(id) FROM "${tabella}"), 1))`
|
||||
)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
main()
|
||||
|
||||
Reference in New Issue
Block a user