首页 > 解决方案 > 我如何编写查询以从医生集合中获取 id 然后我将此 id 转换为当前身份验证用户 id

问题描述

firebaseAuth.signInWithEmailAndPassword(email,password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {


                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task)
                    {
                        progressDialog.dismiss();


                        if (task.isSuccessful())
                        {
                            FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
                            uid = user.getUid();

                            Query query = FirebaseDatabase.getInstance().getReference()
                                    .child("Doctor").orderByKey().equalTo(uid);

                            query.addValueEventListener(new ValueEventListener() {
                                @Override
                                public void onDataChange(@NonNull DataSnapshot dataSnapshot)
                                {
                                    if (dataSnapshot.exists())
                                    {
                                        Extra_Table = "Doctor";
                                        finish();
                                        Intent intent = new Intent(DoctorLogin.this,Profile.class);
                                        startActivity(intent);
                                    }
                                    else
                                    {
                                        Toast.makeText(DoctorLogin.this,"Invalid Email For Doctor Login",Toast.LENGTH_SHORT).show();
                                    }
                                }

                                @Override
                                public void onCancelled(@NonNull DatabaseError databaseError) {

                                }
                            });

                        }


                        else
                        {
                            Toast.makeText(DoctorLogin.this,task.getException().getMessage(),Toast.LENGTH_SHORT).show();
                        }


                    }
                });
    }

我有三个用户医生理发师和美容院..我的问题是,当我将医生的电子邮件放入理发师登录活动时,我可以授予访问权限,因为它可以检查来自身份验证的电子邮件..但我希望我只能在医生电子邮件时登录也被赋予了医生活动..如果其他电子邮件被提供给医生登录,它不会授予该用户的访问权限..我是新用户,我有运行 firebase 数据库的代码..但我想要相同的代码用于 firestore ..如果有任何正文帮我..???提前致谢

标签: androidgoogle-cloud-firestore

解决方案


推荐阅读