Skip to content

Commit

Permalink
Merge pull request #15 from soypato/desarrolloPato
Browse files Browse the repository at this point in the history
Desarrollo pato
  • Loading branch information
soypato committed Jun 21, 2023
2 parents 600562a + 0d5249a commit 71a1333
Show file tree
Hide file tree
Showing 8 changed files with 351 additions and 51 deletions.
Binary file modified bin/Debug/tmphotel.exe
Binary file not shown.
2 changes: 1 addition & 1 deletion linkdepago.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ char *generarCadenaAleatoria(int longitud);
char *randomMercadoPago();
char *randomPayPal();

int linkdepago()
int linkDePago()
{
char *mercadoLink = randomMercadoPago();
char *payLink = randomPayPal();
Expand Down
289 changes: 240 additions & 49 deletions main.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,102 +8,293 @@
#include "linkdepago.h"
#include "botellas.h"
#include "comidas.h"

#include "empleados.h"

#include "porLimpiar.h"

#include "preguntarDNI.h"


void inicioSesion();
void limpiarPantalla();
void mostrarSeparador();
void controlMozo();
void controlReservas();
void controlAdmin();

int main()
{
int continuar = 1;

while (continuar)
{
inicioSesion();
printf("¿Desea volver al inicio de sesión? (1: Sí / 0: No): ");
scanf("%d", &continuar);
limpiarPantalla();
}

int main() {
inicioSesion();
return 0;
}

void inicioSesion() {
void inicioSesion()
{
int tmpClave = 0;
int loginExitoso = 0;

limpiarPantalla();

const char *titulo[] = {
" _______ _______ _______ _______ ___ _______ __ _ __ __ _______ _______ _______ ___ ",
"| || || || || | | | | | | || | | || || || || | ",
"| ___|| ___|| _____||_ _|| | | _ | | |_| || |_| || _ ||_ _|| ___|| | ",
"| | __ | |___ | |_____ | | | | | | | | | || || | | | | | | |___ | | ",
"| || || ___||_____ | | | | | | |_| | | _ || || |_| | | | | ___|| |___ ",
"| |_| || |___ _____| | | | | | | | | | | || _ || | | | | |___ | |",
"|_______||_______||_______| |___| |___| |_______| |_| |__||__| |__||_______| |___| |_______||_______|",
"__________________________________________________________________________________________________________"
const char *titulo[] =
{
" ____ _____ ____ _____ ___ ___ _ _ ",
" / ___| ____/ ___|_ _|_ _/ _ \\| \\ | | ",
" | | _| _| \\___ \\ | | | | | | | \\| | ",
" | |_| | |___ ___) || | | | |_| | |\\ | ",
" \\____|_____|____/ |_| |___\\___/|_| \\_|_ _____ _ ",
" | | | |/ _ \\_ _| ____| | ",
" | |_| | | | || | | _| | | ",
" | _ | |_| || | | |___| |___ ",
" |_| |_|\\___/ |_| |_____|_____|",
" "
};

int numLineas = sizeof(titulo) / sizeof(titulo[0]);
int longitudMaxima = strlen(titulo[0]);

limpiarPantalla();
for (int i = 0; i < numLineas; i++) {
for (int i = 0; i < numLineas; i++)
{
int espaciosInicio = (longitudMaxima - strlen(titulo[i])) / 2;
int espaciosFin = longitudMaxima - strlen(titulo[i]) - espaciosInicio;

for (int j = 0; j < espaciosInicio; j++) {
for (int j = 0; j < espaciosInicio; j++)
{
printf(" ");
}

printf("%s%s", colorCeleste, titulo[i]);
for (int j = 0; j < strlen(titulo[i]); j++)
{
// Calcula el valor de azul y violeta en función de la posición j
int azul = 255 - j * (255 / strlen(titulo[i]));
int violeta = j * (255 / strlen(titulo[i]));

for (int j = 0; j < espaciosFin; j++) {
// Establece el color utilizando códigos de escape ANSI
printf("\033[48;2;%d;0;%dm%c\033[0m", violeta, azul, titulo[i][j]);
}

for (int j = 0; j < espaciosFin; j++)
{
printf(" ");
}

printf("%s\n", reiniciarColor);
printf("\n");
usleep(80000);
}

printf("\n\nIntroduzca la contrasena: ");
scanf("%d", &tmpClave);
limpiarPantalla();

switch (tmpClave) {
case claveMozo:
printf(colorAmarillo "=== MENU MOZO ===\n" reiniciarColor);
menuReservas();
// Aquí va el código del menú del mozo
break;
case claveRecepcionista:
printf(colorAmarillo "=== MENU RECEPCIONISTA ===\n" reiniciarColor);
menuComidas();
break;
case claveLimpieza:
printf(colorAmarillo "=== MENU LIMPIEZA ===\n" reiniciarColor);
menuLimpiar();
// Aquí va el código del menú de limpieza
break;
case claveAdmin:
printf(colorAmarillo "=== MENU ADMINISTRADOR ===\n" reiniciarColor);
menuEmpleados();
// Aquí va el código del menú del administrador
break;
default:
printf(colorRojo "Clave incorrecta, presiona enter para intentar de nuevo\n" reiniciarColor);
getchar(); // Captura el Enter previo al scanf
getchar(); // Espera a que el usuario presione Enter para continuar
inicioSesion();
break;
switch (tmpClave)
{
case claveMozo:
printf(colorAmarillo "=== MENU MOZO ===\n" reiniciarColor);
controlMozo();
break;
case claveRecepcionista:
printf(colorAmarillo "=== MENU RECEPCIONISTA ===\n" reiniciarColor);
controlRecepcionista();
break;
case claveLimpieza:
printf(colorAmarillo "=== MENU LIMPIEZA ===\n" reiniciarColor);
controlLimpieza();
break;
case claveAdmin:
printf(colorAmarillo "=== MENU ADMINISTRADOR ===\n" reiniciarColor);
controlAdmin();
break;
default:
printf(colorRojo "Clave incorrecta, presiona enter para intentar de nuevo\n" reiniciarColor);
getchar(); // Captura el Enter previo al scanf
getchar(); // Espera a que el usuario presione Enter para continuar
inicioSesion();
break;
}
}

void limpiarPantalla() {

void limpiarPantalla()
{
#ifdef _WIN32
system("cls");
#else
system("clear");
#endif
}

void mostrarSeparador() {
void mostrarSeparador()
{
printf("==============================================\n");
}

void controlMozo()
{
int decision;
do
{
printf("=====================================\n");
printf("| Menú Mozo |\n");
printf("=====================================\n");
printf("| Opción | Descripción |\n");
printf("=====================================\n");
printf("| 1 | Menú de Limpieza |\n");
printf("| 2 | Menú de Comida |\n");
printf("| 0 | Salir |\n");
printf("=====================================\n");


printf("Su decisión: ");
fflush(stdin);
scanf(" %d", &decision);

switch (decision)
{
case 1:
menuLimpieza();
break;
case 2:
menuComidas();
break;
case 0:
return;
default:
printf("La opción es incorrecta.\n");
break;
}

printf("Seguir ejecutando? (1: Sí / 0: No): ");
scanf("%d", &decision);
}
while (decision == 1);
}


void controlRecepcionista()
{
int decision;
do
{
printf("=====================================\n");
printf("| Control recepcionista |\n");
printf("=====================================\n");
printf("| Opción | Descripción |\n");
printf("=====================================\n");
printf("| 1 | Menú de Habitaciones |\n");
printf("| 2 | Menú de Reserva |\n");
printf("| 3 | Generar pagos |\n");
printf("| 0 | Salir |\n");
printf("=====================================\n");

printf("Su decisión: ");
fflush(stdin);
scanf(" %d", &decision);

switch (decision)
{
case 1:
menuHabitaciones();
break;
case 2:
menuReservas();
break;
case 3:
linkDePago();
break;
case 0:
return;
}

printf("Seguir ejecutando? (1: Sí / 0: No): ");
scanf("%d", &decision);
}
while (decision == 1);
}

void controlLimpieza()
{
int decision;
do
{
printf("=====================================\n");
printf("| Menú Limpieza |\n");
printf("=====================================\n");
printf("| Opción | Descripción |\n");
printf("=====================================\n");
printf("| 1 | Menu Limpieza |\n");
printf("| 2 | Menu Botellas |\n");
printf("| 3 | Menu Habitaciones |\n");
printf("| 0 | Salir |\n");
printf("=====================================\n");

printf("Su decisión: ");
fflush(stdin);
scanf(" %d", &decision);

switch (decision)
{
case 1:
menuLimpieza();
break;
case 2:
menuBotellas();
break;
case 3:
menuHabitaciones();
break;
case 0:
return;
}

printf("Seguir ejecutando? (1: Sí / 0: No): ");
scanf("%d", &decision);
}
while (decision == 1);
}

void controlAdmin()
{
int decision;
do
{
printf("=====================================\n");
printf("| Menú Administrador |\n");
printf("=====================================\n");
printf("| Opción | Descripción |\n");
printf("=====================================\n");
printf("| 1 | Menú de Botellas |\n");
printf("| 2 | Menú de Comidas |\n");
printf("| 2 | Menú de Empleados |\n");
printf("| 2 | Menú de Limpieza |\n");
printf("| 2 | Menú de Reserva |\n");
printf("| 2 | Generar pagos |\n");
printf("| 0 | Salir |\n");
printf("=====================================\n");

printf("Su decisión: ");
fflush(stdin);
scanf(" %d", &decision);

switch (decision)
{
case 1:
menuEmpleados();
break;
case 2:
menuBotellas();
break;
case 0:
return;
}

printf("Seguir ejecutando? (1: Sí / 0: No): ");
scanf("%d", &decision);
}
while (decision == 1);
}
Binary file modified obj/Debug/linkdepago.o
Binary file not shown.
Binary file modified obj/Debug/main.o
Binary file not shown.
Binary file modified obj/Debug/porLimpiar.o
Binary file not shown.
2 changes: 1 addition & 1 deletion porLimpiar.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
#include "pila.h"
#include "porLimpiar.h"

void menuLimpiar()
void menuLimpieza()
{
int numAeliminar;
Pila habitacionesPorLimpiar;
Expand Down
Loading

0 comments on commit 71a1333

Please sign in to comment.