getRelation static method

dynamic getRelation({
  1. Function? withFunction,
})

Implementation

static getRelation({Function? withFunction}) async {
  currentForeignKey = null;
  loading.refresh((listener) => listener.value = true);
  await replacedFunction(
    StackFunction(
      id: 2,
      function: () async {
        listOtherRelation = [];
        final getDataForeign = await DB.table('_sql_query_foreign_key').where('name_table', '=', selectedTable?.tableName).get();
        for (var i in getDataForeign) {
          currentForeignKey = ForeignKey(
            baseColumn: i['name_column'],
            referenceTable: i['name_table_target'],
            referenceColumn: i['name_column_target'],
            deleteAction: ForeignKey.parseAction(i['on_delete']),
            updateAction: ForeignKey.parseAction(i['on_update']),
          );
        }
        final getDataOtherForeign = await DB.table('_sql_query_foreign_key').where('name_table_target', '=', selectedTable!.tableName).get();
        for (var i in getDataOtherForeign) {
          listOtherRelation.add(ForeignKey(
            baseColumn: i['name_column'],
            referenceTable: i['name_table_target'],
            baseTable: i['name_table'],
            referenceColumn: i['name_column_target'],
            deleteAction: ForeignKey.parseAction(i['on_delete']),
            updateAction: ForeignKey.parseAction(i['on_update']),
          ));
        }
        dataTable.refresh((listener) => null);
        if (withFunction != null) {
          withFunction();
        }
        loading.refresh((listener) => listener.value = false);
      },
    ),
  );
}