1. Trang chủ
  2. » Tất cả

Thiết-kế-phần-mềm-bán-hàng-online (2)

42 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 42
Dung lượng 1,55 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Người tiêu dùng tìm thấy một sản phẩm quan tâm bằng cáchtrực tiếp truy cập trang web của nhà bán lẻ hoặc tìm kiếm trong số các nhàcung cấp khác sử dụng công cụ tìm kiếm mua sắm, hiển

Trang 1

MỤC LỤC

DANH MỤC HÌNH 2

CHƯƠNG 1: TỔNG QUAN 4

1.1 Khảo sát hiện trạng 4

1.2 Mục đích và ý nghĩa của đề tài 5

1.2.1 Mục đích 5

1.3 Nhiệm vụ của đề tài 6

1.3.1 Về lý thuyết 6

1.3.2 Về chương trình 7

1.4 Cách thức triển khai 7

1.5 Phạm vi đề tài 7

CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 8

2.1 Lý thuyết về Android 8

2.1.1 Lịch sử Android 8

2.1.2 Kiến trúc của Android 9

2.2 Những thành phần cơ bản của ứng dụng Android 11

2.3 Mô hình Client – Server 13

2.3.1 Khái niệm 13

2.3.2 Nguyên tắc hoạt động của mô hình Client – Server 14

CHƯƠNG 3: THIẾT KẾ ỨNG DỤNG 17

3.1 Phân tích chức năng chính ứng dụng 17

3.1.1 Hiển thị danh sách thực đơn 17

3.1.2 Hiển thị chi tiết sản phẩm 17

3.1.3 Thêm sản phẩm vào giỏ 17

3.1.4 Chức năng đặt hàng 18

3.1.5 Các chức năng của người quản lý bên nhà hàng 18

3.2 Đặc tả yêu cầu 18

3.2.1 Cách thức hiển thị 18

Trang 2

3.2.2 Cách thức mua sắm 18

3.3 Thiết kế các đối tượng tham gia trong phần mềm 19

3.4 Chương trình thực nghiệm 22

3.4.1 Màn hình trang chủ 22

3.4.2 Màn hình chi tiết sản phẩm 28

3.4.3 Màn hình giỏ hàng 31

3.4.4 Quản lý đơn hàng trên server……….………

34 3.4.5 Trạng thái đơn hàng trên server……… 37

3.5 Kết quả đạt được 38

KẾT LUẬN 39

TÀI LIỆU THAM KHẢO 41

DANH MỤC HÌNH Hình 2.1: Mô hình tổng quan các thành phần của hệ điều hành Android……

11 Hình 2.2: Vòng đời một Activity……….13

Hình 3.1: Màn hình trang chủ……… 24

Hình 3.2: Màn hình chi tiết sản phẩm………

….30 Hình 3.3: Màn hình Database Manager……… 37

Hình 3.4: Danh sách đơn hàng đã đặt thành công ……… 38

Hình 3.5: Trạng thái đang giao trên phpMyadmin……… 38

Hình 3.6: Trạng thái hủy trên phpMyadmin………39

Trang 3

MỞ ĐẦU

Kinh doanh online đang ngày càng trở thành trong số những hình thứckinh doanh phổ biến và được không ít người lựa chọn do những ưu điểm tuyệtvời của nó Kinh doanh mua bán online đang ngày càng cách tân và phát triểnbởi nhiều ưu điểm vượt trội mà nó đem lại, giúp đôi bên tiết kiệm chi phí, thờigian cũng như công sức Ba lý do chung nhất để người Việt Nam chọn muasắm trên mạng chính là thuận lợi, dễ tiếp cận và Chi phí Có đến 62% chấpnhận rằng mua hàng online giúp tiết kiệm thời điểm Cùng với đó 55% chorằng mua hàng trên mạng thuận tiện hơn ra cửa hàng và có thể mua bất kỳ lúcnào

