Skip to content

vittorioPiotti/Gestione-Hotel-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Icona

Gestione Hotels

Applicazione per prenotare le stanze di un Hotel

Tip

Compatibilità Multiplatform con Android e IOS

Indice

  1. Riepilogo Prodotto
  2. Casi d'uso
  3. Riepilogo Tecnico
  4. Implementazioni Future

Icona Icona Icona Icona Icona Icona Icona Icona Icona
Icona Icona Icona Icona Icona Icona Icona Icona Icona
Icona Icona Icona Icona Icona Icona Icona Icona Icona

Riepilogo Prodotto

Prodotto

Applicazione Android e IOS per la prenotazione delle stanze di un hotel.

Scopo

Un cliente può prenotare la stanza di un albergo scegliendo tra le stanze degli alberghi forniti.

Copyright

Caution

L’utilizzo e la distribuzione dell’app o delle sue risorse può violare il copyright. Non è stata verificata la conformità dell’app e delle sue risorse alle varie licenze. Le immagini di hotel e stanze sono state scaricate da internet. Molte delle icone sono copie di quelle fornite da SF Symbols.

Casi d'Uso

Le schermate sono state acquisite da dispositivo fisico IOS: Iphone 14 Plus

Icona Icona Icona Icona
1 2 3 4
  1. L'utente sceglie l'hotel
  2. L'utente sceglie la stanza
  3. l'utente prenota
  4. l'utente sceglie la data

Riepilogo Tecnico

Obbiettivo

App Multi Platform in React-Native che gestisce le richieste con un server web

Indice

  1. Tecnologie
  2. Prototyping
  3. Testing
  4. Distribuzione Locale
  5. API
  6. Albero di Path

Tecnologie

Framework e linguaggi

  • React-native v.0.74.0
  • Typescript

Comunicazione con server web:

  • Uso protocollo HTTPS
  • Utilizzo di Fetch
  • Sistena di API e Endpoints

Prototyping

La fase di prototyping è stata elaborata tramite gli strumenti offerti da Figma da cui è stato realizzato il mockup dell'applicazione (link).

Testing

Tip

iPhone 14 Plus (video) L’app è pronta per essere distribuita.

Distribuzione Locale

  1. Si crea il progetto React-Native dalla guida React-Native
  2. Si caricano i file sorgente sostituendo quelli già presenti
  3. Si segue la guida per il caricamento dei font (link)

API

Nome API URL Parametri Descrizione
getBookingsDataApp /api?type=book&method=getBookingsDataApp clientId=${globalId} Ottiene i dati delle prenotazioni per il cliente specificato.
getHotelsDataApp /api?type=hotel&method=getHotelsDataApp Nessuno Ottiene i dati di tutti gli hotel.
getHotelDataApp /api?type=hotel&method=getHotelDataApp idHotel=${idAlbergo} Ottiene i dati di un hotel specifico.
newbooking /api?type=book&method=newbooking Nessuno Crea una nuova prenotazione.
getHotelRoomsDataApp /api?type=room&method=getHotelRoomsDataApp idHotel=${idAlbergo} Ottiene i dati delle stanze di un hotel specifico.
getClientEmail /api?type=auth&method=getClientEmail idClient=${globalId} Ottiene l'email del cliente specificato.
editClientEmail /api?type=auth&method=editClientEmail Nessuno Modifica l'email del cliente.
editClientPassw /api?type=auth&method=editClientPassw Nessuno Modifica la password del cliente.
deleteClient /api?type=auth&method=delete authState=client Elimina il cliente.
loginClient /api?type=auth&method=login authState=client Esegue il login per il cliente.
dynamicClientMethod /api?type=auth&method=${apiMethod} Nessuno Esegue una richiesta dinamica del client basata sul metodo specificato.

Albero di Path

$ tree
.
└── src
    ├── assets 
    │   ├── fonts
    │   └── images
    ├── scripts
    │   ├── constants
    │   │   ├── activities.tsx
    │   │   ├── colors.tsx
    │   │   ├── connection.tsx
    │   │   ├── fonts.tsx
    │   │   ├── images.tsx
    │   │   └── screens.tsx
    │   ├── features
    │   │   ├── navigation
    │   │   │   ├── Books.tsx
    │   │   │   ├── Home.tsx
    │   │   │   ├── Hotel.tsx
    │   │   │   ├── Room.tsx
    │   │   │   └── Rooms.tsx
    │   │   ├── onboarding
    │   │   │   └── Preview.tsx
    │   │   └── profile
    │   │       ├── Auth.tsx
    │   │       ├── Profile.tsx
    │   │       ├── Settings.tsx
    │   │       └── SignIn.tsx
    │   └── layouts
    │       ├── Calendar.tsx
    │       ├── Footer.tsx
    │       ├── Header.tsx
    │       └── Modal.tsx
    └── App.tsx

Implementazioni Future

Libreria Routing tra le schermate Richieste HTTPS Token di accesso Sicurezza dei dati
Versione Attuale Nessuna Fetch Nessuna Nessuna
Versioni Future React Navigation Axios AsyncStorage crypto-js