Giter Site home page Giter Site logo

hotel-booking-system's Introduction

[Find The API Documentation From Here](https://iamthakkarraj.github.io/WebApiAssignment/)

[Find The Swagger.json From Here](https://github.com/iamthakkarraj/WebApiAssignment/blob/master/SWAGGER-JSON.JSON)

[Find The Postman Collestion From Here](https://github.com/iamthakkarraj/WebApiAssignment/blob/master/POSTMAN-COLLECTION.JSON)


✔ Layering (DAL, BLL, Common, API)    
✔ Dependancy Injection    
✔ Model Mapping   
✔ Attribute Routing 
✔ Only JSON Response 
✔ CORS Enabled
✔ Basic Authentication Using Username And Password
✔ Swagger API Implementation
✔ Authentication Support in SwaggerUI

==================
Functions In Hotel
==================
    ◾ GetList
    ◾ Search (name, city, pincode)    
    ◾ GetById (id)
    ◾ Add (hotelModel)
    ◾ Update (hotelModel)
    ◾ Delete (id)
    
=================
Functions In Room
=================
    ◾ GetList
    ◾ Search (price, category, city ,pincode)    
    ◾ GetById (id)
    ◾ Add (roomModel)
    ◾ Update (roomModel)
    ◾ Delete (id)
    
====================
Functions In Booking
====================
    ◾ GetList
    ◾ Search (roomId, hotelId, date)    
    ◾ GetById (id)
    ◾ Add (bookingModel)
    ◾ Update (bookingModel)
    ◾ Delete (id)       


(Status of bookings)
==================
id | Value
==================
0  | Optional (Default)
1  | Definitive
2  | Cancelled
3  | Deleted 

(Cateogires of Room)
==================
id | Value
==================
0  | Basic (Deafult)
1  | Categories 1 (size <35 m2)
2  | Categories 2 (size 36-50 m2)
3  | Categories 3 (size 51-100 m2)

==================
Layering Structure 
==================

=================
 DAL LAYER (Rooms)
==================
✔ IRoomRepository
✔ RoomRepository
   |===> |      
       ✔| GetQueryable()
       ✔| Add(room)
       ✔| Update(room)
       ✔| Delete(id)       
       ✔| IsAvailable(id)
=======================
    BLL LAYER (Rooms)
=======================
	✔ IRoomService
	✔ RoomServicce
	   |===> |          	       
	       ✔| GetRooms()
	       ✔| SearchRoom(city, pincode, price, category)
               ✔| Get(id)	       
               ✔| Add(room)
               ✔| Update(room)
	       ✔| Remove(id)
               ✔| IsAvailable(id)
================================
       API LAYER (Rooms)
================================
		✔ RoomController
		   |===> |
                       ✔| Get()
		       ✔| Get(id)
  		       ✔| Get(city, pincode, price, category)
 		       ✔| Post(room)
                       ✔| Put(room)
		       ✔| Delete(id)
 		       ✔| IsAvailable(id)

==================
 DAL LAYER (Hotel)
==================
✔ IHotelRepository
✔ HotelRepository
   |===> |
       ✔| GetQueryable()
       ✔| Add(room)
       ✔| Update(room)
       ✔| Delete(id)     
=======================
    BLL LAYER (Hotel)
=======================
	✔ IHotelService
	✔ HotelServicce
	   |===>|          
	      ✔| Get(id)
	      ✔| GetHotels()
	      ✔| SearchHotel(name, city, pincode)
              ✔| Add(hotelModel)
	      ✔| Update(hotelModel)
	      ✔| Delete(id)
================================
       API LAYER (Hotel)
================================
		✔ HotelController
		   |===>| 
                      ✔| Get()
		      ✔| Get(id)
		      ✔| Get(name, city, pincode)
		      ✔| Post(hotelModel)
                      ✔| Put(hotelModel)
		      ✔| Delete(id)

=====================
 DAL LAYER (Booking)
=====================
✔ IBookingRepository
✔ BookingRepository
   |===> |
       ✔| GetQueryable()
       ✔| Add(booking)
       ✔| Update(booking)
       ✔| Delete(id)     
=======================
  BLL LAYER (Booking)
=======================
	✔ IBookingService
	✔ BookingServicce
	   |===> |
	       ✔| Get(id)
	       ✔| GetBookings()           
               ✔| Search(date, hotelId, roomId)           	       
               ✔| Add(bookingModel)
               ✔| Update(bookingModel)
	       ✔| Delete(id)
================================
      API LAYER (Booking)
================================
		✔ BookingController
		   |===>|
                      ✔| Get()
		      ✔| Get(id)
                      ✔| Get(date, hotelId, roomId)
		      ✔| Post(bookingModel)
	              ✔| Put(bookingModel)
		      ✔| Delete(id)

hotel-booking-system's People

Contributors

iamthakkarraj 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.