public ActionResult Visualizar(int id) { var agendamentoBusca = _agendamentoRepositorio .ObterPosicionamentoPorId(id); if (agendamentoBusca == null) { throw new Exception("Posicionamento não encontrado ou excluído"); } var itemCargaSoltaBusca = _agendamentoRepositorio .ObterCargaSoltaAgendamento(id); var viewModel = new AgendamentoCargaSoltaViewModel { DataPrevista = agendamentoBusca.DataPrevista.DataFormatada(), Porto = agendamentoBusca.Porto, Navio = agendamentoBusca.Navio, Exportador = agendamentoBusca.Exportador, Reserva = agendamentoBusca.Reserva, Viagem = agendamentoBusca.Viagem, NovaViagemDescricao = agendamentoBusca.NovaViagemDescricao, RazaoSocial = agendamentoBusca.Cliente, CpfCnpj = agendamentoBusca.ClienteCpfCnpj, MotivoId = agendamentoBusca.MotivoId, MotivoDescricao = agendamentoBusca.MotivoDescricao }; viewModel.ItensCargaSoltaAgendados.Add(itemCargaSoltaBusca ?? new CargaSolta()); return(View(viewModel)); }
public ActionResult Agendar() { var viewModel = new AgendamentoCargaSoltaViewModel(); PopularPeriodos(viewModel); PopularMotivos(viewModel); return(View(viewModel)); }
public ActionResult Agendar([Bind(Include = "MotivoId, DataPrevista, CpfCnpj, NovaViagemId, ItensCargaSolta")] AgendamentoCargaSoltaViewModel viewModel) { var agendamento = new Agendamento( viewModel.MotivoId, viewModel.DataPrevista.ToDateTime(), viewModel.CpfCnpj, viewModel.NovaViagemId, TipoAgendamento.CargaSolta, User.ObterDespachanteId()); agendamento.AdicionarItensCargaSolta(viewModel.ItensCargaSolta); if (!Validar(agendamento)) { return(RetornarErros()); } var clienteBusca = _clientesRepositorio .ObterClientePorDocumento(viewModel.CpfCnpj.ApenasNumeros()); if (clienteBusca == null) { throw new Exception($"Nenhum Cliente foi encontrado com o documento {viewModel.CpfCnpj}"); } agendamento.SetarCliente(clienteBusca.Id); agendamento.Status = StatusPosicionamento.NaoIniciado; try { var protocolo = _agendamentoRepositorio.GravarPosicionamentoCargaSolta(agendamento); viewModel.ItensCargaSoltaAgendados = _agendamentoRepositorio .ObterItensCargaSoltaAgendamento(protocolo).ToList(); viewModel.ProtocoloUnificado = protocolo; return(PartialView("_Concluido", viewModel)); } catch (Exception ex) { throw new Exception($"Falha ao Gravar o Agendamento {ex.Message}"); } }
public void PopularMotivos(AgendamentoCargaSoltaViewModel viewModel) { viewModel.Motivos = _motivosRepositorio.ObterMotivos().ToList(); }
public void PopularPeriodos(AgendamentoCargaSoltaViewModel viewModel) { viewModel.Periodos = _periodosRepositorio.ObterPeriodos().ToList(); }