Bối cảnh và vấn đề nghiên cứu

Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, việc ứng dụng các giải pháp phần mềm vào hoạt động kinh doanh trực tuyến trở thành xu hướng tất yếu của các doanh nghiệp và đơn vị bán lẻ. Đối với ngành hàng thiết bị di động, nhu cầu tìm kiếm thông tin, so sánh thông số kỹ thuật và mua sắm trực tuyến của người tiêu dùng ngày càng gia tăng. Tuy nhiên, theo khảo sát thực tế của tác giả, phần lớn các cửa hàng kinh doanh thiết bị di động quy mô vừa và nhỏ tại Việt Nam vẫn chưa sở hữu hệ thống website thương mại điện tử chuyên biệt; nhiều đơn vị mới dừng lại ở việc giới thiệu sản phẩm đơn giản hoặc bán hàng qua các kênh mạng xã hội, chưa tối ưu hóa được quy trình xử lý đơn hàng và quản lý kho bãi.

Đề tài "Xây dựng website bán điện thoại cho cửa hàng Kim Long" được thực hiện bởi sinh viên Nguyễn Mạnh Hào (ngành Công nghệ Thông tin, Viện Kỹ thuật và Công nghệ – Trường Đại học Thủ Dầu Một) dưới sự hướng dẫn của ThS. Nguyễn Hữu Vĩnh (tháng 11/2021). Đề tài tập trung giải quyết bài toán chuyển đổi phương thức bán hàng từ trực tiếp sang trực tuyến cho cửa hàng Kim Long, xây dựng cổng thông tin và bán hàng tự động phục vụ nhu cầu kinh doanh.

Mục tiêu và nhiệm vụ nghiên cứu của đồ án được xác định gồm các nội dung:

  1. Thu thập thông tin, tài liệu liên quan đến cấu trúc và hoạt động của trang web thương mại điện tử nhằm xác định yêu cầu nghiệp vụ và kỹ thuật.
  2. Khảo sát các hệ thống thương mại điện tử thực tế đang hoạt động (cụ thể là website thegioididong.vn) để rút ra mô hình ứng dụng cho cửa hàng Kim Long.
  3. Phân tích chức năng hệ thống, phân tích và mô hình hóa bằng sơ đồ Use Case, biểu đồ tuần tự (Sequence Diagram), biểu đồ lớp (Class Diagram) và biểu đồ hoạt động (Activity Diagram).
  4. Phân tích và thiết kế cơ sở dữ liệu quan hệ hoàn chỉnh đáp ứng các nghiệp vụ bán hàng, quản lý sản phẩm, đơn hàng, khách hàng và cấu hình giá cước vận chuyển.
  5. Hiện thực hóa website trên nền tảng framework mã nguồn mở, xây dựng đầy đủ giao diện người dùng (Frontend) và bảng điều khiển quản trị (Backend/Admin).

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Quy trình nghiệp vụ bán hàng thiết bị di động trực tuyến, cấu trúc dữ liệu và giải pháp xây dựng phần mềm thương mại điện tử.
  • Phạm vi nghiên cứu: Ứng dụng triển khai cho cửa hàng bán lẻ thiết bị di động Kim Long; phục vụ hai nhóm đối tượng chính là người tiêu dùng có nhu cầu mua hàng trực tuyến và chủ cửa hàng/quản trị viên thực hiện quản lý sản phẩm, đơn hàng và danh mục.
  • Thời gian và địa điểm thực hiện: Tháng 11 năm 2021 tại Trường Đại học Thủ Dầu Một, tỉnh Bình Dương.

Cơ sở lý thuyết và phương pháp

Khung lý thuyết và mô hình kiến trúc

