public IActionResult AddExam([FromBody] ExamDto exam) { EnsureArg.IsNotNull(exam); var command = new AddExamCommand(exam); CommandDispatcher.Execute(command); return(Created("/api/exams", command)); }
public ICommandResult Handle(AddExamCommand command) { var patient = _repository.GetPatient(command.IdPatient); if (patient == null) { return(new CommandResult(false, "Paciente não encontrado", Notifications)); } var frames = command.Frames.Select(f => new BitalinoFrame(f.Identifier, f.Seq, f.Analog, f.Digital)); var exam = new Exam(command.Channel, command.Frequency, command.Duration, command.Date, frames); _repository.Save(exam, patient.Id); return(new CommandResult(true, "Exame inserido com sucesso!", new { exam.Id, })); }
public ICommandResult AddExam([FromBody] AddExamCommand command) { var result = (CommandResult)_handler.Handle(command); return(result); }
public async Task <IActionResult> Post([FromBody] AddExamCommand command) => await DispatchCommandAsync(command);