Download as pdf or txt
Download as pdf or txt
You are on page 1of 188

MOBILE-BASED HOTEL RESERVATION SYSTEM

A Capstone Project

Presented to the Faculty of

College of Informatics and Computing Sciences

BATANGAS STATE UNIVERSITY

Batangas City

In Partial Fulfillment of the Requirements for the Degree of

Bachelor of Science in Information Technology

By :

BAYANI, JEROME P.

CABATAY, JESSA C.

SERRANO, ROSEMARIE M.

December 2021

1
APPROVAL SHEET

This capstone project entitled “ Mobile-Based Hotel Reservation System “ prepared and

submitted by JEROME P. BAYANI, JESSA C. CABATAY, and ROSEMARIE M.

SERRANO in partial fulfillment of the requirements for the degree of Bachelor of Science

in Information Technology has been examined and recommended for acceptance and

approval for oral examination.

Signed 12-20-2021

JOHN ROBERT D. ATIENZA

Adviser

Approved by the Committee on Oral Examination with a grade of __________________

PANEL OF EXAMINERS

Mrs. LOVELY ROSE T. HERNANDEZ

Chairperson

Signed 1/6/22

Mrs. LANIE P. PALAD Mr. RAYMOND KIT M. RODRIGUEZ

Member Member

Accepted and approved in partial fulfillment of the requirements for the degree of Bachelor

of Science in Information Technology.

December 2021 Dr. PRINCESS MARIE B. MELO, DIT

Date Dean, CICS

2
ACKNOWLEDGEMENT

The researchers would like to express their deepest appreciation to the following persons who

helped them make this research possible.

To Dr. Princess Marie B. Melo for her unending support, generous assistance, and stimulating

encouragement for the success of this study.

To their capstone instructor Mrs. Evelyn Z. Red PhD., and to their adviser Mr. Robert D.

Atienza who guided them and gave the best advice that made this research possible and they

supported and encouraged them to finish this study.

To their parents who always remind them of the importance of education in one’s life and give

their undying love and never-ending support.

To their friends and classmates that inspire them to do their best and finish every work.

And above all, to our Almighty God, for guidance and blessings for enough knowledge and

strength that made this research possible.

Jerome P. Bayani

Jessa C. Cabatay

Rosemarie M. Serrano

3
DEDICATION

The researchers are lovingly dedicating this study to the following:

To Almighty God who gives them strength and guidance received every day. To their dear

parents for giving them encouragement and serving as their inspiration. To their Teachers, Friends,

and Classmates who give them guidance and support. And to their beloved Alma Mater, Batangas

State University Alangilan Campus.

J.P.B

J.C.C

R.M.S

4
ABSTRACT

Title : MOBILE-BASED HOTEL RESERVATION SYSTEM

Researchers: Jerome P. Bayani

Jessa C. Cabatay

Rosemarie M. Serrano

Degree : Bachelor of Science in Information Technology

Year : 2021

Adviser : ROBERT D. ATIENZA

Summary

As borders are closed, events and gatherings canceled and general populations, the tourism

industry is one of the sectors that is greatly affected by the COVID-19 pandemic. And as hotel

operation continues, there are some changes to its rules and regulations to maintain the safety of

every guest and staff at the hotel. With this regard, the researchers developed a Mobile-Based

Hotel Reservation System for Yellowbell Hotel - Batangas City that would automate and maintain

clients’ records, by providing an application that would replace the existing system of the hotel

which is manual handling of paper records. With this system, the user doesn’t need to go to the

hotel to get information. All the details needed are within the application, it can only be accessed

by a user when they already registered in the system using a Google account, so it’s required to

have a Gmail account before making any inquiries at the hotel. While the administrator has control

of all the information inputted by the guests and clients in the system. The administrator can check

5
the authentication of each user and determine records whether the user’s credentials match the

credentials in the database before gaining access to the system.

This study aims to lessen the time of handling paper records for a more adaptive resolution

that benefits not only the user but the hotel itself. COVID-19 is still there, so with this application,

there’s no need for any face-to-face conversation to happen. To gather data for the study, the

researchers utilized a survey questionnaire that was answered through Google forms by 100

random people with the age range from 18-40 above. As a result, the researchers were able to

develop a system that is quick, efficient, functional, and secure to use.

6
TABLE OF CONTENTS

TITLE PAGE 1

APPROVAL SHEET 2

ACKNOWLEDGEMENT 3

DEDICATION 4

EXECUTIVE SUMMARY 5

TABLE OF CONTENTS 7

LIST OF FIGURES 10

LIST OF TABLES 12

CHAPTER

I. INTRODUCTION 14

Background of the Study 14

Objectives of the Study 18

Scope and Limitations 19

Purpose and Description 20

Significance of the Study 21

7
Definition of Terms 22

II. REVIEW OF RELATED SYSTEM AND STUDIES 24

Technical Background 24

Research Literature 25

Related System 31

Synthesis 35

Conceptual Framework 37

III.METHODOLOGY AND DESIGN 39

Project Concept 39

Development Model 40

Development Tools 41

Requirement Analysis 43

Analysis of Existing System 43

Design 52

System Design/Architecture 54

Development 76

8
Testing 78

Deployment 81

Risk Management Plan 84

IV.RESULTS AND DISCUSSIONS 88

Discussions 88

Survey-Questionnaire Results 94

V.SUMMARY, FINDINGS, AND CONCLUSION 110

Summary of Findings 110

Conclusions 111

Recommendations 112

BIBLIOGRAPHY 113

APPENDICES 115

Schedule and Timeline 116

Project Teams and Responsibilities 118

Budget Cost and Management Plan 119

Source Code 122

9
User’s Manual 214

Curriculum vitae 218

Lists of Figure

Figure No. and Title Page

1. Conceptual Framework 37

2. Agile Development Model 40

3. Fishbone Analysis 44

4. System Boundary 45

5. Use Case Diagram 54

6. Sequence Diagram 56

7. Data Flow Diagram 58

8. Main Interface- MOBILE 60

9. Mobile Home Interface 61

10. Booking History 62

11. Booking Menu 63

12. Standard Double Room 64

10
13. Superior Twin Room 65

14. Deluxe Double Room 66

15. Selecting Date Menu 67

16. Booking Reference Menu 68

17. Login Interface-DESKTOP 69

18. Desktop Home Interface 70

19. Room Pricing Interface 71

20. View Booking Interface 72

21. Booking Previewer 73

22. Client/Member Interface 74

23. Logout Interface 78

24. Display Updated Reservation 89

25. View Dashboard 92

26. Reserve/Cancel Reservation 93

27. Attach Proof of Payment 94

28. Age of Respondents 94

11
29. Perceived Ease of Use (1) 96

30. Perceived Ease of Use (2) 97

31. Perceived Ease of Use (3) 97

32. Perceived Ease of Use (4) 98

33. Perceived Ease of Use (5) 99

34. Perceived Usefulness (1) 99

35. Perceived Usefulness (2) 100

36. Perceived Usefulness (3) 101

37. Perceived Usefulness (4) 101

38. Perceived Usefulness (5) 102

39. Attitude toward Using (1) 103

40. Attitude toward Using (2) 104

41. Attitude toward Using (3) 104

42. Attitude toward Using (4) 105

43. Attitude toward Using (5) 105

44. Intention to Use (1) 106

12
45. Intention to Use (2) 107

46. Intention to Use (3) 107

47. Intention to Use (4) 108

48. Intention to Use (5) 109

Lists of Table

Table No. and Title Page

1. Hardware Requirements 46

2. Software Requirements 46

3. Trade-Offs and Constraints 52

4. Criteria Rating 53

5. Testing Procedure 80

6. Software Matrix 82

7. Software Requirements 82

8. Hardware Matrix 83

9. Risk Management Process 85

10. Risk Matrix 85

13
CHAPTER I

INTRODUCTION

Background of the Study

The pandemic has accelerated the adoption of new technologies in the hotel industry, with

online technology offerings at the forefront. Online technology offers hotels opportunities to

reopen or continue operations responsibly and safely. But the impact of the adoption of these

technologies is almost an outlast crisis in such venues is clear when looking at the efficacy and

longevity, particularly in light of ever-changing consumer demands and the issues with aging

technology that pre-date the current pandemic. As the world has become more computerized,

organizations have progressively offered purchasers on the web or portable exchange choices.

With a sudden increase in consumer demands, the pandemic can accelerate the worldwide

transition while catalyzing the modernization of the hotel industry.

Within a business environment, business analytics is very important since it improves a lot

of profitability by minimizing risks and it helps the business make the right choices regarding

consumer and performance. Business Analytics (BA) is the blend of abilities, advancements,

completed, and rehearses used to analyze an association's information and execution as a method

for acquiring experiences and settling on information driven choices later on utilizing measurable

examinations. The objective of BA is to limit which datasets are helpful and which can build

income, usefulness, and effectiveness.

By the early 1980s, over 10 years before the appearance of online travel services like

Travelocity, Preview Travel, Expedia, Priceline.com, and Hotel Reservations Network in the mid-

14
to-late 1990s, American Airlines' Sabre unit had made a pre-Internet, direct-to-customer booking

apparatus for flights, inns, and vehicles called eAAsySabre. The off-kilter spelling of the item

reflected American Airlines' parentage, which stuck "AA" anyplace it could. All through this oral

history of the beginning of online travel, the originators of organizations, for example, Saber-

created Travelocity, Hotel Reservations Network (later Hotels.com), Expedia, ITA Software, and

Orbitz continued to raise eAAsySabre as an antecedent to, or motivation for, their ensuing web-

based travel destinations and enterprising endeavors.

Customers could reserve a spot for flights, inns, and vehicles however aircraft or travel

planners needed to do the tagging. Sabre, which gave automated reservation method [now known

as worldwide dispersion system] administrations to travel planners, needed to walk a scarce

difference between this buyer-arranged eAAsySabre item and Saber's travel service clients. Travel

planners disliked the possibility of customers and carriers executing straightforwardly and

removing them from the selling and booking conditions. It was a harbinger of the shuffling Saber

would need to accomplish for almost twenty years in the wake of sending off Travelocity in 1996

and prior to offering it to Expedia Inc. in 2015.

The study of David Wardell talked about the idea of inn reservations on the planet these

days. As per the article, the lodging business is the most automated section of the global travel

industry. Reservations are frequently still managed manually. This absence of computerization

addresses a genuine purpose in shortcoming concerning rivalry between lodging networks and the

inn business overall. Likewise, a fruitful reservation framework requires a data set stock

framework that when handled, a message is sent to the property being referred to with data that

the nearby visitor information data set ought to be refreshed.

15
The study of David Wardell assisted with knowing the latest thing in the internet based

reservations structure. The approach likewise gives an efficient and got data set so it can give

visitors a simple method for booking reservations. The visitors additionally have any familiarity

with the subtleties in advance in light of the fact that the method makes some genuine memories

reservation check that gives the visitor precise data about the accessibility of each sort of room,

conveniences, and offices. Aiding visitors as well as it very well may save their time and exertion

for the organization as well.

In this day and age, organizations are bound to succeed when they approach strong

information and viable examination, however now and again it tends to be challenging to procure

great information and why online reservation comes in. An online booking system provides a

dashboard of analytics that helps businesses grow and increase productivity. It is now playing a

significant business job in regions like coordinated factors, assembling, and HR empowering

organizations to acquire more and better information about an assortment of their tasks.

Moreover, customers are looking for convenience with easy to reach and faster processes

where the Mobile-Based Hotel Reservation System has made it. It is an automated structure that

stores and appropriates data about the hotel or other lodging facilities. It is a partner for hoteliers

to deal with the entirety of their web based showcasing and deals, where they can transfer their

rates and accessibility to be seen by all business channels that are utilizing an internet based

reservation method.

This study is conducted to eliminate the manual way and lessen the time of handling paper

records and handle the guest’s information in an organized way of hotel reservation, cost-effective

and reliable. In some distant few hotels are as yet utilizing a manual reservation method. They use

16
signage and a few print ads for their promoting logbooks and a few paper attempts to record clients'

information.

To provide the best solution for these problems the researchers carried out a project entitled

“Mobile-Based Hotel Reservation System”, for the chosen beneficiaries which is the Yellowbell

Hotel in Batangas City. A study developed a mobile application for more adaptive resolution. An

online booking system that gives a systematic registration of information and transactions where

it contains the lists of all the records from the customers for future use and provides permanent

evidence. Sources of records about the recorded transactions and distributes information of a hotel

which assists hoteliers in improving marketing and sales online. What's more, it builds the handling

of data, reiteration of significant cycles, and gives precise outcomes. This framework additionally

gets every one of the exchanges for booking which would result in customer satisfaction.

Booking and Reservation method alludes to the demonstration of enlisting the names and

other data of their clients. The computerization of their booking method helps the administrator

and workers to follow through with their jobs really and proficiently. This system represents a

dynamic and forward-thinking mindset that the customers are better served through convenient

and hassle-free technologies which in turn improve hotel reputation and increase productivity.

17
Objectives of the Study

The main objective of this study is to design and develop Mobile Based Hotel Reservation

System. A study aims to provide a convenient payment service to users and also provide a channel

for guests to make online reservations that would help improve customer experience and service.

Specifically, the study aims to:

1. Automate and maintain client records.

2. View the list of clients who booked at the hotel where:

A.Display the past, present, and upcoming room and/or service

reservations at the hotel.

B.Determine the most availed rooms, even which month has the

most reservation made and canceled reservations.

3. Develop a mobile application that allows the guest to :

A.Reserve or cancel a reservation at any time and anywhere in just

a few taps.

B. Upload proof of payment or bank transfer for validating the

reservation.

4. Examine and validate the user acceptance of the system using a

technology acceptance model framework questionnaire.

18
Scope and Limitations

This study is all about Mobile Based Hotel Reservation Systems. Aim to help the hotel

businesses to increase their revenues and hassle-free management of bookings.

Due to the ongoing Coronavirus ( COVID-19 ) pandemic, the Hotel Reservation System

was developed to promote efficiency and effectiveness of use and improved operation. In the

mobile application, a user is required to register first, using a Google account before making any

transaction at the hotel. It verifies in the admin part which is in the form of desktop application if

the user has an existing record at the hotel, if not it would be recorded in the database and the

system generates proof that the account is registered.

As for manual reservations, communications are through phone calls, email and messages.

The same process applies but it takes more time to provide information, because of too many

inquiries and questions. And with the use of an online reservation through applications, it’s greatly

helped the hotel to update and improve its current system.

The limitation of the study is a cancellation of any reservation can be made within 48 hours.

If the booking is valid and confirmed, request payment be done and send proof via mobile call,

SMS, or email confirmation. This should be done within 24 hours. It serves as a gate pass for the

clients when they come to the hotel. If the user is not a registered member, no possible transaction

can be done other than viewing information.

19
Purpose and Descriptions

The Mobile Based Hotel Reservation System is a system created to help customers/users

in online hotel booking and reservation. This project is to benefit both customers and hotel owners,

as transactions would be easier and produce less hassle. In Booking and reserving rooms customers

can set the date, time, duration and several people included to generate booking references. If the

booking is invalid and rejected, the system automatically cancels the booking. Contact between

the customer and hotel would also be easier with the help of the front desk at the hotel who mainly

monitors the upcoming reserved rooms done by the customer. This system would also become

more beneficial to those customers coming from faraway places and are not familiar with the

vicinity of Batangas City. Those customers would now be able to transact along their way to the

hotel.

Significance of the Study

This study be beneficial to the:

Yellowbell Hotel. The existence of the system would give information they need anytime

anywhere. It represents a dynamic and forward-thinking mindset that the clients are better off

through advantageous and bother free advancements which thus improve hotel reputation and

increase productivity.

Hotel Guests. They can instantly view all the information about hotel reservations, search for the

type of rooms and their price easily with just one click. They can choose payment through bank

deposit.

20
Hotel Staff. They can utilize their telephones to in split second access all the important data about

a gadget and the support it needs.

Hotel Owner. Can refresh business data alongside conveniences and cost can be overseen in

view of their plans of action and service provided.

The Researchers. The researchers themselves would gain experience upon the development of

this application and can use the knowledge in the future.

Future Researchers. The study serves as a guide for the students or other researchers who are

also conducting similar studies on the Mobile Based Hotel Reservation System.

Definition of Terms

The accompanying terms are characterized reasonably and functionally for better

perception of per user:

Hotel. The word hotel evokes energizing pictures: a bustling anteroom loaded up with worldwide

dignitaries, VIPs, people group pioneers, participants of shows and enormous gatherings,

businesspersons, and family travelers. (JA Bardi - 2021). In this study, they discuss the principles