Tác giả sử dụng các nền tảng lý thuyết về phát triển phần mềm ứng dụng web và kiến trúc phân lớp:

  • Mô hình MVC (Model - View - Controller): Kiến trúc tách biệt ba thành phần chính:
    • Model: Chứa logic nghiệp vụ, xử lý truy xuất cơ sở dữ liệu và ánh xạ dữ liệu (Class, phương thức xử lý).
    • View: Đảm nhiệm việc hiển thị giao diện, tiếp nhận thông tin trực quan và tương tác trực tiếp với người dùng qua các thành phần đồ họa (GUI).
    • Controller: Tiếp nhận các yêu cầu (requests) từ người dùng, điều hướng và gọi các phương thức tương ứng tại Model và trả kết quả về View.
  • Ngôn ngữ PHP (Hypertext Preprocessor): Ngôn ngữ kịch bản chạy phía máy chủ (server-side), hoạt động kết hợp với môi trường LAMP (Linux, Apache, MySQL, PHP).
  • Framework Laravel (phiên bản 8.x): Framework PHP mã nguồn mở phát triển bởi Taylor Otwell (khởi nguồn từ tháng 6/2011). Đồ án khai thác các tính năng cốt lõi của Laravel gồm:
    • Quản lý gói phụ thuộc với Composer.
    • Tương tác cơ sở dữ liệu qua Eloquent ORM.
    • Điều khiển tác vụ qua giao diện dòng lệnh Artisan.
    • Quản lý cấu trúc bảng dữ liệu thông qua Migrations.
    • Hệ thống xác thực người dùng (Authentication) và template engine View.
    • Cơ chế bảo mật sẵn có: sử dụng PDO để chống lại các cuộc tấn công SQL Injection và sử dụng CSRF Token trong các form dữ liệu để chống lại tấn công giả mạo yêu cầu (Cross-Site Request Forgery).

Phương pháp nghiên cứu và phát triển

  • Phương pháp khảo sát và phân tích yêu cầu: Tiến hành khảo sát cấu trúc chức năng và giao diện của các trang web bán lẻ điện thoại lớn (điển hình là thegioididong.vn), từ đó chuẩn hóa luồng nghiệp vụ mua bán trực tuyến và lập tài liệu đặc tả yêu cầu kỹ thuật.
  • Phương pháp mô hình hóa hệ thống (UML): Sử dụng các loại biểu đồ chuẩn để thiết kế hệ thống phần mềm: biểu đồ Use Case (tổng quan và phân rã chi tiết), biểu đồ tuần tự (Sequence Diagram), biểu đồ hoạt động (Activity Diagram).
  • Phương pháp thiết kế cơ sở dữ liệu quan hệ: Chuẩn hóa các thực thể thành 15 bảng dữ liệu trong hệ quản trị cơ sở dữ liệu MySQL, thiết lập các khóa chính (Primary Key) và khóa ngoại (Foreign Key) để đảm bảo toàn vẹn dữ liệu.

Nguồn dữ liệu và môi trường thực nghiệm

  • Dữ liệu sản phẩm, danh mục, thương hiệu và thông tin địa giới hành chính (tỉnh/thành phố, quận/huyện, xã/phường) tại Việt Nam phục vụ việc tính toán chi phí vận chuyển.
  • Môi trường phát triển cục bộ: Phần mềm giả lập máy chủ XAMPP (chạy Apache và MySQL) trên nền tảng localhost, quản lý cơ sở dữ liệu thông qua công cụ phpMyAdmin.

Thiết kế và triển khai

Hệ thống được thiết kế hoàn chỉnh từ cấu trúc dữ liệu, sơ đồ xử lý luồng đến các chức năng nghiệp vụ cụ thể.

Thiết kế cơ sở dữ liệu

Cơ sở dữ liệu của hệ thống bao gồm 15 bảng với các trường thông tin và kiểu dữ liệu được đặc tả chi tiết trong đồ án:

