Не могу сохранить данные Realm Android - PullRequest
0 голосов
/ 16 апреля 2020

Я новичок в базе данных Realm. Я хочу сохранить данные в Царство, но не могу сохранить, даже если введенные мной данные еще не существуют.

Пример:

Сначала я ввожу данные OA как afdeling, 001 как Blok, 01 как образец группы и 1 как Pokok ke. Сохранено успешно.

Во-вторых, я ввожу данные OA как отсчеты, 001 как блок, 01 как выборка группы и 2 как Pokok ke. Успешно сохранено.

В-третьих, я ввожу OB данных как устаревший, 002 как блок, 01 как выборку группы и 2 как Pokok ke. Не удалось сохранить данные. Тост появляется "Данные уже существуют". Даже если введенные мной данные еще не существуют.

Это код для проверки, если данные уже существуют:

public <E extends RealmModel> boolean isParentIdExist(Class<E> eClass, String value) {
    E data = mRealm.where(eClass).equalTo("parent_id", value).findFirst();
    return data != null;
}

public <E extends RealmModel> boolean isPokokExist(Class<E> eClass, String value) {
    E data = mRealm.where(eClass).equalTo("pokok_ke", value).findFirst();
    return data != null;
}

public <E extends RealmModel> boolean isAfdelingExist(Class<E> eClass, String value) {
    E data = mRealm.where(eClass).equalTo("afdeling", value).findFirst();
    return data != null;
}

public <E extends RealmModel> boolean isBlokExist(Class<E> eClass, String value) {
    E data = mRealm.where(eClass).equalTo("blok", value).findFirst();
    return data != null;
}

public <E extends RealmModel> boolean isGroupSampleExist(Class<E> eClass, String value) {
    E data = mRealm.where(eClass).equalTo("group_sample", value).findFirst();
    return data != null;
}

и Это код для сохранения данных:

if (isParentIdExist(ModelAddTransaction.class, parent_id)) {
    if (isAfdelingExist(ModelAddTransaction.class, afdeling) && isBlokExist(ModelAddTransaction.class, blok) && isGroupSampleExist(ModelAddTransaction.class, group_sample) && isPokokExist(ModelAddTransaction.class, pokok_ke)) {
        Toast.makeText(AddTransaction.this, "Data is already exist", Toast.LENGTH_LONG).show();
    } else {
        tambahData();
        Toast.makeText(AddTransaction.this, "Data added successfully", Toast.LENGTH_SHORT).show();
        Intent moveViewMaster = new Intent(AddTransaction.this, ViewResult.class);
        startActivity(moveViewMaster);
   }
} else {
      tambahData();
      Toast.makeText(AddTransaction.this, "Data added successfully", Toast.LENGTH_SHORT).show();
      Intent moveViewMaster = new Intent(AddTransaction.this, ViewResult.class);
      startActivity(moveViewMaster);
}

и это ModelAddTransaction:

class ModelAddTransaction extends RealmObject {
    @PrimaryKey
    private String id;
    private String parent_id;
    private String date;
    private String afdeling;
    private String pokok_ke;
}
...