of a well-operated hotel and the requests of the hotel business in the new thousand years.

Reservation. This term refers to well-organized and effectively available through complementary

numbers or on the Internet to guarantee a very much arranged outing. (JA Bardi - 2021. In this

study, they discuss the significance of visitor reservations to voyagers and housing foundations.

21
Registration. This term refers to catching visitor information, for example, name, address, postal

district, length of stay, and friends association, which are required during their visit and after

takeoff. Different divisions in the inn require this data to offer support to the visitor. The enrollment

interaction goes on with the expansion of credit, room choice, room rate application, the valuable

chance to sell in administrations, room key tasks, and folio handling. (JA Bardi - 2021). In this

study, they discuss the importance of Guest registration procedures.

Hotel Reservation System. It is generally known as a Central Reservation System (CRS) where

it is an automated method that stores and circulates data about a hotel, resort, or other housing

offices. (R Bemile, A Achampong, E Danquah 2014). In this study, they use a hotel reservation

system to deal with the entirety of their internet advertising and deals where they can transfer their

rates and administration accessibility to be seen by deals channels.

22
CHAPTER II

Review of Related System and Studies

This chapter presents a review of the technical background, research literature, related

system, and synthesis which were taken from different books, journals, and online resources that

aided to impose the comprehensive implementation of this research.

Technical Background

This study is conducted to eliminate the manual way and lessen the time of handling paper

records and handle the guests’ information in hotel reservation in an organized way, cost-effective

and reliable. Here in the Philippines, the greatest hotels are utilizing a similar innovation. In any

case, in some distant places, a few lodgings are as yet utilizing a manual reservation system.

Organizations are bound to succeed when they approach strong information and successful

examinations, however here and there it very well may be challenging to get great information and

that's why online reservation comes in. An online booking system provides a dashboard of

analytics that helps businesses grow and quickly determine the most available rooms/services even

which month has the most reservation made and canceled reservations and the past, present, and

upcoming room and/or service reservations at the hotel.

The study can be anticipated by the use of the TAM framework. In the application, online

reservation gives prior experience, perceived usefulness, perceived ease of use, and perceived

playfulness have an impact on the attitudes of a user. Moreover, the key determinant of a user's

intention used the system to point out their attitudes and perceived playfulness.

23
Research Literature

The importance of the online booking process is high due to the evolution of related

technologies and applications. Increasingly, tourism consumers use the internet as a means to plan

their travels and make their accommodation reservations. Information technologies enable them

to attract new tourists and facilitate the booking process, which is available 24 hours daily from

anywhere.

According to the study of Mayleen Dorcas B. Castro, and Eunice B. Custodio (2016)

Managing Customer Reservations of BulSU Hotel through the Development of Online Information

and Reservation System. Exact and convenient reservations are important to guarantee appropriate

help and a positive client experience for some, the administration arranged organizations. In this

review, they considered variables like consumer loyalty and positive experience upon the stay in

a lodging that began in the booking method. To oversee client reservations of Bulacan State

University (BulSU) Hotel, they plan and create an "Online Information and Reservation System

for BulSU Hostel". Various functionalities were fused into the created framework like the making

of various clients represent the staff/front work area and online clients, costs refreshes through

online administrator entrance, installments through the ledger, affirmation through email after

reservation, report age concerning pay, number of clients and month to month report, counting the

quantities of watchers and settings for rates, charges, and different limits. Visual Basic .Net and

ASP. Net. were utilized for the framework front-end while Microsoft Access was utilized as the

data set application and Crystal Report was utilized to show reports. The created framework was

assessed utilizing the product quality standard ISO 9026 with various programming models as

keeps: Functionality, Accuracy, Reliability, User-cordiality, and Security, and every one of them

was deciphered as "Adequate" in light of the same evaluations introduced in the Likert scale.

24
According to the study of Ruben A. Parazo (2016). This review on the turn of events and

approval of the Online Reservation and Monitoring System for Tarlac College of Agriculture

Dormitories was embraced to foster a method that would ease and further develop the record-

keeping framework and layout correspondence between guardians, occupants, and dormitory

administrators without individual contact with one another. The Rapid Application Development

with Iterative Prototyping was utilized as a reason for the advancement of the product. Free and

Open Source Software was utilized as an instrument in the advancement of the framework due to

its prudent commitment to the recipients. The spellbinding review strategy for research was

utilized in this review. A poll agenda was utilized as an instrument in social occasion information

required from IT specialists, including the residence staff, inhabitants, and guardians of the tenants

in assessing the framework's dependability and ease of use. Five Information Technology Experts

of their eminent skill in framework improvement passed judgment on the Online Reservation and

Monitoring System for Tarlac College of Agriculture Dormitories.

According to the study of Vahdat, Arash; Alizadeh, Ali; Quach, Sara; Hamelin, Nicolas

(2020). Explores how technology acceptance model (TAM) elements and social variables decide

client buy expectation. Albeit past examinations on versatile applications have researched TAM,

basic social variables have been dismissed, subsequently building up the need to concentrate on

the last's commitment to shopper buy aim. Likewise, this study inspects the social impact and

friend impact in the TAM and gathers 777 polls from Digikala application clients. Information was

then broken down utilizing primary conditions demonstrated by AMOS. The discoveries show that

apparent helpfulness doesn't significantly affect disposition towards portable application use. Be

that as it may, usability, social and companion impact, and expectation to buy were displayed to

show constructive outcomes on mentality in such a manner. The outcomes likewise exhibit that

25
demeanor towards portable application use is a full middle person on three ways of the model. At

last, control investigation showed that main age has an intervening impact on the way from saw

convenience to demeanor towards versatile application use.

According to the study of Lee, Jin-Soo; Tsang, Nelson; Pan, Steve (2015). Examining the

differential effects of social and economic rewards in a hotel loyalty program, investigate how

unique social and financial prizes of a hotel reliability program sway program dependability, and

further analyze what the differential means for producing social practices. Discoveries recommend

that monetary prizes drive program unwavering ness more firmly than social prizes since

individuals will generally remain with a dependability program because of its financial award.

Nonetheless, social prizes work with social practices more than monetary prizes, considering that

social rewards inherently spur individuals to effectively safeguard and back a program given

through viable responsibility. The outcomes give dedication program administrators an

understanding of how to adjust social and monetary compensations in planning devotion programs

and propose how inns intensify social worth to layout manageable associations with clients.

According to the study of Tao, Meng; Nawaz, Muhammad Zahid; Nawaz, Shahid; Butt,

Asad Hassan; Ahmad, Hassan (2018). The inventive advancements have prepared for Hotel

booking through versatile applications and consequently making a solid holding among inn

industry organizations and OTAs (online travel planners) in regards to the dispersion channels.

Portable inn booking clients' faithfulness goals are turning out to be similarly significant for the

lodging industry, OTAs, and versatile in booking specialist organizations. It's so fundamental to

hold the current shoppers and develop a portion of the overall industry. However, present writing

connected with versatile booking innovation as a matter of first importance focused on embracing

and acknowledging the innovation. The drive behind this study is to comprehend a model that

26
depicts the issues associated with versatile lodging booking and customer devotion towards it. The

utilization of cell phones is becoming normal because of similar specialized details as a (PC).

Explorers feel more open to involving cell phones to book their voyaging reservations for tickets

and inns. Inns' portable applications are the medium that the vacationers are utilizing for finishing

the booking and installment process. These portable applications are getting quick worthiness and

notoriety among voyagers due to their plentiful advantages (Ozturk et al. 2016).

According to the study of Sooksatit, K. (2016). This study aims to find the significance of

portable applications on the dynamic course of clients, particularly among lavish lodgings in

Bangkok. This section likewise explains the adequacy of involving cell phone applications for

reserving inn spot, registration, and look at including the installment interaction. Moreover, this

examination stresses the significance of versatile applications in inn advertising. In this

examination, information assortments are adjusted. Optional sources are expected to reveal various

sorts of booking assets to lodgings in Bangkok and their fame, through the development pace of

cell phone and tablet application use. The premise of this examination underscores the Sofitel So

Bangkok inn and Leading Online Travel Agent, a visit office in Bangkok, to impact the

consciousness of involving cell phone applications in making facilities and aiding the entrepreneur

point cell phone application showcasing at the right objective. Cell phone applications become a

pay generator for some significant inns in their organizations. As indicated by this exploration

finding, the pattern of lodging reservations through cell phone applications has expanded

altogether. Thus this exploration result recommends that inns in Bangkok ought to take on cell

phone applications to advance their business, particularly rooms and offices appointments.

According to the study of Wang, Dan; Xiang, Zheng; Law, Rob; Ki, Tang Pui (2015). The

quick reception of the cell phone and its related (applications) is changing the scene of the

27
cordiality business as far as promoting and dispersion. Inside this unique situation, understanding

the current capacities of cell phone applications and the development of responsibility and safety.

Experience with these applications can assist the neighborliness business with growing more easy-

to-use applications and viable circulation systems through portable channels. This study examines

the practical highlights of two sorts of cell phone applications in working with inn reservations-

one by online travel services and the other by lodging brands. In light of the substance investigation

of online client surveys, this concentrate relatively evaluates customers' encounters and their

assessment including these two kinds of lodging applications. This study gives an ideal

investigation of the cutting edge portable innovation for lodging conveyance, and its discoveries

offer helpful experiences into the versatile dispersion and cell phone application plan for the

neighborhood business.

Related System

In the study of Delos Reyes, Hernandez, and Ilao (2018), titled Reservation and

Management System for Aguila Beach Resort Inc. In the software development and

implementation of Reservation and Management System for Aguila Beach Resort Inc. They are

proposing a modified version of a reservation system that can automatically take resort room

reservations with the support of QR. They saw the need for Aguila Beach Resort Inc. for an

automatic resort reservation system because many customers struggle to find a vacancy when it

comes to cottages or rooms; phone availability is also a factor. Having a reservation system can

help users to ensure a room to stay, it can just set a reservation using your phone.

28
In the study of Garing, Godoy, and Linao (2014), titled Online Vehicle Reservation

System. This is an online reservation system used in scheduling vehicle reservations for local

government units (LGUs) that maintain their pool of vehicles. The system maintains an inventory

of vehicles and their type and ensures accessibility of a selected type as requested. It focused only

on the available vehicles of the client. This system can only be accessed by the members who were

registered by the administrator. The member was notified if the reservation was approved or

rejected. The system offers convenience and saves the users a lot of time, to make the reservation

process easier and more efficient.

Web-Based Student Information Management System (2013) by Bharamagoudar, Geeta,

and Totad, gives a basic connection point to the support of understudy data. It very well may be

utilized by instructive foundations or schools to keep up with the records of understudies without

any problem. The creation and the executives of precise cutting-edge data in regards to an

understudies' scholarly profession are fundamentally significant in the college as well as schools.

Understudy data framework manages a wide range of understudy subtleties, scholarly related

reports, school subtleties, course subtleties, educational plan, group subtleties, position subtleties,

and other asset related subtleties as well. It tracks every one of the subtleties of an understudy from

the very beginning to the furthest limit of the course which can be utilized for all revealing

purposes giving out, following of participation, progress in the course, finished semesters, years,

coming semester year educational plan subtleties, test subtleties, project or some other task

subtleties, last, most important test result and every one of these be accessible through a solid,

online connection point installed in the school's site. It likewise has personnel subtleties, clump

execution subtleties, understudies' subtleties in all perspectives, the different scholastic notices to

the staff, and understudies refreshed by the school organization. It likewise works with us to

29
investigate every one of the exercises occurring in the school. Various reports and Queries can be

created in light of immense choices connected with understudies, bunch, course, workforce, tests,

semesters, affirmation, and in any event, for the whole school.

Online Bus Ticket Reservation System by Nwakanma Ifeanyi Cosmas, Etus C, Ajere I.U.,

and Agomuo Uchechukwu Godswill (2015). Is a Web-based application that works inside a unified

organization. This task presents an audit of the product program "Online Bus Ticket Reservation

System '' as should be utilized in a transport transportation framework, an office that is utilized to

hold seats, wipe out reservations, and various sorts of course requests utilized on getting speedy

reservations. OBTRS is worked for overseeing and mechanizing the customary data set, ticket

booking, and following transport and travel made. It keeps up with all client subtleties, transport

subtleties, reservation subtleties. The product accomplished is equipped for further developing the

client hand and relationship with the board in ITC activities. It is suggested that regardless of the

current usefulness of the planned programming, extra usefulness, for example, the utilization of

Email to send tickets and warnings to the client and online installment utilizing Mastercards/charge

cards ought to be executed into the framework.

Restaurant Table reservation using time-series prediction by Rarh, Fahim; Pojee, Dastgir;

Zulphekari, Sajjad; Shah, Varsha (2017). In India with a populace of 1.32 billion, the quantity of

coffee shops has additionally expanded as of late. For a café that has a set number of tables, it is

hard to deal with countless individuals. In each packed café, individuals need to sit tight for

something like 10-20 minutes [2] which builds disappointment among the cafes. To deal with the

group and kill the issue of holding uptime, we have planned and framework an application for the

client to pre-book the table at a particular time. The framework likewise gives extra discretionary

elements to clients to arrange food from their homes through the application simply by paying a

30
booking to add up to save their important time. To fulfill and upgrade the experience of the client

we have anticipated time involving astute calculations for overseeing tables for clients. It helps the

client as well as assists the eatery with overseeing and serving clients without any problem. The

framework additionally informs the client on the off chance that there is a postponement for their

booking by the café, it assists the client with rescheduling their reservation. The sole target of canis

is to dispose of the stand by the season of the client, improve the client eating experience and deal

with the huge number of clients by the café.

Hotel Room Booking System Project (2021). The reason for this venture is to make a useful

site for clients to hold lodgings across the world. Clients of this internet based application capable

book incorporate a physical and safe utilization of a simple to-utilize point of interaction to look,

sort, hold rooms and administrations across the world. Making a record choice gets their

information and permits simple admittance to different administrations and offices. One of the

primary motivations behind this task is to permit clients to have an internet booking of rooms and

different administrations with enlisted colleagues. The essential necessities express that the clients

would have the option to look for rooms in light of and have the option to make moment online

installments. They additionally can explore through accessible different choices by classification,

or by utilizing a first rate search work. The application is appropriately kept up with and overseen

by an overseer. They have the position to deal with the items and offers. This framework is pointed

toward fostering an internet based application for inn reservations. This framework can be utilized

by end-clients (Customer and Hotelier) and chairmen to perform extensible undertakings, to hold

and sell lodgings effectively and safely.

31
CHAPTER III

METHODOLOGY AND DESIGN

This chapter mainly discusses the research methods, procedures, and schematic

diagrams as well as the overall flow of the system that would be prepared, evaluated, and

designed.

Project Concept

Hotel Reservation System is an application and a new way of accessing information

about reservations at the hotel, that replaces the manual method of booking hotel rooms.

The system represents a dynamic and forward-thinking mindset that the customers are

better served through convenient and guide hassle drafts development technologies which

in turn improve hotel reputation and increase productivity.

32
Development Model

Figure 2. Agile Methodology Diagram

This phase coped with the development model of the system that acted as guides

and carried out its objectives. The developers used Agile Methodology in application

creation. The Agile approach sticks to the best practices which help in the quality

development of qualifications. The flexibility is demonstrated by responding to the

changes. Agile is additive so that developers can learn new revisions or drafts and make it

the best for any project. The requirements, plan, design, development, responsibly and

safely carried out, testing, and validation phases were included. All in all, any part of the

requirements and design is revisited in the Agile Diagram. The Agile Model is convenient

and easy to implement and is necessary because resources are minimal.

33
Development Tools

The system uses responsibly and safely the identifying C# and .Net programming

language in the back-end while CSS, HTML, and JavaScript are to be used in the front-

end development of this system. The below statement demonstrates the use and concepts

of different development tools.

C#. is a modern programming language that was created to build modern software

applications for Windows, Web, Enterprise software, and mobile. C# can be used within

the SQL Server database to build reports, jobs, and modules to do the backend work.

Xamarin is an open-source platform for building modern and performant applications

for iOS, Android, and Windows. NET. ... This pattern allows developers to write all of

their business logic in a single language (or reuse existing application code) but achieve

native performance, look, and feel on each platform.

.Net Framework. is a software development platform developed by Microsoft for

building and running Windows applications. It can be used to create both Form-based and

online applications.

CSS. known as Cascading Style Sheet. It describes how HTML elements are to be

displayed on the screen, paper, or in other media, and the presentation includes colors,

layout, and fonts. It allows one to adapt the presentation to different types of devices, such

as large screens or small screens. CSS is independent of HTML and can be used with any

XML-based markup language.

34
HTML. stands for Hypertext Markup Language. It runs in every browser and is

maintained by the World Wide Web Consortium. It can be used to create the content

structure of websites and web applications. It is the lowest level of frontend technologies

that serve as the basis with CSS and functionality that is implemented using JavaScript.

JavaScript. is the programming language that can be used to execute complex

methods. With the use of JavaScript, the app not only provides better UI/UX but can alter

and change the CSS and HTML as well as validate, manipulate and calculate data.

Planning Xss in which the developers create a list of needs to be accomplished to

complete this project. They intended to collect data from different people with the age limit

of 18 - 40 above. The developers intended to examine and analyze the user acceptance of

the system using a technology acceptance model framework.

The study offers hotels opportunities to reopen or continue operations responsibly

and safely to minimize their risks as it helps the business make the right choices regarding

consumer and performance that improve a lot of profitability.

Requirement Analysis

1. Analysis of the Existing System

Yellowbell Hotel is located at Batangas City, known as the "Industrial Port

City of CALABARZON". Yellowbell Hotel is perfect for cultural travelers. This

hotel features its modern interior, spacious lobby, an elevator, wheelchair

accessibility, a 24-hour front desk, room service, and security. Moreover, a shared

35
lounge TV area, baggage storage, parking, and designated smoking area are also

available for guests' convenience.

Due to the pandemic, hotel protocols have changed. Covid-19 is known to

spread primarily from direct contact with people. And with Yellowbell Hotel, they

currently used a manual way of handling paper records through the included

physical reservation, that’s why they developed a mobile application for more

adoptive resolution and safety conditions without any physical contact happening.

Through the Mobile Based Hotel Reservation System, a user only needs to

download this application and sign in for more information and less hassle.

36
1.1 Fishbone Analysis

Figure 3. Fishbone Analysis

The developers used Fishbone Analysis that can help in brainstorming to identify

possible causes of a problem and in sorting ideas into useful categories. A fishbone

diagram is an identified look at cause and effect. It is a more structured approach than

some other tools available for brainstorming the causes of a problem. A fishbone diagram

helps identify possible causes for a problem that might not otherwise be considered by

directing the team to look at the categories and think of alternative causes. Include team

members who have personal knowledge of the processes and systems involved in the

problem or event to be investigated.

37
1.2 System Boundary

Figure 4. System Boundary

Figure 3 shows the system boundary of the system which is exclusive to the

customers and admin of the Hotel. It consists of three important boundaries that are

specific to its area like Technical System Boundary which includes a physical system. The

Organizational Boundary includes the system beneficiaries help center office/services and

management also. The Hotel database used has all the records and information of the user

who is using this system. The total system boundary is limited to the customers of hotels

in the Batangas city area only.

38
1.3 Hardware Requirements

Table 1 shown below is the hardware needed for making and implementing the

system project system.

Table 1. Hardware Requirements

Laptop

Hardware Description

Device Name Acer Nitro 5

Processor Ryzen 5-4600H (3.0GHZ)

Memory 8GB Ram

Back-up Space 256GB Rom

1.4 Software Requirements

Table 2 shown below is the software used to develop the system project to its

outcome.

Table 2. Software Requirements

Operating System Windows 10

Programming Tool/ Code Editor Visual Studio 2019

Database server SQLite

Internet browser Google Chrome

Design Tool Xaramine

39
1.5 Functional Requirements

The following functional requirements define the things that the system needs to

accomplish in this study.

Customer

Customer Sign-in

❏ The customer is required to have a Gmail account, to gain

access to the system.

❏ After the account has been registered to the system, the

home interface of the application would pop up, where the

details about the hotel are indicated.

Customer Booking

❏ Customers can book or reserve rooms in the system any time

and anywhere.

❏ Customers can set the date, time duration, and a number of

people included in the booking.

❏ Customers can also cancel reservations within 48 hours.

❏ If the booking is invalid and rejected, automatically cancel

the booking.

Make Transaction

❏ Customers can manage their transactions if the booking is

valid and confirmed.

40
❏ Request payment is done and send a proof via mobile

application.

❏ Payment should be done within 48 hours via attaching a

screenshot of payment in the system.

View Transaction

❏ Every transaction made by the customer is recorded and can

be viewed.

Admin

Admin Log-in Form

❏ The administrator shall be able to manage and control all the

information inputted by the guests and clients in the system.

❏ The administrator checks the authentication of each user and

determines whether the user’s credentials match the

credentials in the database before gaining access to the

system.

❏ The administrator can update the information in the system.

❏ The administrator can manage the reservation anytime,

anywhere.

41
Update Pricing

❏ The administrator can update the price of the room indicated

on the customer’s side. This would help the customer to

know the updated price of rooms available at the hotel as

early as possible.

View Customer Transaction

❏ The administrator can view all of the customer transactions

generally which the admin easily searches for validation

purposes just in case the customer inquired about a

reservation online at the hotel and restaurant.

View Client/Member List

❏ The administrator can view clients who used the system for

making transactions, Full name, Email Address, and

Registration date are included.

Front Desk Staff

❏ The front desk staff take the action to assist the customer in a

message through messages, this would help the customer to know

what status they have in booking rooms.

42
1.6 Non-Functional Requirements

The following non-functional requirements are considered to create a better

outcome of the study.

Accessibility

❏ The system should be accessible to the application.

❏ The system notifies and updates customers about the status of their

accounts online.

❏ The system can be accessed by anyone who wants to book at

Yellowbell Hotel using a Gmail account to register.

Usability

❏ The system shall be user-friendly, informative, and responsive.

Accuracy

❏ The system automates and maintains the information and records of

clients.

Maintainability

❏ The system shall ensure that the data is protected from unauthorized

access.

Security

❏ One user cannot access the other user’s account.

❏ Only the authenticated user is allowed to access the system.

43
1.7 Multiple Constraints and Trade-offs

The designers have considered a few arrangements of advancement devices with

thought to the programmer circumstance and framework prerequisites. Requirements are

viewed as cycles that limit the framework advancement which should be neglected. This

part gives the considered sets of advancement devices in building up the system.

Table 3. Trade-offs and Constraints of Multiple Criteria

Design Development Tools Software Used

1 C# Visual Studio 2022


Xamarin

2 JavaScript NetBeans IDE 8.2


HTML
CSS
MySQL

3 C++ Code::Blocks cross-


CSS platform IDE 17.12
HTML
MySQL

2. Design

In this area, the programmer introduces the endless supply of best-fit plans to be

utilized in the development of the system.

For table 4, the design was assessed depending on its Cost, Performance, Compatibility,

and Knowledge of the programmer to the considered improvement devices. It shows the

worth pace of each design as per standards. 5 being the most worthy rate while 1 being the

44
least. The most worthy absolute of significance would be held as the fittest plan to be

utilized.

Table 4. Criteria Rating

Desi Compatibi Performa Knowle Total


gn lity nce dge

1 5 5 4 14

2 4 5 3 12

3 4 4 3 11

As demonstrated in table 4, Design 1 has the most noteworthy pace of significant

worth in practically the entirety of the measures which is held as the last plan to be

utilized by the programmer.

45
2.1 System Design/Architecture

2.1.1 Use Case Diagram

Figure 5. Use Case Diagram

46
The figure shown above is every function of the system that customers and admin

encountered in opening the application and it is explained below.

● Log-in- Customers can access the system using their Google account with this

function in the same situation for the admin but the difference is admin can just log

in to the system because it is programmed well inside the system. Both be verified

first if it is legit and if not an error message appears.

● Make Transaction- Customer can now proceed to make a transaction by booking

some of the available rooms at the hotel and validating payment through

transaction ID and screenshot.

● Notification- Customers are notified every time it is done using one of the

functions of the system and every update coming on the application is the same as

for the admin.

● Update Room Price- Admins are authorized to change the prices of rooms that are

indicated on the mobile side of the system.

● View Client/Member List- In this case, the admin can monitor and view users

who are using the mobile base of the application.

47
2.1.2 Sequence Diagram

Figure 6. Sequence Diagram

48
The figure shown above tells the cycle of the best way to utilize the application.

The customer needs to log in first using their google account to gain access to the

homepage of the mobile application. The system would get their full name, email, and

lastly their registered date that they enter on the system. The system can also make a

transaction which is called booking to book or reserve rooms for the customer of the hotel

online. In terms of payment through the use of bank transfer which can be done outside

the system, the customer can attach its receipt to verify their booking done in the system.

Once the system verified their receipt the customer booking would be accepted and can be

viewed in the booking area next to the home at the home interface of the online application.

If the customer didn’t attach its receipt of payment within 48hours the system can terminate

its booking process and mark rejected.

49
2.1.3 Data Flow Diagram

Figure 7. Data Flow Diagram

50
The figure shown above illustrates the data flow diagram of the system that tells

the interaction of the best way to utilize and shows the relation of data. First, the customer

and the admin need to log in, no need for the admin to sign in using a google account

because it is mandatory for this system to have an account for the admin yet the customer

needs it to have full access to the mobile application. After the client sign-in and it is

verified at the database, the Customer can proceed to the home interface to get the whole

information about the hotel. In the home interface, there are arrangements of selections to

perceive what functions can be utilized by the customer. Specified to the data indicated

after accessing the home interface there are two categorical data including Create booking

and view booking history, booking that is created through selecting rooms available at the

hotel, and its history made by doing transactions online. Customers can cancel their

reservations made on a specific day or time given to them. The system notified the user

using a notification function which gives an alert to the user in every data they made using

the application. The purpose of API is to connect the mobile application and desktop

application to sync data saved on the system.

51
2.2 Database Design

2.2.1 Graphical User Interface

MOBILE APPLICATION

Figure 8. Main Interface of Mobile App

This figure shown above is the first interface that may be seen by the customer once they open the

application. Using a customer’s Google account, they can access the Home Interface of the mobile

application.

52
Figure 9. Home Interface

In this figure, the customer can view all the information indicated that the hotel has.

53
Figure 10. Booking History

In this figure, the customer can view theThis booking details they made using this application.

54
Figure 11. Booking Menu

This figure shows the available room types of the hotel. The customer has the option to select for

booking.

55
Figure 12. Standard Double Room Information

This figure contains information included in the Standard Double Room. Its room facilities have

upper floors accessible by elevator, desk, linen, air conditioning, tile/Marble floor, Entire unit

wheelchair accessible, TV, telephone, Flat-screen TV, and cable channels. While its bathroom type

has free toiletries, shower, toilet, towels, and hairdryer. The room cost starts at Php 1,240.00.

56
Figure 13. Superior Twin Room Information

This figure contains information included in the Superior Twin Room. Its room facilities

have upper floors accessible by elevator, desk, linen, air conditioning, Tile/Marble floor, entire

unit wheelchair accessible, TV, telephone, Flat-screen TV, and cable channels. While its bathroom

type has free toiletries, shower, toilet, towels, and hairdryer. The room cost starts at Php 1,647.00.

57
Figure 14. Deluxe Double Room Information

This figure contains information included in the Deluxe Double Room. Its room facilities

have upper floors accessible by elevator, desk, linen, air conditioning, tile/Marble floor, entire unit

wheelchair accessible, TV, telephone, Flat-screen TV, and cable channels. While its bathroom type

has free toiletries, shower, toilet, towels, and hairdryer. The room cost starts at Php 1,824.00.

58
Figure 15. Selecting Date Menu

In this figure, the customer can select the length of stay they want to spend at the hotel. It

also included the cost of a stay, so the customer would know the cost they spend on.

59
Figure 16. Booking Reference Menu

In this figure, the system gives a customer a booking reference that serves as a key

concept of their booking/reservation at the hotel. It includes instructions that the customer

can follow to settle its booking that needs a proof of payment so that the system validates

its booking existence.

60
DESKTOP APPLICATION

Figure 17. Desktop Login interface

In this figure, the admin can log in to the application to validate or monitor customers

using the system. This includes a valid username and password to proceed.

61
Figure 18. Desktop Home interface

In this figure admin can edit room pricing, monitor customer booked rooms, and view

clients/members who are registered using the mobile application. Also, the admin can log out if

they want by selecting the log out button.

62
Figure 19. Room Pricing Interface

In this figure, the admin can edit and save the cost of a single type of room. This affects

the price indicated at the mobile application of the system.

63
Figure 20. View Bookings interface

In this figure, the admin can view all of the booked rooms made by the customer using

the mobile part of the system.

64
Figure 21. Booking Previewer

In this Figure, the admin can verify the proof of payment that the customer attached to

the system also its booked rooms.

65
Figure 22. Client/Member Interface

In this Figure Google account that has been registered can be seen by the admin of the

system.

66
Figure 23. Log Out Interface

In this figure, the admin can log out the account using the logout button located in the home

interface of a desktop application. If the admin clicks “Yes” it will automatically be redirected to

the login interface of the system, else if the customer clicks “No” the account of the admin is still

logged in.

67
3. Development

In this phase, reservations indicate the process and tools applied in the development of the

system.

3.1 Software

3.1.1 Operating System

Android OS can accommodate different devices to run applications across the system.

Whether your phone is Android or iOS-based. OS updates issued by the phone manufacturer to

get all the improvements and enhancements on your phone. Application Software runs or executes

as per user request. Without a working structure, application programming can not be introduced.

Coming up next are Mozilla Firefox, Opera, Google chrome. It keeps the PC framework from

unapproved access and gets the assets, data, and information like Microsoft Windows, Linux,

Unix, DOS.

3.1.2 Web/Mobile Platform

Mobile Application is to be used for the development of this system. .Net Framework is a

product improvement stage created by Microsoft for building and running Windows applications.

It may very well be utilized to make both Form-based and Web-based applications.

3.2 Database

The data may be accessed easily and regulate users. C# may be used in the SQL Server

database to construct records to do the backend work.

68
3.3 Subscription

Subscription requires a user to sign up requirements needed to verify an account.

3.4 Hardware Capable of Development

● Desktop or Smartphone

● Memory RAM 8GB

● 32 or 64 bit Operating System

4. Testing

The arrangement of testing is performed to arrive at the hundred percent use of pictures of

the ideal utilitarian necessities of the application. This part likewise presents the assessment system

on the application led through a review. The designers give the survey to its objective respondents:

Hotel guests age 18 and above. The assessment structure can be utilized in the assessment

framework's adequacy and productivity to the client.

69
Additionally, scaling can be utilized to address their input. The designers utilize ISO

20501:2011 models in the assessment of the application. These were:

● Reliability

This stage helps the developer in guaranteeing that the system program reliably and works

appropriately in each condition. Every segment of the framework should be solid and bug-allowed

to deliver similar outcomes.

● Functionality

This stage helps the engineer in deciding and assessing the usefulness, precision, propriety,

and culmination of a system module inconsistency with client necessities. Symbols should be

tried to guarantee that they work appropriately and give the ideal outcomes. The back-end

measure should be checked to guarantee that it doesn't come up short or cause framework

blunders, particularly after organization.

● Usability

The created framework is utilized if all the framework necessities are working

appropriately and can be utilized for future execution.

4.1 Testing Procedure

This phase presents the detailed procedure of testing they would execute. It is the process

of evaluating a system or its component(s) with the intent to find whether it satisfies the specified

requirements or not. The testing period is based on the agile development approach which

specifies an incremental approach to testing. Testing would be done repeatedly until satisfied.

70
Table 5. Testing Procedure

User Type Testing Procedure

Customer -Test if the customer can access the system.

Login Account -Test if the mobile application keeps updating.

-Test if the customer can make and view


his/her transactions.

-Test if the customer can redeem rewards.

-Test if the notification was shown.

Admin -Test if the system admin can add and manage


the configurations of the mobile application.
Yellowbell Hotel
- Test if the system admin can view reports to
fulfill certain job duties that help them to make
decisions and make business plans.

Hotel Owner -Test if the hotel owner can add and update
business information along with amenities
provided and pictures of service.

71
4.1.1 Data Gathering

A procedure of social event and estimating data on factors of interest in a laid out

methodical design that empowers one to respond to expressed exploration questions, test theories,

and assess results. In every study, data gathering is important and must be performed in an

organized form. To conduct this, they provide a questionnaire to collect data from respondents.

Technology Acceptance Model ( TAM ) framework be used to gather data through Google form.

5. Deployment

5.1 Deployment Plan

In this phase, they would provide the requirements that need to be done through a mobile

application. A user must provide all details needed to manipulate the system. They implement rules

and regulations for the user’s perceptions.

They also establish a software and hardware matrix that would be needed to be considered

by the beneficiary to complete the deployment of the system.

72
5.2 Software Matrix for the Implementation of the System: MOBILE APPLICATION

Table 6. Software Matrix

Prerequisite Version Prerequisite Minimum

Google play store ( Standard and the latest Standard


application) version

Google play store(web Standard and the latest Standard


base) version

Software Requirements: OPERATING SYSTEM

Operating System Android Code Name API level

Android 6 Marshmallow 23

Android 7 Nougat 24-25

Android 8 Oreo 26-27

Android 9 Pie 28

Android 10 Android 10 29

Android 11 Android 11 30

Table 7. Software Requirements

73
5.3 Hardware Matrix for the Deployment of the System

Table 8. Hardware Matrix

Hardware Minimum Requirements Suggested Requirements

Android Phone Version 6.1 Version 6.0 or Higher

Storage (Random Access 2 GB RAM 6 GB RAM or Higher


Memory based)

Storage (Random Only 6 GB ROM 8 GB ROM or Higher


Memory based)

Processor 1 GHz 1.4 GHz or above

6. Risk Management Plan

Risk Assessment Matrix, otherwise called a Probability and Severity hazard structure, is

intended to assist with limiting the likelihood of expected gamble to streamline project execution.

The dangers were separated relying upon their probability and their belongings or the degree of

harm; with the goal that the most dire outcome imaginable was not entirely set in stone initially.

74
6.1 RISK MANAGEMENT PROCESS

The risk management approach determines the process, techniques, tools, and team roles

and responsibilities for a specific project.

Table 9. Risk Management Process

RISK RISK RATE RISK CONTROL MITIGATION


MEASURES
( low / mid / high

Answering survey high They were able to ask Make sure that the
again the respondent respondent
/questionnaire untruly. to answer the survey/ understands the use of
the system.
questionnaire again if
necessary.

Money shortage high They handle first the Make sure that the
things that need to be cost is within a target
solved immediately. budget to spend.

Loss of internet mid They suggested using Make sure to have a


connection at least a 4G wireless backup lease line.
provider.

75
Table 10. Risk Matrix

RISK MATRIX

SECTION IMPACTED

LIKELIHOO LOW MEDIUM HIGH EXTREME

LOW N D C A

MEDIUM D C B A

HIGH C B A A

The Risk Matrix Table showed the risk where the user could encounter. It also shows the

chances of the risk occurring, as well as the effects or impact on the system and user.

76
CHAPTER IV

Results and Discussion

This chapter presents the final output of the project model, shows and the interpretation of

the result of the data gathered. The study aims to achieve the objectives of the study as stated in

Chapter 1. This presents the designed tools being used and the system process as required in the

development of the study as well as the graphical user interface which displays different layouts

with its respective functions in the system. This also includes the different testing methods in terms

of functionality, usability, and reliability to evaluate the whole operation of the developed system.

Discussions

A. Display the past, present, and upcoming room and/or services reservations at the hotel.

77
Figure 24. Display Updated Reservation

In this figure, a user can view the past, present, and upcoming room and/or services

reservations at the hotel in the Home Interface of the mobile application, by clicking the bookings

button on the right side of the home. Each user has a different reference code to generate bookings

by the hotel administrator. The cost of the room indicated here is the total cost of stay by a user at

the hotel.

78
PENDING

● This function would appear after the user confirms his/her reservation. Pending means that

the user has no proof of payment being inputted.

VALIDATING

● If the user was done sending proof of payment within 24 hours, then the hotel administrator

changes the booking status from pending to validating in the Booking Previewer.

ACCEPTED

● After the administrator was done validating, the accepted function would appear in the user

reservation status which means that the booking reservation was accepted and confirmed by the

hotel.

REJECTED

● If the booking is invalid and rejected, automatically cancel the reservation. It would only

happen if the user does not send proof of payment within 48 hours.

CLOSED

● If the user was done staying at the hotel, then the hotel administrator changed the booking

status to closed in the Booking Previewer. It would also appear in the user reservation status.

79
B. Determine the most availed rooms, even which month has the most reservation made and

canceled reservations.

Figure 25. View Dashboard

In this figure, the hotel administrator determined the most availed rooms, even which

month has the most reservations made and canceled reservations. This dashboard includes the

room type, reference code, date of stay, total cost, a list of people who booked, mobile number,

and status of the reservation. Standard Double Room is the most availed room at the hotel and the

month of December has the most reservation made.

80
C. Reserve or cancel a reservation at any time and anywhere in just a few taps.

Figure 26. Reserve/Cancel Reservations

In this figure, the cancellation of any reservation is valid within 48 hours. A user can set

the date, time, and duration included in the booking. The cost of stay already includes a 12%

tax change.

81
D. Upload proof of payment or bank transfer for the reservation.

Figure 27. Attach Proof of Payment

In this figure, a user can select an image of the receipt to be able to validate the payment.

The booking details would appear to be able to view the user the information he/she inputted.

82
Survey/Questionnaire Results

The study covers 100 respondents (random people) with the age range from 18 - 40 years

old above. The respondents’ records data are used for predicting that the system is perceived ease

of use, perceived usefulness, attitude toward using, and intention to use, which tested the system’s

effectiveness.

Figure 28. Age of Respondents

Respondents of all ages (18 years old to 40 above) was represented. The highest range of

respondents are within 18-25 years old that has a total of 78%, while the lowest is the respondents

within 40 years old above that has a total of 3%, and the respondents within 26-39 years old have

a total of 19%.

83
Process Flow of Data Gathering

5 – Strongly Agree

4 – Agree

3 – Neither Agree nor Disagree

2 – Disagree

1 – Strongly Disagree

Perceived Ease of Use. The extent to which a person believes it is easy to use a particular

system.

Figure 29. I believe that an online reservation system will be helpful and convenient.

In this figure, it discusses whether the reservation system is helpful and convenient. 69%

of the respondents strongly agreed that the reservation system is helpful and convenient and 29%

agreed that it does. On the other hand, there were 2% that neither agree nor disagree that the

reservation system is helpful and convenient.

84
Figure 30. Find the system easy to use and accessible anytime anywhere.

In this figure, it discusses whether the system is easy to use and accessible. 59% of the

respondents strongly agreed that the system is easy to use and accessible and 37% agreed that it

does. On the other hand, 29% neither agree nor disagree that the system is easy to use and

accessible.

Figure 31. Learning to use the system would be easy for me to handle.

In this figure, it discusses whether learning to use the system would be easy to handle. The

question received mostly positive feedback as 57% strongly agreed that it was easy for them to

learn to use the system, while 38% agreed and 5% of the respondents disagreed.

85
Figure 32. My interaction with online reservations is clear and understandable.

In this figure, it discusses whether the interaction with online reservations is clear and

understandable. 57% of the respondents strongly agreed that the interaction with online reservation

systems is clear and understandable and 36% agreed that it does. On the other hand, there were

7% that neither agree nor disagree that the interaction with online reservations is clear and

understandable.

86
Figure 33. I would find the system improves my skills in using online technology.

In this figure, it discusses whether the system improves the skills in using online

technology.70% of the respondents strongly agreed that the system improves the skills in using

online technology. 28% agreed that it does. On the other hand, there were 2% that reservations

neither agree nor disagree that the system improves the skills in using online technology.

Perceived Usefulness. The extent to which an information system can assist in improving

performance for users relates to the degree to which the customer believes the system can increase

their efficiency on the job.

87
Figure 34. Using online reservations will save my time and less hassle.

In this figure, it discusses whether the online reservation will save time and less hassle.

80% of the respondents strongly agreed that the online reservation will save time and less hassle

and 19% agreed that it does. On the other hand, there was 1% that reservations neither agree nor

disagree that the online reservation will save time and less hassle.

Figure 35. Using this system is more helpful for me to avoid physical contact due to the

pandemic.

In this figure, it discusses whether the system is more helpful to avoid physical contact due

to pandemic. 81% of the respondents strongly agreed that the system is more helpful to avoid

physical contact due to pandemic and 19% agreed that it does.

88
Figure 36. Using the system would allow me to easily find rooms and their prices.

In this figure, it discusses whether the system would allow easy find rooms and their prices.

75% of the respondents strongly agreed that the system would allow easy find rooms and their

prices and 23% agreed that it does. On the other hand, there were 2% that neither agree nor disagree

that the system would allow easy find rooms and their prices.

Figure 37. Using this system increases my productivity when making online purposes.

In this figure, it discusses whether the system increases productivity when making online

purposes. 70% of the respondents strongly agreed that the system increases productivity when

making online purposes and 25% agreed that it does. On the other hand, there were 5% that neither

agree nor disagree that the system increases productivity when making online purposes.

89
Figure 38. Using this system is more than interesting.

In this figure, it discusses whether using the system is more interesting. 70% of the

respondents strongly agreed that using the system is more than interesting and 24% agreed that it

does. On the other hand, there were 6% that neither agree nor disagree that using the system is

more than interesting.

Attitude Toward Using. Alludes to an actual inclination that is communicated by assessing a

specific element with some level of favor or disgrace.

90
Figure 39. Online reservation is faster rather than manual handling of records.

In this figure, it discusses whether an online reservation is more faster rather than

manual handling paper records. 67% of the respondents strongly agreed, while 26% agreed

and 7% neither agreed nor disagreed.

Figure 40. I have a positive perception of using this system.

In this figure, it discusses whether the respondents have a positive perception of to

make using the system. Almost 60% of the respondents strongly agreed, while 34%

agreed another 5% neither agreed nor disagreed and 1% disagree.

91
Figure 41. experienced bad/negative when using online processes.

In this figure, it discusses whether the respondents have experienced bad/negative

when using online processes. 16% of the respondents strongly disagreed followed by 17%

who disagreed, while 20% strongly agreed and 24 % of the respondents neither agreed nor

disagreed.

Figure 42. Online reservation is more detailed and reachable

In this figure, it discusses whether the online reservation is more detailed and

reachable. Almost 48% of the respondents strongly agreed, while 41 % agreed and 11%

neither agree nor disagree.

92
Figure 43. I think using this system would be a great beneficial for me

In this figure, it discusses whether the respondents think that using the system would

be a great benefit for them. 56% of the respondents strongly agreed, while 39% agreed and

5% neither agreed nor disagreed.

Intention to Use. Refers to the strength of the prospective adopter’s intention to make or

to support the adoption decision.

93
Figure 44. I plan to use the system

In this figure, it discusses whether the respondents plan to use the system. 40% of the

respondents strongly agreed, while 44% agreed and 7% neither agreed nor disagreed.

Figure 45. I plan to make reservations often.

In this figure, it discusses whether the respondents plan to make reservations often. 44%

strongly agreed, while 40% agreed, and another 16% neither agreed nor disagreed.

94
Figure 46. I intended to use the system for my private purposes

In this figure, it discusses whether the respondents intended to use the system for their

private purposes. 58% strongly agreed, while 35% agreed and 7% neither agreed nor disagreed.

Figure 47. I will always use the system in making reservations at the hotel.

In this figure, it discusses whether the respondents will always use the system to make a

reservation at the hotel. Almost 51% of the respondents strongly agreed, while 34% agreed and

13% neither agree nor disagree, another 2% disagree.

95
Figure 48. I prefer to use the system rather than through searching inquiries

In this figure, it discusses whether the respondents prefer to use the system rather than

through searching inquiries. 57% strongly agreed, while 38% agreed and 5% neither agreed on

reservations nor disagreed.

96
CHAPTER V

SUMMARY, CONCLUSIONS, AND RECOMMENDATIONS

This chapter presents the summary of findings, conclusions, and recommendations from

the analysis of data gathered by the researchers in the developed system.

Summary of Findings

This study aims to design and develop an application Mobile-Based Hotel Reservation

System for Yellowbell Hotel Batangas City. It gives updated information that displays past,

present, and upcoming reservations at the hotel and determines the most availed rooms/services

and even which month has the most reservation/ canceled made.

The Agile Methodology was used in the study since it focuses on the frequent modification

as well as the capability to adapt to recent changes. Other designs and procedures were used to

visualize the study. That diagram helps the researchers to identify and clearly understand the

functionalities of the system. Various research studies with common interest were elaborated and

analyzed that focused on hotel reservations locally and internationally. The research study

provided a strong foundation in the developed study.

97
The developed system is beneficial not only to the hotel itself but also to the hotel owner,

hotel staff, and hotel guests. Moreover, the developed recommender system was tested concerning

its usability, functionality, and reliability.

After making the system and analyzing survey questionnaires, the researchers came up with the

following findings:

1. The developers were able to create a mobile-based reservation system that was made

accessible for a number of people through a hosting platform and also a desktop application

for monitoring the available rooms at the hotel.

2. By observing the data gathering, the developer had the option to design a UI that the

clients would see as simple to explore.

3. The system was able to reserve, cancel reservations and also give and receive data

through the platform.

Conclusions

After analyzing the survey questionnaire from the user testing, the researchers end up with

the following conclusions:

1. The system keeps generating booking references done by the customer. Setting Date,

Time, Duration, and a number of people functioned well in booking rooms/reservations.

The user can easily select rooms to book at the system, it shows the details of rooms

available.

98
2. The respondents have agreed that the system developed is fully functional, quick, efficient,

and is safe to browse, all of which are important aspects in a mobile and desktop

application.

3. The system had the option to hold records and information of both the clients and the hotel

operator. This would be of incredible assistance to both parties as the proprietors would

have a publicizing stage and a method for tracking down visitors while for the clients this

would assist them with observing a motel that suits their necessities.

Recommendations

After determining all the results and findings, the researchers have the following

recommendations for the system:

1. Since the mobile application can only be used by an Android user, it is suggested

that future researchers allow IOS users as well.

2. Improved the design and functionality of the mobile application and the desktop

application.

3. Include features that can make the application easier to use for both the client and the

administrator.

Bibliography :

99
Almeida, F., Almeida, J., Mota, M. (2019). Perceptions and Trends of Booking Online Payments

in Tourism, Journal of Tourism and Services 10(18): 1-15.

https://doi.org/10.29036/jots.v10i18.39

Mayleen Dorcas B. Castro, and Eunice B. Custodio (August 2016). Managing Customer

Reservations of BulSU Hostel through the Development of Online Information and Reservation

System Journal of Advances in Information Technology Vol. 7, No. 3,

http://www.jait.us/uploadfile/2016/0901/20160901021126937.pdf

Ruben A. Parazo (August 30, 2016). Online Reservation and Monitoring System for Tarlac

College of Agriculture Dormitories Tarlac Agricultural University (TAU) (Formerly the Tarlac

College of Agriculture) Proceedings Journal of Education, Psychology and Social Science

Research, Vol 03:Iss 02:Pg 130 (2016)

Tao, Meng; Nawaz, Muhammad Zahid; Nawaz, Shahid; Butt, Asad Hassan; Ahmad, Hassan

(2018). Users’ acceptance of innovative mobile hotel booking trends: UK vs. PRC. Information

Technology & Tourism, (), –.doi:10.1007/s40558-018-0123-x

Sooksatit, K. (2016). Customer Decisions on Hotel Booking via Mobile Phone and Tablet

Applications: A Case Study of Luxury Hotels in Bangkok. Managing the Asian Century, 87–102.

doi:10.1007/978-981-10-0087-4_6

Wang, Dan; Xiang, Zheng; Law, Rob; Ki, Tang Pui (2015). Assessing Hotel-Related

Smartphone Apps Using Online Reviews. Journal of Hospitality Marketing & Management, (),

150527102920000–. doi:10.1080/19368623.2015.1012282

100
Shivam Tripathi and Pranshu Dixit ( April 2020 ). "A Study on Adoption of Digital Payment

through Mobile Payment Application regarding Gujarat State" Published in International Journal

of Trend in Scientific Research and Development (ijtsrd), ISSN: 2456-6470, Volume-4 | Issue-3,

pp.1110-1115, URL: https://www.ijtsrd.com/papers/ijtsrd30790.pdf

Vahdat, Arash; Alizadeh, Ali; Quach, Sara; Hamelin, Nicolas (2020). Would you like to shop via

mobile app technology? The technology acceptance model, social factors and purchase intention.

Australasian Marketing Journal (AMJ), (), S1441358220300021–.

doi:10.1016/j.ausmj.2020.01.002

Yana Padua (2016). Online Billing and Reservation System

http://www.studymode.com/essays/658-Apartelle-Online-Reservation-System-375787.html

Lee, Jin-Soo; Tsang, Nelson; Pan, Steve (2015). Examining the differential effects of social and

economic rewards in a hotel loyalty program. International Journal of Hospitality Management,

49(), 17–27. doi:10.1016/j.ijhm.2015.05.003

101
APPENDICES

APPENDIX A: SCHEDULE AND TIMELINE

APPENDIX B: PROJECT TEAMS AND THEIR RESPONSIBILITIES

APPENDIX C: BUDGET COST MANAGEMENT PLAN

APPENDIX D: SOURCE CODE

APPENDIX E: USER’S MANUAL

APPENDIX F: CURRICULUM VITAE

102
APPENDIX A

SCHEDULE AND TIMELINE

Schedule and Timeline

Task Activities Duration Deliverables

1 Topic Approval Jan 31 - Feb 04 -

2 Chapter 1 Feb 05 - Apr 09 1

3 Chapter 2 Apr 10 – Apr 28 2

4 Chapter 3 Apr 10 - Apr 28 1,2,3

5 Pre - Oral Defense May 20 - May 26 4

6 Development of home page 5

7 Testing

8 Project Implementation

103
APPENDIX B

PROJECT TEAMS AND THEIR RESPONSIBILITIES

Project Teams and their Responsibilities

Name Responsibility Contact Details

Cabatay, Jessa C Project Management Address: Malibayo, Batangas City


Leader, Writer of Capstone
Paper Contact number: 09530711784

Email address:
jessacabatay18@gmail.com

Serrano, Rosemarie Data Analyst and Writer of Address: Muzon 2nd, Alitagtag,
M. Capstone Paper Batangas

Contact number: 09304382566

Email address:
serranorosemarie665@gmail.com

Bayani, Jerome P. Programmer and Writer of Address: P1-382 Sta. Rita Karsada
Capstone Paper Batangas City

Contact number: 09289321400

Email address:
jeromebayani797@gmail.com

104
APPENDIX C

BUDGET COST MANAGEMENT PLAN

Budget Cost Management Plan

Payment for Panelist:

Chairman : Php 300.00 × 1 = Php 300.00

Members (2) : Php 250.00 × 2 = Php 500.00

Adviser : Php 500.00 × 1 = Php 500.00

Grammarian : Php 500.00 × 1 = Php 500.00 (for Capstone 2)

Food Budget : Estimated budget cost =

SMS API/Server, 100 credits + Sender ID

Php 166.67 per month / 3 members = Php 55.56 each member per month

Php 166.67 per month x 12 months = Php 2,000.04

Hosting

Php 161.17 per month / 3 members = Php 53.72 each member per month

Php 161.17 per month x 12 months = Php 1,934.04

Domain

Php 43.5 per month / 3 members = Php 14.05 each member per month

Php 43.5 per month x 12 months = Php 522.00

Main Server

105
Php 41.67 per month / 3 members = Php 13.89 each member per month

Php 41.67 per month x 12 months = Php 500.04

Internet Connection

Internet Connection

Php 1,625 per month x 1 member = Php 1,625

1,625.00 x 12moths = 19,500

Php 750 per month x 1 member = Php 1,500

750.00 x 12months = 9000.00

Php 500 x 1 member

500.00 x 12 months = 6000.00

Total = 34,500

Electricity

500 Php per month x 3 members = Php 1500.00

Php 1500.00 x 12 months Php 18,000.00

106
APPENDIX D

SOURCE CODE

<?php "dbname" =>

"yellowbell_db"

]);
use Phalcon\Di\FactoryDefault;

});
use Phalcon\Db\Adapter\Pdo\Mysql as

PdoMySql;

<?php

$di = new FactoryDefault();

$di->set("db", function() { use Phalcon\Loader;

return new PdoMySql([

"host" => $loader = new Loader();

"192.168.0.1",
$loader->registerNameSpaces([

"username" => "root",


"YellowbellHotelAPI\Models" =>

"password" => __DIR__ . "/models/",

"r00t_Admin###",

107
"YellowbellHotelAPI\Services" =>

__DIR__ . "/services/"
try {

]);
$service = new

$loader->register(); Services\BookingService();

<?php

$data = $app->request-

>getJsonRawBody();
use Phalcon\Http\Response;

use YellowbellHotelAPI\Services;

$response->setStatusCode(200,
use Phalcon\Di\FactoryDefault as fd;
"OK");

$response->setJsonContent([

require_once
"status" => 200,
$_SERVER['DOCUMENT_ROOT']

.'/services/v1/booking_service.php'; "message" => null,

"data" => $service-

>generateBookingRecord($data)
$app-

>post('/v1/booking/generate_booking_recor ]);

d', function() use($app) {


} catch (Exception $e) {

$response = new Response();

108
$response->setStatusCode(500, use Phalcon\Di\FactoryDefault as fd;

"Internal Server Error");

$response->setJsonContent([
require_once

"status" => 500, $_SERVER['DOCUMENT_ROOT']

.'/services/v1/login_service.php';
"message" => "An internal server

error has occurred. Please contact the

developer at
$app->post('/v1/login/authenticate_g-
support@skyenginetechnologies.xyz",
user', function() use ($app) {

"data" => $e->getMessage()


$response = new Response();

]);

}
try {

$service = new

return $response; Services\LoginService();

});

<?php $data = $app->request-

>getJsonRawBody();

use Phalcon\Http\Response;

use YellowbellHotelAPI\Services;

109
$response->setStatusCode(200, ]);

"OK");
}

$response->setJsonContent([

"status" => 200,


return $response;

"message" => null,


});

"data" => $service-


<?php
>registerOrAuthenticateGoogleUser($data)

]);

use Phalcon\Http\Response;
} catch (Exception $e) {

use YellowbellHotelAPI\Services;
$response->setStatusCode(500,

"Internal Server Error"); use Phalcon\Di\FactoryDefault as fd;

$response->setJsonContent([

"status" => 500, require_once

$_SERVER['DOCUMENT_ROOT']
"message" => "An internal server
.'/services/v1/room_service.php';
error has occurred. Please contact the

developer at

support@skyenginetechnologies.xyz",
$app-

"data" => $e->getMessage() >get('/v1/room/request_price/{roomId:[0-

9]+}', function($roomId) {

110
$response = new Response(); "status" => 500,

"message" => "An internal server

error has occurred. Please contact the


try {
developer at

$service = new support@skyenginetechnologies.xyz",

Services\RoomService();
"data" => $e->getMessage()

]);

$response->setStatusCode(200,
}
"OK");

$response->setJsonContent([

return $response;
"status" => 200,

});
"message" => null,

<?php
"data" => $service-

>getRoomPrice($roomId)

]); use Phalcon\Http\Response;

} catch (Exception $e) { use YellowbellHotelAPI\Services;

$response->setStatusCode(500, use Phalcon\Di\FactoryDefault as fd;

"Internal Server Error");

$response->setJsonContent([

111
require_once "data" => $service-

$_SERVER['DOCUMENT_ROOT'] >getRoomPrice($roomId)

.'/services/v1/room_service.php';
]);

} catch (Exception $e) {

$app-
$response->setStatusCode(500,
>get('/v1/room/request_price/{roomId:[0-
"Internal Server Error");
9]+}', function($roomId) {
$response->setJsonContent([
$response = new Response();

"status" => 500,

"message" => "An internal server


try {
error has occurred. Please contact the

$service = new developer at

Services\RoomService(); support@skyenginetechnologies.xyz",

"data" => $e->getMessage()

$response->setStatusCode(200, ]);

"OK");
}

$response->setJsonContent([

"status" => 200,


return $response;

"message" => null,


});

112
<?php $response->setStatusCode(200,

"OK");

$response->setJsonContent([
use Phalcon\Http\Response;

"status" => 200,


use YellowbellHotelAPI\Services;

"message" => null,


use Phalcon\Di\FactoryDefault as fd;

"data" => $service-

>getMySqlVersion()

require_once
]);
$_SERVER['DOCUMENT_ROOT']

.'/services/v1/test_service.php'; } catch (Exception $e) {

$response->setStatusCode(500,

"Internal Server Error");


$app->get('/v1/test/mysql/version',

function() { $response->setJsonContent([

$response = new Response(); "status" => 500,

"message" => "An internal server

error has occurred. Please contact the


try {
developer at

$service = new support@skyenginetechnologies.xyz",

Services\TestService();
"data" => $e->getMessage()

113
]); {

} $sqlQry = "SELECT

sf_generate_booking_record($bookingData-

>BookedByMemberID, $bookingData-

return $response; >RoomID, '$bookingData->ReferenceCode',

'$bookingData->StartDate', '$bookingData-
});
>EndDate', $bookingData->TotalCost,
<?php
'$bookingData->MobileNo');";

namespace YellowbellHotelAPI\Services;
$conn = fd::getDefault()->get("db");

use Phalcon\Mvc\Model\Resultset\Simple
return $conn-
as ResultSet;
>fetchColumn($sqlQry);

use Phalcon\Di\FactoryDefault as fd;


}

class BookingService
<?php

function
namespace YellowbellHotelAPI\Services;
generateBookingRecord($bookingData)

114
use Phalcon\Mvc\Model\Resultset\Simple }