Tên bảng Khóa chính Các trường dữ liệu chính Mô tả chức năng
tbl_admin Admin_id (int) Admin_email, Admin_password, Admin_name, Admin_phone Lưu trữ thông tin tài khoản và thông tin cá nhân của quản trị viên
tbl_brand Brand_id (int) Brand_name, Brand_slug, Brand_desc, Brand_status Quản lý các thương hiệu sản phẩm (Apple, Samsung, v.v.)
tbl_category_product Category_id (int) Category_name, Meta_keyword, Slug_category_product, Category_desc Quản lý phân loại/danh mục sản phẩm và từ khóa tối ưu
tbl_coupon Coupon_id (int) Coupon_name, Coupon_time, Coupon_codition, Coupon_number, Coupon_code Quản lý mã giảm giá, số lượng, điều kiện áp dụng và mã code
tbl_customer Customer_id (int) Customer_name, Customer_email, Customer_password, Customer_phone Lưu trữ thông tin tài khoản đăng ký của khách hàng
tbl_feeship Fee_id (int) Fee_matp, Fee_maqh, Fee_xaid, Fee_feeship Thiết lập biểu phí giao hàng theo từng địa bàn hành chính
tbl_order Order_id (bigint) Customer_id, Shipping_id, Order_status, Order_code, Cretead_at Lưu trữ đơn đặt hàng, trạng thái xử lý và thời gian tạo
tbl_order_details Order_details_id (bigint) Order_code, Product_id, Product_name, Product_price, Product_sales_quantity, Product_coupon, Product_feeship Chi tiết từng mặt hàng, số lượng, giá và chiết khấu trong đơn hàng
tbl_product Product_id (int) Product_name, Product_quantity, Product_sold, Product_slug, Category_id, Brand_id, Product_desc, Product_content, Product_price, Product_img, Product_status Quản lý thông tin chi tiết, số lượng tồn kho, giá bán và hình ảnh sản phẩm
tbl_quanhuyen Maqh (varchar) Name_quanhuyen, Type, matp Danh mục địa giới quận/huyện trực thuộc tỉnh/thành phố
tbl_shipping Shipping_id (int) Shipping_name, Shipping_address, Shipping_phone, Shipping_email, Shipping_notes, Shipping_method Thông tin người nhận hàng, địa chỉ giao và hình thức thanh toán
tbl_slider Slider_id (int) Slider_name, Slider_status, Slider_img, Slider_desc Quản lý banner/slider quảng cáo hiển thị trên trang chủ
tbl_social User_id (int) Provider_user_id, provider, user Quản lý liên kết xác thực tài khoản qua mạng xã hội
tbl_tinhthanhpho matp (varchar) Name_city, type Danh mục địa giới hành chính cấp tỉnh/thành phố
tbl_xaphuongthitran xaid (varchar) Name_xaphuong, type, maqh Danh mục địa giới hành chính cấp xã/phường/thị trấn

Phân quyền người dùng trong hệ thống

Hệ thống thiết lập ma trận phân quyền rõ ràng cho 3 nhóm tác nhân (Actors):

Chức năng hệ thống Khách vãng lai Khách hàng (Đã đăng ký) Quản trị viên (Admin)
Xem thông tin cá nhân Không Có Có
Sửa thông tin cá nhân Không Có Không
Đăng/Quản lý sản phẩm mới Không Không Có
Xem chi tiết sản phẩm Có Có Có
Đặt hàng trực tuyến Có Có Không
Thanh toán đơn hàng Không Có Không

