Loading backend/package-lock.json +35 −6 Original line number Diff line number Diff line Loading @@ -19,8 +19,9 @@ "@nestjs/swagger": "^7.3.0", "@nestjs/typeorm": "^10.0.2", "bcrypt": "^5.1.1", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dotenv": "^16.4.5", "ip": "^2.0.1", "mysql2": "^3.9.2", "network": "^0.7.0", "reflect-metadata": "^0.2.0", Loading Loading @@ -2709,6 +2710,11 @@ "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==" }, "node_modules/@types/validator": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz", "integrity": "sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==" }, "node_modules/@types/yargs": { "version": "17.0.32", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", Loading Loading @@ -3872,6 +3878,21 @@ "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, "node_modules/class-transformer": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" }, "node_modules/class-validator": { "version": "0.14.1", "resolved": "https://registry.npmjs.org/class-validator/-/class-validator-0.14.1.tgz", "integrity": "sha512-2VEG9JICxIqTpoK1eMzZqaV+u/EiwEJkMGzTrZf6sU/fwsnOITVgYJ8yojSy6CaXtO9V0Cc6ZQZ8h8m4UBuLwQ==", "dependencies": { "@types/validator": "^13.11.8", "libphonenumber-js": "^1.10.53", "validator": "^13.9.0" } }, "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", Loading Loading @@ -6082,11 +6103,6 @@ "node": ">= 0.10" } }, "node_modules/ip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.1.tgz", "integrity": "sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==" }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", Loading Loading @@ -7169,6 +7185,11 @@ "node": ">= 0.8.0" } }, "node_modules/libphonenumber-js": { "version": "1.11.4", "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.4.tgz", "integrity": "sha512-F/R50HQuWWYcmU/esP5jrH5LiWYaN7DpN0a/99U8+mnGGtnx8kmRE+649dQh3v+CowXXZc8vpkf5AmYkO0AQ7Q==" }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", Loading Loading @@ -10066,6 +10087,14 @@ "node": ">=10.12.0" } }, "node_modules/validator": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", "engines": { "node": ">= 0.10" } }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", Loading backend/package.json +2 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ "@nestjs/swagger": "^7.3.0", "@nestjs/typeorm": "^10.0.2", "bcrypt": "^5.1.1", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dotenv": "^16.4.5", "mysql2": "^3.9.2", "network": "^0.7.0", Loading backend/src/admin/admin.service.ts +5 −1 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ import { Admin } from './entities/admin.entity'; import { Repository } from 'typeorm'; import { InjectRepository } from '@nestjs/typeorm'; import { Town } from 'src/town/entities/town.entity'; import { ADMIN_ROLE } from 'src/shared/enum/admin-role.enum'; @Injectable() export class AdminService { Loading @@ -12,7 +13,10 @@ export class AdminService { @InjectRepository(Town) private townRepository: Repository<Town>, ) {} async create(createAdminDto: CreateAdminDto) { const town = await this.townRepository.findOneByOrFail({ townId: createAdminDto.idTown }); let town: Town = null; if (createAdminDto.role == ADMIN_ROLE.ADMIN) { town = await this.townRepository.findOneByOrFail({ townId: createAdminDto.idTown }); } await this.adminRepository.insert({ ...createAdminDto, idTown: town }); } Loading backend/src/app.module.ts +5 −3 Original line number Diff line number Diff line Loading @@ -17,8 +17,6 @@ import { join } from 'path'; import { Town } from './town/entities/town.entity'; import { TownModule } from './town/town.module'; import { TownTraduction } from './town/entities/town-traduction.entity'; import { APP_GUARD } from '@nestjs/core'; import { AuthAdminGuard } from './auth/admin/authAdmin.guard'; import { PlaceModule } from './place/place.module'; import { Place } from './place/entities/place.entity'; import { PointOfInterestModule } from './pointOfInterest/PointOfInterest.module'; Loading @@ -26,6 +24,8 @@ import { PointOfInterest } from './pointOfInterest/entities/PointOfInterest.enti import { AvailableDate } from './place/entities/available-date.entity'; import { PointOfInterestTraduction } from './pointOfInterest/entities/PointOfInterestTraduction.entity'; import { PlaceTraduction } from './place/entities/place-traduction.entity'; import { CategoryModule } from './category/category.module'; import { Category } from './category/entities/category.entity'; @Module({ imports: [ Loading @@ -47,9 +47,10 @@ import { PlaceTraduction } from './place/entities/place-traduction.entity'; AvailableDate, PointOfInterestTraduction, PlaceTraduction, Category, ], synchronize: DbConstants.DB_SYNC, logging: true, logging: false, }), AuthAdminModule, AdminModule, Loading @@ -63,6 +64,7 @@ import { PlaceTraduction } from './place/entities/place-traduction.entity'; rootPath: join(__dirname, '..', 'static'), }), PointOfInterestModule, CategoryModule, ], controllers: [AppController], providers: [AppService, DatabaseSeederModule], Loading backend/src/auth/user/authUser.module.ts +4 −2 Original line number Diff line number Diff line Loading @@ -6,9 +6,11 @@ import { AuthUserController } from './authUsercontroller'; import { UserService } from 'src/user/user.service'; import { User } from 'src/user/entities/user.entity'; import { AuthUserService } from './authUserservice'; import { Category } from 'src/category/entities/category.entity'; import { CategoryService } from 'src/category/category.service'; @Module({ controllers: [AuthUserController], providers: [UserService, JwtService, EncryptionService, AuthUserService], imports: [TypeOrmModule.forFeature([User])], providers: [UserService, JwtService, EncryptionService, AuthUserService, CategoryService], imports: [TypeOrmModule.forFeature([User, Category])], }) export class AuthUserModule {} Loading
backend/package-lock.json +35 −6 Original line number Diff line number Diff line Loading @@ -19,8 +19,9 @@ "@nestjs/swagger": "^7.3.0", "@nestjs/typeorm": "^10.0.2", "bcrypt": "^5.1.1", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dotenv": "^16.4.5", "ip": "^2.0.1", "mysql2": "^3.9.2", "network": "^0.7.0", "reflect-metadata": "^0.2.0", Loading Loading @@ -2709,6 +2710,11 @@ "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==" }, "node_modules/@types/validator": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.0.tgz", "integrity": "sha512-nH45Lk7oPIJ1RVOF6JgFI6Dy0QpHEzq4QecZhvguxYPDwT8c93prCMqAtiIttm39voZ+DDR+qkNnMpJmMBRqag==" }, "node_modules/@types/yargs": { "version": "17.0.32", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", Loading Loading @@ -3872,6 +3878,21 @@ "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "dev": true }, "node_modules/class-transformer": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" }, "node_modules/class-validator": { "version": "0.14.1", "resolved": "https://registry.npmjs.org/class-validator/-/class-validator-0.14.1.tgz", "integrity": "sha512-2VEG9JICxIqTpoK1eMzZqaV+u/EiwEJkMGzTrZf6sU/fwsnOITVgYJ8yojSy6CaXtO9V0Cc6ZQZ8h8m4UBuLwQ==", "dependencies": { "@types/validator": "^13.11.8", "libphonenumber-js": "^1.10.53", "validator": "^13.9.0" } }, "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", Loading Loading @@ -6082,11 +6103,6 @@ "node": ">= 0.10" } }, "node_modules/ip": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.1.tgz", "integrity": "sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==" }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", Loading Loading @@ -7169,6 +7185,11 @@ "node": ">= 0.8.0" } }, "node_modules/libphonenumber-js": { "version": "1.11.4", "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.11.4.tgz", "integrity": "sha512-F/R50HQuWWYcmU/esP5jrH5LiWYaN7DpN0a/99U8+mnGGtnx8kmRE+649dQh3v+CowXXZc8vpkf5AmYkO0AQ7Q==" }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", Loading Loading @@ -10066,6 +10087,14 @@ "node": ">=10.12.0" } }, "node_modules/validator": { "version": "13.12.0", "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", "engines": { "node": ">= 0.10" } }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", Loading
backend/package.json +2 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,8 @@ "@nestjs/swagger": "^7.3.0", "@nestjs/typeorm": "^10.0.2", "bcrypt": "^5.1.1", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dotenv": "^16.4.5", "mysql2": "^3.9.2", "network": "^0.7.0", Loading
backend/src/admin/admin.service.ts +5 −1 Original line number Diff line number Diff line Loading @@ -4,6 +4,7 @@ import { Admin } from './entities/admin.entity'; import { Repository } from 'typeorm'; import { InjectRepository } from '@nestjs/typeorm'; import { Town } from 'src/town/entities/town.entity'; import { ADMIN_ROLE } from 'src/shared/enum/admin-role.enum'; @Injectable() export class AdminService { Loading @@ -12,7 +13,10 @@ export class AdminService { @InjectRepository(Town) private townRepository: Repository<Town>, ) {} async create(createAdminDto: CreateAdminDto) { const town = await this.townRepository.findOneByOrFail({ townId: createAdminDto.idTown }); let town: Town = null; if (createAdminDto.role == ADMIN_ROLE.ADMIN) { town = await this.townRepository.findOneByOrFail({ townId: createAdminDto.idTown }); } await this.adminRepository.insert({ ...createAdminDto, idTown: town }); } Loading
backend/src/app.module.ts +5 −3 Original line number Diff line number Diff line Loading @@ -17,8 +17,6 @@ import { join } from 'path'; import { Town } from './town/entities/town.entity'; import { TownModule } from './town/town.module'; import { TownTraduction } from './town/entities/town-traduction.entity'; import { APP_GUARD } from '@nestjs/core'; import { AuthAdminGuard } from './auth/admin/authAdmin.guard'; import { PlaceModule } from './place/place.module'; import { Place } from './place/entities/place.entity'; import { PointOfInterestModule } from './pointOfInterest/PointOfInterest.module'; Loading @@ -26,6 +24,8 @@ import { PointOfInterest } from './pointOfInterest/entities/PointOfInterest.enti import { AvailableDate } from './place/entities/available-date.entity'; import { PointOfInterestTraduction } from './pointOfInterest/entities/PointOfInterestTraduction.entity'; import { PlaceTraduction } from './place/entities/place-traduction.entity'; import { CategoryModule } from './category/category.module'; import { Category } from './category/entities/category.entity'; @Module({ imports: [ Loading @@ -47,9 +47,10 @@ import { PlaceTraduction } from './place/entities/place-traduction.entity'; AvailableDate, PointOfInterestTraduction, PlaceTraduction, Category, ], synchronize: DbConstants.DB_SYNC, logging: true, logging: false, }), AuthAdminModule, AdminModule, Loading @@ -63,6 +64,7 @@ import { PlaceTraduction } from './place/entities/place-traduction.entity'; rootPath: join(__dirname, '..', 'static'), }), PointOfInterestModule, CategoryModule, ], controllers: [AppController], providers: [AppService, DatabaseSeederModule], Loading
backend/src/auth/user/authUser.module.ts +4 −2 Original line number Diff line number Diff line Loading @@ -6,9 +6,11 @@ import { AuthUserController } from './authUsercontroller'; import { UserService } from 'src/user/user.service'; import { User } from 'src/user/entities/user.entity'; import { AuthUserService } from './authUserservice'; import { Category } from 'src/category/entities/category.entity'; import { CategoryService } from 'src/category/category.service'; @Module({ controllers: [AuthUserController], providers: [UserService, JwtService, EncryptionService, AuthUserService], imports: [TypeOrmModule.forFeature([User])], providers: [UserService, JwtService, EncryptionService, AuthUserService, CategoryService], imports: [TypeOrmModule.forFeature([User, Category])], }) export class AuthUserModule {}