as ResultSet;
}

use Phalcon\Di\FactoryDefault as fd;


<?php

class LoginService
namespace YellowbellHotelAPI\Services;

function
use Phalcon\Mvc\Model\Resultset\Simple
registerOrAuthenticateGoogleUser($userDat
as ResultSet;
a)

use Phalcon\Di\FactoryDefault as fd;


{

$sqlQry = "SELECT

sf_register_or_authenticate_google_user('$u class RoomService

serData->GID', '$userData->FullName',
{
'$userData->Email');";
function getRoomPrice($roomType)

{
$conn = fd::getDefault()->get("db");
$sqlQry = "SELECT

sf_get_room_price($roomType);";

return $conn-

>fetchColumn($sqlQry);

115
$conn = fd::getDefault()->get("db"); {

$sqlQry = "SELECT VERSION();";

return $conn-

>fetchColumn($sqlQry);
$conn = fd::getDefault()->get("db");

}
return $conn-

<?php >fetchColumn($sqlQry);

namespace YellowbellHotelAPI\Services; }

using System;

use Phalcon\Mvc\Model\Resultset\Simple using System.Collections.Generic;

as ResultSet;
using System.Text;

use Phalcon\Di\FactoryDefault as fd;


using Xamarin.Forms;

class TestService
namespace YellowBellHotelHRS.Controls

{
{

function getMySqlVersion()
public class JustifiedLabel : Label

116
{ namespace

YellowBellHotelHRS.Enumerables

{
}

public enum RoomType


}

{
namespace

YellowBellHotelHRS.Enumerables STANDARD_DOUBLE = 1,

{ SUPERIOR_TWIN = 2,

public enum BookingStatus DELUXE_DOUBLE = 3

{ }

PENDING = 1, }

VALIDATING = 2, using System;

ACCEPTED = 3, using System.Collections.Generic;

REJECTED = 4, using System.Linq;

CLOSED =5 using YellowBellHotelHRS.Enumerables;

} namespace YellowBellHotelHRS.Models

117
public class BookingData namespace YellowBellHotelHRS.Models

{ {

public int BookingID { get; set; } public class GoogleUser

public int RoomID { get; set; } {

public string BookingReferenceCode public int ID { get; set; }

{ get; set; }
public string GID { get; set; }

public double Price { get; set; }


public string FullName { get; set; }

public IEnumerable<DateTime>
public string Email { get; set; }
ReservedDateCollection { get; set; }

}
public string ContactNumber { get;

set; } }

public double TotalCost => Price * <?xml version="1.0" encoding="utf-8" ?>

ReservedDateCollection.Count();
<ContentPage

xmlns="http://xamarin.com/schemas/2014/f

orms"
public BookingStatus BookingStatus

{ get; set; }

xmlns:x="http://schemas.microsoft.com/win
}
fx/2009/xaml"

118
xmlns:m="clr- IsRefreshing="{Binding IsBusy,

namespace:YellowBellHotelHRS.Models" Mode=OneWay}"

xmlns:vm="clr- RefreshCommand="{Binding

namespace:YellowBellHotelHRS.ViewMod RefreshCommand}">

els"
<ListView.ItemTemplate>

<DataTemplate
x:Class="YellowBellHotelHRS.Views.Book
x:DataType="m:BookingData">
ingPageView">

<ViewCell>

<Grid Padding="10,5">
<ContentPage.BindingContext>

<Frame
<vm:BookingPageViewModel />
BackgroundColor="LightSlateGray"

</ContentPage.BindingContext>
CornerRadius="10"

<ContentPage.Content>
HasShadow="True">

<ListView ItemsSource="{Binding

BookingCollection}"
<Frame.GestureRecognizers>

HasUnevenRows="True"

SeparatorVisibility="None" <TapGestureRecognizer

Tapped="TapGestureRecognizer_Tapped"
IsPullToRefreshEnabled="True"
/>

119
</Frame.GestureRecognizers> FontSize="Medium"

<StackLayout

Orientation="Horizontal"> FontAttributes="Bold"

<Label

Text="{Binding BookingReferenceCode}" TextColor="White" />

VerticalOptions="Start"
<Label

Text="{Binding BookingStatus}"

FontAttributes="Bold,Italic"

VerticalOptions="Center"

HorizontalOptions="StartAndExpand" />

TextColor="WhiteSmoke"/>

<StackLayout> </StackLayout>

<Label </StackLayout>

Text="{Binding Price, StringFormat=PHP


</Frame>
{0:0.00}}"

</Grid>

VerticalOptions="Center" </ViewCell>

120
</DataTemplate>

[XamlCompilation(XamlCompilationOption
</ListView.ItemTemplate>
s.Compile)]

</ListView>
public partial class BookingPageView :

</ContentPage.Content> ContentPage

</ContentPage> {

using System; public BookingPageView()

using System.Collections.Generic; {

using System.Linq; InitializeComponent();

using System.Text; }

using System.Threading.Tasks;

private void

TapGestureRecognizer_Tapped(object
using Xamarin.Forms;
sender, EventArgs e)
using Xamarin.Forms.Xaml;
{

try
namespace YellowBellHotelHRS.Views
{
{

121
throw new

Exception("UNHANDLED_EXCEPTION_ xmlns:x="http://schemas.microsoft.com/win

0x00e1656e45f18ec6747f5a8496fd39b50b3 fx/2009/xaml"

8396d");
xmlns:vm="clr-

} namespace:YellowBellHotelHRS.ViewMod

els"
catch (Exception ex)

xmlns:local="clr-
{
namespace:YellowBellHotelHRS.Controls"

Application.Current.MainPage.DisplayAlert
x:Class="YellowBellHotelHRS.Views.Hom
("", ex.Message, "OK");
ePageView">

}
<ContentPage.BindingContext>

}
<vm:HomePageViewModel />

}
</ContentPage.BindingContext>

<?xml version="1.0" encoding="utf-8" ?>

<ContentPage
<ContentPage.ToolbarItems>
xmlns="http://xamarin.com/schemas/2014/f

orms"

122
<ToolbarItem Text="Logout"

Command="{Binding LogoutCommand}" Margin="0,0,0,30" />

/>

</ContentPage.ToolbarItems>
<!--#region Restaurants -->

<Grid

<ContentPage.Content> RowDefinitions="Auto,Auto,Auto,Auto"

<StackLayout>

ColumnDefinitions="Auto,Auto,Auto"
<Image Source="banner.png"

Margin="5" /> Margin="0,0,0,30">

<Image Grid.Row="0"

Grid.Column="0"
<ScrollView>

Source="restaurant.png"
<StackLayout Padding="10">

HeightRequest="25"
<local:JustifiedLabel

Text="{Binding HotelDescription}" Margin="0" />

TextColor="Black"
<Label Grid.Row="0"

Grid.Column="2"

HorizontalTextAlignment="Start"
Text="Restauntants"

123
TextColor="Black" Text="• F. Baylosis

Crispy Pata &amp; Chicken (700m)"


FontAttributes="Bold"

TextColor="Black" />
Margin="0,1.25,0,0" />

</Grid>

<!--#endregion-->
<Label Grid.Row="1"

Grid.Column="2"

Text="• Shakey's <!--#region Amusement -->

(650m)"
<Grid

TextColor="Black" /> RowDefinitions="Auto,Auto,Auto,Auto"

ColumnDefinitions="Auto,Auto,Auto"
<Label Grid.Row="2"

Grid.Column="2" Margin="0,0,0,30">

Text="• Yellow Cab <Image Grid.Row="0"

Pizza (700m)" Grid.Column="0"

TextColor="Black" />

Source="amusement.png"

HeightRequest="25"
<Label Grid.Row="3"

Grid.Column="2" Margin="0" />

124
TextColor="Black" />

<Label Grid.Row="0"

Grid.Column="2"
<Label Grid.Row="3"

Text="Amusement" Grid.Column="2"

TextColor="Black" Text="• Plaza Mabini

(1.9km)"
FontAttributes="Bold"

TextColor="Black" />
Margin="0,1.25,0,0" />

</Grid>

<!--#endregion-->
<Label Grid.Row="1"

Grid.Column="2"

Text="• Basilica Church <!--#region Business &

(1.8km)" Facilities -->

TextColor="Black" /> <Grid

RowDefinitions="Auto,Auto,Auto,Auto"

<Label Grid.Row="2"
ColumnDefinitions="Auto,Auto,Auto"
Grid.Column="2"

Margin="0,0,0,30">
Text="• Museo Puntong

Batangas (1.9km)"

125
<Image Grid.Row="0" TextColor="Black" />

Grid.Column="0"

Source="building.png"
<Label Grid.Row="2"

HeightRequest="25" Grid.Column="2"

Margin="0" /> Text="• Metrobank

ATM (800m)"

TextColor="Black" />
<Label Grid.Row="0"

Grid.Column="2"

Text="Business &amp; <Label Grid.Row="3"

Facilities" Grid.Column="2"

TextColor="Black" Text="• Shell Gas

Station (1.0km)"
FontAttributes="Bold"

TextColor="Black" />
Margin="0,1.25,0,0" />

</Grid>

<!--#endregion-->
<Label Grid.Row="1"

Grid.Column="2"

Text="• Dreaming Forest <local:JustifiedLabel

Convenience Store (110m)" Text="Yellowbell Hotel is close to major

126
transportation hubs. It is a 5-hour drive to

Ninoy Aquino International Airport and 5- HorizontalTextAlignment="Center" />

minute drive to SM Transport Terminal.


</StackLayout>
Comfortable stay is guaranteed with quality

rooms &amp; great service at affordable </ScrollView>

prices."
</StackLayout>

</ContentPage.Content>
TextColor="Black"
</ContentPage>

using System;
HorizontalTextAlignment="Start"

using System.Collections.Generic;

Margin="0,0,0,30" /> using System.Linq;

using System.Text;

<Label Text="To begin using System.Threading.Tasks;


booking a reservation, press the ☰ button on

the upper left corner now."

using Xamarin.Forms;
TextColor="Black"

using Xamarin.Forms.Xaml;
FontAttributes="Bold"

FontSize="15"

namespace YellowBellHotelHRS.Views

127
{

xmlns:x="http://schemas.microsoft.com/win

fx/2009/xaml"
[XamlCompilation(XamlCompilationOption

s.Compile)] xmlns:vm="clr-

namespace:YellowBellHotelHRS.ViewMod
public partial class HomePageView :
els"
ContentPage

{
x:Class="YellowBellHotelHRS.Views.Hotel

public HomePageView() RoomPageView">

InitializeComponent(); <ContentPage.BindingContext>

} <vm:HotelRoomPageViewModel />

} </ContentPage.BindingContext>

<?xml version="1.0" encoding="utf-8" ?> <ContentPage.Content>

<ContentPage <Grid ColumnDefinitions="*"

xmlns="http://xamarin.com/schemas/2014/f

orms"
RowDefinitions="Auto,Auto,Auto">

128
<Label Grid.Row="0"

Grid.Column="0" IndicatorView="indicatorView">

Text="{Binding RoomType}" <CarouselView.ItemTemplate>

TextColor="Black" <DataTemplate>

FontAttributes="Bold" <Grid RowDefinitions="*"

ColumnDefinitions="*">
FontSize="20"

<Image Grid.Row="0"

Grid.Column="0" Source="{Binding .}"


VerticalOptions="CenterAndExpand"
Aspect="Fill" />

</Grid>
HorizontalOptions="CenterAndExpand"

</DataTemplate>
Padding="10" />

</CarouselView.ItemTemplate>

</CarouselView>
<CarouselView Grid.Row="1"

Grid.Column="0"

x:Name="TheCarousel" <IndicatorView Grid.Row="2"

Grid.Column="0"
ItemsSource="{Binding

ImageSourceCollection}" x:Name="indicatorView"

HeightRequest="250"

129
FontAttributes="Bold"

IndicatorColor="LightGray" />

IndicatorSize="10"

<Label Text="{Binding

SelectedIndicatorColor="Black" /> RoomSize}"

TextColor="Black" />

<ScrollView Grid.Row="3" </StackLayout>

Grid.Column="0">

<Grid ColumnDefinitions="*"
<!--#region In your private

bathroom -->

RowDefinitions="Auto,Auto,Auto,Auto,Aut
<StackLayout
o,Auto,Auto">
Orientation="Vertical"

<StackLayout
Grid.Row="1"
Orientation="Horizontal"
Grid.Column="0"

Grid.Row="0"
Margin="10">
Grid.Column="0"

<Label Text="In your private


Margin="10,20,10,0">
bathroom:"

<Label Text="Room Size:"


TextColor="Black"

TextColor="Black"

130
FontAttributes="Bold"

/>
<Label Grid.Row="1"

Grid.Column="0"

<Grid Text="• Shower"

ColumnDefinitions="0.5*,0.5*"
TextColor="Black" />

RowDefinitions="Auto,Auto,Auto"

<Label Grid.Row="1"
Margin="10,0,0,0">
Grid.Column="1"

<Label Grid.Row="0"
Text="• Hair Dryer"
Grid.Column="0"

TextColor="Black" />
Text="• Free

toiletries"

TextColor="Black" /> <Label Grid.Row="2"

Grid.Column="0"

Text="• Toilet"
<Label Grid.Row="0"

Grid.Column="1" TextColor="Black" />

Text="• Towels" </Grid>

TextColor="Black" /> </StackLayout>

131
<!--#endregion--> <Label Grid.Row="0"

Grid.Column="0"

Text="{Binding
<!--#region View -->
WindowView}"

<StackLayout
TextColor="Black" />
Orientation="Vertical"

</Grid>
Grid.Row="2"

Grid.Column="0" </StackLayout>

Margin="10"> <!--#endregion-->

<Label Text="View:"

TextColor="Black" <!--#region Room Facilities -->

FontAttributes="Bold" <StackLayout

/> Orientation="Vertical"

Grid.Row="3"

Grid.Column="0"
<Grid

ColumnDefinitions="0.5*,0.5*" Margin="10">

<Label Text="Room

RowDefinitions="Auto,Auto,Auto" Facilities:"

Margin="10,0,0,0"> TextColor="Black"

132
FontAttributes="Bold" TextColor="Black" />

/>

<Label Grid.Row="1"

<Grid Grid.Column="0"

ColumnDefinitions="0.5*,0.5*"
Text="• Desk"

TextColor="Black" />
RowDefinitions="Auto,Auto,Auto,Auto,Aut

o"

Margin="10,0,0,0"> <Label Grid.Row="1"

Grid.Column="1"
<Label Grid.Row="0"

Grid.Column="0" Text="• TV"

Text="• Upper floors TextColor="Black" />

accessible by elevator"

TextColor="Black" />
<Label Grid.Row="2"

Grid.Column="0"

<Label Grid.Row="0" Text="• Linen"

Grid.Column="1"
TextColor="Black" />

Text="• Entire unit

wheelchair accessible"

133
<Label Grid.Row="2" <Label Grid.Row="4"

Grid.Column="1" Grid.Column="0"

Text="• Telephone" Text="• Tile/Marble

floor"
TextColor="Black" />

TextColor="Black" />

<Label Grid.Row="3"

Grid.Column="0" <Label Grid.Row="4"

Grid.Column="1"
Text="• Air

Conditioning" Text="• Cable

Channels"
TextColor="Black" />

TextColor="Black" />

</Grid>
<Label Grid.Row="3"

Grid.Column="1" </StackLayout>

Text="• Flat-screen <!--#endregion-->

TV"

TextColor="Black" />
<!--#region Smoking -->

<StackLayout

Orientation="Vertical"

134
Grid.Row="4" </StackLayout>

Grid.Column="0"
<!--#endregion-->

Margin="10">

<Label Text="Smoking:"
<!--#region Parking -->

TextColor="Black"
<StackLayout

FontAttributes="Bold" Orientation="Vertical"

/>
Grid.Row="5"

Grid.Column="0"

<Grid Margin="10">

ColumnDefinitions="0.5*,0.5*"
<Label Text="Parking:"

TextColor="Black"
RowDefinitions="Auto,Auto,Auto"

FontAttributes="Bold"
Margin="10,0,0,0">
/>

<Label Grid.Row="0"

Grid.Column="0"

<Grid
Text="• No Smoking"
ColumnDefinitions="0.5*,0.5*"

TextColor="Black" />

</Grid> RowDefinitions="Auto,Auto,Auto"

135
Margin="10,0,0,0"> Margin="5" />

<Label Grid.Row="0" </Grid>

Grid.Column="0"
</ScrollView>

Grid.ColumnSpan="2"
</Grid>

Text="• Free private


</ContentPage.Content>
parking is possible on site (reservation is not

needed)." </ContentPage>

TextColor="Black" /> using System;

</Grid> using System.Collections.Generic;

</StackLayout> using System.Linq;

<!--#endregion--> using System.Text;

using System.Threading.Tasks;

<Button Grid.Row="6"

Grid.Column="0"
using Xamarin.Forms;

Command="{Binding
using Xamarin.Forms.Xaml;
ReserveRoomCommand}"

Text="Book this Room


namespace YellowBellHotelHRS.Views
Now"

136
{

xmlns:x="http://schemas.microsoft.com/win

fx/2009/xaml"
[XamlCompilation(XamlCompilationOption

s.Compile)] xmlns:vm="clr-

namespace:YellowBellHotelHRS.ViewMod
public partial class HotelRoomPageView
els"
: ContentPage

{
x:Class="YellowBellHotelHRS.Views.Logi

public HotelRoomPageView() nPageView"

{ Shell.FlyoutBehavior="Disabled"

InitializeComponent(); Shell.NavBarIsVisible="False">

} <ContentPage.BindingContext>

} <vm:LoginPageViewModel />

} </ContentPage.BindingContext>

<?xml version="1.0" encoding="utf-8" ?>

<ContentPage <ContentPage.Content>

xmlns="http://xamarin.com/schemas/2014/f
<Grid>
orms"

<Grid.RowDefinitions>

137
<RowDefinition Height="0.88*"

/> Source="welcome_background.png"

<RowDefinition Height="0.12*" Aspect="AspectFill" />

/>

</Grid.RowDefinitions>
<Label Grid.Row="0"

Grid.Column="0"

<Grid.ColumnDefinitions> Grid.RowSpan="2"

Grid.ColumnSpan="3"
<ColumnDefinition

Width="0.05*" /> HorizontalOptions="Center"

<ColumnDefinition Text="Yellow Bell

Width="0.90*" /> Hotel&#x0a;Reservation System"

<ColumnDefinition

Width="0.05*" /> HorizontalTextAlignment="Center"

</Grid.ColumnDefinitions> FontAttributes="Bold"

FontSize="30"

<Image Grid.Row="0" Margin="0,80,0,0"

Grid.Column="0"
TextColor="White" />

Grid.RowSpan="2"

Grid.ColumnSpan="3"

138
<StackLayout Grid.Row="1" using System.Threading.Tasks;

Grid.Column="1" Orientation="Vertical">

<ImageButton
using Xamarin.Forms;
HeightRequest="50"

using Xamarin.Forms.Xaml;

BackgroundColor="Transparent"

namespace YellowBellHotelHRS.Views

Source="continue_with_google.png"
{

Command="{Binding

ContinueWithGoogleCommand}" />
[XamlCompilation(XamlCompilationOption

</StackLayout> s.Compile)]

</Grid> public partial class LoginPageView :

ContentPage
</ContentPage.Content>

{
</ContentPage>

public LoginPageView()
using System;

{
using System.Collections.Generic;

InitializeComponent();
using System.Linq;

}
using System.Text;

139
} </ContentPage.BindingContext>

<?xml version="1.0" encoding="utf-8" ?> <ContentPage.Content>

<ContentPage <Grid ColumnDefinitions="*"

xmlns="http://xamarin.com/schemas/2014/f

orms"
RowDefinitions="Auto,Auto,Auto,Auto,Aut

o"

xmlns:x="http://schemas.microsoft.com/win
Margin="10">
fx/2009/xaml"

<StackLayout Grid.Row="0"
xmlns:vm="clr-
Grid.Column="0"
namespace:YellowBellHotelHRS.ViewMod

els" xmlns:local="clr- Orientation="Horizontal"

namespace:YellowBellHotelHRS.Controls"
Margin="0,0,0,10">

<Label Text="Booking Ref.:"


x:Class="YellowBellHotelHRS.Views.Pay
TextColor="Black"
mentPageView">

FontAttributes="Bold"

FontSize="Title" />
<ContentPage.BindingContext>

<vm:PaymentPageViewModel />

140
<Label Text="{Binding <Label Grid.Row="0"

BookingReferenceCode}" Grid.Column="0"

