public HttpResponseMessage ItensPedidoDespachado(HttpRequestMessage request, List <ItemPedidoViewModel> itenspedidoVm) { return(CreateHttpResponse(request, () => { HttpResponseMessage response = null; Usuario usuario = _usuarioRep.GetSingle(int.Parse(HttpContext.Current.User.Identity.GetUserId())); var fornecedor = _fornecedorRep.FirstOrDefault(x => x.PessoaId == usuario.PessoaId); var idPedido = itenspedidoVm?.FirstOrDefault().PedidoId; var pedido = _pedidoRep.FirstOrDefault(x => x.Id == idPedido); //Pegamos os ítens de pedidos que foram aprovados. var itensPedido = pedido.ItemPedidos .Where(x => x.AprovacaoFornecedor && x.Ativo && x.FornecedorId == fornecedor.Id).ToList(); foreach (var item in itensPedido) { item.UsuarioAlteracao = usuario; item.DataEntregaFornecedor = DateTime.Now; item.FlgDespacho = true; _itemPedidoRep.Edit(item); } _ultilService.EnviaEmailPedido(pedido.Id, 6, usuario); //pega o telefone do usuário q criou o pedido var usuariosMembro = pedido.UsuarioCriacao; Sms sms = new Sms() { UsuarioCriacao = usuario, DtCriacao = DateTime.Now, Numero = usuariosMembro.Telefones.Select(t => t.DddCel).FirstOrDefault() + usuariosMembro.Telefones.Select(t => t.Celular).FirstOrDefault(), Mensagem = "Economiza Já-Fornecedor Despachou para Entrega itens do seu pedido " + pedido.Id, Status = StatusSms.NaoEnviado, OrigemSms = TipoOrigemSms.FornecedorDespachoItensPedido, Ativo = true }; _smsRep.Add(sms); _unitOfWork.Commit(); response = request.CreateResponse(HttpStatusCode.OK, new { success = true, pedidoId = pedido.Id }); return response; })); }