This commit is contained in:
2026-04-30 17:56:08 +01:00
parent dd8a80ca2e
commit 6f16f635e5
4 changed files with 34 additions and 22 deletions

View File

@@ -75,17 +75,20 @@ public class DetalhesReservasActivity extends AppCompatActivity {
private void loadReservas() { private void loadReservas() {
databaseReference = com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas"); databaseReference = com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas");
databaseReference.orderByChild("restauranteEmail").equalTo(restaurantEmail) databaseReference.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
@Override @Override
public void onDataChange( public void onDataChange(
@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) { @androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) {
reservas.clear(); reservas.clear();
String targetEmail = restaurantEmail != null ? restaurantEmail.trim() : "";
for (com.google.firebase.database.DataSnapshot data : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot data : snapshot.getChildren()) {
com.example.pap_teste.models.Reserva r = data com.example.pap_teste.models.Reserva r = data
.getValue(com.example.pap_teste.models.Reserva.class); .getValue(com.example.pap_teste.models.Reserva.class);
if (r != null && r.getEstado() != null && !"Arquivada".equals(r.getEstado())) { if (r != null && r.getEstado() != null && !"Arquivada".equals(r.getEstado())) {
reservas.add(r); String rEmail = r.getRestauranteEmail();
if (rEmail != null && rEmail.trim().equalsIgnoreCase(targetEmail)) {
reservas.add(r);
}
} }
} }
refreshList(); refreshList();

View File

@@ -111,6 +111,8 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
return; return;
} }
} }
final String targetEmail = email != null ? email.trim() : "";
java.util.Calendar cal = java.util.Calendar.getInstance(); java.util.Calendar cal = java.util.Calendar.getInstance();
String todayDate = cal.get(java.util.Calendar.DAY_OF_MONTH) + "/" + String todayDate = cal.get(java.util.Calendar.DAY_OF_MONTH) + "/" +
@@ -118,7 +120,6 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
cal.get(java.util.Calendar.YEAR); cal.get(java.util.Calendar.YEAR);
com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas") com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas")
.orderByChild("restauranteEmail").equalTo(email)
.addValueEventListener(new com.google.firebase.database.ValueEventListener() { .addValueEventListener(new com.google.firebase.database.ValueEventListener() {
@Override @Override
public void onDataChange(@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) { public void onDataChange(@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) {
@@ -128,8 +129,11 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) {
com.example.pap_teste.models.Reserva r = ds.getValue(com.example.pap_teste.models.Reserva.class); com.example.pap_teste.models.Reserva r = ds.getValue(com.example.pap_teste.models.Reserva.class);
if (r != null && r.getEstado() != null && (r.getEstado().startsWith("Confirmada") || r.getEstado().equals("Concluída")) && todayDate.equals(r.getData())) { if (r != null && r.getEstado() != null && (r.getEstado().startsWith("Confirmada") || r.getEstado().equals("Concluída")) && todayDate.equals(r.getData())) {
found = true; String rEmail = r.getRestauranteEmail();
addReservaView(llProximasReservas, r); if (rEmail != null && rEmail.trim().equalsIgnoreCase(targetEmail)) {
found = true;
addReservaView(llProximasReservas, r);
}
} }
} }
@@ -189,7 +193,7 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
return; return;
} }
} }
final String finalEmail = email; final String finalEmail = email != null ? email.trim() : "";
java.util.Calendar cal = java.util.Calendar.getInstance(); java.util.Calendar cal = java.util.Calendar.getInstance();
String todayDate = cal.get(java.util.Calendar.DAY_OF_MONTH) + "/" + String todayDate = cal.get(java.util.Calendar.DAY_OF_MONTH) + "/" +
@@ -197,19 +201,20 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
cal.get(java.util.Calendar.YEAR); cal.get(java.util.Calendar.YEAR);
com.google.firebase.database.DatabaseReference refReservas = com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas"); com.google.firebase.database.DatabaseReference refReservas = com.google.firebase.database.FirebaseDatabase.getInstance().getReference("reservas");
refReservas.orderByChild("restauranteEmail").equalTo(finalEmail) refReservas.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
@Override @Override
public void onDataChange(@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) { public void onDataChange(@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) {
int reservasHoje = 0; int reservasHoje = 0;
int listaEspera = 0; int listaEspera = 0;
for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) {
com.example.pap_teste.models.Reserva r = ds.getValue(com.example.pap_teste.models.Reserva.class); com.example.pap_teste.models.Reserva r = ds.getValue(com.example.pap_teste.models.Reserva.class);
if (r != null && r.getEstado() != null) { if (r != null && r.getRestauranteEmail() != null && r.getRestauranteEmail().trim().equalsIgnoreCase(finalEmail)) {
if ((r.getEstado().startsWith("Confirmada") || r.getEstado().equals("Concluída") || r.getEstado().equals("Arquivada")) && todayDate.equals(r.getData())) { if (r.getEstado() != null) {
reservasHoje++; if ((r.getEstado().startsWith("Confirmada") || r.getEstado().equals("Concluída") || r.getEstado().equals("Arquivada")) && todayDate.equals(r.getData())) {
} else if ("Pendente".equals(r.getEstado())) { reservasHoje++;
listaEspera++; } else if ("Pendente".equals(r.getEstado())) {
listaEspera++;
}
} }
} }
} }
@@ -229,7 +234,7 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
int mesasLivres = 0; int mesasLivres = 0;
for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) {
com.example.pap_teste.models.Mesa mesa = ds.getValue(com.example.pap_teste.models.Mesa.class); com.example.pap_teste.models.Mesa mesa = ds.getValue(com.example.pap_teste.models.Mesa.class);
if (mesa != null && finalEmail.equals(mesa.getRestauranteEmail())) { if (mesa != null && mesa.getRestauranteEmail() != null && mesa.getRestauranteEmail().trim().equalsIgnoreCase(finalEmail)) {
if ("Livre".equalsIgnoreCase(mesa.getEstado())) { if ("Livre".equalsIgnoreCase(mesa.getEstado())) {
mesasLivres++; mesasLivres++;
} }

View File

@@ -211,15 +211,18 @@ public class ListaEsperaActivity extends AppCompatActivity {
private void loadReservasPendentes() { private void loadReservasPendentes() {
databaseReference = FirebaseDatabase.getInstance().getReference("reservas"); databaseReference = FirebaseDatabase.getInstance().getReference("reservas");
databaseReference.orderByChild("restauranteEmail").equalTo(restaurantEmail) databaseReference.addValueEventListener(new ValueEventListener() {
.addValueEventListener(new ValueEventListener() {
@Override @Override
public void onDataChange(@androidx.annotation.NonNull DataSnapshot snapshot) { public void onDataChange(@androidx.annotation.NonNull DataSnapshot snapshot) {
reservasPendentes.clear(); reservasPendentes.clear();
String targetEmail = restaurantEmail != null ? restaurantEmail.trim() : "";
for (DataSnapshot data : snapshot.getChildren()) { for (DataSnapshot data : snapshot.getChildren()) {
Reserva r = data.getValue(Reserva.class); Reserva r = data.getValue(Reserva.class);
if (r != null && "Pendente".equals(r.getEstado())) { if (r != null && "Pendente".equals(r.getEstado())) {
reservasPendentes.add(r); String rEmail = r.getRestauranteEmail();
if (rEmail != null && rEmail.trim().equalsIgnoreCase(targetEmail)) {
reservasPendentes.add(r);
}
} }
} }
refreshList(); refreshList();

View File

@@ -213,7 +213,7 @@ public class NovaReservaActivity extends AppCompatActivity {
int totalMesas = 0; int totalMesas = 0;
for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) {
com.example.pap_teste.models.Mesa m = ds.getValue(com.example.pap_teste.models.Mesa.class); com.example.pap_teste.models.Mesa m = ds.getValue(com.example.pap_teste.models.Mesa.class);
if (m != null && restEmail.equals(m.getRestauranteEmail())) { if (m != null && m.getRestauranteEmail() != null && restEmail.trim().equalsIgnoreCase(m.getRestauranteEmail().trim())) {
totalMesas++; totalMesas++;
} }
} }
@@ -238,8 +238,7 @@ public class NovaReservaActivity extends AppCompatActivity {
com.google.firebase.database.DatabaseReference reservasRef = com.google.firebase.database.FirebaseDatabase com.google.firebase.database.DatabaseReference reservasRef = com.google.firebase.database.FirebaseDatabase
.getInstance().getReference("reservas"); .getInstance().getReference("reservas");
reservasRef.orderByChild("restauranteEmail").equalTo(restEmail) reservasRef.addListenerForSingleValueEvent(new com.google.firebase.database.ValueEventListener() {
.addListenerForSingleValueEvent(new com.google.firebase.database.ValueEventListener() {
@Override @Override
public void onDataChange( public void onDataChange(
@androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) { @androidx.annotation.NonNull com.google.firebase.database.DataSnapshot snapshot) {
@@ -249,7 +248,9 @@ public class NovaReservaActivity extends AppCompatActivity {
for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) { for (com.google.firebase.database.DataSnapshot ds : snapshot.getChildren()) {
com.example.pap_teste.models.Reserva r = ds com.example.pap_teste.models.Reserva r = ds
.getValue(com.example.pap_teste.models.Reserva.class); .getValue(com.example.pap_teste.models.Reserva.class);
if (r != null && selectedDate.equals(r.getData()) && !"Cancelada".equals(r.getEstado()) if (r != null && r.getRestauranteEmail() != null &&
r.getRestauranteEmail().trim().equalsIgnoreCase(restEmail.trim()) &&
selectedDate.equals(r.getData()) && !"Cancelada".equals(r.getEstado())
&& !"Recusada".equals(r.getEstado())) { && !"Recusada".equals(r.getEstado())) {
int count = ocupacaoPorHora.getOrDefault(r.getHora(), 0) + 1; int count = ocupacaoPorHora.getOrDefault(r.getHora(), 0) + 1;
ocupacaoPorHora.put(r.getHora(), count); ocupacaoPorHora.put(r.getHora(), count);