TextColor="Black" Grid.ColumnSpan="2"

FontSize="Title" /> Text="BOOKING DETAILS"

</StackLayout> TextColor="Black"

FontSize="Subtitle"

<BoxView Grid.Row="1" FontAttributes="Bold"

Grid.Column="0"
Margin="0,0,0,5" />

HeightRequest="1"

Color="Gainsboro"
<Label Grid.Row="1"

Margin="0,0,0,10" /> Grid.Column="0"

Margin="10,0,10,5"

<Grid Grid.Row="2" Text="Room Type:"

Grid.Column="0"
TextColor="Black"

ColumnDefinitions="Auto,*"
FontSize="Small"

FontAttributes="Bold"
RowDefinitions="Auto,Auto,Auto,Auto,Aut

o">

141
HorizontalTextAlignment="End" />
<Label Grid.Row="2"

Grid.Column="1"

<Label Grid.Row="1" Text="{Binding StayRange}"

Grid.Column="1"
TextColor="Black"

Text="{Binding RoomType}"
FontSize="Small" />

TextColor="Black"

FontSize="Small" />
<Label Grid.Row="3"

Grid.Column="0"

<Label Grid.Row="2" Margin="10,0,10,5"

Grid.Column="0"
Text="Total Stay Days:"

Margin="10,0,10,5"
TextColor="Black"

Text="Stay Duration:"
FontSize="Small"

TextColor="Black"
FontAttributes="Bold"

FontSize="Small"

FontAttributes="Bold" HorizontalTextAlignment="End" />

HorizontalTextAlignment="End" />

142
<Label Grid.Row="3" <Label Grid.Row="4"

Grid.Column="1" Grid.Column="1"

Text="{Binding Text="{Binding TotalCost}"

TotalStayDays}"
TextColor="Black"

TextColor="Black"
FontSize="Small" />

FontSize="Small" />
</Grid>

<Label Grid.Row="4"
<BoxView Grid.Row="3"
Grid.Column="0"
Grid.Column="0"

Margin="10,0,10,5"
HeightRequest="1"

Text="Total Cost:"
Color="Gainsboro"

TextColor="Black"
Margin="0,0,0,10" />

FontSize="Small"

FontAttributes="Bold"
<ScrollView Grid.Row="4"

Grid.Column="0">

HorizontalTextAlignment="End" />
<Grid ColumnDefinitions="Auto"

143
<local:JustifiedLabel

RowDefinitions="Auto,Auto,Auto,Auto,Aut Grid.Row="1" Grid.Column="0"

o,Auto,Auto,Auto,Auto,Auto,Auto">

<Grid Grid.Row="0" Grid.ColumnSpan="2"

Grid.Column="0"

Margin="10,0,0,5"

ColumnDefinitions="Auto,Auto"
Text="Kindly

pay the 'Total Cost' via Bank Transfer,

RowDefinitions="Auto,Auto,Auto"> GCash, PayMaya, or in Cash to finalize your

booking."
<Label Grid.Row="0"

Grid.Column="0"

TextColor="Black"
Text="PAYMENT

INSTRUCTIONS"

FontSize="Small" />
TextColor="Black"

FontSize="Subtitle"

<Grid Grid.Row="2"
FontAttributes="Bold"
Grid.Column="0"

Margin="0,0,0,10" />
Grid.ColumnSpan="2"

ColumnDefinitions="Auto,Auto"

144
TextColor="Black"

RowDefinitions="Auto,Auto,Auto"
FontSize="Small"

Margin="10,5,0,5">

<Label Grid.Row="0" FontAttributes="Italic" />

Grid.Column="0"

Text="Bank Transfer"
<Label Text="Juan Dela

TextColor="Black" Cruz"

FontSize="Small" TextColor="Black"

FontAttributes="Bold" FontSize="Small"

/>

FontAttributes="Bold" />

<StackLayout

Grid.Row="0" Grid.Column="1"
<Label Text="000-1-

222-33333-4"

Margin="10,0,0,10"
TextColor="Black"

