public async Task InserirAsync(MovimentacaoSaidaProduto movimentacaoSaidaProduto) { var validationResult = new NovoMovimentacaoSaidaProdutoValidation().Validate(movimentacaoSaidaProduto); if (!validationResult.IsValid) { _notifications.Add(validationResult); return; } await _movimentacaoSaidaProdutoRepository.InserirAsync(movimentacaoSaidaProduto); await _movimentacaoSaidaProdutoRepository.CommitAsync(); var produto = await _produtoService.BuscarPorIdAsync(movimentacaoSaidaProduto.ProdutoId); var quantidadeAtualProduto = produto.BuscarQuantidadeAtual(); var estoqueProduto = await _estoqueService.BuscarPorIdProdutoAsync(movimentacaoSaidaProduto.ProdutoId); if (quantidadeAtualProduto <= estoqueProduto.QuantidadeMinima) { var response = await _mediator.Send(new QuantidadeMinimaAtingidaCommand { NomeProduto = produto.Nome }); } }
public async Task InserirAsync(Estoque estoque) { var validationResult = new NovoEstoqueValidation().Validate(estoque); if (!validationResult.IsValid) { _notifications.Add(validationResult); return; } await _estoqueRepository.InserirAsync(estoque); await _estoqueRepository.CommitAsync(); }
public async Task InserirAsync(Produto produto) { var validationResult = new NovoProdutoValidation().Validate(produto); if (!validationResult.IsValid) { _notifications.Add(validationResult); return; } await _produtoRepository.InserirAsync(produto); await _produtoRepository.CommitAsync(); }
public async Task InserirAsync(Categoria categoria) { var validationResult = new NovaCategoriaValidation().Validate(categoria); if (!validationResult.IsValid) { _notifications.Add(validationResult); return; } await _categoriaRepository.InserirAsync(categoria); await _categoriaRepository.CommitAsync(); }
public async Task InserirAsync(MovimentacaoEntradaProduto movimentacaoEntradaProduto) { var validationResult = new NovoMovimentacaoEntradaProdutoValidation().Validate(movimentacaoEntradaProduto); if (!validationResult.IsValid) { _notifications.Add(validationResult); return; } await _movimentacaoEntradaProdutoRepository.InserirAsync(movimentacaoEntradaProduto); await _movimentacaoEntradaProdutoRepository.CommitAsync(); }
public decimal CalcularJurosCompostos(TaxaJuros taxaJuros) { var validationResult = new JurosCompostosValidation().Validate(taxaJuros); if (!validationResult.IsValid) { _notifications.Add(validationResult); return(0); } return(taxaJuros.CalcularJurosCompostos()); }
public async Task Registrar(IdentityUser novoUsuario, string senha) { var validationNovoUsuarioResult = new LoginValidation().Validate(novoUsuario); var validationSenhaUsuarioResult = new SenhaUsuarioValidation().Validate(senha); if (!validationNovoUsuarioResult.IsValid) { _notifications.Add(validationNovoUsuarioResult); return; } if (!validationSenhaUsuarioResult.IsValid) { _notifications.Add(validationSenhaUsuarioResult); return; } var result = await _userManager.CreateAsync(novoUsuario, senha); if (result.Succeeded) { await _signInManager.SignInAsync(novoUsuario, false); } else { _notifications.Add(result.Errors.Select(x => x.Description)); return; } }