public ActionResult Confirmar(DetailsDeleteVendaViewModel cadVenda)
        {
            var perf = Mapper.Map <Performance>(_perfomanceRepository.ObterPorId(cadVenda.Performance.Id));

            var e = new GDC_Vendas()
            {
                Id               = Guid.NewGuid(),
                IdCliente        = cadVenda.Cliente.Id,
                IdVeiculo        = cadVenda.Veiculo.Id,
                IdFormaPagamento = cadVenda.FormaDePagamento.Id,
                IdPerformance    = cadVenda.Performance.Id,
                Valor            = Convert.ToDouble(cadVenda.Veiculo.Valor += perf.ValorTotal += cadVenda.Venda.Valor),
                Observacao       = cadVenda.Venda.Observacoes,
                Tipo_Entrega     = cadVenda.Venda.Tipo_Entrega.ToString(),
                Status           = cadVenda.Venda.Status.ToString(),
            };

            _vendaRepository.Inserir(Mapper.Map <GDC_Vendas>(e));

            cadVenda.Cliente = Mapper.Map <Cliente>(_clienteRepository.ObterPorId(e.IdCliente));

            MudarClienteComunParaVip(cadVenda.Cliente);

            return(RedirectToAction("listar-vendas", "administrativo-vendas"));
        }
        public ActionResult Details(Guid id)
        {
            try
            {
                ViewBag.IsDetails = false;

                CadastrarVendaViewModel     cadVenda = new CadastrarVendaViewModel();
                DetailsDeleteVendaViewModel detailsDeleteVendaViewModel = new DetailsDeleteVendaViewModel();

                detailsDeleteVendaViewModel.Venda = Mapper.Map <Venda>(_vendaRepository.ObterPorId(id));

                cadVenda.IdVenda            = detailsDeleteVendaViewModel.Venda.Id;
                cadVenda.IdCliente          = detailsDeleteVendaViewModel.Venda.IdCliente;
                cadVenda.IdFormaDePagamento = detailsDeleteVendaViewModel.Venda.IdFormaDePagamento;
                cadVenda.IdPerformance      = detailsDeleteVendaViewModel.Venda.IdPerfomance;
                cadVenda.IdVeiculo          = detailsDeleteVendaViewModel.Venda.IdVeiculo;

                detailsDeleteVendaViewModel = PreencherViewModelDetails(detailsDeleteVendaViewModel, ref cadVenda);

                return(View("DetailsConfirmar", detailsDeleteVendaViewModel));
            }
            catch
            {
                return(RedirectToAction("Error", "Base"));
            }
        }
        public ActionResult DetailsConfirmar(CadastrarVendaViewModel cadVenda)
        {
            ViewBag.IsDetailsFinish = true;

            DetailsDeleteVendaViewModel detailsDeleteVendaViewModel = new DetailsDeleteVendaViewModel();

            detailsDeleteVendaViewModel.Venda = Mapper.Map <Venda>(cadVenda);
            detailsDeleteVendaViewModel.Valor = cadVenda.Valor;

            detailsDeleteVendaViewModel = PreencherViewModelDetails(detailsDeleteVendaViewModel, ref cadVenda);

            return(View(detailsDeleteVendaViewModel));
        }
        private DetailsDeleteVendaViewModel PreencherViewModelDetails(DetailsDeleteVendaViewModel detailsDeleteVendaViewModel,
                                                                      ref CadastrarVendaViewModel cadVenda)
        {
            detailsDeleteVendaViewModel.Cliente          = Mapper.Map <Cliente>(_clienteRepository.ObterPorId(cadVenda.IdCliente));
            detailsDeleteVendaViewModel.Performance      = Mapper.Map <Performance>(_perfomanceRepository.ObterPorId(cadVenda.IdPerformance));
            detailsDeleteVendaViewModel.Roda             = Mapper.Map <Roda>(_rodaRepository.ObterPorId(detailsDeleteVendaViewModel.Performance.IdRoda));
            detailsDeleteVendaViewModel.Banco            = Mapper.Map <Banco>(_bancoRepository.ObterPorId(detailsDeleteVendaViewModel.Performance.IdBanco));
            detailsDeleteVendaViewModel.Cor_Veiculo      = Mapper.Map <Cor_Veiculo>(_corRepository.ObterPorId(detailsDeleteVendaViewModel.Performance.IdCorVeiculo));
            detailsDeleteVendaViewModel.Veiculo          = Mapper.Map <Veiculo>(_veiculoRepository.ObterPorId(cadVenda.IdVeiculo));
            detailsDeleteVendaViewModel.Endereco         = Mapper.Map <Endereco>(_enderecoRepository.ObterPorId(cadVenda.IdEndereco));
            detailsDeleteVendaViewModel.FormaDePagamento = Mapper.Map <FormaDePagamento>(_formaPagamentoRepository.ObterPorId(cadVenda.IdFormaDePagamento));

            return(detailsDeleteVendaViewModel);
        }