public async Task <IActionResult> MinhasEncomendasDetalhe(Guid encomendaId) { var encomenda = await _encomendaService.ObterPorId(encomendaId); string nomePontoVenda = await _empresaService.ObterNomeEmpresa(encomenda.PontoVendaId); var model = new EncomendaDetalheViewModel { Id = encomenda.Id, DataPedido = encomenda.DataPedido, NotaFiscal = encomenda.NotaFiscal ?? " - ", NumeroPedido = encomenda.NumeroPedido, PontoVendaNome = nomePontoVenda, PontoVendaId = encomenda.PontoVendaId, PermiteMovimentar = encomenda.PontoVendaPodeMovimentar(), Movimentacao = encomenda.GetHistoria()? .Select(x => new EncomendaHistoriaViewModel { EncomendaId = x.EncomendaId, Nome = x.TipoMovimento.GetDescription(), DataMovimento = x.DataCadastro }), MovimentosPermitidos = encomenda .ObterMovimentosPermitidos(TipoEmpresa.PontoRetirada) .Select(x => new SelectListItem(text: x.GetDescription(), value: x.ToString())) }; return(View("PontoRetiradaDetalhe", model)); }
public async Task <IActionResult> GetById([FromRoute] Guid encomendaId) { try { var response = await _encomendaService.ObterPorId(encomendaId); if (response == null) { _logger.LogWarning($"Encomenda {encomendaId} nao encontrada"); return(NotFound()); } return(Ok(new EncomendaResponse ( response.Id, response.DataPedido, response.NumeroPedido, response.NotaFiscal, response.GetHistoria()?.Select(h => new EncomendaHistoriaResponse(h.DataCadastro, h.TipoMovimento.GetDescription())) ))); } catch (Exception ex) { return(BadRequest(ex.Message)); } }