как сделать чтобы при регистрации в одном типе пользователея нельзя было войти в другой тип пользователя под той же учетной записью электронной почтой

не получается разделить пользователей помогите пожалуйста в первом пользователе убрал регистрацию чтоб сами не могли регистрироваться были подконтрольные, дак они регистрируются во втором типе пользователи и заходят в первый тип пользователей, как исправить ситуацию?

первый тип пользователя

     signUpBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String email = emailET.getText().toString();
            String password = passwordET.getText().toString();

            RegisterDriver(email, password);
        }
    });

    signInBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            String email = emailET.getText().toString();
            String password = passwordET.getText().toString();

            SignInDriver(email, password);
        }
    });

}

private void SignInDriver(String email, String password)
{
    loadingBar.setTitle("Вход водителя");
    loadingBar.setMessage("Пожалуйста, дождитесь загрузки");
    loadingBar.show();

    mAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if(task.isSuccessful())
            {
                Toast.makeText(DriverRegLoginActivity.this, "Успешный вход.", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
                Intent driverIntent = new Intent(DriverRegLoginActivity.this, DriversMapActivity.class);
                startActivity(driverIntent);
            }
            else
            {
                Toast.makeText(DriverRegLoginActivity.this, "Произошла ошибка, попробуйте снова", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
            }
        }
    });
}

private void RegisterDriver(String email, String password)
{
    loadingBar.setTitle("Регистрация водителя");
    loadingBar.setMessage("Пожалуйста, дождитесь загрузки");
    loadingBar.show();

    mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if(task.isSuccessful())
            {
                OnlineDriverID = mAuth.getCurrentUser().getUid();
                DriverDatabaseRef = FirebaseDatabase.getInstance().getReference()
                        .child("Users").child("Drivers").child(OnlineDriverID);
                DriverDatabaseRef.setValue(true);

                Intent driverIntent = new Intent(DriverRegLoginActivity.this, DriversMapActivity.class);
                startActivity(driverIntent);

                Toast.makeText(DriverRegLoginActivity.this, "Регистрация прошла успешно", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();

            }
            else
            {
                Toast.makeText(DriverRegLoginActivity.this, "Ошибка", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
            }
        }
    });
}

}

второй тип пользователя

    signUpBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String email = emailET.getText().toString();
            String password = passwordET.getText().toString();

            RegisterCustomer(email, password);
        }
    });

    signInBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            String email = emailET.getText().toString();
            String password = passwordET.getText().toString();

            SignInCustomer(email, password);
        }
    });
}

private void SignInCustomer(String email, String password) {

    loadingBar.setTitle("Вход для клиентов");
    loadingBar.setMessage("Пожалуйста, дождитесь загрузки");
    loadingBar.show();

    mAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if(task.isSuccessful())
            {
                Toast.makeText(CustomerRegLoginActivity.this, "Успешный вход.", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();

                Intent customerIntent = new Intent(CustomerRegLoginActivity.this, CustomersMapActivity.class);
                startActivity(customerIntent);
            }
            else
            {
                Toast.makeText(CustomerRegLoginActivity.this, "Произошла ошибка, попробуйте снова", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
            }
        }
    });
}

private void RegisterCustomer(String email, String password)
{
    loadingBar.setTitle("Регистрация клиента");
    loadingBar.setMessage("Пожалуйста, дождитесь загрузки");
    loadingBar.show();

    mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if(task.isSuccessful())
            {
                OnlineCustomerID = mAuth.getCurrentUser().getUid();
                CustomerDatabaseRef = FirebaseDatabase.getInstance().getReference()
                        .child("Users").child("Customers").child(OnlineCustomerID);
                CustomerDatabaseRef.setValue(true);

                Intent customerIntent = new Intent(CustomerRegLoginActivity.this, CustomersMapActivity.class);
                startActivity(customerIntent);

                Toast.makeText(CustomerRegLoginActivity.this, "Регистрация прошла успешно", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
            }
            else
            {
                Toast.makeText(CustomerRegLoginActivity.this, "Ошибка", Toast.LENGTH_SHORT).show();
                loadingBar.dismiss();
            }
        }
    });
}

}


Ответы (0 шт):