Trong bối cảnh đại dịch COVID-19, khu vực doanh nghiệp xã hội càngtrở nên “nhạy cảm” hơn Theo kết quả nghiên cứu của Trung tâm Khởi nghiệp

và sáng tạo xã hội thì COVID-19 đã khiến các DNXH giảm doanh thu 66%,lợi nhuận 69% và nhân sự 32%

Trên cơ sở kiến thức đã học trên nhà trường và quá trình tìm hiểu trongthực tế, em đã quyết định chọn đề tài “Thiết kế phần mềm bán hàng online”

Em xin gửi lời cảm ơn chân thành tới thầy Nguyễn Anh Dũng đã quan tâmgiúp đỡ, hướng dẫn em hoàn thành tốt đồ án này trong suốt thời gian qua

Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của mộtsinh viên, đồ án này không thể tránh khỏi những thiếu sót Em rất mong nhậnđược sự chỉ bảo, đóng góp ý kiến của thầy cô để em có thể bổ sung, phục vụtốt cho công việc thực tế sau này

Trang 4

CHƯƠNG 1: TỔNG QUAN 1.1 Khảo sát hiện trạng

Mua sắm trực tuyến là một dạng thương mại điện tử cho phép kháchhàng trực tiếp mua hàng hóa hoặc dịch vụ từ người bán qua Internet sử dụngtrình duyệt web Người tiêu dùng tìm thấy một sản phẩm quan tâm bằng cáchtrực tiếp truy cập trang web của nhà bán lẻ hoặc tìm kiếm trong số các nhàcung cấp khác sử dụng công cụ tìm kiếm mua sắm, hiển thị sự sẵn có và giácủa sản phẩm tương tự tại các nhà bán lẻ điện tử khác nhau Kể từ năm 2016,khách hàng có thể mua sắm trực tuyến bằng nhiều loại máy tính và thiết bịkhác nhau, bao gồm máy tính để bàn, máy tính xách tay, máy tínhbảng và điện thoại thông minh

Dịch COVID-19 đang làm người tiêu dùng thay đổi thói quen mua sắm,việc hạn chế đi đến chỗ đông người đã đem lại cơ hội lớn cho kênh mua sắmonline, đặt hàng từ nhà Nhiều người tiêu dùng chọn mua sắm online để hạnchế số lần phải đến các cửa hàng mua sắm trực tiếp, giảm nguy cơ lây nhiễmdịch bệnh

Theo tờ báo Công thương – cơ quan ngôn luận của bộ công thương, tìmhiểu về thị trường trong nước thì mua sắm online đang tiếp tục lên ngôi hậudịch COVID-19 Giỏ hàng “mùa dịch” được nạp đầy với ba nhóm chính:thực phẩm cần thiết/tiện lợi, các sản phẩm vệ sinh và sản phẩm giúp tăngcường sức khỏe Ngoài ra, với chiến dịch stayhome, những mặt hàng liênquan đến nhu cầu kết nối, các nhu cầu xã hội như đồ ăn vặt, các sản phẩmgiúp đơn giản hóa việc nấu ăn, sản phẩm chăn sóc cá nhân cũng cho thấy sựtăng trưởng tích cực Người tiêu dùng cũng chi tiêu cho các mặt hàng thuộc

về thói quen như: kẹo, cà phê… đặc biệt là người dân thành thị Các mô hình

Trang 5

tuyến đóng vai trò quan trọng trong tăng trưởng của nhóm hàng tiêu dùngnhanh Trong đó, mua sắm trực tuyến được đánh giá cao ở tính tiện lợi và

“hạn chế tiếp xúc”, siêu thị mi ni được chọn vị trí gần nhà cho các nhu cầu cơbản trong một khoảng thời gian ngắn Đối với các kênh siêu thị và đại siêu thị,

số giao dịch tăng lên đáng kể trước khi lệnh giãn cách và được dự đoán sẽ còntiếp diễn và dần về lại mức bình thường khi nhu cầu tích trữ hàng giảm

