public IHttpActionResult PostCorrida([FromBody] IncluirCorridaDTO model) { // Busca Comissao var comissao = new ProfissionalRepositorio().BuscaComissaoProfissional(model.IDProfissional ?? 0); // Calculo Valor Estimado var valorEstimado = CalculaPrecoCorrida(new CalculoCorridaDTO() { IDCliente = model.IDCliente ?? 0, TipoVeiculo = model.TipoProfissional ?? 0, Localizacao = model.Enderecos.Select(c => new CalculoCorridaLocalidadeDTO() { Latitude = Double.Parse(c.Latitude.Replace(".", ",")), Longitude = Double.Parse(c.Longitude.Replace(".", ",")) }).ToArray() }); #if DEBUG var usuario = 55; #else var usuario = long.Parse(UsuarioAutenticado.LoginID); #endif // Busca tarifa cliente var idCorrida = new CorridaRepositorio().IncluirCorrida(new BHJet_Repositorio.Admin.Filtro.CorridaFiltro() { IDCliente = model.IDCliente, IDProfissional = model.IDProfissional, Comissao = comissao != null ? comissao.decPercentualComissao : (decimal?)null, TipoProfissional = model.TipoProfissional, ValorEstimado = valorEstimado.Preco, Enderecos = model.Enderecos.Select(c => new EnderecoModel() { Descricao = c.Descricao, Latitude = c.Latitude, Longitude = c.Longitude, Observacao = c.Observacao, ProcurarPessoa = c.ProcurarPessoa, TipoOcorrencia = c.TipoOcorrencia }).ToList() }, usuario); // Return return(Ok(idCorrida)); }
public long IncluirCorrida(IncluirCorridaDTO filtro) { return(this.Post <IncluirCorridaDTO, long>(new Uri($"{ServicoRotas.Base}{ServicoRotas.Corrida.PostCorrida}"), filtro)); }