using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.Linq; using System.Threading.Tasks; namespace BD_empresa.Data { public class AccessService(string connectionString) : IClienteRepository { private readonly string _connectionString = connectionString; public async Task> GetAllClientesAsync() { return await Task.Run(() => { var unidades = new List(); using (var connection = new OleDbConnection(_connectionString)) { connection.Open(); string sql = "SELECT Cod_Smart_cliente, Cod_Smart_unidade, Gestao, Cliente, Unidade, CNPJ_CPF, Codigo_Instalacao, Razao_Social, Caminho_NFs FROM Dados_cadastrais WHERE Dados_cadastrais.Unidade_gerenciada"; using var cmd = new OleDbCommand(sql, connection); using var reader = cmd.ExecuteReader(); while (reader.Read()) { unidades.Add(new UnidadeSmart { Cod_Smart_cliente = long.Parse(reader["Cod_Smart_cliente"].ToString() ?? "0"), Cod_Smart_unidade = long.Parse(reader["Cod_Smart_unidade"].ToString() ?? "0"), Gestao = reader["Gestao"].ToString(), Cliente = reader["Cliente"].ToString(), Unidade = reader["Unidade"].ToString(), CNPJ_CPF = reader["CNPJ_CPF"].ToString(), Codigo_Instalacao = reader["Codigo_Instalacao"].ToString(), Razao_Social = reader["Razao_Social"].ToString(), Caminho_NFs = reader["Caminho_NFs"].ToString() }); } } return unidades; }); } } }