예제 #1
0
        public async Task <IActionResult> CreateApplication(AplicacaoViewModel aplicacao)
        {
            var produto = _produtoApplicationService.GetById(aplicacao.ProdutoId);

            if (produto == null)
            {
                return(NotFound());
            }

            if (!ModelState.IsValid)
            {
                NotifyModelStateErrors();
                return(View(aplicacao));
            }

            var commandResult = await _produtoApplicationService.AdicionarAplicacao(produto, aplicacao);

            if (commandResult.Success)
            {
                NotifyCommandResultSuccess();
                return(RedirectToAction(nameof(Details), new { id = aplicacao.ProdutoId }));
            }
            else
            {
                NotifyCommandResultErrors(commandResult.Errors);
            }

            return(View(aplicacao));
        }
예제 #2
0
        public async Task <IActionResult> AttachApplication(AplicacaoViewModel viewModel)
        {
            var produto = _produtoApplicationService.GetById(viewModel.ProdutoId);

            if (produto == null)
            {
                return(NotFound());
            }

            var aplicacao = _aplicacaoApplicationService.GetById(viewModel.Id);

            if (aplicacao == null)
            {
                return(NotFound());
            }

            var commandResult = await _produtoApplicationService.RelacionarAplicacao(produto, viewModel);

            if (commandResult.Success)
            {
                NotifyCommandResultSuccess();
                return(RedirectToAction(nameof(Details), new { id = viewModel.ProdutoId }));
            }
            else
            {
                NotifyCommandResultErrors(commandResult.Errors);
            }

            return(View(viewModel));
        }
예제 #3
0
        public IActionResult CreateApplication(Guid id)
        {
            AplicacaoViewModel aplicacao = new AplicacaoViewModel
            {
                ProdutoId = id
            };

            ModelState.Clear();
            return(View(aplicacao));
        }
예제 #4
0
 public Task <CommandResult> AdicionarAplicacao(ProdutoViewModel produtoViewModel, AplicacaoViewModel aplicacaoViewModel)
 {
     return(_mediator.SendCommand(new AddProdutoAplicacaoCommand(produtoViewModel.Id, aplicacaoViewModel.CarroMarca, aplicacaoViewModel.CarroModelo, aplicacaoViewModel.CarroAno, aplicacaoViewModel.CarroMotor, aplicacaoViewModel.Observacao)));
 }
예제 #5
0
 public Task <CommandResult> RelacionarAplicacao(ProdutoViewModel produtoViewModel, AplicacaoViewModel aplicacaoViewModel)
 {
     return(_mediator.SendCommand(new AttachProdutoAplicacaoCommand(produtoViewModel.Id, aplicacaoViewModel.Id)));
 }