So überprüfen Sie, ob bestimmte Daten bereits in Firestore vorhanden sind oder nicht

Lesezeit: 1 Minute

So uberprufen Sie ob bestimmte Daten bereits in Firestore vorhanden
Ragavendra Vignesh

Bevor ich neue Daten in den Firestore einfüge, möchte ich überprüfen, ob bereits Daten der gleichen Art in der Datenbank vorhanden sind oder nicht. Wenn bereits Daten vorhanden waren, möchte ich verhindern, dass der Benutzer doppelte Daten in die Datenbank eingibt. In meinem Fall ist es wie eine Terminbuchung, wenn bereits eine Buchung für die gleiche Zeit besteht. Ich möchte verhindern, dass Benutzer zur gleichen Zeit buchen. Ich habe versucht, die Abfragefunktion zu verwenden, aber es verhindert nicht, dass doppelte Daten eingegeben werden

private boolean alreadyBooked(final String boname, final String bodept, final String botime) {
        final int[] flag = {0};
        CollectionReference cref=db.collection("bookingdetails");
        Query q1=cref.whereEqualTo("time",botime).whereEqualTo("dept",bodept);
        q1.get().addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
            @Override
            public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                for (DocumentSnapshot ds : queryDocumentSnapshots) {
                    String rname, rdept, rtime;
                    rname = ds.getString("name");
                    rdept = ds.getString("dept");
                    rtime = ds.getString("time");
                    if (rdept.equals(botime)) {
                        if (rtime.equals(botime)) {
                            flag[0] = 1;
                            return;
                        }
                    }
                }
            }
        });
        if(flag[0]==1){
            return true;
        }
        else {
            return false;
        }
    }

  • Nachdem Sie nun das Code-Snippet hinzugefügt haben, kann ich sehen, dass Sie vergleichen rdept mit botime. Es sollte sein rdept.equals(bodept).

    – Jay

    23. Juni 2018 um 11:20 Uhr

  • Ja, ich habe das geändert, aber es funktioniert immer noch nicht. Es fügt alle Daten in die Datenbank ein, ohne die Bedingung @whenthemorningcomes zu überprüfen

    – Ragavendra Vignesh

    23. Juni 2018 um 14:47 Uhr

  • vielen Dank für diese wunderbare Erklärung. Sie haben eine Lösung gegeben und mich auch dazu gebracht, zu erkennen, was in meinem Code falsch ist. Vielen Dank …

    – Ragavendra Vignesh

    23. Juni 2018 um 17:02 Uhr

964410cookie-checkSo überprüfen Sie, ob bestimmte Daten bereits in Firestore vorhanden sind oder nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy