import { Injectable } from '@nestjs/common'; import { ExperienceEntity } from './experience.entity'; import { ExperienceDto } from './experience.dto'; import { InjectRepository } from "@nestjs/typeorm"; import { DeleteResult, Repository } from "typeorm"; @Injectable() export class ExperienceService { constructor( @InjectRepository(ExperienceEntity) private readonly experienceRepository: Repository ) {} async find(id: string): Promise { return await this.experienceRepository.findOne({ where: { id: id }, relations: ['profile', 'skills', 'status'] }) } async findAll(): Promise { return await this.experienceRepository.find({ relations: ['profile', 'skills', 'status'] }); } async create(experience: ExperienceDto): Promise { return await this.experienceRepository.save(experience); } async update( id: string, experienceDto: ExperienceDto ): Promise { const experienceEntity: ExperienceEntity = await this.experienceRepository.findOneBy({ id }) const experienceEntityUpdated = Object.assign(experienceEntity, experienceDto) return await this.experienceRepository.save(experienceEntityUpdated) } async delete(id: string): Promise { return await this.experienceRepository.delete({ id }) } }