public async Task <IActionResult> Put(int id, [FromBody] BasePhysicalExaminationDto updatePhysicalExaminationDto) { var physicalExamination = await _physicalExaminationRepository.Get(id); if (physicalExamination == null) { return(NotFound()); } if (updatePhysicalExaminationDto.ExaminationTypeId != null) { var examinationType = await _examinationTypeRepository.Get(updatePhysicalExaminationDto.ExaminationTypeId.Value); if (examinationType == null) { return(BadRequest("Aanvullend onderzoek type bestaat niet.")); } } if (updatePhysicalExaminationDto.ConsultationId != null) { var consultation = await _consultationRepository.Get(updatePhysicalExaminationDto.ConsultationId.Value); if (consultation == null) { return(BadRequest("Consult bestaat niet.")); } } if (updatePhysicalExaminationDto.PatientId != null) { var patient = await _patientRepository.Get(updatePhysicalExaminationDto.PatientId.Value); if (patient == null) { return(BadRequest("Patiënt bestaat niet.")); } } var userId = User.Claims.First(u => u.Type == ClaimTypes.Sid).Value; var currentUser = await _identityRepository.GetUserById(userId); _mapper.Map(updatePhysicalExaminationDto, physicalExamination); physicalExamination.Id = id; var updatedPhysicalExamination = await _physicalExaminationRepository.Update(physicalExamination, currentUser); var updatedExaminationType = _mapper.Map <PhysicalExamination, PhysicalExaminationDto>(updatedPhysicalExamination); return(Ok(updatedExaminationType)); }
public async Task <ActionResult <PhysicalExamination> > Post( [FromBody] BasePhysicalExaminationDto createPhysicalExaminationDto) { if (createPhysicalExaminationDto.ConsultationId != null) { var consultation = await _consultationRepository.Get(createPhysicalExaminationDto.ConsultationId.Value); if (consultation == null) { return(BadRequest("Consult bestaat niet.")); } } if (createPhysicalExaminationDto.PatientId != null) { var patient = await _patientRepository.Get(createPhysicalExaminationDto.PatientId.Value); if (patient == null) { return(BadRequest("Patiënt bestaat niet.")); } } if (createPhysicalExaminationDto.ExaminationTypeId != null) { var examinationType = await _examinationTypeRepository.Get(createPhysicalExaminationDto.ExaminationTypeId.Value); if (examinationType == null) { return(BadRequest("Aanvullend onderzoek type bestaat niet.")); } } var userId = User.Claims.First(u => u.Type == ClaimTypes.Sid).Value; var currentUser = await _identityRepository.GetUserById(userId); var physicalExamination = _mapper.Map <BasePhysicalExaminationDto, PhysicalExamination>(createPhysicalExaminationDto); var createdPhysicalExamination = await _physicalExaminationRepository.Add(physicalExamination, currentUser); var createdPrescriptionDto = _mapper.Map <PhysicalExamination, PhysicalExaminationDto>(createdPhysicalExamination); return(CreatedAtAction(nameof(Post), createdPrescriptionDto)); }