Link al Server di Gestione Hotels: (link)
Applicazione per prenotare le stanze di un Hotel
Note
Progetto scolastico
Applicazione Android e IOS per la prenotazione delle stanze di un hotel.
Un cliente può prenotare la stanza di un albergo scegliendo tra le stanze degli alberghi forniti.
Le schermate sono state acquisite da dispositivo fisico IOS: Iphone 14 Plus
1 | 2 | 3 | 4 |
- L'utente sceglie l'hotel
- L'utente sceglie la stanza
- l'utente prenota
- l'utente sceglie la data
App Multi Platform in React-Native che gestisce le richieste con un server web
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
La fase di prototyping è stata elaborata tramite gli strumenti offerti da Figma da cui è stato realizzato il mockup dell'applicazione (link).
Tip
iPhone 14 Plus (video) L’app è pronta per essere distribuita.
- Si crea il progetto React-Native dalla guida React-Native
- Si caricano i file sorgente sostituendo quelli già presenti
- Si segue la guida per il caricamento dei font (link)
Nome API | URL | Parametri | Descrizione |
---|---|---|---|
getBookingsDataApp | /api?type=book&method=getBookingsDataApp |
clientId=${globalId} |
Ottiene i dati delle prenotazioni per il cliente specificato. |
newbooking | /api?type=book&method=newbooking |
Nessuno | Crea una nuova prenotazione. |
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. |
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. |
$ 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
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 |
Warning
Questo software è rilasciato sotto la licenza GPL v3 quindi l'uso, la modifica e la distribuzione del codice sorgente ne deve rispettare i termini.
I contenuti multimediali possono essere soggetti a una licenza non commerciale richiedendo l'acquisto di una licenza separata.
Note
Icone SVG di Bootstrap
Copyright 2024 Vittorio Piotti (GitHub page) (Personal page)
Version v1.0.0
License GPL-3.0
Copyright 2024 Vittorio Piotti (GitHub page) (Personal page)
Version v1.0.0
License GPL-3.0
Copyright 2011-2018 The Bootstrap Authors
Version v1.11.0
License MIT
Copyright Facebook, Inc.
Version v0.74.0
License MIT
Copyright 2016 The Nunito Sans Project Authors
License OFL