Thiết kế luồng xử lý và giao diện ứng dụng

  1. Module Người dùng (Khách hàng):

    • Trang chủ & Danh mục: Hiển thị sản phẩm mới nhất, sản phẩm nổi bật, banner quảng cáo (Slider), hỗ trợ lọc theo thương hiệu và danh mục.
    • Đăng ký / Đăng nhập: Kiểm tra tính hợp lệ của dữ liệu đầu vào (họ tên, email, mật khẩu, số điện thoại). Hệ thống hiển thị cảnh báo nếu để trống bất kỳ trường thông tin nào hoặc nhập sai mật khẩu.
    • Chi tiết sản phẩm & Sản phẩm liên quan: Hiển thị thông số kỹ thuật, hình ảnh, giá cả và danh sách các sản phẩm có cùng tính chất.
    • Giỏ hàng & Đặt hàng: Khi thêm sản phẩm vào giỏ, hệ thống hiển thị thông báo với 2 tùy chọn: "Xem tiếp" hoặc "Đi đến giỏ hàng". Trong giỏ hàng, khách hàng có thể tăng/giảm số lượng (ràng buộc không thể giảm dưới 1), xóa từng mặt hàng, xóa toàn bộ giỏ hàng và áp dụng mã giảm giá (tbl_coupon).
    • Thanh toán: Nhập thông tin giao hàng gắn liền với cấu trúc địa phương 3 cấp (tbl_tinhthanhpho, tbl_quanhuyen, tbl_xaphuongthitran) để tự động tính toán chi phí vận chuyển (tbl_feeship).
  2. Module Quản trị (Admin):

    • Bảo mật đăng nhập Admin: Bổ sung bước xác thực mã Captcha bên cạnh Email và Mật khẩu để chống đăng nhập tự động trái phép.
    • Quản lý danh mục, thương hiệu, sản phẩm: Hỗ trợ đầy đủ các thao tác Thêm - Sửa - Xóa, quản lý trạng thái ẩn/hiện và cập nhật số lượng tồn kho/đã bán.
    • Quản lý đơn hàng & In ấn: Xem danh sách đơn hàng, xem chi tiết các mặt hàng trong đơn, cập nhật trạng thái đơn hàng và thực hiện in hóa đơn bán hàng.
    • Quản trị Banner (Slider) & Mã giảm giá: Bật/tắt hiển thị quảng cáo trên trang chủ, tạo mã khuyến mại theo phần trăm hoặc số tiền cố định.

Nội dung chính theo từng chương

Chương 1: Tổng quan

Chương 1 làm rõ tính cấp thiết của đề tài xuất phát từ nhu cầu thực tiễn của các cửa hàng điện thoại nhỏ và vừa. Tác giả trình bày hướng tiếp cận xây dựng hệ thống thân thiện, dễ sử dụng, tính toán chính xác; xác định nội dung triển khai từ khâu khảo sát thực tế, phân tích biểu đồ đến thiết kế phần mềm. Chương này cũng giới thiệu chi tiết về ngôn ngữ PHP, hệ sinh thái LAMP (Linux, Apache, MySQL, PHP) và framework Laravel (lịch sử từ năm 2011 đến phiên bản 8.x, các ưu điểm về cú pháp, tài liệu, bảo mật PDO/CSRF, tính năng Composer, Eloquent ORM, Artisan, Migrations). Đồng thời, tác giả chỉ ra thực trạng hạ tầng web bán hàng hiện nay tại Việt Nam: nhiều trang chỉ ở mức rao vặt, tiềm ẩn rủi ro cho người mua và phương thức thanh toán chủ yếu vẫn là "tiền trao, cháo múc" do thiếu liên kết trực tiếp với hệ thống ngân hàng.

Chương 2: Cơ sở lý thuyết

Nội dung chương 2 tập trung phân tích và so sánh hai quy trình bán hàng:

  • Bán hàng trực tiếp: Khách hàng đến cửa hàng, nhận tư vấn trực tiếp từ nhân viên, thanh toán tại quầy thu ngân, chờ xuất kho và nhận hóa đơn bảo hành kèm sản phẩm.
  • Bán hàng trực tuyến: Cửa hàng đăng tải thông số, giá cả, khuyến mãi lên website; khách hàng đăng nhập, chọn hàng vào giỏ, chọn hình thức thanh toán (chuyển khoản hoặc thanh toán khi nhận hàng - COD), cung cấp thông tin giao nhận. Sau khi xác nhận thanh toán/đơn hàng, hệ thống xử lý giao hàng, xuất hóa đơn lưu trữ kế toán và lưu thông tin phục vụ chăm sóc khách hàng. Chương này cũng xác định cụ thể các yêu cầu nghiệp vụ đối với từng nhóm chức năng (quản trị và người dùng) cùng các yêu cầu kỹ thuật về môi trường triển khai (PHP, Laravel 8.x, phpMyAdmin, XAMPP trên localhost).

Chương 3: Phân tích thiết kế cơ sở dữ liệu

Chương 3 trình bày toàn bộ quá trình mô hình hóa hệ thống thông tin phục vụ website bán điện thoại:

  • Đặc tả 7 Use Case chính của hệ thống thông qua các bảng chi tiết: Use case tổng quan, Use case quản lý sản phẩm, Use case tìm kiếm sản phẩm, Use case giỏ hàng, Use case quản lý nhà cung cấp, Use case quản lý danh mục sản phẩm, Use case quản lý tài khoản.
  • Xây dựng 6 biểu đồ tuần tự (Sequence Diagram): Quá trình đăng nhập, Quá trình tìm kiếm, Quá trình quản lý sản phẩm, Quá trình quản lý danh mục, Quá trình in hóa đơn, Quá trình đặt hàng qua website.
  • Xây dựng 8 biểu đồ hoạt động (Activity Diagram): Đăng nhập, Đăng ký, Tìm kiếm sản phẩm, Thêm vào giỏ hàng, Thanh toán, Quản lý tài khoản, Quản lý sản phẩm, Quản lý danh mục.
  • Thiết lập chi tiết cấu trúc dữ liệu cho 15 bảng quan hệ (từ tbl_admin đến tbl_xaphuongthitran), xác định rõ ràng tên cột, kiểu dữ liệu và mô tả ngữ nghĩa của từng trường.

Chương 4: Xây dựng ứng dụng

Chương 4 mô tả kết quả hiện thực hóa phần mềm thành các giao diện và chức năng cụ thể:

  • Bảng phân quyền chi tiết cho 3 đối tượng người dùng.
  • Trình bày giao diện và luồng thao tác người dùng: Giao diện trang chủ hiển thị sản phẩm mới; quy trình 5 bước đăng ký tài khoản (kèm cơ chế cảnh báo lỗi để trống); quy trình 3 bước đăng nhập hệ thống; giao diện phân loại theo danh mục; giao diện chi tiết thông số sản phẩm và khối sản phẩm liên quan; cơ chế pop-up thông báo khi nhấn nút mua hàng; giao diện giỏ hàng với các kịch bản cập nhật số lượng, xóa sản phẩm/xóa tất cả và áp dụng mã giảm giá.
  • Trình bày giao diện và quy trình quản trị: Quy trình 4 bước đăng nhập Admin tích hợp mã Captcha; giao diện bảng điều khiển quản trị; module quản lý Slider/Banner quảng cáo (tùy chọn ẩn/hiện); module quản lý đơn hàng và xem chi tiết đơn; module quản lý mã giảm giá; các module quản lý danh mục, thương hiệu và sản phẩm (Thêm, Sửa, Liệt kê danh sách).

Kết luận và hướng phát triển

Phần tổng kết khẳng định đồ án đã hoàn thành mục tiêu xây dựng một website bán điện thoại hoàn chỉnh, đáp ứng đầy đủ các yêu cầu quản lý nghiệp vụ và mua bán trực tuyến cơ bản cho cửa hàng Kim Long; đồng thời ghi nhận định hướng phát triển nhằm nâng cấp hệ thống trong tương lai.


Kết quả và đóng góp

Kết quả chính

  • Xây dựng thành công cơ sở dữ liệu gồm 15 bảng quan hệ chuẩn hóa, đáp ứng lưu trữ toàn diện thông tin sản phẩm, đơn hàng, khách hàng, mã giảm giá và bảng phân vùng phí giao hàng chi tiết đến cấp xã/phường.
  • Hoàn thiện hệ thống website bán hàng trực tuyến trên nền tảng Laravel 8.x với hai phân hệ độc lập: Phân hệ người dùng (Frontend) và Phân hệ quản trị (Backend/Admin).
  • Thiết lập đầy đủ các quy trình nghiệp vụ mua sắm trực tuyến: tìm kiếm sản phẩm theo tên/danh mục/nhà cung cấp, giỏ hàng tương tác linh hoạt, kiểm soát số lượng sản phẩm không âm, tích hợp coupon khuyến mãi và tính phí ship theo địa giới hành chính.
  • Triển khai cơ chế bảo mật xác thực quản trị viên bằng mã Captcha, sử dụng PDO phòng chống SQL Injection và CSRF Token bảo vệ các biểu mẫu nhập liệu.