Ngày nay, lý do người tiêu dùng chọn mua sắm trực tuyến gồm: Sựthuận tiện; hàng hóa phong phúc đa dạng, dễ lựa chọn; nhiều ưu đãi, khuyếnmại Tuy nhiên, kèm theo đó là những lo ngại như: Sản phẩm chất lượng kém;vấn nạn hàng giả, hàng nhái; dịch vụ giao hàng, bảo hành kém

1.2 Mục đích và ý nghĩa của đề tài

1.2.1 Mục đích

Tránh khỏi những phiền phúc khó chịu: Một trong những lý do khiếnnhiều người ngại ra ngoài mua sắm là sợ phải gặp cảnh kệt xe, khói bụi, nắngnóng

Dễ dàng tiếp cận được nhiều sản phẩm của cửa hàng mà không mấtthời gian

Tiết kiệm và chủ động được thời gian: Bất cứ khi nào, dù một giờ trưahay mười hai giờ khuya, bạn vẫn có thể đặt hàng mà không phụ thuộc vào giờ

mở cửa của các trung tâm mua sắm

Tiết kiệm tiền bạc: Mô hình kinh doanh online giúp các chủ cửa hàngtiết kiệm đáng kể về chi phí mặt bằng

Thanh toán Tiện lợi và an toàn

1.2.2 Ý nghĩa của đề tài

Trước hết, đề tài “Thiết kế phần mềm bán hàng online” là một ứngdụng được xây dựng để thể hiện việc áp dụng được những kiến thức quý báu

đã được các thầy cô của trường Đại học Công Nghiệp Hà Nội nhiệt tìnhtruyền đạt lại cho chúng em Đặc biệt là sự theo dõi và quan tâm giúp đỡ của

Trang 6

Thứ hai, đây là những kinh nghiệm quý giá và thiết thực mà em cóđược trong quá trình thực hiện đề tài này sẽ là hành trang quý báu giúp ích rấtnhiều cho công việc và tương lai phía trước của mình.

Thứ ba, trong thời đại công nghệ thông tin phát triển phổ biến như hiệnnay, công nghệ không ngừng được cải tiến, những công nghệ mới ra đời đòihỏi người lập trình viên phải tiếp thu và áp dụng những kiến thức mới vàothực tiễn Điều đó, được thể hiện qua sự cố gắng của em khi quyết định thựchiện đề tài này với công nghệ được coi là phổ biến nhất và được dự báo sẽphát triển vô cùng mạnh mẽ trong tương lại vì tính thực tiễn của nó

Vì vậy, em mong muốn sẽ tạo nên một sản phẩm hoàn chỉnh nhất có thể

để đáp lại sự nhiệt tình giúp đỡ từ thầy cô và cả tâm huyết của em khi quyếtđịnh thực hiện đề tài này

1.3 Nhiệm vụ của đề tài

1.3.1 Về lý thuyết

Đề tài “Thiết kế phần mềm bán hàng online” là một ứng dụng chạy trênđiện thoại sử dụng hệ điều hành Android

Ứng dụng bao gồm:

- Một hostinger để làm server cho ứng dụng

- Các dữ liệu liên quan đến cửa hàng

- Phần mềm mua sắm online phát triển trên di động hệ điều hànhAndroid dành cho người tiêu dùng

Dưới đây là những chức năng chính mà em dự định phát triển ở phiênbản đầu tiên của ứng dụng này:

Hiển thị các chương trình quảng cáo sản phẩm tới người tiêu dùng.Tiếp cận sản phẩm tới người dung một cách hiệu quả nhất

Khách hàng lựa chọn đồ uống trong thực đơn của cửa hàng, đồ uống sẽgồm các thông tin làm nổi cho nó: tên, kích thước, loại

Trang 7

Để tiện theo dõi quá trình đạt đơn hàng, sẽ có một phần mềm quản lýđơn hàng trên cơ sở dữ liệu Cụ thể ở đây sẽ là phpMyAdmin.

Trong phần mềm đó, nhà quán lý có thể thống kê được các đơn hàng,them, sửa xóa sản phẩm và đưa ra các chính sách phù hợp với cửa hàng

1.3.2 Về chương trình

Chương trình thực hiện được các yêu cầu của đề tài tốt nghiệp

Ứng dụng đã phần nào xây dựng và đáp ứng chức năng chính:

- Người tiêu dùng tiếp cận được với các chương trình đang và sắp diễn ratại cửa hàng

- Giao diện thân thiện dễ sử dụng

- Lựa chọn các đồ uống trong thực đơn hiện có tại cửa hàng

- Thiết kế ứng dụng cho người dùng mua hàng được từ xa

Mô tả ứng dụng:

- Hiển thị sản phẩm từ máy chủ về các ứng dụng

- Cho phép người dùng xem chi tiết về sản phẩm

- Người tiêu dùng có thể thêm sản phẩm vào giỏ hàng của mình

- Máy chủ sẽ nhận thông tin của người tiêu dùng khi đặt hàng thànhcông

1.4 Cách thức triển khai

Để xây dựng được một ứng dụng đặt đồ uống, em đã thực hiện cácphần từ triển khai một ứng dụng hoàn chỉnh theo các bước sau:

- Khảo sát lấy ý kiến từ các chủ cửa hàng ở khu vực, người tiêu dùng, tài

xế chạy xe ôm công nghệ đồ ăn như nowfood, baemin

- Nghiên cứu công nghệ phát triển ứng dụng bán hang online chạy trên

hệ điều hành Android Studio

- Thiết lập máy chủ bán hàng làm nơi truy xuất dữ liệu

- Xây dựng cơ sở dữ liệu trên máy chủ

Trang 8

Từ những ý kiến đóng góp mà em sẽ thiết kế một bảng đổi tượng gồmcác mối quan hệ liên kết với nhau, thiết kế giao diện và lấy dữ liệu từ cơ sở dữliệu trả về để hiển thị

1.5 Phạm vi đề tài

Hiện nay tình hình dịch bệnh đang diễn biến ngày càng phức tạp, tâm

lý mua hàng khi ra đường của mọi người cũng bị ảnh hướng Để không làmảnh hưởng đến công việc cũng như doanh thu của cửa hàng, sản phẩm này đãđược ra đời nhắm phục vụ người tiêu dung Sản phẩm có thể sử dụng rộng rãi

Android là hệ điều hành được thiết kế dành cho các thiết bị di độngmàn hình cảm ứng với mã nguồn mở và dựa trên nền tảng Linux

Cha đẻ của Android là một kỹ sư công nghệ yêu thích robot tên AndyRubin sáng chế ra Trong những ngày đầu mới hình thành, hệ điều hành

Trang 9

chóng nhận ra rằng hệ điều hành này đã không còn phù hợp với thị trườngmáy ảnh kỹ thuật số nữa và đã chuyển sang điện thoại di động.

Rubin đã đem dự án này giới thiệu với công ty Danger và từ nhữngkinh nghiệm trong nhiều năm làm việc, nghiên cứu ông đã tạo ra một chiếcđiện thoại mới với hệ thống bàn phím trượt cổ điển với tên gọi là T-MobileSidekick

Nhưng chỉ sau khoảng một năm rưỡi hoạt động thì dự án Android nàyphải dừng hoạt động vì cạn kiệt chi phí Rubin đã đề nghị với công tySamSung về việc bán lại dự án nhưng lại bị từ chối Nhưng vận may của ôngvẫn chưa hết, minh chứng đó là sự kết hợp hoàn hảo của Android và Googlevào năm 2005

Với sự trợ giúp của Google, Android đã từng bước phát triển và đạtđược những thành tựu như ngày hôm nay Mặc dù Google không phải là nơisinh ra hệ điều hành Android, nhưng nó là nơi khiến Android được tái sinhmột lần nữa

