diff --git a/prisma/migrations/20240511143905_/migration.sql b/prisma/migrations/20240511143905_/migration.sql new file mode 100644 index 00000000..529d324f --- /dev/null +++ b/prisma/migrations/20240511143905_/migration.sql @@ -0,0 +1,38 @@ +/* + Warnings: + Por padrão o prisma dropa e recria a coluna do banco. + Esse script usa um cast do postgres para converter as colunas para o tipo correto ao invés de dropá-las + Assumo que as timestamp estão sendo salvas em UTC + Para mudar a migration para setar as datas atuais para uma timezone específica, basta adicionar o statement "AT TIME ZONE" após a conversão + alter table "category_supplies" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz AT TIME ZONE 'America/Sao_Paulo'; +*/ + +-- AlterTable +alter table "category_supplies" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "category_supplies" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "category_supplies" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable +alter table "sessions" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "sessions" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "sessions" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable +alter table "shelter_managers" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "shelter_managers" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "shelter_managers" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable +alter table "shelter_supplies" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "shelter_supplies" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "shelter_supplies" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable +alter table "shelters" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "shelters" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "shelters" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable +alter table "supplies" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "supplies" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "supplies" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz; +-- AlterTable; +alter table "users" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "users" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "users" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz ; + diff --git a/prisma/migrations/20240518142542_change_date_columns_type/migration.sql b/prisma/migrations/20240518142542_change_date_columns_type/migration.sql new file mode 100644 index 00000000..ea6298b6 --- /dev/null +++ b/prisma/migrations/20240518142542_change_date_columns_type/migration.sql @@ -0,0 +1,20 @@ +/* + Warnings: + + - The `created_at` column on the `partners` table would be dropped and recreated. This will lead to data loss if there is data in the column. + - The `updated_at` column on the `partners` table would be dropped and recreated. This will lead to data loss if there is data in the column. + - The `created_at` column on the `supporters` table would be dropped and recreated. This will lead to data loss if there is data in the column. + - The `updated_at` column on the `supporters` table would be dropped and recreated. This will lead to data loss if there is data in the column. + +*/ + +-- AlterTable; +alter table "partners" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "partners" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "partners" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz ; + +-- AlterTable; +alter table "supporters" alter column "created_at" type TIMESTAMPTZ using "created_at"::timestamptz; +alter table "supporters" alter column "created_at" set default CURRENT_TIMESTAMP; +alter table "supporters" alter column "updated_at" type TIMESTAMPTZ using "updated_at"::timestamptz ; + diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 1a4b82f5..bad8bde4 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -41,8 +41,8 @@ model User { password String phone String @unique accessLevel AccessLevel @default(value: User) - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() sessions Session[] shelterManagers ShelterManagers[] @@ -54,13 +54,13 @@ model User { } model Session { - id String @id @default(uuid()) - userId String @map("user_id") + id String @id @default(uuid()) + userId String @map("user_id") ip String? - userAgent String? @map("user_agent") - active Boolean @default(value: true) - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + userAgent String? @map("user_agent") + active Boolean @default(value: true) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() user User @relation(fields: [userId], references: [id]) @@ -68,10 +68,10 @@ model Session { } model SupplyCategory { - id String @id @default(uuid()) - name String @unique - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + id String @id @default(uuid()) + name String @unique + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() supplies Supply[] @@ -79,12 +79,12 @@ model SupplyCategory { } model ShelterSupply { - shelterId String @map("shelter_id") - supplyId String @map("supply_id") - priority Int @default(value: 0) + shelterId String @map("shelter_id") + supplyId String @map("supply_id") + priority Int @default(value: 0) quantity Int? - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() shelter Shelter @relation(fields: [shelterId], references: [id]) supply Supply @relation(fields: [supplyId], references: [id]) @@ -129,8 +129,8 @@ model Shelter { verified Boolean @default(value: false) category ShelterCategory @default(value: Shelter) actived Boolean @default(value: true) - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() shelterManagers ShelterManagers[] shelterSupplies ShelterSupply[] @@ -142,10 +142,10 @@ model Shelter { } model ShelterManagers { - shelterId String @map("shelter_id") - userId String @map("user_id") - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + shelterId String @map("shelter_id") + userId String @map("user_id") + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() user User @relation(fields: [userId], references: [id]) shelter Shelter @relation(fields: [shelterId], references: [id]) @@ -155,22 +155,22 @@ model ShelterManagers { } model Partners { - id String @id @default(uuid()) - name String @unique + id String @id @default(uuid()) + name String @unique link String - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() @@map("partners") } model Supporters { - id String @id @default(uuid()) - name String @unique - imageUrl String @map("image_url") + id String @id @default(uuid()) + name String @unique + imageUrl String @map("image_url") link String - createdAt String @map("created_at") @db.VarChar(32) - updatedAt String? @map("updated_at") @db.VarChar(32) + createdAt DateTime @default(now()) @map("created_at") @db.Timestamptz() + updatedAt DateTime? @updatedAt @map("updated_at") @db.Timestamptz() @@map("supporters") }