ecra principal
parent
446b6fed75
commit
06beff62cd
|
|
@ -16,11 +16,56 @@
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:label="Área do Estabelecimento"
|
android:label="Área do Estabelecimento"
|
||||||
android:theme="@style/Theme.Pap_teste" />
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".ListaEsperaActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Lista de espera"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".BloqueioHorarioActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Bloqueio de horário"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".GestaoStaffActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Gestão de staff"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".RelatoriosActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Relatórios"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ClientDashboardActivity"
|
android:name=".ClientDashboardActivity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:label="Área do Cliente"
|
android:label="Área do Cliente"
|
||||||
android:theme="@style/Theme.Pap_teste" />
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".NovaReservaActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Nova reserva"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".ExplorarRestaurantesActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Explorar restaurantes"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".FavoritosActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Favoritos"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".CheckInAntecipadoActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Check-in antecipado"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
|
<activity
|
||||||
|
android:name=".PartilharReservaActivity"
|
||||||
|
android:exported="false"
|
||||||
|
android:label="Partilhar reserva"
|
||||||
|
android:theme="@style/Theme.Pap_teste" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
android:exported="true">
|
android:exported="true">
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class BloqueioHorarioActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_bloqueio_horario);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.bloqueioRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class CheckInAntecipadoActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_checkin_antecipado);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.checkinRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.example.pap_teste;
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import android.widget.Toast;
|
|
||||||
|
|
||||||
import androidx.activity.EdgeToEdge;
|
import androidx.activity.EdgeToEdge;
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
|
@ -48,15 +48,30 @@ public class ClientDashboardActivity extends AppCompatActivity {
|
||||||
Button btnCheckIn = findViewById(R.id.btnCheckIn);
|
Button btnCheckIn = findViewById(R.id.btnCheckIn);
|
||||||
Button btnShare = findViewById(R.id.btnPartilhar);
|
Button btnShare = findViewById(R.id.btnPartilhar);
|
||||||
|
|
||||||
btnNewReservation.setOnClickListener(v -> showToast("Abrindo fluxo de nova reserva..."));
|
btnNewReservation.setOnClickListener(v ->
|
||||||
btnExplore.setOnClickListener(v -> showToast("A explorar restaurantes recomendados."));
|
startActivity(new Intent(this, NovaReservaActivity.class))
|
||||||
btnFavorites.setOnClickListener(v -> showToast("A mostrar os seus favoritos."));
|
);
|
||||||
btnCheckIn.setOnClickListener(v -> showToast("Check-in antecipado registado!"));
|
|
||||||
btnShare.setOnClickListener(v -> showToast("Partilhe a reserva com os seus convidados."));
|
btnExplore.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, ExplorarRestaurantesActivity.class))
|
||||||
|
);
|
||||||
|
|
||||||
|
btnFavorites.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, FavoritosActivity.class))
|
||||||
|
);
|
||||||
|
|
||||||
|
btnCheckIn.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, CheckInAntecipadoActivity.class))
|
||||||
|
);
|
||||||
|
|
||||||
|
btnShare.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, PartilharReservaActivity.class))
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showToast(String message) {
|
// Mantemos este método caso seja útil no futuro para feedback rápido.
|
||||||
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
|
// private void showToast(String message) {
|
||||||
}
|
// Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.example.pap_teste;
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.content.Intent;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import android.widget.Toast;
|
|
||||||
|
|
||||||
import androidx.activity.EdgeToEdge;
|
import androidx.activity.EdgeToEdge;
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
|
@ -41,14 +41,26 @@ public class EstablishmentDashboardActivity extends AppCompatActivity {
|
||||||
Button btnStaff = findViewById(R.id.btnGestaoStaff);
|
Button btnStaff = findViewById(R.id.btnGestaoStaff);
|
||||||
Button btnReports = findViewById(R.id.btnVerRelatorios);
|
Button btnReports = findViewById(R.id.btnVerRelatorios);
|
||||||
|
|
||||||
btnOpenWalkIns.setOnClickListener(v -> showToast("Lista de espera aberta para novos clientes."));
|
btnOpenWalkIns.setOnClickListener(v ->
|
||||||
btnBlockTime.setOnClickListener(v -> showToast("Bloqueio criado para o horário selecionado."));
|
startActivity(new Intent(this, ListaEsperaActivity.class))
|
||||||
btnStaff.setOnClickListener(v -> showToast("Gestão de staff disponível em breve."));
|
);
|
||||||
btnReports.setOnClickListener(v -> showToast("Relatórios do dia enviados para o seu email."));
|
|
||||||
|
btnBlockTime.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, BloqueioHorarioActivity.class))
|
||||||
|
);
|
||||||
|
|
||||||
|
btnStaff.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, GestaoStaffActivity.class))
|
||||||
|
);
|
||||||
|
|
||||||
|
btnReports.setOnClickListener(v ->
|
||||||
|
startActivity(new Intent(this, RelatoriosActivity.class))
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void showToast(String message) {
|
// Mantemos este método caso seja útil no futuro para feedback rápido.
|
||||||
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
|
// private void showToast(String message) {
|
||||||
}
|
// Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class ExplorarRestaurantesActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_explorar_restaurantes);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.explorarRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class FavoritosActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_favoritos);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.favoritosRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class GestaoStaffActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_gestao_staff);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.gestaoStaffRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class ListaEsperaActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_lista_espera);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.listaEsperaRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class NovaReservaActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_nova_reserva);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.novaReservaRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class PartilharReservaActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_partilhar_reserva);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.partilharRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
package com.example.pap_teste;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
import androidx.activity.EdgeToEdge;
|
||||||
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
|
import androidx.core.graphics.Insets;
|
||||||
|
import androidx.core.view.ViewCompat;
|
||||||
|
import androidx.core.view.WindowInsetsCompat;
|
||||||
|
|
||||||
|
public class RelatoriosActivity extends AppCompatActivity {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
EdgeToEdge.enable(this);
|
||||||
|
setContentView(R.layout.activity_relatorios);
|
||||||
|
ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.relatoriosRoot), (v, insets) -> {
|
||||||
|
Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
|
||||||
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
|
return insets;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/bloqueioRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".BloqueioHorarioActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloBloqueio"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Bloqueio de horário"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoBloqueio"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Neste ecrã o estabelecimento poderá marcar períodos em que não aceita reservas."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloBloqueio"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/checkinRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".CheckInAntecipadoActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloCheckin"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Check-in antecipado"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoCheckin"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Aqui o cliente poderá confirmar a chegada antes do horário marcado."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloCheckin"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/explorarRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".ExplorarRestaurantesActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloExplorar"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Explorar restaurantes"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoExplorar"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Ecrã dedicado a descobrir restaurantes recomendados, próximos de si e filtrados por preferência."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloExplorar"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/favoritosRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".FavoritosActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloFavoritos"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Restaurantes favoritos"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoFavoritos"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Aqui serão listados os restaurantes que o cliente marcar como favorito."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloFavoritos"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/gestaoStaffRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".GestaoStaffActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloGestaoStaff"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Gestão de staff"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoGestaoStaff"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Zona para configurar turnos, equipas e disponibilidade do staff."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloGestaoStaff"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/listaEsperaRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".ListaEsperaActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloListaEspera"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Lista de espera"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoListaEspera"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Aqui o estabelecimento irá gerir a lista de espera em tempo real."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloListaEspera"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -69,7 +69,7 @@
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="40dp"
|
android:layout_height="50dp"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:background="@drawable/bg_tabs"
|
android:background="@drawable/bg_tabs"
|
||||||
android:padding="3dp">
|
android:padding="3dp">
|
||||||
|
|
@ -80,6 +80,7 @@
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Cliente"
|
android:text="Cliente"
|
||||||
|
android:textSize="5pt"
|
||||||
android:background="@drawable/tab_selected"
|
android:background="@drawable/tab_selected"
|
||||||
android:textAllCaps="false" />
|
android:textAllCaps="false" />
|
||||||
|
|
||||||
|
|
@ -88,14 +89,15 @@
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Estabelecimento"
|
|
||||||
android:background="@drawable/tab_unselected"
|
android:background="@drawable/tab_unselected"
|
||||||
|
android:text="Estabelecimento"
|
||||||
|
android:textSize="5pt"
|
||||||
android:textAllCaps="false" />
|
android:textAllCaps="false" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="40dp"
|
android:layout_height="50dp"
|
||||||
android:layout_marginTop="16dp"
|
android:layout_marginTop="16dp"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:background="@drawable/bg_tabs"
|
android:background="@drawable/bg_tabs"
|
||||||
|
|
@ -107,6 +109,7 @@
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Entrar"
|
android:text="Entrar"
|
||||||
|
android:textSize="5pt"
|
||||||
android:background="@drawable/tab_selected"
|
android:background="@drawable/tab_selected"
|
||||||
android:textAllCaps="false" />
|
android:textAllCaps="false" />
|
||||||
|
|
||||||
|
|
@ -116,6 +119,7 @@
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:text="Criar Conta"
|
android:text="Criar Conta"
|
||||||
|
android:textSize="5pt"
|
||||||
android:background="@drawable/tab_unselected"
|
android:background="@drawable/tab_unselected"
|
||||||
android:textAllCaps="false" />
|
android:textAllCaps="false" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/novaReservaRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".NovaReservaActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloNovaReserva"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Nova reserva"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoNovaReserva"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Aqui poderá configurar uma nova reserva (data, hora, número de pessoas, restaurante, etc.)."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloNovaReserva"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/partilharRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".PartilharReservaActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloPartilhar"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Partilhar reserva"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoPartilhar"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Ecrã onde o cliente poderá enviar convites/links de partilha da reserva."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloPartilhar"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,39 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/relatoriosRoot"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:background="#F7F7F7"
|
||||||
|
tools:context=".RelatoriosActivity">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtTituloRelatorios"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="Relatórios"
|
||||||
|
android:textSize="22sp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:textColor="#000"
|
||||||
|
app:layout_constraintTop_toTopOf="parent"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent"
|
||||||
|
android:layout_marginTop="32dp" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/txtDescricaoRelatorios"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginHorizontal="24dp"
|
||||||
|
android:layout_marginTop="12dp"
|
||||||
|
android:text="Visualização de relatórios diários, semanais e mensais do desempenho do restaurante."
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:textColor="#4D4D4D"
|
||||||
|
app:layout_constraintTop_toBottomOf="@id/txtTituloRelatorios"
|
||||||
|
app:layout_constraintStart_toStartOf="parent"
|
||||||
|
app:layout_constraintEnd_toEndOf="parent" />
|
||||||
|
|
||||||
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue