Example #1
0
        public ActionResult PatchLog(uint logId, string email, JsonPatchDocument <LogCreateUpdateDto> patchDocument)
        {
            ICollection <Log> logs = _repository.GetLogs(email);
            Log existingLog        = null;

            foreach (Log log in logs)
            {
                if (log.Id == logId)
                {
                    existingLog = log;
                    break;
                }
            }

            if (existingLog == null)
            {
                NotFound();
            }

            LogCreateUpdateDto logToPatch = _mapper.Map <LogCreateUpdateDto>(existingLog);

            patchDocument.ApplyTo(logToPatch, ModelState);

            if (!TryValidateModel(logToPatch))
            {
                return(ValidationProblem(ModelState));
            }

            _mapper.Map(logToPatch, existingLog);
            _repository.SaveChanges();
            return(NoContent());
        }
Example #2
0
        public ActionResult <LogReadDto> CreateLog(LogCreateUpdateDto logCreateDto)
        {
            Log model = _mapper.Map <Log>(logCreateDto);

            _repository.CreateLog(model);
            _repository.SaveChanges();

            return(CreatedAtRoute(nameof(GetLogs), new { email = logCreateDto.PatientEmail }, _mapper.Map <LogReadDto>(model)));
        }