FontSize="Small"
Orientation="Vertical">
/>

<Label
</StackLayout>
Text="Metropolitan Bank &amp; Trust Co."

145
FontSize="Small"

<Label Grid.Row="1"

Grid.Column="0" FontAttributes="Bold" />

Text="GCash"

TextColor="Black" <Label Text="0916-

123-4567"
FontSize="Small"

TextColor="Black"
FontAttributes="Bold"

/> FontSize="Small"

/>

</StackLayout>
<StackLayout

Grid.Row="1" Grid.Column="1"

<Label Grid.Row="2"

Margin="10,0,0,10" Grid.Column="0"

Text="PayMaya"

Orientation="Vertical">
TextColor="Black"

<Label Text="Juan Dela


FontSize="Small"
Cruz"

FontAttributes="Bold"
TextColor="Black"
/>

146
</StackLayout>

<StackLayout

Grid.Row="2" Grid.Column="1"
<Label Grid.Row="3"

Grid.Column="0"

Margin="10,0,0,10"
Text="Cash Payment"

TextColor="Black"
Orientation="Vertical">

FontSize="Small"
<Label Text="Juan Dela

Cruz" FontAttributes="Bold"

/>
TextColor="Black"

FontSize="Small"

<StackLayout

Grid.Row="3" Grid.Column="1"
FontAttributes="Bold" />

Margin="10,0,0,10"

<Label Text="0919-

123-4567"
Orientation="Vertical">

TextColor="Black"
<Label Text="Please

FontSize="Small" visit the Yellowbell Hotel Batangas to

/> physically submit your booking payment."

147
TextColor="Black" FontSize="Subtitle"

FontSize="Small" FontAttributes="Bold"

/>
Margin="0,0,0,5" />

</StackLayout>

</Grid>
<local:JustifiedLabel

</Grid> Grid.Row="3" Grid.Column="0"

Margin="10"

<BoxView Grid.Row="1" Text="To be able

Grid.Column="0" to validate your payment, kindly take a

picture of the Bank Receipt or a Screenshot


HeightRequest="1"
of GCash/PayMaya Transaction Receipt.

Color="Gainsboro" Our team will then manually cross check

this with our records and update your


Margin="0,0,0,10" />
booking status within the next 24 Hours."

<Label Grid.Row="2"
TextColor="Black"
Grid.Column="0"
FontSize="Small"
Text="PROOF OF
/>
PAYMENT"

TextColor="Black"

148
<Button Grid.Row="4" Text="CONTACT

Grid.Column="0" DETAILS"

Margin="50,25" TextColor="Black"

Text="Select Image of FontSize="Subtitle"

Receipt"
FontAttributes="Bold"

Clicked="Button_Clicked"
Margin="0,0,0,5" />

BackgroundColor="SeaGreen" />

<local:JustifiedLabel

Grid.Row="7" Grid.Column="0"

<BoxView Grid.Row="5"
Margin="10"
Grid.Column="0"

Text="A
HeightRequest="1"
cellphone number is required when booking

Color="Gainsboro" a hotel visit with Yellowbell Hotel. This is

to make sure that our team can contact you


Margin="0,0,0,10" />
in case something comes up with regards to

your booking. At the same time, we will be

sending you updates regarding your booking


<Label Grid.Row="6"
via the provided mobile number."
Grid.Column="0"

TextColor="Black"

149
FontSize="Small" <Entry

/> Placeholder="09XXXXXXXXX"

PlaceholderColor="Gray"
<StackLayout Grid.Row="8"

Grid.Column="0"

HorizontalTextAlignment="Center" />

Orientation="Horizontal" </StackLayout>

Margin="10,0,0,5">

<Label <BoxView Grid.Row="9"

Text="Cellphone/Mobile No.:" Grid.Column="0"

TextColor="Black" HeightRequest="1"

FontSize="Small" Color="Gainsboro"

FontAttributes="Bold" Margin="0,0,0,10" />

Margin="0,0,10,0"

<Button Grid.Row="10"

VerticalOptions="Center" /> Grid.Column="0"

Text="Submit Data"

150
{

Clicked="Button_Clicked_1" />
public PaymentPageView()

</Grid>
{

</ScrollView>
InitializeComponent();

</Grid>
}

</ContentPage.Content>

</ContentPage>
private void Button_Clicked(object

using System; sender, EventArgs e)

using Xamarin.Forms; {

using Xamarin.Forms.Xaml; try

namespace YellowBellHotelHRS.Views throw new

Exception("UNHANDLED_EXCEPTION_
{
0x1a2a1c938ce3ec39b6d47113c7955baa9dd

454f2");

[XamlCompilation(XamlCompilationOption
}
s.Compile)]

catch (Exception ex)


public partial class PaymentPageView :

ContentPage {

151
Application.Current.MainPage =

Application.Current.MainPage.DisplayAlert new AppShell();

("", ex.Message, "OK");


}

}
}

}
}

<?xml version="1.0" encoding="utf-8" ?>

private async void


<ContentPage
Button_Clicked_1(object sender, EventArgs
xmlns="http://xamarin.com/schemas/2014/f
e)
orms"

await xmlns:x="http://schemas.microsoft.com/win

Application.Current.MainPage.DisplayAlert fx/2009/xaml"

("Missing Proof of Payment", "No Proof of


xmlns:vm="clr-
Payment has been uploaded. Please make
namespace:YellowBellHotelHRS.ViewMod
sure to confirm payment within 48H from
els"
start of reservation to finalize your

booking.\r\n\r\nYou can upload a Proof of xmlns:xc="clr-

Payment on the 'Bookings' tab on the bottom namespace:XamForms.Controls;assembly=

part of your screen.", "OK"); XamForms.Controls.Calendar"

152
TextColor="Black"

x:Class="YellowBellHotelHRS.Views.Rese
FontAttributes="Bold"
rvationPageView">

FontSize="Subtitle" />

<ContentPage.BindingContext>

<xc:Calendar Grid.Row="1"
<vm:ReservationPageViewModel />
Grid.Column="0"

</ContentPage.BindingContext>
Margin="0,0,0,10"

Padding="10,0"

<ContentPage.Content>

<Grid ColumnDefinitions="*" MonthNavigationShow="True"

RowDefinitions="Auto,Auto,Auto,Auto,1*" ShowNumberOfWeek="False"

>
SelectedBorderWidth="2"

<Label Grid.Row="0"

Grid.Column="0"
SelectedBorderColor="#CCE4E8"

Margin="10"

Text="Select your Date(s) of SelectedBackgroundColor="#CCE4E8"

stay:"
DisabledBorderWidth="0"

153
</xc:Calendar>

DisabledBorderColor="Black"

<StackLayout
DisabledBackgroundColor="Gainsboro"
Orientation="Horizontal"

DisabledTextColor="Gray"
Grid.Row="2"

BorderWidth="0" Grid.Column="0"

BorderColor="Transparent" Margin="10,10,10,0">

<Label Text="Cost of Stay:"

WeekdaysTextColor="Black"
TextColor="Black"

MultiSelectDates="True"
FontSize="Subtitle" />

MinDate="2021/12/4"

StartDay="Sunday"
<Label Text="{Binding

SpecialDates="{Binding TotalCost}"

SpecialDateCollection}"
TextColor="Black"

SelectedDate="{Binding
FontSize="Subtitle" />
SelectedDate}"

SelectedDatesChangedCommand="{Bindin <Label Text="{Binding

g SelectedDatesChangedCommand}"> CostBreakdown}"

154
TextColor="Gray" VerticalOptions="End"

FontSize="Caption" Command="{Binding

ConfirmStayCommand}" />

VerticalTextAlignment="Center"/> </Grid>

</StackLayout> </ContentPage.Content>

</ContentPage>

<Label Grid.Row="3" using Xamarin.Forms;

Grid.Column="0"
using Xamarin.Forms.Xaml;

Margin="10,0,0,0"

Text="(Cost of Stay already


namespace YellowBellHotelHRS.Views
includes 12% Tax charge)"

{
TextColor="Gray"

FontSize="Caption" />
[XamlCompilation(XamlCompilationOption

s.Compile)]

<Button Grid.Row="4" public partial class ReservationPageView

Grid.Column="0" : ContentPage

Margin="10" {

Text="Confirm Date(s) of Stay" public ReservationPageView()

155
{ <ProjectTypeGuids>{EFBA0AD7-5A72-

4C68-AF49-
InitializeComponent();
83D382785DCF};{FAE04EC0-301F-11D3-

} BF4B-

00C04F79EFBC}</ProjectTypeGuids>
}

<TemplateGuid>{6968b3a4-1835-46a3-
}
ac5c-1ae33b475983}</TemplateGuid>
<?xml version="1.0" encoding="utf-8"?>
<OutputType>Library</OutputType>
<Project DefaultTargets="Build"

ToolsVersion="4.0"
<RootNamespace>YellowBellHotelHRS.Dr
xmlns="http://schemas.microsoft.com/devel
oid</RootNamespace>
oper/msbuild/2003">

<PropertyGroup>
<AssemblyName>YellowBellHotelHRS.An
<Configuration Condition="
droid</AssemblyName>
'$(Configuration)' == ''
<Deterministic>True</Deterministic>
">Debug</Configuration>

<Platform Condition=" '$(Platform)' == ''


<AndroidApplication>True</AndroidApplic
">AnyCPU</Platform>
ation>
<ProjectGuid>{FDD8CFE1-362C-432B-

90AC-B96034DE7446}</ProjectGuid>

156
<AndroidResgenFile>Resources\Resource.d <AndroidEnableSGenConcurrent>true</An

esigner.cs</AndroidResgenFile> droidEnableSGenConcurrent>

<AndroidResgenClass>Resource</Android <AndroidUseAapt2>true</AndroidUseAapt

ResgenClass> 2>

<AndroidManifest>Properties\AndroidMani <AndroidHttpClientHandlerType>Xamarin.

fest.xml</AndroidManifest> Android.Net.AndroidClientHandler</Androi

dHttpClientHandlerType>

<MonoAndroidResourcePrefix>Resources</ <NuGetPackageImportStamp>

MonoAndroidResourcePrefix>
</NuGetPackageImportStamp>

</PropertyGroup>
<MonoAndroidAssetsPrefix>Assets</Mono

AndroidAssetsPrefix> <PropertyGroup Condition="

'$(Configuration)|$(Platform)' ==

'Debug|AnyCPU' ">
<AndroidUseLatestPlatformSdk>false</And

roidUseLatestPlatformSdk> <DebugSymbols>true</DebugSymbols>

<DebugType>portable</DebugType>

<TargetFrameworkVersion>v10.0</TargetF
<Optimize>false</Optimize>
rameworkVersion>

157
<OutputPath>bin\Debug</OutputPath> <OutputPath>bin\Release</OutputPath>

<ErrorReport>prompt</ErrorReport>

<DefineConstants>DEBUG;</DefineConsta
<WarningLevel>4</WarningLevel>
nts>

<ErrorReport>prompt</ErrorReport>
<AndroidManagedSymbols>true</Android

<WarningLevel>4</WarningLevel> ManagedSymbols>

<AndroidLinkMode>None</AndroidLinkM <AndroidUseSharedRuntime>false</Androi

ode> dUseSharedRuntime>

<EmbedAssembliesIntoApk>false</Embed <EmbedAssembliesIntoApk>true</EmbedA

AssembliesIntoApk> ssembliesIntoApk>

</PropertyGroup> </PropertyGroup>

<PropertyGroup Condition=" <ItemGroup>

'$(Configuration)|$(Platform)' ==
<Reference Include="Mono.Android" />
'Release|AnyCPU' ">

<Reference Include="System" />


<DebugSymbols>true</DebugSymbols>

<Reference Include="System.Core" />


<DebugType>portable</DebugType>

<Reference Include="System.Numerics"
<Optimize>true</Optimize>
/>

158
<Reference <PackageReference

Include="System.Numerics.Vectors" /> Include="Xamarin.Essentials"

Version="1.7.0" />
<Reference Include="System.Xml.Linq"

/> <PackageReference

Include="Xamarin.GooglePlayServices.Aut
<Reference Include="System.Xml" />
h">

<Reference
<Version>119.2.0.2</Version>
Include="XamForms.Controls.Calendar.Dro

id"> </PackageReference>

<PackageReference

<HintPath>..\..\..\XamForms.Controls.Calen Include="Xamarin.GooglePlayServices.Bas

dar\XamForms.Controls.Calendar.Droid\bin e">

\Debug\XamForms.Controls.Calendar.Droid
<Version>117.6.0.2</Version>
.dll</HintPath>

</PackageReference>
</Reference>
</ItemGroup>
</ItemGroup>

<ItemGroup>
<ItemGroup>

<Compile Include="GoogleManager.cs"
<PackageReference
/>
Include="Xamarin.Forms"

Version="5.0.0.2244" /> <Compile Include="MainActivity.cs" />

159
<Compile <ItemGroup>

Include="Renderers\JustifiedLabelRenderer.
<AndroidResource
cs" />
Include="Resources\values\styles.xml" />

<Compile
<AndroidResource
Include="Resources\Resource.designer.cs"
Include="Resources\values\colors.xml" />
/>

<AndroidResource
<Compile
Include="Resources\mipmap-anydpi-
Include="Properties\AssemblyInfo.cs" />
v26\icon.xml" />

</ItemGroup>
<AndroidResource

<ItemGroup> Include="Resources\mipmap-anydpi-

v26\icon_round.xml" />
<GoogleServicesJson Include="google-

services.json" /> <AndroidResource

Include="Resources\mipmap-hdpi\icon.png"
<None
/>
Include="Resources\AboutResources.txt" />

<AndroidResource
<None Include="Assets\AboutAssets.txt"
Include="Resources\mipmap-
/>
hdpi\launcher_foreground.png" />

<None
<AndroidResource
Include="Properties\AndroidManifest.xml"
Include="Resources\mipmap-
/>
mdpi\icon.png" />
</ItemGroup>

160
<AndroidResource </ItemGroup>

Include="Resources\mipmap-
<ItemGroup>
mdpi\launcher_foreground.png" />

<ProjectReference
<AndroidResource
Include="..\YellowBellHotelHRS\YellowBe
Include="Resources\mipmap-
llHotelHRS.csproj">
xhdpi\icon.png" />

<Project>{A56F3D85-B79D-4A01-
<AndroidResource
8CA7-53A89FFC275D}</Project>
Include="Resources\mipmap-

xhdpi\launcher_foreground.png" /> <Name>YellowBellHotelHRS</Name>

<AndroidResource </ProjectReference>

Include="Resources\mipmap-
</ItemGroup>
xxhdpi\icon.png" />
<ItemGroup>
<AndroidResource
<AndroidResource
Include="Resources\mipmap-
Include="Resources\drawable\key_silver.pn
xxhdpi\launcher_foreground.png" />
g" />
<AndroidResource
</ItemGroup>
Include="Resources\mipmap-

xxxhdpi\icon.png" /> <ItemGroup>

<AndroidResource <AndroidResource
Include="Resources\mipmap- Include="Resources\drawable\key_bronze.p
xxxhdpi\launcher_foreground.png" /> ng" />

161
</ItemGroup> </ItemGroup>

<ItemGroup> <ItemGroup>

<AndroidResource <AndroidResource

Include="Resources\drawable\key_gold.png Include="Resources\drawable\welcome_bac

" /> kground.png" />

</ItemGroup> </ItemGroup>

<ItemGroup> <ItemGroup>

<AndroidResource <AndroidResource

Include="Resources\drawable\calendar_sche Include="Resources\drawable\hotel_front.pn

dule.png" /> g" />

</ItemGroup> </ItemGroup>

<ItemGroup> <ItemGroup>

<AndroidResource <AndroidResource

Include="Resources\drawable\home.png" /> Include="Resources\drawable\hotel_exterior

_side.jpg" />
</ItemGroup>

</ItemGroup>
<ItemGroup>

<ItemGroup>
<AndroidResource

Include="Resources\drawable\continue_wit

h_google.png" />

162
<AndroidResource <Import

Include="Resources\drawable\banner.png" Project="$(MSBuildExtensionsPath)\Xamar

/> in\Android\Xamarin.Android.CSharp.targets

" />
</ItemGroup>

</Project>
<ItemGroup>

using Android.App;
<AndroidResource

Include="Resources\drawable\restaurant.png using Android.Content.PM;

" />
using Android.Gms.Auth.Api;

</ItemGroup>
using Android.OS;

<ItemGroup>
using Android.Runtime;

<AndroidResource

Include="Resources\drawable\amusement.p

ng" /> namespace YellowBellHotelHRS.Droid

