diff --git a/src/database/migrations/1661199963221-AlterUsersTableEditBirthDateFieldTypeToString.ts b/src/database/migrations/1661199963221-AlterUsersTableEditBirthDateFieldTypeToString.ts new file mode 100644 index 0000000..4d21d2a --- /dev/null +++ b/src/database/migrations/1661199963221-AlterUsersTableEditBirthDateFieldTypeToString.ts @@ -0,0 +1,28 @@ +import {MigrationInterface, QueryRunner, TableColumn} from "typeorm"; + +export class AlterUsersTableEditBirthDateFieldTypeToString1661199963221 implements MigrationInterface { + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.dropColumn('users', 'birth_date') + + await queryRunner.addColumn('users', new TableColumn( + { + name: 'birth_date', + type: 'varchar', + isNullable: true + }, + )) + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.dropColumn('users', 'birth_date') + + await queryRunner.addColumn('users', new TableColumn( + { + name: 'birth_date', + type: 'date', + isNullable: true + }, + )) + } +} diff --git a/src/models/User.ts b/src/models/User.ts index d9428a3..a68f745 100644 --- a/src/models/User.ts +++ b/src/models/User.ts @@ -21,12 +21,12 @@ class User { @Column() email: string; - + @Column() phone_number: string; @Column() - birth_date: Date; + birth_date: string; @Column() password: string; @@ -36,7 +36,7 @@ class User { @Column() bio: string; - + @Column() star_rating: number; diff --git a/src/routes/users.routes.ts b/src/routes/users.routes.ts index 2f5cff4..053eea5 100644 --- a/src/routes/users.routes.ts +++ b/src/routes/users.routes.ts @@ -49,14 +49,14 @@ usersRouter.get('/:id', ensureAuthenticated, async (request, response) => { const user = await findUserService.execute(id); - // converting ISO 8601 date to normal date - let birth_date = new Date(user.birth_date); + // // converting ISO 8601 date to normal date + // let birth_date = new Date(user.birth_date); - let year = birth_date.getFullYear(); - let month = birth_date.getMonth() + 1; - let date = birth_date.getDate(); + // let year = birth_date.getFullYear(); + // let month = birth_date.getMonth() + 1; + // let date = birth_date.getDate(); - const finalDate = `${date}/${month}/${year}`; + // const newBirthDate = `${date}/${month}/${year}`; const userWithoutPassword = { id_user: user.id_user, @@ -64,7 +64,7 @@ usersRouter.get('/:id', ensureAuthenticated, async (request, response) => { lastname: user.lastname, email: user.email, phone_number: user.phone_number, - birth_date: finalDate, + birth_date: user.birth_date, avatar_image: user.avatar_image, bio: user.bio, document_type: user.document_type, diff --git a/src/services/CreateUserService.ts b/src/services/CreateUserService.ts index 0feffbf..1097eb7 100644 --- a/src/services/CreateUserService.ts +++ b/src/services/CreateUserService.ts @@ -18,7 +18,7 @@ interface Request { class CreateUserService { public async execute({ name, lastname, email, birth_date, password }: Request): Promise { const usersRepository = getRepository(User); - const socialInformationRepository = getRepository(Social); + // const socialInformationRepository = getRepository(Social); const checkUserEmailExists = await usersRepository.findOne({ where: { email }, diff --git a/src/services/UpdateUserService.ts b/src/services/UpdateUserService.ts index ebc540e..b8294fd 100644 --- a/src/services/UpdateUserService.ts +++ b/src/services/UpdateUserService.ts @@ -34,6 +34,7 @@ class UpdateUserService { if (lastname) user.lastname = lastname if (bio) user.bio = bio if (email) user.email = email + if (birth_date) user.birth_date = birth_date if (phone_number) { const phoneAlreadyExists = await usersRepository.findOne({ @@ -44,13 +45,11 @@ class UpdateUserService { throw new AppError('O telefone informado já está em uso por outra conta!', 409); } } - + user.phone_number = phone_number if (document_type) user.document_type = document_type if (document) user.document = document - - // user.birth_date = new Date(birth_date); // TODO, funciona? await usersRepository.save(user);