public PartialViewResult AddEditFatura(int?codigo)
        {
            var statusDaFatura   = typeof(StatusDaFatura).ToViewModel();
            var tiposDaFatura    = typeof(TipoDaFatura).ToViewModel();
            var tiposDoDocumento = typeof(TipoDeDocumento).ToViewModel();
            var viewModel        = new AdicionarFaturaViewModel
            {
                StatusDaFatura   = statusDaFatura,
                TiposDaFatura    = tiposDaFatura,
                TiposDoDocumento = tiposDoDocumento,
            };

            if (codigo != null)
            {
                var fatura = _faturaRepositorio.ObterPor(codigo.Value);
                viewModel.Tipo              = fatura.Tipo;
                viewModel.Codigo            = fatura.Codigo;
                viewModel.Statu             = fatura.Status;
                viewModel.Valor             = fatura.Valor;
                viewModel.Data              = fatura.Data;
                viewModel.Descricao         = fatura.Descricao;
                viewModel.NumeroDoDocumento = fatura.NumeroDoDocumento;
                viewModel.TipoDoDocumento   = fatura.Documento;
            }
            return(PartialView(viewModel));
        }
 public JsonResult AddEditFatura(AdicionarFaturaViewModel novaFaturaViewModel)
 {
     if (novaFaturaViewModel.Codigo > 0)
     {
         var resposta = AlterarFatura(novaFaturaViewModel);
         return(Json(new { resposta.Sucesso, resposta.Erros, Fatura = resposta.Fatura.ToViewModel() }));
     }
     else
     {
         var resposta = IncluirFatura(novaFaturaViewModel);
         return(Json(new { resposta.Sucesso, resposta.Erros, Fatura = resposta.Fatura.ToViewModel() }));
     }
 }
        private AdicionarFaturaResposta IncluirFatura(AdicionarFaturaViewModel novaFaturaViewModel)
        {
            var requisicao = new AdicionarFaturaRequisicao
            {
                Data              = novaFaturaViewModel.Data,
                Descricao         = novaFaturaViewModel.Descricao,
                NumeroDoDocumento = novaFaturaViewModel.NumeroDoDocumento,
                Tipo              = novaFaturaViewModel.Tipo,
                Status            = novaFaturaViewModel.Statu,
                TipoDoDocumento   = novaFaturaViewModel.TipoDoDocumento,
                Valor             = novaFaturaViewModel.Valor,
                CodigoDoPrograma  = Session.ProgramaAtivo().Codigo
            };
            var resposta = _faturaServicoDeAplicacao.AdicionarFatura(requisicao);

            return(resposta);
        }
        private AlterarFaturaResposta AlterarFatura(AdicionarFaturaViewModel novaFaturaViewModel)
        {
            var requisicao = new AlterarFaturaRequisicao
            {
                Data              = novaFaturaViewModel.Data,
                Descricao         = novaFaturaViewModel.Descricao,
                NumeroDoDocumento = novaFaturaViewModel.NumeroDoDocumento,
                Tipo              = novaFaturaViewModel.Tipo,
                Status            = novaFaturaViewModel.Statu,
                TipoDoDocumento   = novaFaturaViewModel.TipoDoDocumento,
                Valor             = novaFaturaViewModel.Valor,
                CodigoDaFatura    = novaFaturaViewModel.Codigo
            };
            var resposta = _faturaServicoDeAplicacao.AlterarFatura(requisicao);

            return(resposta);
        }