public async Task <Unit> Handle(NomeDeModeloAlterado request, CancellationToken cancellationToken) { var modelo = await repositorioDeModelos.ObtemModelo(request.Codigo); modelo.Replay(request); await repositorioDeModelos.Update(modelo); return(Unit.Value); }
public Recurso AdicionaRecursoDeModelo(SolicitacaoDeAdicaoDeRecursoDeModelo solicitacao) { unitOfWork.BeginTransaction(); try { var codigo = new CodigoDeModelo(solicitacao.Codigo); var modelo = repositorioDeModelos.ObtemModelo(codigo); var recurso = modelo.AdicionaRecurso(solicitacao.Tipo, solicitacao.Descricao, solicitacao.Custo, solicitacao.Unidades); repositorioDeModelos.Update(modelo); unitOfWork.Commit(); return(recurso); } catch (Exception) { unitOfWork.Rollback(); throw; } }