Commit f442b741 authored by Diego Iván's avatar Diego Iván
Browse files

agregando resouce visited

parent 1f58305f
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],
+12 −0
Original line number Diff line number Diff line
import { ApiProperty } from '@nestjs/swagger';

export class CreateVisitedDto {
  @ApiProperty()
  idPlace: number;
  @ApiProperty()
  email: string;
  @ApiProperty({ type: 'number', description: 'Rating from 1 to 5' })
  rating: number;
  @ApiProperty()
  date: Date;
}
+4 −0
Original line number Diff line number Diff line
import { PartialType } from '@nestjs/swagger';
import { CreateVisitedDto } from './create-visited.dto';

export class UpdateVisitedDto extends PartialType(CreateVisitedDto) {}
+23 −0
Original line number Diff line number Diff line
import { Place } from 'src/place/entities/place.entity';
import { User } from 'src/user/entities/user.entity';
import { Column, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn } from 'typeorm';

@Entity()
export class Visited {
  @PrimaryGeneratedColumn()
  idVisited: number;

  @ManyToOne(() => Place, (place) => place.idPlace, { eager: true })
  @JoinColumn({ name: 'place' })
  place: Place;

  @ManyToOne(() => User, (user) => user.userId)
  @JoinColumn({ name: 'user' })
  user: User;

  @Column({ nullable: false })
  rating: number;

  @Column({ nullable: false })
  date: Date;
}
+40 −0
Original line number Diff line number Diff line
import { Controller, Get, Post, Body, Patch, Param, Delete } from '@nestjs/common';
import { VisitedService } from './visited.service';
import { CreateVisitedDto } from './dto/create-visited.dto';
import { ApiTags } from '@nestjs/swagger';
// import { UpdateVisitedDto } from './dto/update-visited.dto';

@Controller('visited')
@ApiTags('Visited places')
export class VisitedController {
  constructor(private readonly visitedService: VisitedService) {}

  @Post()
  async create(@Body() createVisitedDto: CreateVisitedDto) {
    try {
      return await this.visitedService.create(createVisitedDto);
    } catch (e) {
      return e;
    }
  }

  @Get()
  findAll() {
    return this.visitedService.findAll();
  }

  @Get(':id')
  findOne(@Param('id') id: string) {
    return this.visitedService.findOne(+id);
  }

  // @Patch(':id')
  // update(@Param('id') id: string, @Body() updateVisitedDto: UpdateVisitedDto) {
  //   return this.visitedService.update(+id, updateVisitedDto);
  // }

  @Delete(':id')
  remove(@Param('id') id: string) {
    return this.visitedService.remove(+id);
  }
}
Loading