Tải bản đầy đủ (.pdf) (30 trang)

đồ án ứng dụng bán hàng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.02 MB, 30 trang )

ĐẠI HỌC QUỐC GIA TP. HỒ CHÍ MINH

TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN

BÁO CÁO CUỐI KÌ
ĐỒ ÁN 2
ĐỀ TÀI: ỨNG DỤNG BÁN HÀNG

Giảng viên hướng dẫn : ThS. Trần Anh Dũng
Sinh viên thực hiện: Nguyễn Xuân Son
MSSV: 19522141

Thành phố Hồ Chí Minh, 20 tháng 6 năm 2022



MỤC LỤC
Chương 1.

GIỚI THIỆU CHUNG ........................................................................2

1.1.

Lý do chọn đề tài .........................................................................................2

1.2.

Quá trình thực hiện ......................................................................................2

1.3.


Tổng quan về chức năng .............................................................................3

Chương 2.

CƠ SỞ LÝ THUYẾT ..........................................................................4

2.1.

Android Studio ............................................................................................4

2.2.

Java ..............................................................................................................5

2.3.

PHP .............................................................................................................6

2.4.

GitHub .........................................................................................................7

Chương 3.
3.1.

XÂY DỰNG HỆ THỐNG ................................................................71

Xây dựng kiến trúc hệ thống .....................................................................71

3.1.1.


Sơ đồ hệ thống ...................................................................................71

3.1.2.

Sơ đồ use case....................................................................................72

3.1.3.

Sơ đồ lớp............................................................................................92

3.1.4.

Cơ sở dữ liệu....................................................................................102

3.2.

Thiết kế giao diện ....................................................................................107

3.2.1.

Giao diện ứng dụng .........................................................................107

Chương 4.

KẾT LUẬN .....................................................................................142

4.1.

Kết quả đạt được .....................................................................................142


4.2.

Ưu điểm ...................................................................................................142

4.3.

Nhược điểm và giải pháp ........................................................................142

4.3.1.

Nhược điểm .....................................................................................142

4.3.2.

Giải pháp .........................................................................................142


DANH MỤC HÌNH
Hình 2.1-1: Android Studio.........................................................................................3
Hình 2.2-1: Ngơn ngữ lập trình Java ...........................................................................5
Hình 2.3-1: Ngơn ngữ lập trình PHP...........................................................................6
Hình 2.4-1: GitHub .....................................................................................................7
Hình 3.1-1: Sơ đồ hệ thống .......................................................................................71
Hình 3.1-2: Sơ đồ use c .............................................................................................72
Hình 3.1-3: Sơ đồ lớp ................................................................................................92
Hình 3.1-4: Sơ đồ logic của cơ sở dữ liệu ...............................................................102
Hình 3.2-1: Screen ..................................................................................................107
Hình 3.2-2: Đăng ký ................................................................................................108
Hình 3.2-3: Đăng nhập ............................................................................................109

Hình 3.2-4: Trang chủ .............................................................................................110
Hình 3.2-5: Trang điện thoại ...................................................................................111
Hình 3.2-6: Trang laptop .........................................................................................113
Hình 3.2-7: Trang chi tiết sản phẩm .......................................................................114
Hình 3.2-8: Trang giỏ hàng .....................................................................................116
Hình 3.2-9: Trang thanh tốn ..................................................................................118
Hình 3.2-10: Trang đơn hàng ..................................................................................120


DANH MỤC TỪ VIẾT TẮT

#

Từ viết tắt

Từ đầy đủ

Ý nghĩa

1

PHP

Hypertext Preprocessor

Ngôn ngữ kịch bản mã nguồn mở

2

CSDL


Cơ sở dữ liệu

Cơ sở dữ liệu cho ứng dụng

3

API

Application
Programming Interface

Giao diện lập trình ứng dụng

4

HTTP

HyperText Transfer
Protocol

Giao thức truyền siêu văn bản

5

MySQL

Structured Query
Language


Cơ sở dữ liệu quan hệ MySQL

6

MVC

Model-ViewController

Mơ hình lập trình

Bảng 1.1-1: Danh mục từ viết tắt


TÓM TẮT ĐỒ ÁN
Tên đồ án: Ứng dụng bán hàng
Nền tảng phát triển: Mobile – Android
Ngôn ngữ: Java – Hệ quản trị cơ sở dữ liệu: MySQL
Sơ lược đồ án:
Ứng dụng được xây dựng nhằm tạo ra môi trường bán hàng online cho các shop
kinh doanh nhỏ lẻ phục vụ nhu cầu mua sắm trực tuyến