Giải pháp và đóng góp của tác giả

  • Đưa ra giải pháp số hóa quy trình kinh doanh cho cửa hàng bán lẻ quy mô nhỏ (cửa hàng Kim Long), giúp tối ưu hóa chi phí quảng bá và mở rộng kênh tiếp cận khách hàng qua mạng Internet.
  • Chuẩn hóa nghiệp vụ quản lý bán hàng qua mạng từ khâu tiếp nhận đơn hàng, quản lý kho sản phẩm, xuất hóa đơn đến lưu trữ thông tin phục vụ chăm sóc khách hàng.
  • Cung cấp tài liệu thiết kế hệ thống hoàn chỉnh từ khảo sát thực tế, phân tích đặc tả yêu cầu, hệ thống biểu đồ UML (Use Case, Sequence, Activity) đến lược đồ cơ sở dữ liệu quan hệ mẫu cho các bài toán thương mại điện tử sử dụng Laravel.

Hạn chế và hướng nghiên cứu tiếp

  • Hạn chế được ghi nhận trong văn bản:
    • Hệ thống chưa tích hợp cổng thanh toán trực tuyến liên kết trực tiếp với các ngân hàng hoặc cổng trung gian tài chính; hình thức thanh toán chủ yếu vẫn dừng lại ở chuyển khoản thủ công hoặc thanh toán trực tiếp khi nhận hàng ("tiền trao, cháo múc").
    • Người mua hàng trực tuyến vẫn phải chịu rủi ro nhất định trong quá trình giao dịch do cơ chế kiểm soát và ràng buộc giữa hai bên chưa được tự động hóa hoàn toàn.
    • Vấn đề phụ thuộc phiên bản của framework Laravel: văn bản chỉ rõ việc thiếu sự liên kết đồng bộ giữa các phiên bản framework có thể gây lỗi hoặc phá vỡ cấu trúc ứng dụng khi nâng cấp mã nguồn.
  • Hướng phát triển:
    • Nghiên cứu tích hợp các giải pháp thanh toán điện tử tự động kết nối API ngân hàng nhằm hoàn thiện chu trình thanh toán khép kín.
    • Mở rộng và nâng cấp thêm các chức năng quản lý nâng cao, tối ưu hóa hệ thống báo cáo thống kê phục vụ hoạt động vận hành của cửa hàng.

Giá trị tham khảo

Báo cáo đồ án tốt nghiệp này mang lại giá trị tham khảo thiết thực cho:

  • Sinh viên ngành Công nghệ Thông tin, Kỹ thuật Phần mềm và Hệ thống Thông tin: Tài liệu tham khảo hữu ích cho việc thực hiện đồ án môn học hoặc đồ án tốt nghiệp về đề tài xây dựng website thương mại điện tử sử dụng PHP và Laravel Framework.
  • Lập trình viên phát triển ứng dụng Web: Tham khảo cấu trúc thiết kế cơ sở dữ liệu 15 bảng quan hệ cho bài toán bán hàng trực tuyến, đặc biệt là cách tổ chức bảng dữ liệu tính phí vận chuyển theo 3 cấp hành chính Việt Nam (tbl_tinhthanhpho, tbl_quanhuyen, tbl_xaphuongthitran, tbl_feeship) và quản lý mã giảm giá (tbl_coupon).
  • Phần đáng tham khảo nhất:
    • Hệ thống bảng đặc tả Use Case chi tiết tại Chương 3 (từ Bảng 1.1 đến Bảng 1.7) và ma trận phân quyền người dùng (Bảng 4.1 tại Chương 4).
    • Cấu trúc chi tiết của 15 bảng dữ liệu được định nghĩa đầy đủ kiểu dữ liệu và mô tả trường tại Chương 3.

Câu hỏi thường gặp

