PERFUME STORE MANAGEMENT New SYSTEM
PERFUME STORE MANAGEMENT New SYSTEM
By
V. DARANEEDARAN
(Register No: 225915111)
APRIL 2024
Department of Information Technology
Bishop Heber College (Autonomous)
Tiruchirappalli – 620 017, Tamil Nadu,
India
Phone No. : 0431–277 0136
CERTIFICATE
Examiners:
1.
2.
Ms. G. VANITHA, M.C.A, B.Ed., M.Phil., NET.,
Associate Professor,
Department of Information Technology,
Bishop Heber College (Autonomous),
Tiruchirappalli – 620017.
Date: 6758458
CERTIFICATE
I hereby declare that the work presented in this project work report is the
work done by me under the guidance of Ms. G. VANITHA, M.C.A, B.Ed., M.Phil.,
NET. Associate Professor of Information Technology Bishop Heber College
(Autonomous), Tiruchirapalli-620 017and has not been included in any other
project work submitted for any other degree.
Semester : FOURTH
First of all, I would thank ALMIGHTY GOD for giving abundant grace. Good
health and knowledge to do this Project.
DARANEEDARAN. V
ABSTRACT
The Perfume Store Management System has been meticulously crafted using
Java within the Android Studio environment. It offers a comprehensive set of modules
tailored to streamline shop operations. The system includes a secure login feature for
authorized access, enabling users to manage their details efficiently. Additionally, an
administrators can effortlessly add new products to the inventory, ensuring a dynamic
selection for customers. Moreover, the system features a user-friendly shopping page that
allows customers to browse and purchase accessories online, enhancing convenience and
accessibility The program's frontend is developed using Android Studio, providing an
intuitive user interface for seamless navigation and interaction. The backend is powered
by Firebase, offering robust cloud-based services for data storage, authentication, and
real-time updates, ensuring scalability, reliability, and security for our application. The
Perfume Store Management System automates product details, categories, and customer
orders. It minimizes manual efforts in inventory management and order processing,
ensuring streamlined operations. This system efficiently tracks customer details and
manages transactions, enhancing overall efficiency.
CONTENT
1 INTRODUCTION 1
2 SYSTEM STUDY 2
3 SYSTEM DESIGN 8
4 SYSTEM DEVELOPMENT 11
5 SYSTEM TESTING 34
6 SYSTEM IMPLEMENTATION 37
7 CONCLUSION 44
BIBLIOGRAPHY 45
1. INTRODUCTION
These stores may provide fragrance consultations, sample testing, and gift-
wrapping services, catering to individuals seeking personalized scent experiences. With
knowledgeable staff and a curated selection of fragrances, perfume stores strive to meet
the diverse preferences and tastes of their clientele while ensuring an enjoyable
shopping experience.
1
2. SYSTEM STUDY
System study, also known as systems analysis, is a crucial process in the field
of information technology and management. It involves the detailed examination and
evaluation of an existing system or the planning and design of a new system to address
specific business or organizational needs. Here are some key aspects of system study.
DISADVANTAGES
2
2.1.2 Proposed System
Our Perfume Store Management System optimizes inventory management,
customer data maintenance, and order tracking, significantly reducing time
consumption and ensuring operational efficiency. Unlike manual methods that are
prone to dispersed and duplicated data, our system prioritizes clear and efficient
information management, thereby streamlining operations for perfume stores. By
enhancing productivity and user experience, it revolutionizes the management of
perfume retail establishments.
ADVANTAGES:
1. User Login
Our user login page is meticulously crafted to provide a seamless and secure
entry point for accessing personalized accounts. It features a clean and intuitive design,
minimizing clutter and ensuring ease of navigation. Users are prompted to input their
registered email addresses and passwords, with optional assistance available through a
"Forgot Password" link for password recovery.
2.Admin Login
The Admin Login grants authorized access to our Perfume Store Management
System's administrative dashboard, enabling administrators to oversee crucial
operations such as inventory management and user account administration securely.
With exclusive privileges, administrators can ensure the efficient functioning of our
perfume store while maintaining the integrity and security of our system.
3
3.Category
Our Perfume Store Management System features a streamlined Category
Module, dividing fragrances into distinct categories for men and women. Customers
can easily navigate through a curated selection of scents tailored to their preferences.
From masculine, woody aromas to feminine, floral bouquets, our Category Module
ensures a personalized shopping experience for every individual.
4.Product Gallery
Our Perfume Store Management System includes gender-specific Product
Galleries, offering a wide range of fragrances for men and women. The men's gallery
features robust, woody scents, while the women's gallery showcases delicate florals and
sensual musks. With detailed descriptions and captivating visuals, customers can
effortlessly discover their perfect scent in a personalized shopping experience.
5.Cart
The Cart Module in our Perfume Store Management System simplifies the
shopping experience, allowing customers to effortlessly add desired fragrances. With
intuitive navigation and editing options, users can review and finalize their selections
with ease. Administrators benefit from streamlined order management tools, ensuring
efficient processing and fulfillment. From browsing to checkout, our Cart Module
enhances customer satisfaction and operational efficiency.
4
6.Add Customer Details
To add customer details, navigate to the designated section within the Perfume
Store Management System. Enter the required information, including name, contact
details, and any additional relevant data. Validate the input to ensure accuracy and
completeness. Save the details securely to the database for future reference and
streamline customer interactions. Finally, confirm the addition to complete the process
and maintain organized customer records.
8.Payment
Our payment page is the final step in securing your fragrance selections with
ease and confidence. Once you've chosen your desired perfumes and provided
necessary details, you'll be directed to our secure payment gateway. Here, you can
select your preferred payment method and securely enter your billing information. With
industry-standard encryption protocols in place, you can trust that your financial details
are safeguarded.
5
2.2 REQUIREMENT SPECIFICATION
Requirements analysis involves frequent communication with system users to
determine specific feature expectations, resolution of conflict or ambiguity in
requirements as demanded by the various users or groups of users, avoidance of feature
creep, and documentation of all aspects of the project development process from start
to finish. Energy should be directed towards ensuring that the final system or product
conforms to client needs rather than attempting to user expectations to fit the
requirements. Requirements analysis is a team effort that demands a combination of
hardware, software, and human factors engineering expertise as well as skills in
dealing with people.
6
WINDOWS
An operating system is software that communicates with the hardware and
allows others to run. It comprises the system software and other utilities. The Operating
system used as the platform to develop this project is Windows 11. It is a multi-user
operating system.
ANDROID STUDIO
Android Studio is the official Integrated Development Environment (IDE) for
Android application development. Android Studio provides more features that enhance
our productivity while building Android apps. Android Studio was announced on 16th
May 2013 at the Google I/O conference as an official IDE for Android app
development. It started its early access preview from version 0.1 in May 2013. The first
stable built version was released in December 2014, starting from version 1.0. Since
7th May 2019, Kotlin is Google's preferred language for Android application
development. Besides this, other programming languages are supported by Android
Studio.
FIREBASE
Firebase is a Backend-as-a-Service (Baas). It provides developers with a variety
of tools and services to help them develop quality apps, grow their user base, and earn
profit. It is built on Google’s infrastructure. Firebase is categorized as a NoSQL
database program, which stores data in JSON-like documents.
7
3. SYSTEM DESIGN
USER ADMINISTRATOR
VIEW
CATEGORY CUSTOMER
DETAILS
ADD
CUSTOMER
GALLERY DETAILS
ADD CART
VIEW
BILLING
DETAILS
ABOUT US
8
3.2 DATABASE DESIGN
Database design is the process of producing a detailed data model of database.
This data model contains all the needed logical and physical design choices and
physical storage parameters needed to generate a design in a data definition language,
which can then be used to create a database. A fully attributed data model contains
detailed attributes for each entity. A good database design is important in ensuring
consistent data, elimination of data redundancy, efficient execution of queries and high-
performance application. Taking the time to design a database saves time and
frustration during development, and a well-designed database ensures ease of access
and retrieval of information.
Admin Login
User Login
Customer Details
9
Product Information
Payment
10
4. SYSTEM DEVELOPMENT
Android Manifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<application
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Test3"
tools:targetApi="31">
<activity
android:name=".viewproducts"
android:exported="false" />
<activity
android:name=".aboutuspage"
android:exported="false" />
<activity
android:name=".cart"
android:exported="false" />
<activity
11
android:name=".womenpage"
android:exported="false" />
<activity
android:name=".menpage"
android:exported="false" />
<activity
android:name=".categorypage"
android:exported="false" />
<activity
android:name=".nextpage"
android:exported="false" />
<activity
android:name=".MainActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<meta-data
android:name="preloaded_fonts"
android:resource="@array/preloaded_fonts" />
</application>
</manifest>
12
Adminlogin.java
package com.example.perfumestore;
import androidx.appcompat.app.AppCompatActivity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import java.io.DataInputStream;
import java.net.HttpURLConnection;
import java.net.URL;
SharedPreferences sp1;
public static final String SHARED_PREFS1 = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_admin_login);
sp1 = getSharedPreferences(SHARED_PREFS1, Context.MODE_PRIVATE);
dlt = (EditText) findViewById(R.id.entaad1);
13
dlp =(EditText) findViewById(R.id.entappp1);
dl= (Button) findViewById(R.id.ok1);
@SuppressWarnings("deprecation")
14
+"/Android/perfume/adminlogin.php?username=" +duname+"&password="+dpwd;
Log.i("URL", ur);
URL url = new URL(ur);
HttpURLConnection uc = (HttpURLConnection) url.openConnection();
DataInputStream dis = new DataInputStream(uc.getInputStream());
String t = "";
} catch (Exception e) {
Log.i("Login Ex", e.getMessage());
}
return txt;
}
if (file_url.trim().equals("Success")) {
15
in.putExtra("dun",duname);
startActivity(in);
else if(file_url.trim().equals("failed")) {
Toast.makeText(getApplicationContext(), "User name and password
wrong", Toast.LENGTH_LONG).show();
dlt.setText("");
dlp.setText("");
}
else
{ Toast.makeText(getApplicationContext(), "Connet error",
Toast.LENGTH_LONG).show();}
pDialog.dismiss();
}
}
Userlogin.java
package com.example.perfumestore;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
16
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Username = findViewById(R.id.Username);
Password = findViewById(R.id.Password);
buttonLogin = findViewById(R.id.button);
buttonLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String username = Username.getText().toString();
String password = Password.getText().toString();
17
Toast.LENGTH_SHORT).show();
startActivity(new Intent(MainActivity.this, nextpage.class));
} else {
Toast.makeText(MainActivity.this, "Login unsuccessful",
Toast.LENGTH_SHORT).show();
}
}
});
}
}
Gallery.java
package com.example.perfumestore;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import java.util.List;
18
mProductList = productList;
}
@NonNull
@Override
public ProductViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int
viewType) {
View view = LayoutInflater.from(mContext).inflate(R.layout.item_product,
parent, false);
return new ProductViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ProductViewHolder holder, int position)
{
Product product = mProductList.get(position);
holder.textViewProductName.setText(product.getName());
holder.textViewProductDescription.setText(product.getDescription());
// Set other product details as needed
}
@Override
public int getItemCount() {
return mProductList.size();
}
19
textViewProductDescription =
itemView.findViewById(R.id.textViewProductDescription);
}
}
}
Addcart.java
package com.example.perfumestore
import androidx.appcompat.app.AppCompatActivity;
import android.app.Activity;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.HashMap;
20
EditText id,name,brand,price,customername,phone;
Button btninsert,btnview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_cart);
btninsert=findViewById(R.id.buttonSubmit);
btnview=findViewById(R.id.btnshow);
id=findViewById(R.id.Productid);
name=findViewById(R.id.ProductName);
brand=findViewById(R.id.Brand);
customername=findViewById(R.id.Customername);
phone=findViewById(R.id.CustomerPhoneno);
price=findViewById(R.id.ProductPrice);
databaseUsers = FirebaseDatabase.getInstance().getReference();
btninsert.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
InsertData();
21
}
});
}
databaseUsers.child("Products").child(head).setValue(user).addOnCompleteListener(
new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText(cart.this, "Product Details Insered",
Toast.LENGTH_SHORT).show();
}
}
});
}
}
22
Addcustomerdetails.java
package com.example.perfumestore;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.HashMap;
FirebaseDatabase db = FirebaseDatabase.getInstance();
DatabaseReference root = db.getReference().child("Customers");
EditText id,name,email,mobile,address;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_customer);
23
id=findViewById(R.id.cusid);
name=findViewById(R.id.cusname);
email=findViewById(R.id.cusemail);
mobile=findViewById(R.id.cusmobile);
address=findViewById(R.id.cusaddress);
Button btn = findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (TextUtils.isEmpty(id.getText().toString())){
id.setError("Please enter a customer ID");
return;}
if (TextUtils.isEmpty(name.getText().toString())){
name.setError("Customer Name is Must");
return;}
if (TextUtils.isEmpty(email.getText().toString())){
email.setError("Email is Compulsary");
return;}
if (TextUtils.isEmpty(mobile.getText().toString())){
mobile.setError("Mobile Number is Must");
return;}
customermap.put("customerid" , cusid);
customermap.put("customername" , cusname);
24
customermap.put("emailid" , cusemail);
customermap.put("mobilenumber" , cusmobile);
customermap.put("address" , cusaddress);
root.push().setValue(customermap).addOnCompleteListener(new
OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Toast.makeText(customer.this, "RECORD SAVED",
Toast.LENGTH_SHORT).show();
});
Button showup=findViewById(R.id.show);
showup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(customer.this, viewcustomer.class));
}
});
}
});
}
}
25
Viewcustomerdetails.java
package com.example.perfumestore;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.HashMap;
FirebaseDatabase db = FirebaseDatabase.getInstance();
DatabaseReference root = db.getReference().child("Customers");
EditText id,name,email,mobile,address;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_customer);
26
id=findViewById(R.id.cusid);
name=findViewById(R.id.cusname);
email=findViewById(R.id.cusemail);
mobile=findViewById(R.id.cusmobile);
address=findViewById(R.id.cusaddress);
Button btn = findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (TextUtils.isEmpty(id.getText().toString())){
id.setError("Please enter a customer ID");
return;}
if (TextUtils.isEmpty(name.getText().toString())){
name.setError("Customer Name is Must");
return;}
if (TextUtils.isEmpty(email.getText().toString())){
email.setError("Email is Compulsary");
return;}
if (TextUtils.isEmpty(mobile.getText().toString())){
mobile.setError("Mobile Number is Must");
return;}
String cusid = id.getText().toString();
String cusname = name.getText().toString();
String cusemail = email.getText().toString();
String cusmobile = mobile.getText().toString();
String cusaddress = address.getText().toString();
customermap.put("customerid" , cusid);
customermap.put("customername" , cusname);
customermap.put("emailid" , cusemail);
customermap.put("mobilenumber" , cusmobile);
customermap.put("address" , cusaddress);
27
root.push().setValue(customermap).addOnCompleteListener(new
OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Toast.makeText(customer.this, "RECORD SAVED",
Toast.LENGTH_SHORT).show();
});
Button showup=findViewById(R.id.show);
showup.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(customer.this, viewcustomer.class));
}
});
}
});
}
}
28
Viewproductdetails.java
package com.example.perfumestore;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.content.Intent;
import android.os.Bundle;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.ValueEventListener;
import java.util.ArrayList;
import java.util.List;
@Override
public void onBackPressed() {
super.onBackPressed();
startActivity(new Intent(viewproduct.this, addcart.class));
finish();
}
29
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_viewproduct);
recyclerView = findViewById(R.id.recycleview);
databaseReference = FirebaseDatabase.getInstance().getReference("Products");
list = new ArrayList<>();
recyclerView.setLayoutManager(new LinearLayoutManager(this));
adapter = new NandhaAdapter(this,list);
recyclerView.setAdapter(adapter);
databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for( DataSnapshot dataSnapshot :snapshot.getChildren())
{
User user = dataSnapshot.getValue(User.class);
list.add(user);
}
adapter.notifyDataSetChanged();
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
}
}
30
Payment.java
package com.jo.perfumestore;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import java.net.URLEncoder;
Intent is = getIntent();
31
String rupee =is.getStringExtra("rupee");
t1.setText("Total : \u20B9"+rupee);
Button b=findViewById(R.id.bpays);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String pid=is.getStringExtra("pid");
String uid =is.getStringExtra("uid");
String pname =is.getStringExtra("pname");
String count =is.getStringExtra("count");
String rupee =is.getStringExtra("rupee");
String pimg =is.getStringExtra("pimg");
uploadT.doDataUpload("http://"+MainActivity.serverip+"/Android/moviebooking/pa
yment.php?" +
"pid="+ URLEncoder.encode(pid)
+"&uid="+URLEncoder.encode(uid)+
"&quantity="+URLEncoder.encode(pname)+
"&count="+URLEncoder.encode(count)+
"&paytype="+URLEncoder.encode("Online Payment")+
"&rupee="+ URLEncoder.encode(rupee)+
"&bank="+URLEncoder.encode(e1.getText().toString())+
"&card="+URLEncoder.encode(e2.getText().toString())+
"&cno="+URLEncoder.encode(e3.getText().toString())+
"&cvv="+URLEncoder.encode(e4.getText().toString())+
"&choldername="+URLEncoder.encode(e5.getText().toString())
+
"&pimg="+ URLEncoder.encode(pimg),handler);
}
32
});
}
Handler handler = new Handler() {
@SuppressLint("HandlerLeak")
@Override
public void handleMessage(Message msg) {
// Log.i(TAG, "Handler " + msg.what);
if (msg.what == 1) {
startActivity(ii);
} else
Toast.makeText(getApplicationContext(), "Error",
Toast.LENGTH_SHORT).show();
};
33
5. SYSTEM TESTING
34
5.3. INTEGRATION TESTING:
Testing of integrated modules to verify combined functionality after integration.
Modules are typically code modules, individual applications, client and server
applications on a network, etc. This type of testing is especially relevant to client/server
and distributed system.
35
5.4. VALIDATION TESTING
This model of testing is extremely important especially if someone wants to be
one of the best software testers. The software verification and validation testing are the
process after the validation testing stage is secondary to verification testing.
36
6. SYSTEM IMPLEMENTATION
System Implementation is the stage of the project when the theoretical design
is turned out into a working system. Thus, it can be consider being the most critical
stage in achieving a successful new system and in giving the user, confidence that the
new system will work and be effective.
37
6.2.2 Admin Login Page
This admin login page is used for logging into the admin module
38
6.2.4 Home Screen Page
This home screen page is used to access the various pages in this app.
39
6.2.6 Men Perfume Gallery Page
In this page shows the Perfume Gallery of Men.
40
6.2.8 Customer details entry Page
In this page used to add the customer details.
41
REPORT:
Payment Details
42
User and Password Page
43
7.CONCLUSION
44
BIBLIOGRAPHY
Books References:
Web References:
1.https://www.instructables.com/How-To-Create-An-Android-App-With-Android-
Studio/
2. https://www.wikihow.com/Create-an-App-with-Android-Studio
3. https://www.geeksforgeeks.org/android-studio-tutorial/
45