public List<VO_Materiais> getMateriais(VO_Materiais parametros) {
    List<VO_Materiais> materiais = new ArrayList<>();

    String select = ajustaParametros(parametros);
    if (select.isEmpty()) {
      select = Contrato_VendasFacil.Materiais.SELECT;
    } else {
      select =
          Contrato_VendasFacil.Materiais.SELECT + Contrato_VendasFacil.WHERE + "1 = 1" + select;
    }

    // todo: getReadableDatabase
    DAO_VendasFacil dao = new DAO_VendasFacil(fragmento);
    SQLiteDatabase db = dao.getTabelaLeitura();

    Cursor cursor = db.rawQuery(select, null);

    int ColCodMaterial = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_ID_COD_MATERIAL);
    int ColDesMaterial = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_DES_MATERIAL);
    int ColFoto = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_FOTO);
    int ColQtdMin = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_QTD_MINIMA);
    int ColQtdEst = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_QTD_ESTOQUE);
    int ColUndMed = cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_COD_UNIDADE_MEDIDA);
    int ColDtaUltCompra =
        cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_DATA_ULTIMA_COMPRA);

    // Garante que pelo menos uma linha existe no cursor
    if (cursor.moveToFirst()) {
      for (int i = 0; i < cursor.getCount(); i++, cursor.moveToNext()) {
        VO_Materiais material = new VO_Materiais(fragmento);
        material.setCodMaterial(cursor.getInt(ColCodMaterial));
        material.setDesMaterial(cursor.getString(ColDesMaterial));
        material.setFotoByteArray(cursor.getBlob(ColFoto));
        material.setQtdMinima(cursor.getFloat(ColQtdMin));
        material.setQtdEstoque(cursor.getFloat(ColQtdEst));
        material.setCodUnidadeMedida(cursor.getInt(ColUndMed));
        material.setDataUltimaCompraLong(cursor.getLong(ColDtaUltCompra));

        materiais.add(i, material);
      }
    }
    cursor.close();
    db.close();
    // todo: close()
    return materiais;
  }
  private Integer proximoCodigoMaterial() {
    // todo: getReadableDatabase
    DAO_VendasFacil dao = new DAO_VendasFacil(fragmento);
    SQLiteDatabase db = dao.getTabelaLeitura();

    Cursor cursor = db.rawQuery(Contrato_VendasFacil.Materiais.LAST_ID, null);
    Integer proximo = 0;

    if (cursor.moveToFirst()) {
      do {
        proximo =
            (Integer.parseInt(
                cursor.getString(
                    cursor.getColumnIndex(Contrato_VendasFacil.Materiais.C_ID_COD_MATERIAL))));
      } while (cursor.moveToNext());
    }

    cursor.close();
    db.close();
    // todo: close()
    return proximo + 1;
  }