1


Chương 1. GIỚI THIỆU CHUNG
Lý do chọn đề tài

1.1.

Hiện nay, nhu cầu mua sắm online của mọi người ngày một gia tăng . Cùng

với sự hạn chế đi lại do dịch covid 19 khiến mọi người dần chuyển sang hình thức
mua sắm trực tuyến. Để đáp ứng nhu cầu đó, em quyết định chọn đề tài này nhằm
cung cấp một shop online giúp kết nối giữa người bán và những khách hàng có nhu
cầu mua sắm online
Ứng dụng sẽ cung cấp cho người dùng những công cụ tốt nhất để người
dùng có thể tiếp cận đến những sản phẩm, mặt hàng dựa theo nhu cầu. Giúp người
mua và người bán thuận tiện nhất trong việc mua sắm, tiếp cận khách hàng
Quá trình thực hiện
Sau quá trình tìm hiểu và thực hiên đề tài,nhóm đã giải quyết các thắc mắc đã đề ra ban

1.2.

đầu,
giải quyết từng bước và đặt ra những vấn đề mới giúp cho bài đồ án mang tính logic và
hồn thiện hơn. Những điều mà nhóm làm được trong đề tài:
- Phân tích yêu cầu đề tài
- Lựa chọn công nghệ và nền tảng phát triển phù hợp với đề tài
- Nghiên cứu cơ sở lý thuyết của công nghệ đã chọn
- Áp dụng lý thuyết vào xây dựng ứng dụng thực tiễn
- Kiểm tra và khám phá các ứng dụng tương tự để tối ưu hoá và cải thiện thêm các tính
năng cho ứng dụng
1.3 Tổng quan về chức năng
Các chức năng chính bao gồm:

-

Đăng nhập, đăng ký , quên mật khẩu,…

-


Xem sản phẩm, chi tiết sản phẩm, thêm vào giỏ hàng, đặt hàng

-

Xem thông tin đơn hàng, chi tiết đơn hàng và trạng thái giao hàng,…

2


Chương 2. CƠ SỞ LÝ THUYẾT
2.1.

Android Studio

Hình 2.1-1: Android Studio
Android Studio là một phầm mềm bao gồm các bộ công cụ khác nhau dùng để
phát triển ứng dụng chạy trên thiết bị sử dụng hệ điều hành Android như các loại điện
thoại smartphone, các tablet... Android Studio được đóng gói với một bộ code editor,
debugger, các công cụ performance tool và một hệ thống build/deploy (trong đó có
trình giả lập simulator để giả lập môi trường của thiết bị điện thoại hoặc tablet trên
máy tính) cho phép các lập trình viên có thể nhanh chóng phát triển các ứng dụng từ
đơn giản tới phức tạp.

3


2.2.

Java


Hình 2.2-1: Ngôn ngữ lập trình Java
Java là một trong những ngơn ngữ lập trình hướng đối tượng, thường được sử
dụng trong phát triển phần mềm, trang web, game hay ứng dụng trên các thiết bị di
động.
Về đặc điểm của ngơn ngữ lập trình Java, Java dễ học và quen thuộc với đa số
người lập trình. Một chương trình được viết bằng ngơn ngữ Java có thể chạy tốt ở
nhiều mơi trường khác nhau. Java hỗ trợ lập trình đa tiến trình (multithread) để thực
thi các cơng việc đồng thời. Đồng thời cũng cung cấp giải pháp đồng bộ giữa các tiến
trình (giải pháp sử dụng priority…).

4


2.3.

PHP

Hình 2.3-1: Ngôn ngữ lập trình PHP
PHP là viết tắt của Hypertext Preprocessor. PHP là một ngôn ngữ kịch bản mã
nguồn mở, thông dịch và hướng đối tượng, được thực hiện ở phía máy chủ.
Đối với dự án di động, PHP được sử dụng để viết các Web API nhằm mục
đích giao tiếp với server database MySQL. API là viết tắt của Application
Programming Interface – giao diện lập trình ứng dụng. API cung cấp khả năng cung
cấp khả năng truy xuất đến một tập các hàm hay dùng. Và từ đó có thể trao đổi dữ
liệu giữa các ứng dụng. Web API là một phương thức dùng để cho phép các ứng dụng
khác nhau có thể giao tiếp, trao đổi dữ liệu qua lại. Dữ liệu được Web API trả lại
thường ở dạng JSON hoặc XML thông qua giao thức HTTP hoặc HTTPS.

5



2.4.

GitHub