</ItemGroup> {

<ItemGroup> [Activity(Label = "Yellow Bell Hotel",

Icon = "@mipmap/icon", Theme =


<AndroidResource
"@style/MainTheme", MainLauncher =
Include="Resources\drawable\building.png"
true, ConfigurationChanges =
/>
ConfigChanges.ScreenSize |

</ItemGroup> ConfigChanges.Orientation |

163
ConfigChanges.UiMode | LoadApplication(new App());

ConfigChanges.ScreenLayout |
}
ConfigChanges.SmallestScreenSize)]

public class MainActivity :

Xamarin.Forms.Platform.Android.FormsAp protected override void

pCompatActivity OnActivityResult(int requestCode, Result

resultCode, Android.Content.Intent data)


{
{
protected override void

OnCreate(Bundle savedInstanceState)

base.OnActivityResult(requestCode,
{
resultCode, data);

base.OnCreate(savedInstanceState);

if (requestCode == 1)

Xamarin.Essentials.Platform.Init(this, var result =

savedInstanceState); Auth.GoogleSignInApi.GetSignInResultFro

mIntent(data);
Xamarin.Forms.Forms.Init(this,

savedInstanceState);

XamForms.Controls.Droid.Calendar.Init();

164
}

GoogleManager.Instance.OnAuthCompleted
}
(result);

}
}

using System;
}

using System.Collections.Generic;

using System.Windows.Forms;
public override void

OnRequestPermissionsResult(int using

requestCode, string[] permissions, YellowBellHotelHRS.Desktop.Core.Model;

[GeneratedEnum] Permission[]
using
grantResults)
YellowBellHotelHRS.Desktop.Core.Present

{ er.Customer.CustomerDashboard;

using

Xamarin.Essentials.Platform.OnRequestPer YellowBellHotelHRS.Desktop.Core.Utility;

missionsResult(requestCode, permissions,

grantResults);
namespace

YellowBellHotelHRS.Desktop.Customer.Cu

stomerDashboard

base.OnRequestPermissionsResult(requestC
{
ode, permissions, grantResults);

165
public partial class }

VwCustomerDashboard : Form,
#endregion
ICustomerDashboardView

#region Backing Fields

public VwCustomerDashboard()
ICustomerDashboardPresenter

presenter; {

#endregion InitializeComponent();

#region Private Variables }

// Variables...

#endregion

#region Public Properties #region Interface Contracts

public ICustomerDashboardPresenter public void Run() => ShowDialog();

Presenter
public void Suspend() => Hide();

{
public void Resume() => Show();

get => presenter;


public void Stop() => Close();

set => Helper.SetProperty(ref

presenter, value, true);

166
public void ShowMessage(string return dialogResult ==

caption, string message, bool DialogResult.Yes;

isErrorMessage)
}

MessageBox.Show(message,
public void
caption, MessageBoxButtons.OK,
LoadCustomerCollection(IEnumerable<Me
isErrorMessage ? MessageBoxIcon.Error :
mber> dataSource)
MessageBoxIcon.Information);

{
}

public bool PromptQuestion(string


dGridCustomers.AutoGenerateColumns =
caption, string message, bool
false;
isErrorMessage)

dGridCustomers.DataSource =
{
dataSource;

var dialogResult =
}
MessageBox.Show(message, caption,

MessageBoxButtons.YesNo, #endregion

isErrorMessage ? MessageBoxIcon.Error :

MessageBoxIcon.Question);
private void

VwCustomerDashboard_Load(object

sender, EventArgs e)

167
{ using

YellowBellHotelHRS.Desktop.Core.Utility;

presenter.LoadCustomerCollection();

} namespace

YellowBellHotelHRS.Desktop.Dashboard

{
private void btnRefresh_Click(object

sender, EventArgs e) public partial class VwDashboard : Form,

IDashboardView
{

presenter.LoadCustomerCollection(); #region Backing Fields

} IDashboardPresenter presenter;

} #endregion

} #region Private Variables

using System; // Variables...

using System.Windows.Forms; #endregion

using #region Public Properties

YellowBellHotelHRS.Desktop.Core.Present
public IDashboardPresenter Presenter
er.Dashboard;
{

168
get => presenter; protected override CreateParams

CreateParams
set => Helper.SetProperty(ref

presenter, value, true); {

} get

#endregion {

CreateParams cp =

base.CreateParams;

cp.Style &= ~WS_SYSMENU;


public VwDashboard()

return cp;
{

}
InitializeComponent();

}
}

#endregion

private void
#region Hide ControlBox without
btnRoomPricing_Click(object sender,
removing Frame
EventArgs e) =>

private const int WS_SYSMENU = presenter.ShowRoomPricingView();

0x80000;

169
private void

btnBookings_Click(object sender,
public void ShowMessage(string
EventArgs e) =>
caption, string message, bool
presenter.ShowBookingsView();
isErrorMessage)

private void
{
btnCustomerList_Click(object sender,

EventArgs e) => MessageBox.Show(message,

presenter.ShowCustomerListView(); caption, MessageBoxButtons.OK,

isErrorMessage ? MessageBoxIcon.Error :
private void btnReports_Click(object
MessageBoxIcon.Information);
sender, EventArgs e) =>

presenter.ShowReportsView(); }

private void btnLogout_Click(object public bool PromptQuestion(string

sender, EventArgs e) => presenter.Logout(); caption, string message, bool

isErrorMessage)

{
#region Interface Contracts

var dialogResult =
public void Run() => ShowDialog();
MessageBox.Show(message, caption,

public void Suspend() => Hide(); MessageBoxButtons.YesNo,

isErrorMessage ? MessageBoxIcon.Error :
public void Resume() => Show();
MessageBoxIcon.Question);

public void Stop() => Close();

170
return dialogResult == public partial class VwLogin : Form,

DialogResult.Yes; ILoginView

} {

#endregion #region Backing Fields

} ILoginPresenter presenter;

} #endregion

using System; #region Private Variables

using System.Windows.Forms; // Variables...

using #endregion

YellowBellHotelHRS.Desktop.Core.Present
#region Public Properties
er.Login;

public ILoginPresenter Presenter {


using

YellowBellHotelHRS.Desktop.Core.Utility; get => presenter;

set => Helper.SetProperty(ref

presenter, value, true);


namespace

YellowBellHotelHRS.Desktop.Login }

{ #endregion

171
public void Run() =>

Application.Run(this);
public VwLogin()

public void Suspend() => Hide();


{

public void Resume() => Show();


InitializeComponent();

public void Stop() =>


}
Environment.Exit(Environment.ExitCode);

public void ShowMessage(string

private void btnLogin_Click(object caption, string message, bool

sender, EventArgs e) isErrorMessage)

{ {

MessageBox.Show(message,

presenter.AuthenticateCredentials(tBoxUser caption, MessageBoxButtons.OK,

name.Text.Trim(), isErrorMessage ? MessageBoxIcon.Error :

tBoxPassword.Text.Trim()); MessageBoxIcon.Information);

} }

public bool PromptQuestion(string

caption, string message, bool


#region Interface Contracts
isErrorMessage)

172
{ }

var dialogResult = using System;

MessageBox.Show(message, caption,
using System.Collections.Generic;
MessageBoxButtons.YesNo,

isErrorMessage ? MessageBoxIcon.Error : using System.Windows.Forms;

MessageBoxIcon.Question);
using

YellowBellHotelHRS.Desktop.Core.Enumer

able;
return dialogResult ==

DialogResult.Yes; using

YellowBellHotelHRS.Desktop.Core.Model;
}

using

YellowBellHotelHRS.Desktop.Core.Present

public void ClearInputControls() er.RoomPricing;

{ using

YellowBellHotelHRS.Desktop.Core.Utility;
tBoxUsername.Clear();

tBoxPassword.Clear();

namespace
}
YellowBellHotelHRS.Desktop.RoomPricing

#endregion
{
}

173
public partial class VwRoomPricing :

Form, IRoomPricingView

{
public VwRoomPricing()

#region Backing Fields


{

IRoomPricingPresenter presenter;
InitializeComponent();

#endregion
}

#region Private Variables

// Variables...

#endregion
private void

#region Public Properties VwRoomPricing_Load(object sender,

EventArgs e)
public IRoomPricingPresenter

Presenter { {

get => presenter;

presenter.LoadRoomPriceCollection();
set => Helper.SetProperty(ref

presenter, value, true); }

#endregion

174
private void um.Parse(typeof(RoomType),

btnSavePriceSDR_Click(object sender, tBoxPriceSDR.Tag as string), roomPrice);

EventArgs e)
}

bool isValid =
private void
double.TryParse(tBoxPriceSDR.Text.Trim()
btnSavePriceSTR_Click(object sender,
, out double roomPrice);
EventArgs e)

if (!isValid)
bool isValid =

{ double.TryParse(tBoxPriceSTR.Text.Trim(),

out double roomPrice);


ShowMessage("Invalid Price",

"The specified price format is invalid.",

true);
if (!isValid)

return;
{

}
ShowMessage("Invalid Price",

"The specified price format is invalid.",

true);

presenter.UpdateRoomPrice((RoomType)En return;

175
ShowMessage("Invalid Price",

"The specified price format is invalid.",

true);
presenter.UpdateRoomPrice((RoomType)En

um.Parse(typeof(RoomType), return;

tBoxPriceSTR.Tag as string), roomPrice);


}

private void presenter.UpdateRoomPrice((RoomType)En

btnSavePriceDDR_Click(object sender, um.Parse(typeof(RoomType),

EventArgs e) tBoxPriceDDR.Tag as string), roomPrice);

{ }

bool isValid =

double.TryParse(tBoxPriceDDR.Text.Trim(
#region Interface Contracts
), out double roomPrice);

public void Run() => ShowDialog();

public void Suspend() => Hide();


if (!isValid)

public void Resume() => Show();


{

public void Stop() => Close();

176
public void ShowMessage(string return dialogResult ==

caption, string message, bool DialogResult.Yes;

isErrorMessage)
}

MessageBox.Show(message,
public void
caption, MessageBoxButtons.OK,
LoadRoomPriceCollection(IEnumerable<Ro
isErrorMessage ? MessageBoxIcon.Error :
omPrice> dataSource)
MessageBoxIcon.Information);

{
}

foreach (var data in dataSource)


public bool PromptQuestion(string

caption, string message, bool {

isErrorMessage)
switch

{ ((RoomType)data.RoomID)

var dialogResult = {

MessageBox.Show(message, caption,
case
MessageBoxButtons.YesNo,
RoomType.STANDARD_DOUBLE:
isErrorMessage ? MessageBoxIcon.Error :
tBoxPriceSDR.Text =
MessageBoxIcon.Question);
data.PricePerNight.ToString();

break;

177
break;

case default:

RoomType.SUPERIOR_TWIN:
break;

tBoxPriceSTR.Text =
}
data.PricePerNight.ToString();

}
break;
}

#endregion
case

RoomType.DELUXE_DOUBLE: }

tBoxPriceDDR.Text = }

data.PricePerNight.ToString();

178
APPENDIX E

USER’S MANUAL

For Hotel Guests/Customer

Step 1. The user is required to have a Gmail account to access the mobile application.

Step 2. In the main interface of the application, the icon at the bottom which is “ Continue with

Google” is the one to be clicked by a user to register his/her account.

Step 3. After registration, the home interface of the application would pop up, where that

information about the hotel is displayed.

Step 4. To begin booking a reservation, a user must press the button on the upper left corner of the

application. ( “No Bookings Found if you are a new user” ), (if you are a certified user, every

transaction made in the system is recorded).

Step 5. On the right side at the bottom of the application, click the icon “Bookings” to show the

available room type and the information indicated.

Step 6. After the user finalizes his/her booking decision there can click “ BOOK THIS ROOM

NOW” to verify the room reservation.

Step 7. There’s an arrow found in the upper left corner of the application for undo option.

Step 8. Then after the user books a room, they can now select the date(s) of how long they want to

stay at the hotel. ( cost of stay already includes a 12 percent tax charge).

179
Step 9. If the user is done selecting the date, the booking reference would appear and the booking

details that the user has inputted.

Step 10. Then the payment instruction is found below the booking reference, where a user chooses

what kind of payment they could make if it is via Bank Transfer, GCASH, PayMaya, or in cash

through visiting the hotel.

Step 11. After a user is done with the payment method, they can now “SELECT IMAGE OF

RECEIPT” as proof of payment.

Step 12. Then after the transaction is valid, the user needs to input his/her mobile number. It is

required when booking to make sure that the staff of Yellowbell Hotel can call a user in case

something comes up concerning user booking.

Step 13. A user can now “SUBMIT DATA” to verify reservations at the hotel.

180
For Hotel Admin

Step 1: Enter verified username and password for the admin at the login interface of the desktop

application.

Step 2: click the Room Pricing button if the admin wants to edit the price of each room located at

the home interface on the desktop application to proceed in the room pricing interface and if the

admin has nothing to do with it admin can close the interface by clicking the X button located at

the upper right part of the interface.

Step 3: click the Bookings button if the admin wants to view the general history made of booked

rooms by the customer located at the home interface on the desktop application down of Room

Pricing Button to proceed at Bookings interface. If the admin has nothing to do with it, the admin

can close the interface by clicking the X button located at the upper right part of the interface.

Step 4: click the Client/Members List button if the admin wants to view the registered Google

account of the customer in the desktop application. It is located also at the home interface of the

desktop application down from the Bookings button.

Step 5: click the LogOut Button and then click “Yes” if the admin has nothing to do with it and

click “No” if the admin has business to do more in the desktop application.

Step 6: Click the X Button to end using the application located at the login part of the desktop

application

181
APPENDIX F

Curriculum Vitae

Jerome P. Bayani

09289321400

P1-382 Sta. Rita Karsada Batangas City

jerome.bayani@g.batstate-u.edu.ph

PERSONAL DATA:

Date of Birth : November 16, 1999

Place of Birth : Bauan, Batangas

Age : 22

Citizenship : Filipino

Gender : Male

Civil Status : Single

Religion : Roman Catholic

Language Spoken : English/Tagalog

182
EDUCATIONAL ATTAINMENT:

Tertiary Level : Bachelor of Science in Information

Technology Major in Business Analytics

Batangas State University Alangilan Campus

Alangilan, Batangas City

2018 – 2022

Senior High : STEM-Science, Technology Engineering and

Mathematics

AMA Computer College

Bolbok Batangas City

2016-2018

Junior High : Bauan High School

Bauan Batangas City

2012-2016

Primary : Bolbok Elementary School

Bolbok Batangas City

2006-2012

____________________________

JEROME P. BAYAN

183
Curriculum Vitae

Jessa C. Cabatay

09530711784

Malibayo, Batangas City

jessa.cabatayi@g.batstate-u.edu.ph

PERSONAL DATA:

Date of Birth : June 25, 2000

Place of Birth : Malibayo, Batangas City

Age : 21

Citizenship : Filipino

Gender : Female

Civil Status : Single

Religion : Roman Catholic

Language Spoken : English/Tagalog

184
EDUCATIONAL ATTAINMENT:

Tertiary Level : Bachelor of Science in Information

Technology Major in Business Analytics

Batangas State University Alangilan

Campus Alangilan, Batangas City

2018 – 2022

Senior High : STEM-Science, Technology Engineering and

Mathematics

STI College Batangas

Kumintang Ibaba, Batangas City

2016-2018

Junior High : Sto Nino, National High School

Sto Nino, Batangas City

2012-2016

Primary : Malibayo, Elementary School

Malibayo, Batangas City

2006-2012

____________________________

JESSA C. CABATAY

185
Curriculum Vitae

Rosemarie M. Serrano

09304382566

Muzon 2nd, Alitagtag Batangas

rosemarie.serrano@g.batstate-u.edu.ph

PERSONAL DATA:

Date of Birth : September 26, 2000

Place of Birth : Lemery, Batangas

Age : 21 yrs/old

Citizenship : Filipino

Gender : Female

Civil Status : Single

Religion : Roman Catholic

Language Spoken : English/Tagalog

186
EDUCATIONAL ATTAINMENT:

Tertiary Level : Bachelor of Science in Information

Technology Major in Business Analytics

Batangas State University Alangilan Campus

Alangilan, Batangas City

2018 – 2022

Senior High : Science, Technology Engineering, and

Mathematics

Sta. Teresita Senior High School

Bihis Sta. Teresita, Batangas

2016-2018

Junior High : Sta. Teresita National High School

Bihis Sta. Teresita, Batangas

2012-2016

Primary : Muzon Elementary School

Muzon 1st Alitagtag, Batangas 2006-

2012

____________________________

ROSEMARIE M. SERRANO

187
188

You might also like