2.1.2 Kiến trúc của Android

“Understanding Android” là cách mà ta tiếp cận lập trình Android vàthấu hiểu kến trúc hệ thống của nó Chúng ta có thể không cần hiểu rõ cấutrúc của một hệ điều hành nhưng chúng ta có thể lập trình một ứng dụng trên

hệ điều hành đó, đây là điều mà nhà sản xuất muốn khi release SDK với mộtframework có sẵn của họ Như chúng ta biết điều này cũng có mặt tốt và xấu

Framework là một tầm cao cấp dành cho lập trình viên, nó đều có giớihạn của nó chúng ta có thể chỉ có thể lập trình những ứng dụng phổ biếnnhưng không nên tiến tới những ứng dụng cao cấp đi sâu vào hệ thống của hệđiều hành

Trang 10

Hình 2.1: Mô hình tổng quan các thành phần của hệ điều hành AndroidTầng Linux Kernel:

Ở dưới cùng của các tầng trên là Linux – Linux 2.6 với khoảng 115 bản válỗi Tầng này cung cấp chức năng hệ thống cơ bản như quản lý các tiến trình,quản lý bộ nhớ, quản lý thiết bị như máy ảnh, bàn phím, màn hình hiển thị,v.v…Ngoài ra, nhân Linux xử lý tất cả các vấn đề về Mạng và một loạt cáctrình điều khiển thiết bị giao tiếp với phần cứng ngoại vi

Libraries:

Tầng này là một tập hợp các thư viện bao gồm trình duyệt web mã nguồn

mở sử dụng WebKit engine, thư viện libc, cơ sở dữ liệu SQLite là một kholưu trữ hữu ích cho việc lưu trữ và chia sẻ dữ liệu của ứng dụng, có các thưviện để chơi/ghi lại âm thanh và video, các thư viện SSL chịu trách nhiệm vềbảo mật Internet, v.v…

Android Runtime:

Đây là phần thứ ba của kiến trúc Android Phần này cung cấp một thànhphần quan trọng được gọi là Dalvik Virtual Machine – một loại máy ảo Javađược thiết kế đặc biệt và tối ưu hóa cho Android

Trang 11

Dalvik VM sử dụng các tính năng cốt lõi của Linux như quản lý bộ nhớ và

đa luồng, những tính năng này đều có trong ngôn ngữ Java Dalvik VM chophép tất cả các ứng dụng Android chạy trong tiến trình riêng của nó

Android Runtime cũng cung cấp một tập các thư viện lõi cho phép các nhàphát triển ứng dụng Android viết các ứng dụng Android sử dụng ngôn ngữ lậptrình Java (J2SE)

Application Framework:

Tầng Application Framework cung cấp nhiều dịch vụ cấp cao hơn cho cácứng dụng trong ở dạng các class trong Java Các nhà phát triển ứng dụngđược phép sử dụng các dịch vụ này trong các ứng dụng của họ (Ví dụ: dịch

Trang 12

Là thành phần tối quan trọng của bất kỳ một ứng dụng Android nào Thuậtngữ Activity chỉ một việc mà người dùng có thể thực hiện trong một ứng dụngAndroid Do gần như mọi activity đều tương tác với người dùng, lớp Activityđảm nhận việc tạo ra một cửa sổ (window) để người lập trình đặt lên đó mộtgiao diện UI với setContentView(View) Một activity có thể mang nhiều dạngkhác nhau: Một cửa sổ toàn màn hình (full screen window), một cửa sổfloating (với windowsIsFloating) hay nằm lồng bên trong 1 activity khác (vớiActivityGroup).

Hình 2.2: Vòng đời một Activity

- Có 2 phương thức mà gần như mọi lớp con của Activity đều phải hiệnthực:

- onCreate(Bundle) - Nơi khởi tạo activity Quan trọng hơn, đây chínhngười lập trình gọi setContentView(int) kèm theo layout để thể hiện UIcủa riêng mình Đồng thời còn có findViewById(int) giúp gọi cácwidget (buttons, text boxes, labels, ) để dùng trong UI

Trang 13

- onPause() - Nơi giải quyết sự kiện người dùng rời khỏi activity Mọi dữliệu được người dùng tạo ra tới thời điểm này cần phải được lưu vàoContentProvider.

- Ngay sau phương thức này nó sẽ gọi onResume() nếu Activity được kích hoạt lại ngay, hoặc gọi OnStop() nếu Activity bị ẩn đi

- Để có thể sử dụng Context.startActivity(), mọi lớp activity đều phảiđược khai báo với tag <activity> trong file AndroidManifest.xml

- onStop(): Được gọi khi nó bị ẩn đi Sau phương thức này, Activity có thể gọi onRestart() nếu nó được người dùng kích hoạt lại hoặc

báo trong file AndroidManifext.xml.

Cũng như các đối tượng của ứng dụng khác, services chạy trên luồng(Thread) của tiến trình chính Có nghĩa là nếu service của bạn dự định chạycác hành vi có cường độ lớn hoặc các hành vi có thể gây nghẽn mạch, nó sẽ tựsinh ra luồng (Thread) của chính nó để làm thực hiện các tác vụ được đặc tảtrong Service

Content Provider:

- Content Provider là cơ chế cho phép chia sẻ dữ liệu giữa các ứng dụngvới nhau Bất kỳ ứng dụng nào đều có thể cung cấp cho ứng dụng kháckhả năng truy cập dữ liệu của mình thông qua Content Provider với các

Trang 14

chức năng thêm, bớt, truy vấn dữ liệu Việc truy cập này được cung cấpthông qua URI định nghĩa và cung cấp bởi Content Provicder

- Dữ liệu chia sẻ ở dạng một file hoặc CSDL SQLite Các ứng dụng gốcAndroid cung cấp sẵn nhiều Content Provider cho phép ứng dụng truycập dữ liệu như trình danh bạ, quản lý file media Hiện nay ContentProvider tồn tại trong hệ thống Android với Content Resolver

hệ thống phát ra, phù hợp với loại ứng dụng đăng ký thì nó sẽ nhậnđược khi chạy Khi nhận được thì Receiver có 5 giây để hoàn thành tác

vụ (như tạo notification chẳng hạn) Broadcast Receiver thi hành ởbackground (nền) và không có giao diện người dùng

và trả kết quả về cho máy khách

Trang 15

2.3.2 Nguyên tắc hoạt động của mô hình Client – Server

Trong mô hình Client Server, server chấp nhận tấy cả các yêu cầu hợp

lệ từ mọi nơi khác nhau trên mạng, sau đó trả kết quả về máy tính đã gửi yêucầu

Máy tính được coi là máy khách khi chúng làm nhiệm vụ gửi yêu cầuđến các máy chủ và đợi câu trả lời được gửi về

Để máy khách và máy chủ có thể giao tiếp được với nhau thì giữachúng phải có một chuẩn nhất định, và chuẩn đó được gọi là giao thức Một

số giao thức được sử dụng phổ biến hiện nay như: HTTPS, TCP/IP, FTP,

Nếu máy khách muốn lấy được thông tin từ máy chủ, chúng phải tuântheo một giao thức mà máy chủ đó đưa ra Nếu yêu cầu đó được chấp nhận thìmáy chủ sẽ thu thập thông tin và trả về kết quả cho máy khách yêu cầu Bởi vìServer - máy chủ luôn luôn trong trạng thái sẵn sàng để nhận request từ clientnên chỉ cần client gửi yêu cầu tín hiệu và chấp nhận yêu cầu đó thì server sẽtrả kết quả về phía client trong thời gian ngắn nhất

2.3.3 Ưu và nhược điểm mô hình Client – Server

Ưu điểm của mô hình client server là với mô hình client server thì mọithứ dường như đều nằm trên bàn của người sử dụng, nó có thể truy cập dữliệu từ xa (bao gồm các công việc như gửi và nhận file, tìm kiếm thông tin,…)với nhiều dịch vụ đa dạng mà mô hình cũ không thể làm được Mô hìnhclient/server cung cấp một nền tảng lý tưởng cho phép tích hợp các kỹ thuậthiện đại như mô hình thiết kế hướng đối tượng, hệ chuyên gia, hệ thông tinđịa lý (GIS)…

Trang 16

Một trong những vấn đề nảy sinh trong mô hình này đó là tính an toàn

và bảo mật thông tin trên mạng Do phải trao đổi dữ liệu giữa 2 máy ở 2 khuvực khác nhau cho nên dễ dàng xảy ra hiện tượng thông tin truyền trên mạng

2.4.2 Ưu điểm

Tăng hiệu quả công tác quản lý cơ sở dữ liệu:

- PhpMyAdmin không chỉ được xem là một công cụ hoàn hảo để duyệt

cơ sở dữ liệu, thực hiện truy vấn SQL, quản lý các đặc quyền ngườidùng mà còn được coi là một công cụ quản trị đầy đủ tính năng

- Sử dụng phpMyAdmin, ta có thể làm việc với một đối tượng, vừa xử lýcác tình huống bất ngờ nảy sinh

Trang 17

Chính vì phpMyAdmin là một mã nguồn mở nên cũng có một số hạnchết nhất định về bảo mật Tuy nhiên phiên bản hiện tại đã được khắc phụctạm thời lỗi này Dù vậy, để tránh rủi ro, tốt nhất bạn cũng nên hạn chế truycập vào địa chỉ URL của phpMyAdmin từ địa chỉ IP cô định.

Sao lưu dữ liệu chưa tốt Chức năng export/import còn một số thiếu sótnhư là:

- Nén, mã hóa và những tùy chọn khác: những tệp được xuất bằngPhpMyAdmin được lưu trữ dưới dạng text files phổ biến Dạng lưu trữnày không chỉ không an toàn mà còn chiếm nhiều dung lượng đĩa lớn

- Hỗ trợ phương tiện lưu trữ truyền thông: Với tính chất là một phầnmềm nằm trên web nên PhpMyAdmin chỉ kết nối với người dùng quatrình duyệt web Do đó, người dùng chỉ có thể lưu trữ những bản saolưu vào những local drive có sẵn trên hệ thống bằng hộp thoại Save Ascủa trình duyệt

- Lập kế hoạch: không có khả năng tự động xuất database data

Trang 18

CHƯƠNG 3: THIẾT KẾ ỨNG DỤNG 3.1 Bài toán đặt ra

Bài toán của chúng ta ở đây sẽ là xây dựng một ứng dụng mua bánonline Thiết kế ứng dụng sao cho sản phẩm được tiếp cận tới người tiêu dùngtrực quan nhất

Hiển thị danh sách thực đơn, ta sẻ hiển thị các sản phẩm mà cửa hànghiện có, các sản phẩm giảm giá, hàng nhập mới về Để thực hiện hiển thị ta sẽcho hiển thị ở màn hình trang chú và khi người dùng cần xem sản phẩm nào

đó sẽ thực hiện hiển thị toàn bộ thông tin của sản phẩm như có tên sản phẩm,hình ảnh, giá tiền, mô tả sản phẩm, số lượng và có một số sản phẩm sẽ cóthêm một số thuộc tính như kích cỡ, trạng thái

Trong mỗi màn hình sẽ cho hiển thị nút giỏ hàng góc phải trên của ứngdụng, giúp người dùng sẽ dàng tương tác với ứng dụng trong việc mua hàng

Ở chức năng này, người dùng sẽ nhận được thông tin các sản phẩm mà ngườidùng đã lựa chọn ở các màn hình khác Người sử dụng có thể xóa sản phẩm

đã thêm vào giỏ

Người dùng sẽ đặt hàng dựa theo một số thông tin có sẵn như tên ngườidùng, số điện thoại, địa chỉ Sau khi đặt thành công, dữ liệu sẽ được gửi lên hệthống, nhân viên có thể dựa theo dữ liệu trên hệ thống liên lạc lại với ngườidùng để xác nhận lại

đơn hàng

Các chức năng của người quản lý bên cửa hàng:

- Cập nhật các mục sản phẩm hiện có trong cửa hàng

- Cập nhật các quảng cáo mới nhất tới người tiêu dùng

- Cập nhật các chi tiết các sản phẩm phù hợp với tình hình hiện có

- Quản lý danh sách khách hàng đã mua hàng

- Xem danh sách đơn đặt hàng của các khách hàng đã đặt

Trang 19

3.2 Xây dựng thiết kế từ bài toán

3.2.1 Nội dung thiết kế

Dữ liệu sản phẩm sẽ được lấy từ cơ sở dữ liệu về và hiển thị cho cácthành phần có trong ứng dụng Mỗi sản phẩm chỉ được hiển thị hình ảnh, tên,giá gốc và giá đã giảm

Sau khi bấm vào sản phẩm, các thông tin cụ thể của đối tượng mớiđược hiện ra Người dung lựa chọn đồ uống thích hợp bằng các thông tin cósẵn của sản phẩm

Sau khi bấm chọn sản phẩm để hiển thị thông tin chi tiết thì dữ liệu sẽđược hiển thị đầy đủ nhất từ bên cơ sở dữ liệu Người dung lựa chọn đồ uốngthích hợp bằng các thông tin có sẵn của sản phẩm

Sau khi bấm chọn sản phẩm để hiển thị thông tin chi tiết thì dữ liệu sẽđược hiển thị đầy đủ nhất từ bên cơ sở dữ liệu Đầu tiên, ứng dụng sẽ lấy các

Thực đơn

Sản phẩm

Màn hình chi tiết

Trang 20

dữ liệu danh mục sản phẩm gửi về Với mỗi mục sản phẩm ta sẽ lấy được cácsản phẩm tương ứng

Người dùng phải nhập các thông tin bắt buộc để cửa hàng có thông tinliên lạc và trao đổi về sản phẩm Người dùng chọn sản phẩm và nhấn thanhtoán Lúc này ứng dụng sẽ tương tác với cơ sở dữ liệu, dữ liệu được đẩy lên

cơ sở dữ liệu sẽ gồm thông tin khách hàng và chi tiết đơn hàng

Người quản lý có thể dễ dàng theo dõi đơn hàng mà khách hàng đã đặt.Thống kê được tất cả các đơn hàng hiện có cũng như trước đây

Điều chỉnh thông tin của sản phẩm và đưa ra các chương trình giảmgiá, khuyến mãi phù hợp với người tiêu dung Sản phẩm được hiển thị trạngthái mặc định khi lên cơ sở dữ liệu là đang giao Nhân viên tư vấn, giao hàng

sẽ gọi lại vào số điện thoại liên lạc mà khách hàng đã cung cấp để giao đếnđúng địa chỉ

3.2.2 Xây dựng các đối tượng tham gia từ thiết kế

Đầu tiên, để hiển thị danh mục sản phẩm của cửa hàng ta sẽ xây dựngmột thành phần đại diện cho chúng

Một số thành phân tham gia sẽ được khởi tạo như sau:

Code khởi tạo đối tượng sản phẩm trong giỏ hàng:

public class Item {

private int id;

private String image;

private String name;

private String status;

private int price;

private int number;

private String size;

private int total;

Trang 21

Code khởi tạo đối tượng sản phẩm:

public class Product implements Parcelable {

private int id;

private String name;

private String image;

private String details;

private String image_cold;

private String image_hot;

private String size_m;

private String size_l;

private String price_m;

private String price_l;

Ngày đăng: 17/06/2021, 21:49

w