diff --git a/app/src/main/java/com/example/oplogy/CreateUUID.java b/app/src/main/java/com/example/oplogy/CreateUUID.java index f61e643..9f4994e 100644 --- a/app/src/main/java/com/example/oplogy/CreateUUID.java +++ b/app/src/main/java/com/example/oplogy/CreateUUID.java @@ -5,12 +5,12 @@ import java.util.List; public class CreateUUID { - public static int generateUUID(List classIdList ){ + public static int generateUUID(List classIdList ){ while (true){ - String uuid = String.valueOf((int)(Math.random() * 1000000)); + int uuid = (int) (Math.random() * 100000); boolean isDuplicate = false; - for(String classId : classIdList){ - if(classId.equals(uuid)){ + for(int classId : classIdList){ + if(classId==uuid){ //重複があればフラグを立て、ループを抜ける isDuplicate = true; break; @@ -19,10 +19,12 @@ public class CreateUUID { //重複がなければ生成したUUIDを返す if (!isDuplicate) { //firestoreに挿入処理 + InsertClassIdforFirebase insertClassIdforFirebase = new InsertClassIdforFirebase(); + insertClassIdforFirebase.insertClassId(uuid); //テスト用 - uuid="100"; - return Integer.parseInt(uuid); + uuid=100; + return uuid; } } } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/example/oplogy/FirestoreReception_classIdDatabase.java b/app/src/main/java/com/example/oplogy/FirestoreReception_classIdDatabase.java index 258330a..a88ea67 100644 --- a/app/src/main/java/com/example/oplogy/FirestoreReception_classIdDatabase.java +++ b/app/src/main/java/com/example/oplogy/FirestoreReception_classIdDatabase.java @@ -17,14 +17,14 @@ import java.util.List; import java.util.Map; public class FirestoreReception_classIdDatabase { private FirebaseFirestore db; - private List classIdList= new ArrayList<>(); + private List classIdList= new ArrayList<>(); public FirestoreReception_classIdDatabase() { db = FirebaseFirestore.getInstance(); } - public List getAllDocumentsFromClassIdDatabase() { + public List getAllDocumentsFromClassIdDatabase() { db.collection("classId_Database") .get() .addOnCompleteListener(new OnCompleteListener() { @@ -34,7 +34,7 @@ public class FirestoreReception_classIdDatabase { for (QueryDocumentSnapshot document : task.getResult()) { Log.d("結果", document.getId() + " => " + document.getData()); //データをListに追加 - classIdList.add((String) document.get("classId")); + classIdList.add(((Long) document.get("classId")).intValue()); } } else { Log.d("結果", "Error getting documents: ", task.getException()); @@ -45,7 +45,7 @@ public class FirestoreReception_classIdDatabase { return classIdList; } - public List getClassIdList() { + public List getClassIdList() { return classIdList; } } \ No newline at end of file diff --git a/app/src/main/java/com/example/oplogy/InsertClassIdforFirebase.java b/app/src/main/java/com/example/oplogy/InsertClassIdforFirebase.java new file mode 100644 index 0000000..9785da8 --- /dev/null +++ b/app/src/main/java/com/example/oplogy/InsertClassIdforFirebase.java @@ -0,0 +1,19 @@ +package com.example.oplogy; + +import com.google.firebase.firestore.FirebaseFirestore; + +import java.util.HashMap; +import java.util.Map; + +public class InsertClassIdforFirebase { + public void insertClassId(int classId) { + FirebaseFirestore db = FirebaseFirestore.getInstance(); + + Map data = new HashMap<>(); + data.put("classId", classId); // classId is inserted as a number + + db.collection("classId_Database").add(data) + .addOnSuccessListener(documentReference -> System.out.println("DocumentSnapshot added with ID: " + documentReference.getId())) + .addOnFailureListener(e -> System.err.println("Error adding document: " + e)); + } +} diff --git a/app/src/main/java/com/example/oplogy/MainActivity.java b/app/src/main/java/com/example/oplogy/MainActivity.java index ac4c194..6a19593 100644 --- a/app/src/main/java/com/example/oplogy/MainActivity.java +++ b/app/src/main/java/com/example/oplogy/MainActivity.java @@ -162,7 +162,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe //UUIDを表示するかのダイアログ private void showUUIDYesNoDialog() { firestoreReception_classIdDatabase = new FirestoreReception_classIdDatabase(); - List classIdList = firestoreReception_classIdDatabase.getAllDocumentsFromClassIdDatabase(); + List classIdList = firestoreReception_classIdDatabase.getAllDocumentsFromClassIdDatabase(); AlertDialog.Builder builder = new AlertDialog.Builder(this);