1. Website bán điện thoại cho cửa hàng Kim Long được xây dựng bằng những công nghệ và công cụ nào?
Website được phát triển bằng ngôn ngữ lập trình PHP trên nền tảng framework Laravel (phiên bản 8.x). Hệ thống sử dụng hệ quản trị cơ sở dữ liệu MySQL thông qua công cụ quản lý phpMyAdmin, môi trường máy chủ cục bộ được giả lập bằng phần mềm XAMPP trên localhost.

2. Hệ thống áp dụng những giải pháp bảo mật nào theo thiết kế của Laravel?
Hệ thống sử dụng cơ chế PDO (PHP Data Objects) sẵn có của Laravel để chống lại hình thức tấn công tiêm mã độc SQL (SQL Injection); sử dụng trường token ẩn (CSRF Token) trong các biểu mẫu để phòng ngừa tấn công giả mạo yêu cầu từ phía người dùng (Cross-Site Request Forgery); đồng thời trang đăng nhập quản trị (Admin) được tích hợp thêm bước xác thực bằng mã Captcha.

3. Cơ sở dữ liệu của đồ án xử lý bài toán tính phí vận chuyển (feeship) như thế nào?
Hệ thống thiết lập 3 bảng dữ liệu quản lý địa giới hành chính gồm tbl_tinhthanhpho (quản lý tỉnh/thành qua mã matp), tbl_quanhuyen (quản lý quận/huyện qua mã maqh), tbl_xaphuongthitran (quản lý xã/phường qua mã xaid). Các thông tin này được liên kết tới bảng tbl_feeship thông qua các khóa ngoại (Fee_matp, Fee_maqh, Fee_xaid) cùng trường Fee_feeship để xác định mức phí giao hàng chính xác cho từng khu vực cụ thể.

4. Khách vãng lai và khách hàng đã đăng ký có những quyền hạn khác nhau như thế nào khi thao tác trên website?
Theo bảng phân quyền (Bảng 4.1), khách vãng lai chỉ có quyền xem thông tin chi tiết sản phẩm và tạo thao tác đặt hàng ban đầu, không được xem/sửa thông tin cá nhân và không được thực hiện bước thanh toán chính thức. Trong khi đó, khách hàng đã đăng ký có đầy đủ quyền xem/sửa thông tin cá nhân, xem chi tiết sản phẩm, đặt hàng và tiến hành các bước thanh toán đơn hàng.

5. Trong module giỏ hàng, hệ thống hỗ trợ những kịch bản thao tác nào cho khách hàng?
Tại trang giỏ hàng, khách hàng có 3 kịch bản thao tác chính: (1) Cập nhật số lượng sản phẩm tăng hoặc giảm (ràng buộc hệ thống không cho phép giảm số lượng xuống dưới 1); (2) Xóa toàn bộ sản phẩm cùng lúc bằng nút "Xóa tất cả"; (3) Nhập mã giảm giá vào ô khuyến mãi và nhấn tính toán mã giảm giá trước khi nhấn nút xác nhận đặt hàng.


Kết luận

Đồ án tốt nghiệp "Xây dựng website bán điện thoại cho cửa hàng Kim Long" của tác giả Nguyễn Mạnh Hào đã giải quyết trọn vẹn bài toán ứng dụng công nghệ thông tin vào mô hình kinh doanh bán lẻ thiết bị di động quy mô vừa và nhỏ. Bằng việc vận dụng kiến trúc MVC trên nền tảng PHP Laravel 8.x kết hợp cơ sở dữ liệu MySQL 15 bảng quan hệ chuẩn hóa, hệ thống đã hiện thực hóa đầy đủ các chức năng mua sắm trực tuyến, quản trị đơn hàng, sản phẩm và kiểm soát phí vận chuyển. Mặc dù vẫn còn hạn chế về khả năng liên kết cổng thanh toán trực tuyến tự động qua ngân hàng, công trình cung cấp một tài liệu phân tích thiết kế hệ thống rõ ràng, có giá trị học thuật và thực tiễn cao cho sinh viên chuyên ngành kỹ thuật phần mềm và công nghệ thông tin.