public string All(FornecedorPesquisa parametros, int totalPerPage, int page) { var fornecedorRules = new FornecedorRules(); var paging = new Paging() { page = page, totalPerPage = totalPerPage }; return Success(fornecedorRules.All(parametros, paging), paging); }
public List<Fornecedor> FetchAll(FornecedorPesquisa parametros, Paging paging) { var sql = PetaPoco.Sql.Builder.Append("SELECT SQL_CALC_FOUND_ROWS Fornecedor.*, Endereco.*, Cidade.*") .Append("FROM Fornecedor") .Append("JOIN FornecedorEndereco ON FornecedorEndereco.FornecedorId = Fornecedor.Id") .Append("JOIN Endereco ON Endereco.Id = FornecedorEndereco.EnderecoId") .Append("LEFT JOIN Cidade ON Cidade.Id = Endereco.CidadeId") .Append("WHERE 1 = 1"); if (parametros.RazaoSocial != null) { sql.Append("AND Fornecedor.RazaoSocial LIKE @0", '%' + parametros.RazaoSocial + '%'); } if (parametros.Fantasia != null) { sql.Append("AND Fornecedor.Fantasia LIKE @0", '%' + parametros.Fantasia + '%'); } if (parametros.Cnpj != null) { sql.Append("AND Fornecedor.Cnpj LIKE @0", '%' + parametros.Cnpj + '%'); } sql.Append("ORDER BY Fornecedor.Fantasia"); sql.Append("LIMIT @0, @1", paging.LimitDown, paging.LimitUp); this.Db.BeginTransaction(); var fornecedores = this.Db.Fetch<Fornecedor, Endereco, Cidade, Fornecedor>((f, e, c) => { e.Cidade = c; f.Endereco = e; return f; }, sql); paging.total = this.Db.ExecuteScalar<int>("SELECT FOUND_ROWS()"); this.Db.CompleteTransaction(); return fornecedores.ToList(); }
public List<Fornecedor> All(FornecedorPesquisa parametros, Paging paging) { var fornecedorRepositorio = new FornecedorRepositorio(); return fornecedorRepositorio.FetchAll(parametros, paging); }