1. Trang chủ
  2. » Luận Văn - Báo Cáo

(Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website

68 3 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

Tiêu đề Xây Dựng Ứng Dụng Cung Cấp Dược Phẩm Trên Nền Tảng Website
Tác giả Nguyễn Hồng Hữu, Đỗ Nguyễn Xuân Quốc Khánh
Người hướng dẫn ThS. Nguyễn Văn Phúc
Trường học Trường Đại Học Sư Phạm Kỹ Thuật Thành Phố Hồ Chí Minh
Chuyên ngành Công Nghệ Kỹ Thuật Máy Tính
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2022
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 68
Dung lượng 7,35 MB

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

Cấu trúc

  • CHƯƠNG 1 GIỚI THIỆU (16)
    • 1.1. GIỚI THIỆU TÌNH HÌNH NGHIÊN CỨU HIỆN NAY (16)
    • 1.2. ĐẶT VẤN ĐỀ (16)
    • 1.3. MỤC TIÊU ĐỀ TÀI (17)
    • 1.4. GIỚI HẠN ĐỀ TÀI (17)
    • 1.5. ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU (18)
    • 1.6. PHƯƠNG PHÁP NGHIÊN CỨU (19)
    • 1.7. BỐ CỤC QUYỂN BÁO CÁO (20)
  • CHƯƠNG 2 CƠ SỞ LÝ THUYẾT (21)
    • 2.1. NGÔN NGỮ PHP (21)
    • 2.2. LARAVEL FRAMEWORK (22)
    • 2.3. HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL (24)
    • 2.4. HTML (24)
    • 2.5. CSS (25)
    • 2.6. JAVASCRIPT (26)
    • 2.7. REACTJS LIBRARY (27)
    • 2.8. MÔ HÌNH CLIENT – SERVER, API VÀ RESTFUL API (28)
  • CHƯƠNG 3 PHÂN TÍCH VÀ THIẾT KẾ (30)
    • 3.1. PHÂN TÍCH YÊU CẦU (30)
    • 3.2. THIẾT KẾ CƠ SỞ DỮ LIỆU (35)
    • 3.3. THIẾT KẾ XỬ LÝ (36)
  • CHƯƠNG 4 KẾT QUẢ (20)
    • 4.1. KẾT QUẢ ĐẠT ĐƯỢC (44)
    • 4.2. GIAO DIỆN DÀNH CHO KHÁCH HÀNG (44)
    • 4.3. GIAO DIỆN DÀNH CHO NHÀ THUỐC (56)
  • CHƯƠNG 5 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN (20)
    • 5.1. KẾT LUẬN (62)
    • 5.2. ĐÁNH GIÁ (62)
    • 5.3. HƯỚNG PHÁT TRIỂN (63)
  • TÀI LIỆU THAM KHẢO (64)
  • PHỤ LỤC (65)

Nội dung

GIỚI THIỆU

GIỚI THIỆU TÌNH HÌNH NGHIÊN CỨU HIỆN NAY

Mô hình cung cấp dược phẩm trực tuyến đang ngày càng phổ biến với sự tham gia của nhiều doanh nghiệp, tiêu biểu là Pharmacity và Long Châu Hai công ty này đã góp phần quan trọng trong việc tạo dựng nền tảng cho mô hình này, mang lại tiện lợi và hiệu quả cho khách hàng trong việc tiếp cận sản phẩm Người tiêu dùng có thể tìm hiểu rõ hơn về các sản phẩm, bao gồm thông tin và xuất xứ, cũng như cập nhật kịp thời các sản phẩm mới Đặc biệt, trong bối cảnh người dùng không thể ra ngoài, dịch vụ giao hàng qua các ứng dụng như Grab và Gojek đã đáp ứng nhu cầu mua sắm trực tuyến Mô hình này trở nên thiết yếu, đặc biệt trong giai đoạn dịch Covid-19 Nhóm nghiên cứu đang thiết kế một ứng dụng cung cấp dược phẩm trực tuyến qua nền tảng website, dựa trên việc tham khảo tổ chức và chức năng của các doanh nghiệp đi trước để hoàn thiện đồ án tốt nghiệp.

ĐẶT VẤN ĐỀ

Trong bối cảnh dịch Covid-19 với nhiều biến chủng mới, nhu cầu tự điều trị tại nhà gia tăng, dẫn đến việc mua thuốc trở nên cần thiết Mua thuốc trực tuyến là giải pháp hiệu quả, với nhiều kênh như Shopee và Tiki Tuy nhiên, một số sản phẩm trên các trang thương mại điện tử này chưa được Bộ Y Tế kiểm định an toàn Do đó, cần có nền tảng trực tuyến chính thống cho việc bán thuốc, đảm bảo sản phẩm được kiểm duyệt bởi Bộ Y Tế.

Để giải quyết vấn đề bán thuốc trực tuyến của các nhà thuốc, việc nâng cao chất lượng dịch vụ và đáp ứng nhu cầu mua thuốc của người dân trong mùa dịch là rất cần thiết.

Trong bối cảnh dịch bệnh, nhiều nhà thuốc đang chuyển sang bán hàng trực tuyến để dễ dàng tiếp cận người mua Người tiêu dùng thường gặp khó khăn khi không thể ra ngoài để mua thuốc, đồng thời cũng lo ngại về chất lượng sản phẩm khi mua trực tuyến Họ có thể không tìm thấy sản phẩm đúng hoặc không có sự tư vấn cần thiết về thành phần và cách sử dụng thuốc Mô hình cung cấp dược phẩm trực tuyến đã phần nào giải quyết những vấn đề này, mang lại sự thuận tiện trong cuộc sống và phù hợp với xu hướng chuyển đổi số hiện nay.

MỤC TIÊU ĐỀ TÀI

Xây dựng một ứng dụng hướng đến một môi trường mua/bán thuốc, dược phẩm thân thiện và sản phẩm phong phú

Trang web cung cấp các danh mục sản phẩm đa dạng và các tiêu chí tìm kiếm hữu ích cho người mua, bao gồm danh mục, giảm giá, sản phẩm mới, và tìm kiếm theo tên sản phẩm Người dùng có thể dễ dàng lọc sản phẩm theo giá, quản lý sản phẩm yêu thích, giỏ hàng, và thông tin cá nhân cũng như đơn hàng một cách thuận tiện Thông tin về nhà thuốc cũng được hiển thị qua trang giới thiệu, giúp người mua nắm rõ hơn về nguồn gốc sản phẩm.

Giải pháp quản lý dược phẩm giúp các đơn vị cung cấp dễ dàng quản lý thông tin người mua hàng, thực hiện các thao tác thêm, xóa, sửa sản phẩm và theo dõi đơn hàng cùng địa chỉ người mua Hệ thống cũng cung cấp hướng dẫn sử dụng và thông tin chi tiết về từng loại sản phẩm cho người dùng, nâng cao trải nghiệm mua sắm.

GIỚI HẠN ĐỀ TÀI

Đề tài này tập trung vào việc phát triển nền tảng website, tuy nhiên do hạn chế về nhân lực và kiến thức, nên không thực hiện hợp tác với các bên thứ ba trong lĩnh vực thanh toán trực tuyến và không tiến hành thống kê doanh số cũng như lượng truy cập vào website.

ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU

Dựa trên dữ liệu thu thập từ các kênh mạng xã hội, nhóm nghiên cứu đã phân loại các trang thương mại điện tử bán thuốc phổ biến tại Việt Nam như Shopee, Tiki, Pharmacity, Long Châu thành hai nhóm chính: nhà thuốc và người mua thuốc.

Nhà thuốc (nhóm 1): Nhu cầu đăng sản phẩm cần bán lên website, quản lý sản phẩm, thông tin người mua, đơn hàng trực tuyến

Người mua thuốc (nhóm 2): Nhu cầu mua thuốc trực tuyến

Sau khi phân tích tính khả thi từ phân khúc nhà thuốc, nhóm xác định rằng phân khúc nhóm 1 là ưu tiên hàng đầu Website sẽ tiếp cận các nhà thuốc có nhu cầu bán thuốc trực tuyến, với mỗi nhà thuốc sở hữu một website riêng Do đó, nhóm quyết định rằng doanh thu sẽ đến từ việc các nhà thuốc trả phí duy trì website bán thuốc, tạo nguồn kinh phí cho sự hoạt động của website.

Sau khi phân tích khách hàng chính, để nhà thuốc hài lòng và sẵn sàng trả phí duy trì website bán hàng trực tuyến, website cần đảm bảo nhiều yếu tố quan trọng.

− Điều đầu tiên, cơ sở dữ liệu phải đủ lớn: để lưu trữ tất cả các thông tin về sản phẩm, khách hàng, đơn hàng

Hệ thống cơ sở dữ liệu cần đảm bảo độ tin cậy cao, đặc biệt sau một thời gian vận hành website Việc đo lường và xem xét phản hồi từ người mua thuốc và nhà thuốc, bao gồm mức độ hài lòng và không hài lòng của khách hàng cũng như số lượng người truy cập, là rất quan trọng để cải thiện chất lượng dịch vụ.

Cơ sở dữ liệu của hệ thống website bán thuốc cần đáp ứng yêu cầu thời gian thực, đảm bảo cập nhật chính xác và nhanh chóng các sản phẩm và đơn hàng liên tục Để thực hiện điều này, website được phát triển bằng PHP (Laravel Framework) và JavaScript (React Library), cùng với các ngôn ngữ và thư viện thiết kế giao diện như HTML, SCSS, và Ant Design Library nhằm mang lại trải nghiệm người dùng tối ưu Dữ liệu của hệ thống được lưu trữ thông qua quản trị cơ sở dữ liệu MySQL.

PHƯƠNG PHÁP NGHIÊN CỨU

Nhóm thực hiện đã lên kế hoạch một cách cụ thể:

Đầu tiên, chúng tôi sẽ tiến hành khảo sát và tìm hiểu nhu cầu mua thuốc trực tuyến, đồng thời phân tích phân khúc khách hàng trên các website bán thuốc và các trang thương mại điện tử.

- Sau khi đánh giá, xem xét và nghiêm cứu nhu cầu, đã đưa ra hướng giải quyết xây dựng lên cá chức năng chính cho website

- Thiết kế giao diện bằng các bảng mockup bởi phần mềm Photoshop, Adobe illustrator, Adobe XD

- Lựa chọn công nghệ xây dựng website:

− Back-End: PHP Laravel Framework

− Cơ sở dữ liệu: MySQL

Tiến hành thực hiện đề tài:

− Viết các đoạn mã code để phỏng theo bản mock-up ban đầu

− Tạo database và viết chương trình PHP giao tiếp với MySQL

Để xây dựng một website hiệu quả, cần thiết lập các chức năng như danh mục sản phẩm, danh sách sản phẩm, và chi tiết sản phẩm Ngoài ra, cần có các tính năng cho phép thêm, xóa và sửa sản phẩm, quản lý giỏ hàng, và sản phẩm yêu thích Hệ thống cũng cần theo dõi đơn hàng và cung cấp thông tin chi tiết về đơn hàng của người mua thuốc, cũng như danh sách thông tin chi tiết của người mua thuốc.

Kiểm tra tính đúng đắn, đo lường sự hiệu quả:

− Kiểm tra thiết kế giao diện so với thiết kế ban đầu

− Kiểm tra các tính năng của website

Cuối cùng là nâng cấp điều chỉnh phù hợp.

BỐ CỤC QUYỂN BÁO CÁO

Lý do chọn đề tài nghiên cứu này xuất phát từ thực tiễn đang diễn ra, nhằm giải quyết các vấn đề cấp bách hiện nay Phạm vi nghiên cứu được xác định rõ ràng, với mục tiêu cụ thể nhằm cung cấp cái nhìn tổng quan và khả quan về đề tài Phương pháp nghiên cứu được áp dụng sẽ giúp đảm bảo tính chính xác và đáng tin cậy của kết quả, từ đó mang lại giá trị cho người xem.

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

Trình bày sơ lược về lý thuyết của ngôn ngữ JavaScript, PHP, CSS, HTML, hệ quản trị cơ sở dữ liệu MySQL, ReactJS Library, Laravel Framework, RESTful API

Chương 3: PHÂN TÍCH VÀ THIẾT KẾ

Giới thiệu về phân tích và thiết kế ứng dụng

Chương 4: KẾT QUẢ Đưa ra các kết quả từ giao diện cho đến mô tả các chức năng của website đã đạt được

Chương 5: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

Trình bày về kết quả đạt được, những hạn chế đang cần được giải quyết tiếp và hướng phát triển giúp hoàn thiện đồ án hơn.

CƠ SỞ LÝ THUYẾT

NGÔN NGỮ PHP

PHP là ngôn ngữ lập trình phổ biến cho việc phát triển ứng dụng web, nhờ vào tính dễ sử dụng và khả năng thiết lập nhanh chóng Với nhiều phần mở rộng và khung mẫu có sẵn, PHP hỗ trợ người dùng thực hiện nhiều nhu cầu khác nhau Cộng đồng người sử dụng PHP rất mạnh mẽ, giúp việc tra cứu, tìm hiểu và tham khảo tài liệu trở nên dễ dàng, từ đó thúc đẩy việc phát triển và học hỏi kiến thức mới.

Ví dụ, nếu chúng ta có một trang web và muốn hiển thị ngày hiện tại trên trình duyệt, thì với một trang web tĩnh, chúng ta cần phải chỉnh sửa trang mỗi ngày Việc này sẽ tốn nhiều thời gian nếu mã HTML được viết như dưới đây.

PHP cho phép máy chủ thực hiện các thay đổi tự động, chẳng hạn như thêm ngày chính xác vào trang web mỗi khi nó được phục vụ Để thực hiện điều này, chúng ta chỉ cần chèn một đoạn mã PHP đơn giản.

Lưu ý rằng văn bản tĩnh ngày 18 tháng 07 năm 2022 đã được thay thế bằng Những gì chúng ta đã làm là thay thế văn bản

Mã PHP được sử dụng để chuyển đổi mã HTML tĩnh thành văn bản động, với nội dung cần thay đổi được đặt trong cặp thẻ .

Vào ngày 18 tháng 07 năm 2022, nếu mở hai tệp bằng trình duyệt, hai trang sẽ giống hệt nhau Tuy nhiên, vào ngày 19 tháng 07, máy chủ đã xử lý mã và phân loại trang thành động hoặc tĩnh Một máy chủ PHP xác định trang tĩnh khi là tệp PHP (.php) và trang động khi là tệp HTML (.html).

Một tệp PHP thực chất là một tệp HTML nhưng được lưu với đuôi php thay vì html hoặc htm Điều này cho phép máy chủ nhận diện và thực thi các đoạn mã nằm trong cặp thẻ trong tệp đó.

− Dùng để lập trình tạo ra các web động

Các đoạn văn bản trong trang PHP thường mang tính tĩnh, nhưng máy chủ PHP sẽ chuyển đổi các đoạn văn bản nằm giữa cặp thẻ thành văn bản động sau khi thực hiện xử lý mã hợp lệ.

LARAVEL FRAMEWORK

Giới thiệu về Laravel Framework:

Hiện nay, có nhiều PHP Framework được sử dụng trong thiết kế web, trong đó CodeIgniter và Laravel là hai cái tên nổi bật Đặc biệt, trong năm 2021, Laravel Framework đã nhận được sự đánh giá cao nhờ vào những tính năng ưu việt mà nó mang lại.

Laravel là một framework PHP mã nguồn mở miễn phí, được thiết kế để hỗ trợ phát triển ứng dụng web dựa trên mô hình MVC (Model – View – Controller) vững chắc.

Lợi ích của Laravel mang lại:

Hình 2.3: Ví dụ mã PHP được cập nhật

− Cho phép tổ chức các đoạn mã để bảo trì dễ dàng

− Hỗ trợ kiến trúc ứng dụng chuẩn hóa

− Dễ dàng sửa lỗi khi gặp các vấn đề không hoàn toán mong muốn

− Đẩy nhanh cập nhật phát triển sản phẩm hơn

− Cải thiện khả năng phản hồi

− Bảo vệ để tránh khỏi các mối nguy hiểm bảo mật

Xu hướng Google Trends từ năm 2019 đến nay cho thấy Laravel đang trở thành PHP Framework được ưa chuộng nhất hiện nay.

Cấu trúc thư mục Laravel:

− Folder app: chứa các đoạn code cốt lõi của ứng dụng Các class xử lý back-end hầu như nằm ở đây

− Folder config: Thư mục này bao gồm tất cả tệp cấu hình cho hệ thống

− Folder database: Thư mục này gồm có các file làm việc với database Trong đó có 3 thư mục factories, migrations, seeders

• Factories: Tạo data ảo Phục vụ cho testing

• Migrations: Tạo, thêm, xóa các bảng cho database

• Seeders: Tạo data ảo Phục vụ cho testing

− Folder routes: Bao gồm các đường (route) đã được định sẵn của ứng dụng

Hình 2.4: Xu thế sử dụng Framework PHP trên Google Trend

HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL

Trước hết, chúng ta cần làm rõ hơn về cơ sở dữ liệu trước khi tìm hiểu MySQL:

Cơ sở dữ liệu (CSDL) đóng vai trò quan trọng trong việc tổ chức và theo dõi thông tin, cho phép người dùng sáng tạo trong việc nhóm các dữ liệu lại với nhau theo những cách có ý nghĩa Điều này giúp trình bày một bộ thông tin một cách có hệ thống và dễ dàng quản lý.

Cơ sở dữ liệu bao gồm một hoặc nhiều bảng, mỗi bảng được cấu tạo từ các cột và hàng Các cột trong bảng xác định các đặc điểm của bảng, trong khi các hàng chứa dữ liệu riêng biệt cho từng trường trong bảng.

− MYSQL được hiểu là một trong các hệ dùng để quản trị cơ sở dữ liệu:

Cơ sở dữ liệu là tập hợp dữ liệu có cấu trúc, bao gồm thông tin từ bao bì, thư viện hình ảnh đến hệ thống thông tin lớn của các công ty Những dữ liệu này được quản lý và tổ chức một cách hệ thống Với khả năng xử lý lượng lớn dữ liệu, máy tính đóng vai trò quan trọng trong việc tính toán thông qua các hệ quản trị cơ sở dữ liệu.

Máy chủ MySQL nổi bật với tốc độ xử lý nhanh, độ tin cậy cao và khả năng mở rộng linh hoạt, đồng thời thân thiện với người dùng Dữ liệu được tổ chức trên các bảng, cho phép kết nối và liên kết hiệu quả giữa các thông tin.

HTML

HTML là để thiết kế và tạo ra các trang web trên World Wide Web

HTML cung cấp các thẻ mở và đóng () để tạo bố cục cho tất cả các trang web, giúp người dùng dễ dàng quan sát và tương tác với nội dung.

Hình 2.5: Ví dụ về Database

CSS

CSS giúp website thu hút hơn, trình bày nội dung một cách rõ ràng và mang lại trải nghiệm người dùng hiện đại, thân thiện Thông thường, CSS được sử dụng kết hợp với HTML để làm nổi bật các chi tiết, thành phần và hình ảnh trên trang web của bạn.

Hình 2.6: Ví dụ mã HTML

Hình 2.7: Ví dụ về CSS trong HTML

Hình 2.8: Ví dụ về cấu trúc của 1 CSS

Hình 2.9: Ví dụ về CSS

JAVASCRIPT

JavaScript là ngôn ngữ lập trình đang trở nên phổ biến toàn cầu Tương tự như PHP, JavaScript có khả năng tương tác với các tệp có đuôi html và php, cho phép tạo ra các trang web động và được thực thi trực tiếp trên phía người dùng.

Cách thức JavaScript giúp trang web tạo ra nhiều sự tương tác hơn:

Chúng ta sử dụng JavaScript để truy cập và chọn lựa các thành phần, thuộc tính hoặc đoạn văn bản từ trang HTML, chẳng hạn như lấy nội dung từ thẻ , giá trị của các thuộc tính, lớp, hoặc toàn bộ giá trị trong thẻ input dựa trên id hoặc thuộc tính được truy vấn.

Với JavaScript, việc thêm, sửa, xóa các thành phần, thuộc tính hoặc đoạn văn bản trong trang HTML hoặc PHP trở nên dễ dàng hơn bao giờ hết Người dùng có thể sử dụng các id, class và thuộc tính để thực hiện các thao tác này một cách hiệu quả.

JavaScript cho phép thêm văn bản vào bất kỳ vị trí nào trên trang web và điều chỉnh giá trị thuộc tính để kích hoạt các quy tắc CSS, từ đó thay đổi các yếu tố trên trang.

JavaScript thiết lập các quy tắc xử lý thông qua các thuật toán, cho phép truy cập và thay đổi nội dung trang web Ví dụ, nó có thể tăng kích thước hình ảnh khi người dùng nhấp vào, hoặc tạo ra các hiệu ứng chuyển ảnh tự động.

Phản ứng của người dùng đối với các sự kiện như nhấn nút, di chuyển chuột, và hoàn tất tải trang web rất quan trọng Những hành động này giúp xác định các yêu cầu cần thiết cho việc xử lý và tối ưu hóa trải nghiệm người dùng trên trang web.

REACTJS LIBRARY

ReactJS là thư viện JavaScript do Facebook phát triển, giúp lập trình viên tạo ra giao diện người dùng hiệu quả Với cộng đồng người dùng đông đảo, việc tìm kiếm giải pháp cho các vấn đề gặp phải khi sử dụng ReactJS trở nên dễ dàng hơn.

Lợi ích khi sử dụng:

React phân tách giao diện người dùng thành các thành phần nhỏ gọi là component, mỗi component thực hiện một chức năng riêng, tạo nên "trái tim" của ReactJS Hệ thống hoạt động dựa trên DOM ảo, và việc cập nhật các component được quản lý bởi thuật toán diffing, giúp xác định xem component nào cần được cập nhật.

ReactJS sử dụng JSX để tích hợp HTML vào trong JavaScript, giúp lập trình viên dễ dàng hiển thị các trạng thái trên giao diện người dùng.

Cách khởi tạo một dự án ReactJS:

− Trước khi khởi tạo một dự án ReactJS, phải bảo đảm đã được cài đặt NodeJS Cài đặt NodeJS tại đường dẫn Node.js (nodejs.org)

− Tiếp theo dùng tool create-react-app để khởi tạo một dự án ReactJS (tham khảo Create a New React App – React (reactjs.org) ).

Hình ảnh cho khởi tạo Create React App:

Nội dung bên trong các thư mục:

− Folder node_modules: Chứa tất cả các package của dự án

− Folder public: Chứa các asset như index.html

− Folder src: Chứa app code

− File package.json: Chứa các version package của dự án.[4]

MÔ HÌNH CLIENT – SERVER, API VÀ RESTFUL API

Mô hình Client-Server bao gồm hai thành phần chính: máy chủ (server) và máy khách (client), trong đó server lưu trữ các chương trình dịch vụ và kết nối với nhiều server khác để xử lý yêu cầu từ client một cách hiệu quả API là kỹ thuật kết nối các thư viện và ứng dụng riêng biệt, giúp trao đổi dữ liệu giữa chúng, với các phương thức hỗ trợ cho máy khách như JSON và XML.

Các Client có hỗ trợ JSON, XML đều có thể dùng phương thức API

MVC được hỗ trợ thông qua mô hình API Web, cung cấp các phương thức RESTful như GET để lấy dữ liệu, POST để tạo mới, PUT để cập nhật và DELETE để xóa dữ liệu.

Là kiến trúc hỗ trợ tốt nhất cho các thiết bị bị giới hạn băng thông như mobile,

Hình 2.11: Cấu trúc thư mục React App

API được phát triển theo tiêu chuẩn RESTful để quản lý tài nguyên cho các ứng dụng trực tuyến, bao gồm nhạc, phim và ảnh Nó cho phép truyền tải và mã hóa trạng thái tài nguyên qua giao thức HTTP, với các hoạt động tương tự như CRUD (Tạo, Đọc, Cập nhật, Xóa).

Hình 2.13: Restful API hoạt động

PHÂN TÍCH VÀ THIẾT KẾ

PHÂN TÍCH YÊU CẦU

3.1.1 KẾT QUẢ SAU KHI NGHIÊN CỨU YÊU CẦU

Yêu cầu phi chức năng không phải là các chức năng chính của hệ thống, nhưng chúng đóng vai trò quan trọng trong việc xây dựng một hệ thống hiệu quả, đáp ứng nhu cầu của khách hàng Những yêu cầu này thể hiện mức độ hiệu quả của hệ thống, chẳng hạn như khả năng bảo trì và tính dễ sử dụng Trong đề tài của nhóm, các yêu cầu phi chức năng cần thiết bao gồm các yếu tố này để đảm bảo sự hài lòng của người dùng.

Khả năng xử lý nhanh chóng và chính xác các thao tác của người dùng như tìm kiếm mặt hàng, quản lý đơn hàng và đăng ký/đăng nhập tài khoản cá nhân là rất quan trọng Hệ thống đảm bảo không xảy ra vấn đề hay xung đột khi nhiều người cùng sử dụng trang web Bên cạnh đó, bảo mật thông tin cá nhân và mật khẩu của người dùng được đảm bảo tốt Trang web đáp ứng đầy đủ các tiêu chí về tính sẵn sàng, bảo mật, sự nhất quán và độ chính xác.

Yêu cầu chức năng: Các chức năng mà hệ thống phải thực thi được chỉ định

Bảng 3.1: Bảng mô tả yêu cầu chức năng đối với khách hàng

STT CHỨC NĂNG LOẠI CHỨC NĂNG

1 Đăng ký tài khoản Truy cập

2 Đăng nhập tài khoản Truy cập

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

4 Xem sản phẩm Truy cập

5 Thêm, xóa sản phẩm giỏ hàng Truy cập

6 Thêm, xóa sản phẩm yêu thích Truy cập

7 Mua sản phẩm từ giỏ hàng Truy cập

8 Cập nhật thông tin cá nhân Truy cập

9 Cập nhật thông tin nhận hàng Truy cập

Bảng 3.2: Bảng mô tả yêu cầu chức năng đối với nhà thuốc

STT CHỨC NĂNG LOẠI CHỨC NĂNG

2 Xem sản phẩm Truy cập

3 Thêm sản phẩm Thêm, xóa, sửa

4 Xóa sản phẩm Thêm, xóa, sửa

5 Sửa sản phẩm Thêm, xóa, sửa

6 Xem hóa đơn Truy cập

7 Thay đổi trạng thái đơn hàng Thêm, xóa, sửa

8 Xem, Xóa thông tin tài khoản người mua Thêm, xóa, sửa

3.1.2 SƠ ĐỒ CHỨC NĂNG SỬ DỤNG TỪNG ĐỐI TƯỢNG

- Mô tả sơ đồ diagram Để có thể giải thích sơ đồ usecase diagram tổng quát, có thể mô tả chúng bằng các bảng dưới đây

Bảng danh sách các usecase: Để mô tả chi tiết chức năng của mỗi actor thực

Hình 3.1: Sơ đồ Usecase tổng quát

Bảng 3.3: Bảng đánh giá các Usecase

STT USE CASE CHỨC NĂNG

KHÁCH HÀNG MUA THUỐC TIỀM NĂNG

Các khách hàng tiềm năng dựa vào các tiêu chí mong muốn nhập dữ liệu vào các ô tìm kiếm để tìm ra sản phẩm phù hợp

Khách hàng tiềm năng xem thông tin chi tiết về giá, khuyến mãi và công dụng của sản phẩm

Các khách hàng dựa vào các tiêu chí mong muốn nhập dữ liệu vào các ô tìm kiếm để tra cứu sản phẩm phù hợp

4 Xem sản phẩm Khách hàng xem thông tin chi tiết về giá, khuyến mãi và công dụng của sản phẩm

5 Thêm, xóa sản phẩm vào giỏ hàng

Sau khi xem qua về thông tin sản phẩm thì khách hàng thêm sản phẩm vào giỏ hàng hoặc xóa sản phẩm ra khỏi giỏi hàng

6 Thêm, xóa sản phẩm yêu thích

Khách hàng có thể thêm hoặc xóa sản phẩm khỏi danh sách yêu thích sau khi xem thông tin chi tiết về sản phẩm.

7 Mua sản phẩm từ giỏ hàng

Sau khi thêm sản phẩm vào giỏ hàng nếu người dùng muốn mua thì tiến hành mua các sản phẩm trong giỏ hàng

8 Cập nhật thông tin cá nhân

Khách hàng thay đổi thông tin các nhân của họ như : Số điện thoại, giới tính, sinh nhật, mật khẩu

9 Cập nhật địa chỉ nhận hàng

Khách hàng thay đổi thông tin về địa chỉ nhận hàng để nhà thuốc căn cứ vào địa chỉ để giao hàng

Khách hàng tiềm năng có đăng ký một tài khoản mới thực hiện được tất cả các chức năng của một khách hàng

Sau khi khách hàng đặt hàng, họ có thể theo dõi trạng thái đơn hàng của mình, chẳng hạn như "Đang giao hàng".

Nhà thuốc tìm kiếm theo sản phẩm theo tiêu chí mong muốn ở trang quản lý của nhà thuốc

12 Xem sản phẩm Nhà thuốc xem thông tin chi tiết về giá, khuyến mãi và công dụng của sản phẩm

13 Đăng nhập Nhà thuốc đăng nhập bằng tài khoản quản lý để truy cập vào trang quản lý

Nhà thuốc cập nhật danh sách sản phẩm bằng cách thêm thông tin chi tiết như tên sản phẩm, mô tả, giá cả, khuyến mãi, danh mục và các điểm nổi bật để thu hút khách hàng.

15 Xóa sản phẩm Nhà thuốc xóa sản phẩm ra khỏi danh sách sản phẩm

Nhà thuốc sửa thông tin sản phẩm về tên sản phẩm, mô tả sản phẩm, giá sản phẩm, khuyến mãi, danh mục, nổi bật

17 Xem đơn hàng Nhà thuốc xem đơn hàng mà người mua thuốc đã đặt

18 Thay đổi trạng thái đơn hàng

Nhà thuốc thay đổi trạng thái đơn hàng (Ví dụ: Chuyển trạng thái từ Chờ xử lý sang Đang xử lý)

19 Xem, xóa thông tin người mua thuốc

Nhà thuốc xem thông tin của người mua thuốc về Tên, sinh nhật, email, số điện thoại, địa chỉ hoặc xóa tài khoản

Để đảm bảo các hoạt động trên trang web diễn ra trơn tru, việc nhóm các tài khoản và điều chỉnh hoạt động theo từng nhóm tác nhân là rất quan trọng Hệ thống phân quyền cho từng nhóm tài khoản giúp mỗi tác nhân thực hiện yêu cầu của mình một cách hiệu quả Công nghệ đã tự động tạo ra ba tác nhân chính: quản lý và tài khoản khách hàng, bao gồm cả khách hàng tiềm năng.

Bảng 3.4: Các đối tượng trong ứng dụng

STT Tên đối tượng Ý nghĩa Vai Trò

1 Admin Quản lý Quản lý trang web

2 Khách hàng Khách hàng Người sử dụng

3 Khách hàng tiềm năng Khách hàng Người sử dụng

STT Ký hiệu Chú thích

THIẾT KẾ CƠ SỞ DỮ LIỆU

Chi tiết các bảng dữ liệu:

Bảng user: Chứa danh sách các user với các thông tin id (khóa chính), tên, email, mật khẩu, sinh nhật, số điện thoại, giới tính

Bảng addresses: Chứa danh sách các địa chỉ của user với các thông tin id (khóa chính), user id, tỉnh/thành phố, quận/huyên, phường/xã, đường

Bảng orders: Chưa danh sách các đơn hàng với các thông tin id (khóa chính), user id, address id, tổng số tiền, trạng thái đơn hàng

Bảng order_detail: Chi tiết thông tin của đơn hàng với các thông tin id

(khóa chính), order_id, mã – tên – giá - số lượng của sản phẩm

Bảng sản phẩm bao gồm danh sách các mặt hàng với thông tin chi tiết như ID (khóa chính), tên sản phẩm, giá cả, mô tả ngắn, mô tả chi tiết, danh mục sản phẩm và các khuyến mãi nổi bật.

Bảng categories: Chứa danh sách các danh mục sản phẩm với các thông tin như id (khóa chính), tên danh mục, trạng thái danh mục

Bảng slides: Chứa tất cả các ảnh slide trong trang web với các thông tin như id (khóa chính), tên banner

Bảng admin: Chứa thông tin của admin (Nhà thuốc) như id (khóa chính),

Hình 3.2: Mô hình quan hệ giữa các bảng

Bảng images: Chứa tất cả các hình ảnh như id (khóa chính), tên hình ảnh, đường dẫn hình ảnh, kích thước ảnh

Bảng favorite: Chứa sản phẩm yêu thích của user như id (khóa chính), mã user, mã sản phẩm.

KẾT QUẢ

KẾT QUẢ ĐẠT ĐƯỢC

Trong quá trình thực hiện đề tài “Xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website”, nhóm đã áp dụng những kiến thức học được để hoàn thành đồ án tốt nghiệp Mặc dù gặp phải một số thách thức, nhóm đã nỗ lực vượt qua và hoàn thiện dự án Thêm vào đó, việc nghiên cứu sâu đã giúp nhóm thu thập thêm thông tin mới, củng cố kiến thức đã có trước đó.

GIAO DIỆN DÀNH CHO KHÁCH HÀNG

Giao diện người mua thuốc bao gồm ba thành phần chính: Header với logo, danh mục sản phẩm, thanh tìm kiếm, số lượng hàng trong giỏ và thông tin tài khoản; Tư liệu chứa nội dung liên quan đến các liên kết trên trang web; và Footer cung cấp thông tin về vị trí, trụ sở chính và thông tin liên hệ.

− Giao diện banner quảng cáo và sản phẩm khuyến mãi hot:

Hệ thống sẽ hiển thị các ưu đãi và khuyến mại đặc biệt từ nhà thuốc, bao gồm vật phẩm giảm giá và chương trình mua nhiều sản phẩm với giá ưu đãi Mục tiêu là tạo một điểm nhấn ở đầu trang nhằm thu hút sự chú ý của khách hàng.

− Giao diện sản phẩm nổi bật của nhà thuốc: Giao diện sẽ chỉ ra các sản phẩm được ưa thích và được chọn mua bởi nhiều người dùng

Hình 4.2: Banner quảng cáo và sản phẩm khuyến mãi hot

Hình 4.3: Sản phẩm nổi bật của nhà thuốc

Trang chủ hiển thị giao diện tất cả sản phẩm, cho phép người dùng dễ dàng xem tên, giá cả hiện tại và thông tin khuyến mãi của từng sản phẩm trong hệ thống.

Giao diện "Về chúng tôi" của nhà thuốc cung cấp thông tin tổng quát về đơn vị cung cấp dược phẩm, giúp khách hàng hiểu rõ hơn về nguồn gốc và trách nhiệm của nhà thuốc Trong phần này, người dùng sẽ tìm thấy các thông tin liên hệ quan trọng, bao gồm địa chỉ, số điện thoại và hướng dẫn hỗ trợ khách hàng.

Hình 4.5: Trang về chúng tôi (hình a) Hình 4.4: Các sản phẩm ở trang chủ

Hình 4.6: Trang về chúng tôi (hình b)

Hình 4.7: Trang về chúng tôi (hình c)

Hình 4.8: Trang về chúng tôi (hình d) Đăng ký / Đăng nhập

Giao diện đăng ký cho phép người dùng tạo mới tài khoản trên hệ thống

Sau khi đăng ký và đăng nhập, người dùng trở thành thành viên của hệ thống, cho phép họ sử dụng các chức năng như lưu sản phẩm vào giỏ hàng, yêu thích sản phẩm, và theo dõi thông tin vận đơn cũng như trạng thái đơn hàng khi đặt hàng.

Trang sản phẩm cung cấp nhiều chức năng hữu ích như tìm kiếm theo tên, danh mục, mức giảm giá, sản phẩm mới, và sắp xếp theo giá từ thấp đến cao hoặc ngược lại Tất cả sản phẩm sẽ được hiển thị dựa trên mục đích tìm kiếm của người dùng.

Hình 4.12: Trang danh sách sản phẩm (hình b) Hình 4.11: Trang danh sách sản phẩm (hình a)

Trang chi tiết sản phẩm:

Trang chi tiết sản phẩm bao gồm các thông tin quan trọng như tên, giá, danh mục, mã sản phẩm, mô tả ngắn gọn và tình trạng sản phẩm Bên cạnh đó, trang còn cung cấp tính năng thêm sản phẩm vào giỏ hàng và danh sách yêu thích.

Hình 4.13: Trang chi tiết sản phẩm (hình a)

Hình 4.14: Trang chi tiết sản phẩm (hình b)

Trang giỏ hàng gồm tính năng hiển thị sản phẩm trong giỏ hàng, tổng giá tiền, xác nhận thông tin địa chỉ nhận hàng

− Trường hợp giỏ hàng không có sản phẩm nào:

Hình 4.15: Trang chi tiết sản phẩm (hình c)

Hình 4.16: Trang chi tiết sản phẩm (hình d)

- Trường hợp giỏ hàng có sản phẩm:

Hệ thống sẽ tổng hợp danh sách sản phẩm và giá cả dựa trên số lượng sản phẩm mà khách hàng lựa chọn Ngoài ra, khách hàng có thể áp dụng mã giảm giá nếu có Sau khi tính toán tổng giá trị sản phẩm, bao gồm cả mã giảm giá, hệ thống sẽ cung cấp tổng giá thành cho các sản phẩm trong giỏ hàng.

Sau khi khách hàng hoàn tất quá trình thanh toán, hệ thống sẽ chuyển hướng đến giao diện xác nhận thông tin địa chỉ Tại đây, khách hàng có thể xác nhận địa chỉ nhận hàng hiện tại hoặc nhập thông tin mới nếu cần thiết.

Hình 4.17: Trang giỏ hàng không có sản phẩm nào

Hình 4.20: Trang xác nhận thông tin địa chỉ nhận hàng (hình b)

Hình 4.21: Trang đặt hàng thành công Hình 4.19: Trang xác nhận thông tin địa chỉ nhận hàng (hình a)

Trang quản lý tài khoản

Trang quản lý tài khoản cung cấp các chức năng quan trọng như quản lý thông tin tài khoản, thông tin địa chỉ, theo dõi đơn hàng và danh sách sản phẩm yêu thích.

Hình 4.23: Thông tin địa chỉ (hình a)Hình 4.22: Thông tin tài khoản

Hình 4.24: Thông tin địa chỉ (hình b)

Hình 4.25: Trang quản lý đơn hàng

Hình 4.26: Trang quản lý sản phẩm yêu thích

Ngày đăng: 10/10/2023, 15:17

HÌNH ẢNH LIÊN QUAN

Hình 2.12: Restful API - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 2.12 Restful API (Trang 29)
Hình 3.3: Lưu đồ giải thuật đăng ký/đăng nhập của người mua thuốc - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 3.3 Lưu đồ giải thuật đăng ký/đăng nhập của người mua thuốc (Trang 37)
Hình 4.2: Banner quảng cáo và sản phẩm khuyến mãi hot - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.2 Banner quảng cáo và sản phẩm khuyến mãi hot (Trang 45)
Hình 4.3: Sản phẩm nổi bật của nhà thuốc - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.3 Sản phẩm nổi bật của nhà thuốc (Trang 45)
Hình 4.5: Trang về chúng tôi (hình a) Hình 4.4: Các sản phẩm ở trang chủ - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.5 Trang về chúng tôi (hình a) Hình 4.4: Các sản phẩm ở trang chủ (Trang 46)
Hình 4.10: Popup đăng nhập - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.10 Popup đăng nhập (Trang 48)
Hình 4.9: Popup đăng ký - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.9 Popup đăng ký (Trang 48)
Hình 4.12: Trang danh sách sản phẩm (hình b) Hình 4.11: Trang danh sách sản phẩm (hình a) - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.12 Trang danh sách sản phẩm (hình b) Hình 4.11: Trang danh sách sản phẩm (hình a) (Trang 49)
Hình 4.17: Trang giỏ hàng không có sản phẩm nào - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.17 Trang giỏ hàng không có sản phẩm nào (Trang 52)
Hình 4.20: Trang xác nhận thông tin địa chỉ nhận hàng (hình b) - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.20 Trang xác nhận thông tin địa chỉ nhận hàng (hình b) (Trang 53)
Hình 4.7: Trang quản lý danh sách sản phẩm của nhà thuốc - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.7 Trang quản lý danh sách sản phẩm của nhà thuốc (Trang 57)
Hình 4.30: Trang thêm sản phẩm mới của nhà thuốc (hình b) - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.30 Trang thêm sản phẩm mới của nhà thuốc (hình b) (Trang 58)
Hình 4.31: Trang chỉnh sửa sản phẩm của nhà thuốc (hình a) - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.31 Trang chỉnh sửa sản phẩm của nhà thuốc (hình a) (Trang 58)
Hình 4.33: Trang chỉnh sửa sản phẩm của nhà thuốc (hình c) - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.33 Trang chỉnh sửa sản phẩm của nhà thuốc (hình c) (Trang 59)
Hình 4.37: Trang quản lý thông tin người mua của nhà thuốc - (Đồ án hcmute) xây dựng ứng dụng cung cấp dược phẩm trên nền tảng website
Hình 4.37 Trang quản lý thông tin người mua của nhà thuốc (Trang 61)

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm