Exemplo n.º 1
0
        public ActionResult <LiaisonReadDto> Create(LiaisonCreateDto liaisonCreateDto)
        {
            LiaisonTacheLocataire liaison = _mapper.Map <LiaisonTacheLocataire>(liaisonCreateDto); // trouve le model à utiliser

            _repository.Create(liaison);                                                           // crée la command en ram
            _repository.SaveChanges();                                                             // sauvegarde les changements dans la bdd

            LiaisonReadDto liaisonReadDto = _mapper.Map <LiaisonReadDto>(liaison);

            liaisonReadDto.Locataire = new LocataireRepo(_repository.Context).GetById(liaisonReadDto.LocataireId);
            liaisonReadDto.Tache     = new TacheRepo(_repository.Context).GetById(liaisonReadDto.TacheId);

            //return CreatedAtRoute(nameof(GetById), new { Id = commandReadDto.Id }, commandReadDto);
            return(Ok(liaisonReadDto));
        }
Exemplo n.º 2
0
        [HttpGet("{id:int}", Name = "GetLiaisonById")]         // indique que cette méthode répond à une requete http
        public ActionResult <LiaisonReadDto> GetLiaisonById(int id)
        {
            LiaisonTacheLocataire liaison = _repository.GetById(id);

            if (liaison == null)
            {
                return(NotFound());                // si pas trouvé renvoie 404 not found
            }
            LiaisonReadDto liaisonReadDto = _mapper.Map <LiaisonReadDto>(liaison);

            liaisonReadDto.Locataire = new LocataireRepo(_repository.Context).GetById(liaisonReadDto.LocataireId);
            liaisonReadDto.Tache     = new TacheRepo(_repository.Context).GetById(liaisonReadDto.TacheId);

            return(Ok(liaisonReadDto));            // map commandItem en CommandReadDto pour renvoyer les données formattées au client
        }