public GenericCommandResult Update( [FromBody] UpdateSchoolCommand command, [FromServices] SchoolHandler handler ) { return((GenericCommandResult)handler.Handle(command)); }
// Editar uma escola public ICommandResult Handle(UpdateSchoolCommand command) { // Valida os dados do command command.Validate(); // Se for invalido, mostrar as notificações if (command.Invalid) { AddNotifications(command); return(new CommandResult(false, SharedMessages.InvalidOperation, command)); } // Preenche o VO document com as informações do command var document = new Document(command.DocumentNumber, command.Type); // Preenche o VO address com as informações do command var address = new Address(command.Street, command.Number, command.Neighborhood, command.City, command.StateName, command.Country, command.ZipCode, command.StateAbbr); // Preenche a entitie com os dados dos VOs e command var school = new Entities.School(command.Name, document, address, command.Phone); school.ChangeId(command.Id); // Caso algum deles retorne erro, mostre as notificações AddNotifications(document, address, school); // Checando as notificações if (Invalid) { return(new CommandResult(false, SharedMessages.InvalidOperation, school)); } // Salvando informações _schoolRepository.Update(school); _uow.Commit(); // Retornando informações de sucesso e o objeto preenchido return(new CommandResult(true, SharedMessages.SuccedOperation, school)); }
public ICommandResult Handle(UpdateSchoolCommand command) { command.Validate(); if (command.Invalid) { return(new GenericCommandResult(false, "Ops, parece que os dados da escola estão errados!", command.Notifications)); } // Recupera var school = _repository.GetById(command.Id); // modificacoes school.UpdateName(command.Name); school.ChangeSchoolPrincipal(command.SchoolPrincipal); school.SetMaximumSchoolClass(command.MaxSchoolClass); school.SetMaximumSchoolStudents(command.MaxSchoolStudents); // salva no banco _repository.Update(school); // Retorna o resultado return(new GenericCommandResult(true, "Escola salva com sucesso!", school)); }
public ICommandResult Put([FromBody] UpdateSchoolCommand value) { var result = (CommandResult)_handler.Handle(value); return(result); }
public async Task <IActionResult> UpdateAsync([FromBody] UpdateSchoolCommand command) { return(Ok(await _mediator.Send(command))); }
public async Task <IActionResult> Update(UpdateSchoolCommand command) => await SendAsync(command, resourceId : command.Id, resource : "school");