Commit 5de74108 authored by Omar Luna Hernández's avatar Omar Luna Hernández
Browse files
parents 3a4b89e7 c1696a3a
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -30,6 +30,8 @@ import { RouteModule } from './route/route.module';
import { Route } from './route/entities/route.entity';
import { TravelPlaceModule } from './travel-place/travel-place.module';
import { TravelPlace } from './travel-place/entities/travel-place.entity';
import { VisitedModule } from './visited/visited.module';
import { Visited } from './visited/entities/visited.entity';

@Module({
  imports: [
@@ -54,6 +56,7 @@ import { TravelPlace } from './travel-place/entities/travel-place.entity';
        Category,
        Route,
        TravelPlace,
        Visited,
      ],
      synchronize: DbConstants.DB_SYNC,
      logging: false,
@@ -73,6 +76,7 @@ import { TravelPlace } from './travel-place/entities/travel-place.entity';
    CategoryModule,
    RouteModule,
    TravelPlaceModule,
    VisitedModule,
  ],
  controllers: [AppController],
  providers: [AppService, DatabaseSeederModule],
+0 −1
Original line number Diff line number Diff line
@@ -14,7 +14,6 @@ export class AuthUserController {
  constructor(private readonly authUserService: AuthUserService) {}

  @ApiBody({ type: CreateUserDto })
  @ApiBearerAuth()
  @ApiCreatedResponse({
    type: UserSigninResDto,
  })
+0 −1
Original line number Diff line number Diff line
@@ -47,7 +47,6 @@ export class AuthUserService {
      { secret: JwtConstants.SECRET },
    );
    const userSigninResDto: UserSigninResDto = {
      userId: user.userId,
      email: user.email,
      name: user.name,
      lastName: user.lastName,
+0 −2
Original line number Diff line number Diff line
@@ -2,8 +2,6 @@ import { ApiProperty } from '@nestjs/swagger';
import { ALL_ROLES } from 'src/shared/enum/admin-role.enum';

export class UserSigninResDto {
  @ApiProperty()
  userId: number;
  @ApiProperty()
  email: string;
  @ApiProperty()
+15 −1
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ import { ServerConstants } from 'src/constants/server.contants';
import { Available } from 'src/pointOfInterest/enum/available.enum';
import { UpdatePlaceReqDto } from './dto/update-place.req.dto';
import { Category } from 'src/category/entities/category.entity';
import { Visited } from 'src/visited/entities/visited.entity';

@Injectable()
export class PlaceService {
@@ -79,7 +80,7 @@ export class PlaceService {
    }
  }

  async findAllByTown(idTown: number, lang: LANGUAGES) {
  async findAllByTown(idTown: number, lang: LANGUAGES): Promise<GetPlaceDto[]> {
    const res: any[] = await this.dataSource
      .getRepository(Place)
      .createQueryBuilder('place')
@@ -206,4 +207,17 @@ export class PlaceService {
      );
    }
  }

  async findPlacesNotVisitedByUser(email: string, lang: LANGUAGES, idTown: number): Promise<GetPlaceDto[]> {
    const places: GetPlaceDto[] = await this.findAllByTown(idTown, lang);
    const visited: any[] = await this.dataSource
      .getRepository(Visited)
      .createQueryBuilder('visited')
      .leftJoinAndSelect('visited.place', 'place')
      .where('visited.user = :email', { email })
      .getMany();
    const visitedIds: number[] = visited.map((visit) => visit.place.idPlace);
    // podemos hacerlo en la query
    return places.filter((place) => !visitedIds.includes(place.idPlace));
  }
}
Loading