/java_hotel_system

Make Java Hotel System like a real apps

Primary LanguageJava

Java Hotel System MVVM

Make Hotel System MVVM using Java, and for backend i use Firebase, and PHP

Feature

  • MVVM
  • Retrofit2
  • 20+ Screen
  • Google Maps (MAPBOX)
  • Rx Java
  • Dependency Injection (Dagger Hillt)
  • Firebase Auth (Sign In using Google, Facebook, and Github account)
  • Live Data
  • Network API
  • Glide
  • Print booking details to PDF with barcode
  • Make Barcode (Already encrypt barcode, only can use in this app)
  • Scan Barcode
  • Shared Preference (Saved user login)
  • Splash Screen, etc

ROLE

  • SUPER_ADMIN
    • make other people become super_admin, admin, or user
    • can ban user/admin (not yet implemented, i will update this)
    • same as ADMIN
  • ADMIN
    • can insert hotel room
    • can update hotel room
    • can delete hotel room
    • can see all booking with filtered by date
  • USER
    • can booking
    • can scan qr
    • can see history booking
    • can see filtered booking by date
    • can open maps, and directly open google maps for direction
    • can scan pdf

API

https://achmadrizkin.my.id/mobprog_hotel/select_user.php?uid={YOUR_UID_RIGHT_HERE}

{
  "data": [
    {
      "id": "30",
      "name": "Achmad Rizki Nur Fauzie",
      "uid": "UR_UID_WILL_BE_RIGHT_HERE",
      "image_url": "https://avatars.githubusercontent.com/u/75843138?v=4",
      "role": "user",
      "log_via": "GITHUB"
    }
  ]
}

How to use MapBox, Facebook, Google, Github

read to their documentation, its just too much if i type here

Previrew App

Splash Screen Login or Sign Up Login via GITHUB
Booking (if user was not login) Me (if user was not login) Room Detail (if user was not login)
Show Direction on Google Maps Select Role Me (if user role was super_admin)
Print in PDF Home Me (if user role was admin)
Map Box Map Add Room Me (Scan Barcode)
Me (if role was user) History Booking Make QR-Code
Get By City Search Search (2)
Search (no result) Room Detail (if role was user) Filter date (admin/s_admin = get all transaction in that day, user = only show user transaction)
All User (super admin) Change Role (super admin) Room Details (role admin/super_admin)

Video Documentation

https://drive.google.com/file/d/1SWFTcTWg_bVujjm-q9-kbavF5fZNihxI/view?usp=drivesdk (Scan Barcode) https://drive.google.com/file/d/1ShNPVX62bospT5yKuj_9RuhWhQv-tKtl/view?usp=drivesdk (Change Role) https://drive.google.com/file/d/1SlgNjTv_WIx86-OJRJePJUrLAIKYEyEe/view?usp=drivesdk (print into PDF)