Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CHAPTER 1
INTRODUCTION
In the present world, most of the people around the globe completely depend on the
internet for their day to day activities. Internet has provided a lot of growth for all the
applications as the technology is also vast and easily accessible.
In the busy world as today, the prime importance to convenience and speed, irrespective
of type of business category. All the business people wanted to make the business
adaptable, so that application can adapt according to the customer needs. The application
must be understandable and it should be easy to use.
There is a large advancement in the field of Android and iOS. These two software have
helped the developers to develop and produce various applications. Many man handling
things are converted to the machines. In turn where Restaurant Self-Service Applications,
which reduces the human involvement and stress. These save time of the restaurants
while taking order from the customers.
This application contains the menu where we can choose the item from the menu and can
bill the order for the particular table. This is also one of the way making the country
digital. It is a user friendly, the customer can choose the items from the vast menu without
any interference of the staff.
It is the time to change the world to digital, In present, the restaurants are taking the order
and billing are done manually this application changes the managing the restaurant to
completely digital. It reduces the human effort and reduces the time consumption doing
the work.
This reduces the much burden on the order storing. If it is a rush hours the hand written
bill may be miss-matched. In that case this application is so useful.
CHAPTER 2
The main purpose of Restaurant Self-Service Application is to take up the order system
easy and maintain the data simple. It minimizes the errors by making the system
computerized. The details entered are stored in a database accordingly. It also facilitate by
keeping the data secured and allows to alter the menu when required.
Android Studio
Windows 10 Operating System
Android Version Lollipop or above with higher API.
The design of the project is very simple. All the activities are interconnected with each
other activity using intents. Which we can make the activities clear and understandable.
Android studio makes the user interface beautiful and neat.
The application is combined of many activities, each activity has its own functionalities.
The activities present in the application are:
1. Home Page
2. Menu Activity
3. Order Activity
4. Confirm Order
5. Billing Activity
6. History Activity
7. Payment Activity
These all activities are connected to each other by clicking on the buttons, so the
functionalities given to the button opens the particular activity. It is a user friendly
application which is easily understandable by everyone.
Home Activity
Order Activity
Payment
Activity
Confirm
Activity
2.3.2 Algorithm
Step 1: In the Home activity select an option to be performed. Menu activity is clicked.
Step 2: In menu activity it displays the menu of the restaurant.
Step 3: We need to give the quantity of the order which we want to get added.
Step 4: If we give confirm option in Step 3 then the order is placed and redirected to Step
1.
Step 5: In Step 1 if Billing activity is clicked, then it goes to the Billing activity.
Step 6: It shows the order need to get billed and clicked pay button.
Step 7: It takes to the payment activity and select the type of payment.
Step 8: In Step 1 if the history activity is clicked then it shows the history of the order.
Step 9: The above steps repeat till the termination of the application.
CHAPTER 3
IMPLEMENTATION
3.1 CONCEPTS:
The concepts and all used to implement the Restaurant Self-Service Application are:
1. Picaso Library
2. SQLite Database Connectivity
3. Rest API
Glide library is a Media loader library, in which Google has been using it to load images.
It is used to load the images into the images view. It has it’s own disk cache strategy to
load the multimedia.
It provides the GIF format and handles the image loading.
We can resize the image with respective of our screen.
Using specific functions we can fix the image crop and fit to the screen.
There is a third party application which is used to get images to the images view called
Glide transformations.
We are using glide library to load images from the web server into the image views.
To enter this activity first we need to enter the table number in the dialog, If we enter the
table number then only it will display the home activity else till we enter the table number
it will remain the same.
The above activity is the home screen which has three options place order, billing order
and history activity. When we click on place order button it directs to the menu activity
and we click on the billing button it directs to the billing activity. If we click on the
history button it directs to the history activity.
it shows all the categories which are present in the menu. If we know the item is present
in which category then we can directly click on that category and after clicking the
particular activity it redirects to the particular menu so we can directly select the item
from the menu. It saves time else browsing to each and every category.
All the eight categories which are present are displayed in a activity and then after
clicking the particular activity it is redirected to the menu activity. So we can browse
many items in any category.
For every item in the menu will be having the add button, so on the click of the button we
will be having the dialog box of adding number of quantities of the particular item and on
click of ok then the number of quantities of the particular items are saved.
Whenever the done button given in the order activity then it is redirected to confirm order
activity. It displays all the order given till now along with quantity and number of items.
Using content menu on click of the button or the array list it displays the two options:
Delete item and edit item. We can delete the item or delete the item from the list. When
the confirm order button is clicked then the order saved till now goes and store in the
local database in mobile.
Before confirming the activity if we want to change any item details or delete the item,
we can do in this activity. Using context menu option on the long press on the item we
will get two options to delete it or edit it. If we click on edit option we can edit the
number of quantities. If we want to remove the item, if we click on the item it deletes
from the current order.
In this activity we can see the order given by the respective table number. We cannot edit
any item in this activity. In this activity there is a button called pay, if we click the button
it takes to the payment activity.
In this activity it shows the total items and total bill need to be paid. Here we can select an
option of payment using card or cash. These are done using radio buttons. When we give
the pay option the account will be paid and pop up an alert box where we need to go back,
there are two options we can go back to home screen or exit.
In this activity it shows what and all orders has been generated, it shows each and every
detail about the order has been billed till now.
INTENTS
Intents are used to move from one activity to another activity. We need to mention the
application contents of the present activity and destination class name as parameters.
Snippet:
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
ACTIVITIES
An Android activity is a GUI component. It corresponds roughly to a window in a
desktop application. Since mobile phone screens are small, an activity typically takes up
the whole screen. They dictate the ui and handles the user interaction to the smart phone
screen.
FRAGMENTS
In Android a fragment is a fragment of a total user interface. A fragment typically only
takes up part of the screen. Fragments are used inside activities. Fragments can be reused
within different activities. Fragments typically contains Views and ViewGroups inside.
WIDGETS
Android widgets are GUI components which can be displayed outside of an activity.
Widgets are implemented and packaged as part of an Android application. Sometimes
Views in Android are also referred to as widget.
SERVICES
Android services are background processes that can be executed on an Android device,
even if no application is visible. Services do not need a user interface. A service could for
instance check a remote server for updates, or backup data every hour etc.
REST API
‘Glide’ is a fast and efficient open source media management and image loading
framework for Android that combines media decoding, memory and disk caching, and
resource pooling into a simple and easy to use interface.
Glide supports fetching and decoding all kind of images like video stills, image formats
(JPG, JPEG, PNG ) and animated GIFs.
It primarily focuses on loading images efficiently and as fast as possible into Image-
View. We are skipping the image decoding and encoding to byte-array as this library
does the work for us. It has its own image processing library support all the image
formats.
Snippet:
RECYCLER VIEW
Recycler View is used to display list of items in array. Items are displaced by Placeholder
or View Holder. Place holder is used in case of single column array and View Holder is
used in case we are using custom layout and to add bit more functionality like button or
text box etc. In this project we are using to display and manipulate the data stored the
SQLite database. We use Adapter Class to implement all the functions of the Recycler
View and to communicate with Parent-View class.
Snippet:
mRecyclerView=findViewById(R.id.rvBiller);
orderstatus=null;
dbhelper=new maincreate(this);
currentables=new ArrayList<>();
fooditemslist=new LinkedList<>();
spinnerArrayAdapter = new ArrayAdapter<>(this,
android.R.layout.simple_spinner_item, currentables);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dr
opdown_item);
t2.setAdapter(spinnerArrayAdapter);
t2.setOnItemSelectedListener(this);
mLayoutManager = new LinearLayoutManager(this);
mRecyclerView.setLayoutManager(mLayoutManager);
if(counter!=-1)
{
pb.setVisibility(View.GONE);
orderstatus="hidden";
table=prefs.getString("table","-1");
TextView textView=findViewById(R.id.customsetter);
CHAPTER 4
CONCLUSION
This project uses Database Management system which is very essential in many
applications such as hotel management, medical record management, etc. It has become
the one of the compulsory in every field which used to store the data and can be used for
the future reference. Swings are used for making to store data simpler. The user interfaces
are connected to the database so that the data entered in the swings are stored in the
database. The application is completely written in java which makes the program easy to
change. The project Restaurant service application can change the generation of taking
and storing the order. It can be replaced with the hand written order taken and billing. The
storage of data will be easier with this and make the execution easy.
4.1 Icon
Finally when the app is created then the app will be displayed on the screen of our
android mobiles. It looks like a normal application like others. When we open the app
then we can find all our activities in that.
CHAPTER 5
BIBLIOGRAPHY
2. Felker, Donn. "Common Android Intent Usage" For Dummies. Wiley. Retrieved 3
September 2013.
3. Deitel, Paul. & Deitel, Harvey. Mobile app development, [India: Pearson India
Education Services Pvt. Ltd., Tenth Edition, 2017].
5. Herbert. The Complete Reference on mobile app development, [India: McGraw Hill
Education Pvt. Ltd., Forth Edition, 2003], 37th Reprint 2016.