public IActionResult ObterPaginado([FromServices] IRoteiroRepository repository, [FromQuery] int pagina = 1, [FromQuery] int quantidade = 8, [FromQuery] string coluna = "cliente", [FromQuery] string direcao = "asc") { return(Result(repository.ObterPaginado(pagina, quantidade, EnumHelpers.ParseOrDefault(coluna, RoteiroSort.Cliente), string.IsNullOrEmpty(direcao) || direcao.Equals("asc")))); }
public IActionResult Exportar([FromServices] IRoteiroRepository repository, [FromQuery] string coluna = "cliente", [FromQuery] string direcao = "asc") { var resultado = repository.Obter(EnumHelpers.ParseOrDefault(coluna, RoteiroSort.Cliente), string.IsNullOrEmpty(direcao) || direcao.Equals("asc")); if (resultado.Tipo == ResultType.Valid) { StringBuilder csv = new StringBuilder(); csv.AppendLine("NOME CLIENTE;TURNO;MOTORISTA;ENDEREÇO;MATERIAL;MATERIAL_COLETADO;SEGUNDA;TERÇA;QUARTA;QUINTA;SEXTA;SÁBADO;DOMINGO;OBSERVAÇÃO"); foreach (var x in resultado.Dados) { csv.Append($"\"{(!string.IsNullOrEmpty(x.Cliente.NomeCompleto_RazaoSocial) ? x.Cliente.NomeCompleto_RazaoSocial : string.Empty)}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Turno.Nome_Turno) ? x.Turno.Nome_Turno : string.Empty)}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Motorista.Nome) ? x.Motorista.Nome : string.Empty)}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Cliente.Endereco) ? x.Cliente.Endereco : string.Empty)}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Material.Descricao) ? x.Material.Descricao : string.Empty)}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Material.Material_Coletado) ? x.Material.Material_Coletado : string.Empty)}\";"); csv.Append($"\"{(x.Segunda != null ? (Convert.ToBoolean(x.Segunda) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Terca != null ? (Convert.ToBoolean(x.Terca) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Quarta != null ? (Convert.ToBoolean(x.Quarta) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Quinta != null ? (Convert.ToBoolean(x.Quinta) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Sexta != null ? (Convert.ToBoolean(x.Sexta) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Sabado != null ? (Convert.ToBoolean(x.Sabado) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(x.Domingo != null ? (Convert.ToBoolean(x.Domingo) ? "Sim" : "Não") : "Não")}\";"); csv.Append($"\"{(!string.IsNullOrEmpty(x.Observacao) ? x.Observacao : string.Empty)}\";"); csv.AppendLine(""); } string nomeArquivo = $"roteiro{DateTime.Now.ToString("yyyyMMdd_HHmmss")}.csv"; byte[] bytes = Encoding.UTF8.GetBytes(csv.ToString()); bytes = Encoding.UTF8.GetPreamble().Concat(bytes).ToArray(); return(File(bytes, "text/csv", nomeArquivo)); } return(Result(resultado)); }
public RoteiroController(IRoteiroRepository rotreiroRepository, IMapper mapper) { this.rotreiroRepository = rotreiroRepository; this.mapper = mapper; }