Hình 2.4-1: GitHub
GitHub là một hệ thống quản lý dự án và phiên bản code, hoạt động giống như
một mạng xã hội cho lập trình viên. Các lập trình viên có thể clone lại mã nguồn từ
một repository và Github chính là một dịch vụ máy chủ repository cơng cộng, mỗi
người có thể tạo tài khoản trên đó để tạo ra các kho chứa của riêng mình để có thể
làm việc. Github có đầy đủ những tính năng của Git, ngồi ra nó cịn bổ sung những
tính năng về social để các developer tương tác với nhau.
Github cung cấp các tính năng social networking như feeds, followers, và
network graph để các developer học hỏi kinh nghiệm của nhau thông qua lịch sử
commit.

6


Chương 3. XÂY DỰNG HỆ THỐNG
3.1.

Xây dựng kiến trúc hệ thống

Hệ thống được xây dựng theo mơ hình MVC. Trong đó, các models giao tiếp với
database thơng qua các API
Model: Lưu trữ tất cả dữ liệu của ứng dụng. Bộ phận này là cầu nối giữa cơ sở
dữ liệu quản lý cả nhân và trình bày giao diện người dùng. Cho phép người dùng có thể
nhập và xuất đến các cơ sở dữ liệu lần lượt theo quyền của họ khi cần thiết và dữ liệu
sẽ được lưu dữ trên database.

View: giao diện người dùng, nơi người dùng có thể lấy được thông tin dữ liệu
của MVC thông qua các công thức truy vấn và ghi lại hoạt động của người dùng để
tương tác với Controller
Controller: xử lý yêu cầu từ người dùng thơng qua View. Từ đó, Controller gửi
dữ liệu hợp lý đến người dùng bằng các kết nối đến Model và trưng bày nó trên View
cho người dùng
3.1.1. Sơ đồ hệ thống

Hình 3.1-1: Sơ đồ hệ thống


3.1.2. Sơ đồ use case
3.1.2.1.

Sơ đồ use case

Hình 3.1-2: Sơ đồ use case


3.1.3. Cơ sở dữ liệu
3.1.3.1.

Sơ đồ logic

Hình 3.1-4: Sơ đồ logic của cơ sở dữ liệu
3.1.3.2.

Danh sách các quan hệ

(a) Bảng danh mục : Thông tin danh mục

STT

Thực thể

Kiểu dữ liệu

1

id

2

tensanpham

varchar(100)

3

hinhanh

text

Ghi chú

int(11)
Độc nhất. Không thay đổi.
Ảnh mặt hàng


Bảng 3.1-20: sanpham

(b) Bảng sanphamoi : Thông tin sản phẩm
STT

Thực thể

Kiểu dữ liệu

Ghi chú

1

id

2

tensp

varchar(250)

3

giasp

Varchar(100)

4

hinhanh

text


Ảnh sản phẩm

5

mota

text

Mô tả sản phẩm

6

loai

Int(2)

int(11)

Tên hiển thị. Có thể thay đổi
Giá của sản phẩm

Bảng 3.1-21:sanphamoi
(c) Bảng user: Thông tin người dùng
STT

Thực thể

Kiểu dữ liệu


1

id

2

Email

3

Pass

Varchar(250)

4

username

Varchar(100)

5

Mobile

Varchar(15)

Ghi chú

Int(11)


Varchar(250)

Email đăng ký, đăng nhập tài
khoản
Mật khẩu đăng nhập
Tên đăng nhập
Số điện thoại đăng ký


Bảng 3.1-22: User
(d) Bảng donhang: Thông tin đơn hàng
STT

Thực thể

Kiểu dữ liệu

Ghi chú

1

id

2

iduser

Int(11)

3


diachi

Text

4

sodienthoai

Varchar(255)

5

email

varchar(255)

6

soluong

Int(11)

7

tongtien

varchar(255)

Int(11)

Id người dùng đặt hàng
Địa chỉ nhận hàng

Số lượng mặt hàng đã đặt
Tổng số tiền sản phẩm

Bảng 3.1-23: donhang
(e) Bảng chitietdonhang: Thông tin chi tiết đơn hàng
STT
1

Thực thể

Kiểu dữ liệu

Ghi chú

Int(11)

iddonhang

2

idsp

Int(11)

Mã sản phẩm

3


soluong

Int(11)

Số lượng sản phẩm

4

gia

Varchar(255)

Giá thành sản phẩm
3.2.

hiết kế giao diện
3.2.1. Giao diện ứng dụng

T


Hình 3.2-1: Screen


(a) Đăng Ký

