public IHttpActionResult ObterListaClientes([FromUri] Models.Clientes.V1.Lista.FiltroDto filtro) { using (var sessao = new GDATransaction()) { filtro = filtro ?? new Models.Clientes.V1.Lista.FiltroDto(); var clientes = Microsoft.Practices.ServiceLocation.ServiceLocator .Current.GetInstance <Global.Negocios.IClienteFluxo>() .PesquisarClientes( filtro.Id, filtro.NomeCliente, filtro.CpfCnpj, filtro.IdLoja, filtro.Telefone, filtro.Endereco, filtro.Bairro, filtro.IdCidade, filtro.Tipo, filtro.Situacao != null ? filtro.Situacao.Select(f => (int)f).ToArray() : null, filtro.CodigoRota, filtro.IdVendedor, filtro.TipoFiscal != null ? filtro.TipoFiscal.ToArray() : null, filtro.FormasPagamento, filtro.PeriodoCadastroInicio, filtro.PeriodoCadastroFim, filtro.PeriodoSemCompraInicio, filtro.PeriodoSemCompraFim, filtro.PeriodoInativadoInicio, filtro.PeriodoInativadoFim, null, null, filtro.IdTabelaDescontoAcrescimo, filtro.ApenasSemRota, 0, filtro.Uf, null, false); ((Colosoft.Collections.IVirtualList)clientes).Configure(filtro.NumeroRegistros); ((Colosoft.Collections.ISortableCollection)clientes).ApplySort(filtro.ObterTraducaoOrdenacao()); return(this.ListaPaginada( clientes .Skip(filtro.ObterPrimeiroRegistroRetornar()) .Take(filtro.NumeroRegistros) .Select(c => new Models.Clientes.V1.Lista.ListaDto(c)), filtro, () => clientes.Count)); } }
public IHttpActionResult AlterarRota([FromBody] Models.Clientes.V1.Lista.FiltroDto filtro) { try { var resultado = ServiceLocator.Current .GetInstance <Global.Negocios.IClienteFluxo>() .AlterarRotaClientes( filtro.Id, filtro.NomeCliente, filtro.CpfCnpj, filtro.IdLoja, filtro.Telefone, filtro.Endereco, filtro.Bairro, filtro.IdCidade, filtro.Tipo, filtro.Situacao != null ? filtro.Situacao.Select(f => (int)f).ToArray() : null, filtro.CodigoRota, filtro.IdVendedor, filtro.TipoFiscal != null ? filtro.TipoFiscal.ToArray() : null, filtro.FormasPagamento, filtro.PeriodoCadastroInicio, filtro.PeriodoCadastroFim, filtro.PeriodoSemCompraInicio, filtro.PeriodoSemCompraFim, filtro.PeriodoInativadoInicio, filtro.PeriodoInativadoFim, filtro.IdTabelaDescontoAcrescimo, filtro.ApenasSemRota, filtro.IdRotaNova.GetValueOrDefault(), filtro.Uf); if (!resultado) { return(this.ErroValidacao(resultado.Message.ToString())); } return(this.Aceito("Rota alterada com sucesso.")); } catch (Exception ex) { return(this.ErroValidacao(ex.Message, ex)); } }