Giter Club home page Giter Club logo

travelagency's Introduction

Travel Agency

Travel Agency

License: MIT Java PostgreSQL

Description

This project aims to create a digital management system for Patika Tourism Agency to streamline its daily operations in the hotel sector and optimize customer reservation processes.

Table of Contents

Technologies

  • Java 21
  • Swing Framework
  • PostgreSQL

Project Overview

The project consists of 3 main parts: Hotel Management, User Management and Reservation Management.

Features

  • User Management:

    • Admin can add, delete, update, and filter users based on their roles (admin, staff).
  • Hotel Management:

    • List hotels with details such as name, address, star rating, and amenities.
    • Add new hotels with information like email, phone, and location.
    • Specify accommodation types (pension types) offered by each hotel.
  • Room Management:

    • List rooms for each hotel with details like type, features, and availability.
    • Add new rooms, specifying type, features, and stock quantity.
  • Season Management:

    • Define historical seasons to adjust room pricing based on periods.
    • Specify start and end dates for each season.
  • Pricing Management:

    • Set dynamic pricing for rooms based on seasons and accommodation types.
    • Differentiate prices for adults and children.
  • Room Search:

    • Search available rooms based on city, date range, and hotel name.
    • Display relevant information about hotels and rooms that match the search criteria.
  • Reservation Operations:

    • List existing reservations with details like check-in/out dates, guests, and total price.
    • Add new reservations by selecting available rooms and providing guest information.
    • Delete or update existing reservations.
  • Security:

    • Users are required to log in to the system with their credentials.

Installation

Clone

  1. Clone the repository: git clone https://github.com/kuraykaraaslan/TravelAgency.git

  2. Navigate to the project directory: cd TravelAgency

  3. Open the project in your IDE

  4. Create a database named agency in PostgreSQL or change the database name in the src/main/java/agency/core/DataBase.java file

  5. Run the runWithTestData.sql file in the src/main/resources folder to create the tables or run the runWithoutTestData.sql file to create the tables without test data

  6. Run the project

Permission Table

Admin

  • User Management: Admin can list, add, delete, update, and filter users based on their roles (admin, staff).

Employee (Agency Staff)

  • Hotel Management: List and add hotels.
  • Room Management: List and add rooms.
  • Season Management: List and add seasons.
  • Pricing Management.
  • Room Search.
  • Reservation Operations: List, add, delete, and update reservations.

Database Design

The system uses a relational database with the following tables:

  • user: Stores user information.
  • hotel: Stores hotel information.
  • season: Stores seasonal information for hotels.
  • pension: Stores pension types for hotels.
  • room: Stores room information.
  • reservation: Stores reservation details.

The project uses Swing for the graphical user interface, providing a user-friendly experience for both admins and employees.

Coding Practices

  • Variable and function names are clear and self-explanatory.
  • Code readability and formatting are maintained with proper indentation.
  • Comments and documentation are provided for better understanding.
  • The code is modular and reusable.

Screenshots

Include screenshots here to visually showcase the application's interface and features.

Welcome All Rooms All Reservations Reservation Details All Hotels Hotel Details Hotel Assets Hotel Rooms Hotel Seasons Hotel Pensions Hotel Reservations

Change Log

  • v1.0.0 (2024-02-01)
    • Initial release
  • v1.0.1 (2024-02-02)
    • Added room search feature as RoomListView.
    • Added links to hotel details from the reservation details
    • Added links to room details from the reservation details
    • Added links to season details from the reservation details
    • Added availability check for rooms in the reservation details
    • Added Role search feature as UserListView
    • Bug Fixed: Pansion selection for the room added

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

This project is a learning project developed under the guidance of Patika.dev. If you having same route with me, you can use this project as a reference.

travelagency's People

Contributors

kuraykaraaslan avatar

Stargazers

Özkan Ceyhan  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.