Skip to content

Commit

Permalink
(#225) adiciona campo valorMaximo na entidade Metrica
Browse files Browse the repository at this point in the history
  • Loading branch information
martinsglucas committed Dec 12, 2023
1 parent e187306 commit 2a5ba55
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 1 deletion.
1 change: 1 addition & 0 deletions src/metrica/classes/tipo-metrica.enum.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,5 @@ export enum ECategoriaMetrica {
HORAS_DORMIDAS = 'Horas Dormidas',
ALTURA = 'Altura',
IMC = 'IMC',
HIDRATACAO = 'Hidratação',
}
6 changes: 5 additions & 1 deletion src/metrica/dto/create-metrica-dto.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { IsEnum, IsNotEmpty, IsNumber } from "class-validator";
import { IsEnum, IsNotEmpty, IsNumber, IsOptional, IsString } from "class-validator";
import { ECategoriaMetrica } from "../classes/tipo-metrica.enum";

export class CreateMetricaDto {
Expand All @@ -9,4 +9,8 @@ export class CreateMetricaDto {
@IsNotEmpty()
@IsEnum(ECategoriaMetrica)
categoria?: ECategoriaMetrica;

@IsOptional()
@IsString()
valorMaximo?: string;
}
3 changes: 3 additions & 0 deletions src/metrica/entities/metrica.entity.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ export class Metrica {
@Column('enum', { enum: ECategoriaMetrica })
categoria!: ECategoriaMetrica;

@Column('varchar', { length: 20, nullable: true })
valorMaximo?: string;

constructor(createMetricaDto: CreateMetricaDto | UpdateMetricaDto) {
Object.assign(this, createMetricaDto);
}
Expand Down
22 changes: 22 additions & 0 deletions src/migration/1702413498781-AlterTableMetrica.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
import { MigrationInterface, QueryRunner } from "typeorm";

export class AlterTableMetrica1702413498781 implements MigrationInterface {
name = 'AlterTableMetrica1702413498781'

public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "metrica" ADD "valorMaximo" character varying(20)`);
await queryRunner.query(`ALTER TYPE "public"."metrica_categoria_enum" RENAME TO "metrica_categoria_enum_old"`);
await queryRunner.query(`CREATE TYPE "public"."metrica_categoria_enum" AS ENUM('Frequência Cardíaca', 'Pressão', 'Temperatura', 'Peso', 'Glicemia', 'Saturação', 'Horas Dormidas', 'Altura', 'IMC', 'Hidratação')`);
await queryRunner.query(`ALTER TABLE "metrica" ALTER COLUMN "categoria" TYPE "public"."metrica_categoria_enum" USING "categoria"::"text"::"public"."metrica_categoria_enum"`);
await queryRunner.query(`DROP TYPE "public"."metrica_categoria_enum_old"`);
}

public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`CREATE TYPE "public"."metrica_categoria_enum_old" AS ENUM('Frequência Cardíaca', 'Pressão', 'Temperatura', 'Peso', 'Glicemia', 'Saturação', 'Horas Dormidas', 'Altura', 'IMC')`);
await queryRunner.query(`ALTER TABLE "metrica" ALTER COLUMN "categoria" TYPE "public"."metrica_categoria_enum_old" USING "categoria"::"text"::"public"."metrica_categoria_enum_old"`);
await queryRunner.query(`DROP TYPE "public"."metrica_categoria_enum"`);
await queryRunner.query(`ALTER TYPE "public"."metrica_categoria_enum_old" RENAME TO "metrica_categoria_enum"`);
await queryRunner.query(`ALTER TABLE "metrica" DROP COLUMN "valorMaximo"`);
}

}

0 comments on commit 2a5ba55

Please sign in to comment.