request method

  1. @override
Future<MapListType> request(
  1. String sql, {
  2. Map data = const {},
  3. String? token,
})
override

Implementation

@override
Future<MapListType> request(String sql,
    {Map data = const {}, String? token}) async {
  // reemplazando comillas simples por dobles
  for (var k in data.keys) {
    // Reemplaza comillas simples por dobles
    // Ejemplo: 'texto' -> "texto"
    if (data[k] is String) {
      data[k] = (data[k] as String).replaceAll("'", '"');
    }
  }
  // renderizando la sentencia sql
  sql = render(sql, data);
  ;

  //  manteniendo la sentencia sql renderizada para seguimiento de errores
  lastSentence = sql;
  try {
    if (sql.toLowerCase().contains('update ') &&
        sql.toLowerCase().contains('set ')) {
      await _db.writeData(sql);
      return [];
    }
  } catch (e) {
    console.error(sql);
    throw e;
  }
  var r = jsonDecode(await _db.getData(sql));

  // ejecutando la sentencia sql
  return MapListType.from(r);
}