This commit is contained in:
2026-03-18 10:40:19 +00:00
parent 88ef4b6796
commit a921553f2b
14 changed files with 438 additions and 221 deletions

View File

@@ -138,52 +138,38 @@ public class NovaReservaActivity extends AppCompatActivity {
private String selectedDate = null;
private String selectedTime = null;
private int selectedPartySize = 0;
private void setupReservationOptions() {
// Dates
RecyclerView rvDates = findViewById(R.id.rvDates);
java.util.List<String> dates = new java.util.ArrayList<>();
dates.add("Hoje");
dates.add("Amanhã");
dates.add("Quarta, 12 Mar");
dates.add("Quinta, 13 Mar");
dates.add("Sexta, 14 Mar");
rvDates.setAdapter(new ReservationOptionAdapter(dates, date -> selectedDate = date));
android.widget.Button btnDate = findViewById(R.id.btnSelectDate);
android.widget.Button btnTime = findViewById(R.id.btnSelectTime);
// Times
RecyclerView rvTimes = findViewById(R.id.rvTimes);
java.util.List<String> times = new java.util.ArrayList<>();
times.add("12:00");
times.add("13:00");
times.add("19:00");
times.add("20:00");
times.add("21:00");
times.add("22:00");
rvTimes.setAdapter(new ReservationOptionAdapter(times, time -> selectedTime = time));
btnDate.setOnClickListener(v -> {
java.util.Calendar cal = java.util.Calendar.getInstance();
new android.app.DatePickerDialog(this, (view, year, month, dayOfMonth) -> {
selectedDate = dayOfMonth + "/" + (month + 1) + "/" + year;
btnDate.setText(selectedDate);
}, cal.get(java.util.Calendar.YEAR), cal.get(java.util.Calendar.MONTH), cal.get(java.util.Calendar.DAY_OF_MONTH)).show();
});
// Party Size
RecyclerView rvParty = findViewById(R.id.rvPartySize);
java.util.List<String> party = new java.util.ArrayList<>();
party.add("1 pessoa");
party.add("2 pessoas");
party.add("3 pessoas");
party.add("4 pessoas");
party.add("5 pessoas");
party.add("6+ pessoas");
rvParty.setAdapter(new ReservationOptionAdapter(party, size -> {
try {
selectedPartySize = Integer.parseInt(size.split(" ")[0].replace("+", ""));
} catch (Exception e) {
selectedPartySize = 6;
}
}));
btnTime.setOnClickListener(v -> {
java.util.Calendar cal = java.util.Calendar.getInstance();
new android.app.TimePickerDialog(this, (view, hourOfDay, minute) -> {
selectedTime = String.format(java.util.Locale.getDefault(), "%02d:%02d", hourOfDay, minute);
btnTime.setText(selectedTime);
}, cal.get(java.util.Calendar.HOUR_OF_DAY), cal.get(java.util.Calendar.MINUTE), true).show();
});
findViewById(R.id.btnConfirmarReserva).setOnClickListener(v -> saveReservation());
}
private void saveReservation() {
if (selectedDate == null || selectedTime == null || selectedPartySize == 0) {
android.widget.EditText etPartySize = findViewById(R.id.etPartySize);
int partySize = 0;
try {
partySize = Integer.parseInt(etPartySize.getText().toString());
} catch (Exception e) {}
if (selectedDate == null || selectedTime == null || partySize == 0) {
android.widget.Toast.makeText(this, "Por favor, selecione data, hora e número de pessoas.",
android.widget.Toast.LENGTH_SHORT).show();
return;
@@ -203,7 +189,7 @@ public class NovaReservaActivity extends AppCompatActivity {
selectedRestaurant.getEmail(),
selectedDate,
selectedTime,
selectedPartySize,
partySize,
"Pendente");
if (id != null) {