Hình 3.2-2: Đăng Ký
Đăng ký tài khoản cho người dùng bằng Email, số điện thoại, mật khẩu và tên
người dùng

STT

Tên đối tượng

Loại

1

Email

EditText

2

Username

EditText

3

Mobile

EditText

4

Password

EditText


Chức năng
Nhập Email đăng ký tài khoản

Nhập tên ngươi dùng

Nhập số điện thoại
Nhập mật khẩu người dùng


5

Password

EditText

Xác nhận lại mật khẩu

Bảng 3.2-1: Các đối tượng trên màn hình đăng ký
(b) Đăng Nhập

Hình 3.2-3: Đăng nhập
Cung cấp chức năng xác thực tài khoản người dùng có hợp lệ hay không ?
Nếu thông tin hợp lệ sẽ chuyển sang màn hình trang chủ
STT

Tên đối tượng

Loại

Chức năng


1

Email

EditText

Nhận email nhập vào

EditText

Nhập mật khẩu tương ứng

2

Mật Khẩu

3

Đăng Nhập

4

Quên mật khẩu

Textview

Yêu cầu đăng nhập vào hệ
thống
Quên mật khẩu người dùng


5

Đăng ký ngay

Textview

Đăng ký tài khoản

AppCompatButton


Bảng 3.2-2: Các đối tượng trên màn hình đăng nhập

(c) Trang Chủ

(d)
Hình 3.2-4: Trang chủ
Hiển thị banner quảng cáo, hiển thị danh sách các sản phẩm đang bán.

STT

Tên đối tượng

Loại

Chức năng

1


Tìm kiếm

AppCompatButton

Tìm kiếm sản phẩm

2

Giỏ hàng

AppCompatButton

Xem thơng tin giỏ hàng

3

Danh sách mặt
hàng

RecycleView

Hiển thị danh sách sản phẩm
đang được bán

Bảng 3.2-3: Các đối tượng trên Trang Chủ


(e) Điện Thoại

Hình 3.2-5: Trang mặt hàng

Đây là trang hiển thị các sản phẩm là Điện thoại đi động
STT

Tên đối tượng

Loại

Chức năng

1

Danh sách

RecycleView

Hiển thị danh sách điện thoại

Bảng 3.2-4: Các đối trượng trên trang điện thoại


(f) Laptop

Hình 3.2-6: Trang laptop
Trang hiển thị danh sách laptop đang bán

STT

Tên đối tượng

Loại


Chức năng

1

Danh sách

RecycleView

Hiển thị danh sách laptop

Bảng 3.2-5: Các đối tượng trên Trang laptop
(g) Chi tiết sản phẩm


Hình 3.2-7: Trang chi tiết sản phẩm

Trang hiển thị chi tiết thơng tin của một sản phẩm bất kì . Từ đây người dùng
có thể xem thơng tin chi tiết của sản phẩm đó và chọn số lượng để thêm vài giỏ hàng.
STT

Tên đối tượng

Loại

Chức năng

1

Tên sản phẩm


TextView

Hiển thị tên sản phẩm

2

Giá

TextView

Hiển thị giá thành của sản phẩm

3

Chọn số lượng

Spinner

Chọn số lượng sản phẩm

4

Thêm vào giỏ

AppCompatButton

Thêm đối tượng vào giỏ hàng

Bảng 3.2-6: Các đối tượng trên chi tiết sản phẩm



(h) Giỏ hàng

Hình 3.2-8: giỏ hàng

Đây là các màn hình hiển thị danh sách sản phẩm đã cho vào giỏ hàng .
Hiển thị tổng số tiền mà các sản phẩm đã được chọn cũng như chỉnh sửa số
lượng sản phẩm cần mua
STT

Tên đối tượng

Loại

1

Dách sách mặt
hàng

Item

2

Tổng tiền

TextView

Chức năng
Hiển thị các sản phẩm đã thêm

vào giỏ
Hiển thị tông tiền mặt hàng


Xác nhận mặt hàng đã chọn
3

Mua hàng

AppCompatButton

Bảng 3.2-7: Các đối tượng trên giỏ hàng

(i) Thanh tốn
Màn hình hiển thị tổng tiền , số điện thoại, email và địa chỉ khi đặt hàng . Có thể
thanh tốn trước khi nhận hàng hoặc sau khi nhận hàng

Hình 3.2-9: Trang thanh tốn
Màn hình này cho phép người dùng xem lại tổng tiền hàng đã mua . Nhập địa chỉ
nhận hàng và đặt hàng
STT

Tên đối tượng

Loại

1

Tổng tiền


TextView

Chức năng
Hiển thị tổng tiền hàng


×