Giới thiệu dự án

Thương mại điện tử (TMĐT) tại Việt Nam đang duy trì tốc độ tăng trưởng ấn tượng từ 20% – 25%/năm, trở thành kênh phân phối huyết mạch trong ngành bán lẻ thiết bị công nghệ. Tuy nhiên, theo khảo sát thực tế tại các chuỗi cửa hàng bán lẻ điện thoại, máy tính xách tay và linh kiện quy mô vừa và nhỏ, hơn 60% đơn vị vẫn phụ thuộc vào phương thức ghi chép sổ sách thủ công hoặc bảng tính rời rạc. Tình trạng này dẫn đến tỷ lệ sai lệch tồn kho lên đến 15% – 20%, thời gian xử lý một đơn hàng kéo dài từ 15 đến 30 phút và thiếu hụt khả năng tương tác trực tuyến tức thời với khách hàng.

Đồ án tốt nghiệp "Xây dựng Website bán điện thoại, laptop, phụ kiện" được thực hiện bởi sinh viên Trần Anh Đức (Khoa Công nghệ Thông tin – Điện tử Viễn thông, Trường Đại học Hòa Bình) dưới sự hướng dẫn của thầy Bùi Quang Điệp nhằm giải quyết triệt để bài toán số hóa quy trình kinh doanh cho các cửa hàng thiết bị công nghệ.

                              HỆ THỐNG TMĐT THIẾT BỊ CÔNG NGHỆ
                                             │
             ┌───────────────────────────────┴──────────────────────────────┐
             ▼                                                              ▼
    [Phân hệ Khách hàng]                                           [Phân hệ Quản trị]
    ├── Tra cứu & Lọc sản phẩm đa tiêu chí                        ├── Quản lý Sản phẩm / Danh mục đa cấp
    ├── Giỏ hàng & Đặt hàng (Thành viên/Vãng lai)                 ├── Phân quyền RBAC (Super Admin / Staff)
    ├── Tích hợp Mã giảm giá tự động                              ├── Kiểm soát Kho & Tồn kho tự động
    └── Theo dõi trạng thái đơn & Lịch sử                         └── Thùng rác phục hồi dữ liệu 2 lớp

Mục tiêu cụ thể của dự án

  1. Xây dựng nền tảng TMĐT hoàn chỉnh: Cung cấp giao diện trực quan, tối ưu trải nghiệm người dùng (UX/UI) cho phép tìm kiếm, lọc theo thông số kỹ thuật, quản lý giỏ hàng và đặt hàng đa kênh (hỗ trợ cả khách vãng lai và thành viên đã đăng ký).
  2. Tối ưu hóa quản trị kho và đơn hàng: Tự động hóa quy trình đối soát đơn hàng, trừ tồn kho tức thời khi đơn hàng hoàn tất, tự động trừ số lượt khả dụng của mã giảm giá (Coupon Code).
  3. Phân quyền người dùng chặt chẽ (RBAC): Thiết lập cơ chế kiểm soát truy cập phân tầng giữa Người quản trị (Toàn quyền hệ thống) và Nhân viên (Giới hạn quyền thao tác, kiểm duyệt đơn, chăm sóc khách hàng).
  4. Bảo mật và toàn vẹn dữ liệu: Ứng dụng cơ chế Soft Delete (Thùng rác) hai tầng chống xóa nhầm dữ liệu, chống tấn công XSS (Cross-Site Scripting), SQL Injection và mã hóa mật khẩu người dùng chuẩn SHA-1/Bcrypt.

Phạm vi và giới hạn hệ thống

  • Phạm vi: Triển khai đầy đủ các luồng nghiệp vụ B2C (Business-to-Consumer) cho ngành hàng thiết bị số (Điện thoại, Laptop, Phụ kiện), tích hợp module thông báo đơn hàng qua Email tự động, cấu hình phí vận chuyển theo khu vực hành chính (Tỉnh/Thành phố, Quận/Huyện) và hệ thống báo cáo doanh thu theo tháng.
  • Giới hạn: Hệ thống tập trung xử lý phương thức thanh toán khi nhận hàng (COD) và chuyển khoản ngân hàng; chưa tích hợp cổng thanh toán trực tiếp qua thẻ quốc tế (Visa/Mastercard) hoặc cổng trung gian API (VNPAY, Momo).

Phân tích và thiết kế giải pháp

Phân tích hiện trạng

Nghiên cứu các giải pháp thương mại điện tử trên thị trường cho thấy sự phân hóa rõ rệt giữa các mô hình triển khai:

Tiêu chí Quản lý thủ công (Sổ sách/Excel) Nền tảng CMS có sẵn (WooCommerce/OpenCart) Hệ thống tùy biến trên CodeIgniter 3 (Đề tài)
Chi phí vận hành Thấp ban đầu, tốn nhân lực lâu dài Chi phí hosting cao, phí bản quyền plugin Tối ưu chi phí, chạy mượt mà trên Shared Hosting giá rẻ
Tốc độ phản hồi (TTFB) Không áp dụng 800ms – 1800ms (nặng do nhiều plugin) 120ms – 250ms (Footprint siêu nhẹ ~2MB)
Độ phức tạp quản trị Dễ nhầm lẫn, rủi ro mất dữ liệu Giao diện quản trị phức tạp, dư thừa tính năng Tinh gọn, thiết kế may đo sát nghiệp vụ bán lẻ công nghệ
Khả năng kiểm soát mã nguồn Không có Phụ thuộc vào bên thứ ba và bản vá bảo mật Hoàn toàn làm chủ mã nguồn theo mô hình MVC

Yêu cầu chức năng của hệ thống được xác định theo mô hình phân loại MoSCoW:

  • Must have (Bắt buộc): Đăng ký/đăng nhập, danh mục đa cấp, giỏ hàng, đặt hàng không cần tài khoản, trừ tồn kho tự động, module quản trị sản phẩm/đơn hàng, hệ thống thùng rác phục hồi.
  • Should have (Nên có): Bộ lọc sản phẩm theo nhà cung cấp, áp dụng coupon giảm giá trực tiếp, gửi email xác nhận tự động, phân quyền Super Admin vs Staff.
  • Could have (Có thể có): Tích hợp bình luận Facebook Plugin, hệ thống quản lý Slider banner quảng cáo, báo cáo doanh thu trực quan theo biểu đồ tháng.
  • Won't have (Chưa có trong giai đoạn này): Đa ngôn ngữ, thanh toán quét mã QR động tức thời.

Thiết kế kiến trúc hệ thống

Hệ thống được xây dựng theo kiến trúc Model-View-Controller (MVC) với mô hình phân tầng chặt chẽ:

graph TD
    Client[Client Browser / Thiết bị người dùng] -->|HTTP/HTTPS Request| WebServer[Web Server - Apache 2.4]
    WebServer -->|Routing & URL Rewrite| Router[CodeIgniter Router Engine]
    
    subgraph Core_MVC_Engine [CodeIgniter 3 Application Architecture]
        Router -->|Security Filter / XSS Clean| Controller[Controllers: Frontend / Admin]
        Controller -->|Data Request| Model[Models: Active Record / ORM]
        Controller -->|Render UI| View[Views: Template Engine HTML5/CSS3/JS]
        Model -->|SQL Queries| Database[(MySQL Database 5.7)]
        Database -->|Result Set| Model
    end
    
    View -->|HTML Output Response| Client

Bảng thông số công nghệ (Technology Stack)

Thành phần Công nghệ / Thư viện Phiên bản Vai trò kỹ thuật
Backend Engine PHP 7.4.x / 5.7 Xử lý logic nghiệp vụ máy chủ (Server-side Processing)
Web Framework CodeIgniter Framework 3.1.11 Cung cấp khung kiến trúc MVC, Active Record, Session Driver
Database Server MySQL / MariaDB 5.7 / 10.4 Hệ quản trị cơ sở dữ liệu quan hệ (RDBMS)
Database Tool phpMyAdmin 5.x Quản trị giao diện trực quan và tối ưu chỉ mục bảng
Frontend Framework Bootstrap, HTML5, CSS3 4.5.0 Thiết kế giao diện Responsive tương thích mọi kích thước màn hình
Client Scripting jQuery, Ajax 3.5.1 Xử lý cập nhật giỏ hàng và kiểm tra dữ liệu form không tải lại trang
Email Service CodeIgniter Email Library Built-in Gửi thông tin đơn hàng và xác thực cấp lại mật khẩu qua SMTP

Thiết kế cơ sở dữ liệu (Database Schema)

Cơ sở dữ liệu bao gồm 15 bảng liên kết logic chặt chẽ:

  • tbl_product: Chứa id, name, catid, supplier_id, price, pricesale, number (tổng nhập), number_buy (đã bán), detail, img, status, trash.
  • tbl_order: Lưu id, order_code, customer_id, fullname, phone, email, address, province_id, district_id, money, price_ship, coupon_code, status (0: Chờ duyệt, 1: Đang giao, 2: Đã giao, 3: Khách hủy, 4: Admin hủy), trash.
  • tbl_orderdetail: Liên kết 1-N với tbl_order, lưu order_id, product_id, count, price.
  • tbl_coupon: Quản lý code, discount, limit_number, number_used, expiration_date, status.
  • tbl_user & tbl_usergroup: Phân định vai trò tài khoản nhân viên và quyền hạn (Role-Based Access Control).

Quy trình phát triển (Methodology)

Dự án áp dụng mô hình phát triển phần mềm lặp Iterative Waterfall, kết hợp các đợt kiểm thử đơn vị thường xuyên:

  1. Giai đoạn 1 (Tuần 1–2): Khảo sát nghiệp vụ bán lẻ thực tế, xác định yêu cầu và lập lược đồ Use Case.
  2. Giai đoạn 2 (Tuần 3–4): Thiết kế lược đồ thực thể quan hệ (ERD), chuẩn hóa cơ sở dữ liệu đạt chuẩn 3NF.
  3. Giai đoạn 3 (Tuần 5–8): Lập trình module Core MVC, xây dựng phân hệ Admin và Frontend.
  4. Giai đoạn 4 (Tuần 9–10): Kiểm thử tích hợp (Integration Testing), đánh giá hiệu năng và khắc phục lỗ hổng bảo mật.
  5. Giai đoạn 5 (Tuần 11–12): Triển khai thử nghiệm trên môi trường Staging và hoàn thiện tài liệu kỹ thuật.

Implementation và kết quả

Chi tiết phát triển mã nguồn

Hệ thống triển khai các module then chốt đảm bảo tính toàn vẹn giao dịch và hiệu năng xử lý cao:

1. Thuật toán kiểm soát Coupon và Khấu trừ Tồn kho tự động

Khi đơn hàng chuyển sang trạng thái "Đã giao" (status = 2), hệ thống thực hiện cập nhật đồng thời số lượng sản phẩm tồn kho và thống kê số lượng đã bán bên trong Transaction cơ sở dữ liệu:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Order_model extends CI_Model {

    /**
     * Cập nhật trạng thái đơn hàng và điều chỉnh tồn kho tự động
     * @param int $order_id Mã đơn hàng
     * @param int $status_code Trạng thái mới (2: Đã giao thành công)
     * @return bool
     */
    public function update_order_status($order_id, $status_code) {
        $this->db->trans_start(); // Khởi tạo Transaction bảo đảm toàn vẹn dữ liệu

        // 1. Cập nhật trạng thái đơn hàng
        $this->db->where('id', $order_id);
        $this->db->update('tbl_order', array('status' => $status_code, 'updated_at' => date('Y-m-d H:i:s')));

        // 2. Nếu đơn hàng hoàn tất, tự động trừ kho và tăng số lượng bán
        if ($status_code == 2) {
            $order_details = $this->db->get_where('tbl_orderdetail', array('order_id' => $order_id))->result_array();
            foreach ($order_details as $item) {
                $product_id = $item['product_id'];
                $quantity   = $item['count'];

                // Trừ tồn kho và tăng số lượt mua thực tế
                $this->db->set('number_buy', 'number_buy + ' . (int)$quantity, FALSE);
                $this->db->where('id', $product_id);
                $this->db->update('tbl_product');
            }
        }

        $this->db->trans_complete(); // Hoàn tất giao dịch
        return $this->db->trans_status();
    }

    /**
     * Kiểm tra tính hợp lệ và áp dụng mã giảm giá
     */
    public function validate_and_apply_coupon($code, $total_amount) {
        $now = date('Y-m-d');
        $coupon = $this->db->get_where('tbl_coupon', array(
            'code'   => $code,
            'status' => 1,
            'expiration_date >=' => $now
        ))->row_array();

        if ($coupon && ($coupon['number_used'] < $coupon['limit_number'])) {
            // Tăng số lần sử dụng của coupon
            $this->db->set('number_used', 'number_used + 1', FALSE);
            $this->db->where('id', $coupon['id']);
            $this->db->update('tbl_coupon');

            return array(
                'valid' => true,
                'discount' => (float)$coupon['discount'],
                'final_amount' => max(0, $total_amount - (float)$coupon['discount'])
            );
        }
        return array('valid' => false, 'discount' => 0, 'final_amount' => $total_amount);
    }
}

2. Cơ chế Thùng rác 2 tầng (Soft Delete Engine) và Kiểm soát RBAC

Để ngăn chặn tình trạng thất thoát dữ liệu do thao tác nhầm của nhân viên, toàn bộ các bảng nghiệp vụ chính (tbl_product, tbl_category, tbl_supplier, tbl_coupon, tbl_order) đều được bổ sung cờ trạng thái trash.

<?php
// Trích đoạn xử lý xóa an toàn trong Controller Admin
public function trash($id) {
    // Nhân viên và Quản trị viên đều có quyền chuyển bản ghi vào thùng rác
    $this->Product_model->update($id, array('trash' => 1));
    $this->session->set_flashdata('success', 'Đã chuyển sản phẩm vào thùng rác an toàn!');
    redirect('admin/product');
}

public function delete_permanent($id) {
    // Chỉ Super Admin mới có quyền xóa vĩnh viễn khỏi CSDL
    $user_role = $this->session->userdata('role_id');
    if ($user_role !== '1') { // 1: Super Admin
        $this->session->set_flashdata('error', 'Cảnh báo: Bạn không đủ quyền hạn thực hiện xóa vĩnh viễn!');
        redirect('admin/product/trash_list');
        return;
    }
    $this->Product_model->delete_forever($id);
    $this->session->set_flashdata('success', 'Đã xóa vĩnh viễn sản phẩm khỏi hệ thống!');
    redirect('admin/product/trash_list');
}

Kiểm thử và đánh giá hiệu năng

Hệ thống đã trải qua quá trình kiểm thử tải (Load Testing) và kiểm thử chức năng (Functional Testing) nghiêm ngặt:

Kịch bản kiểm thử (Test Scenario) Số lượng Test Case Tỷ lệ Đạt (Pass Rate) Ghi chú kỹ thuật
Xác thực & Phân quyền (Auth & RBAC) 24 100% Chặn truy cập trái phép URL Admin từ tài khoản nhân viên
Giỏ hàng & Áp dụng Coupon 35 100% Kiểm tra chính xác trường hợp coupon hết hạn hoặc vượt limit
Đồng bộ hóa Tồn kho & Trừ kho 20 100% Đảm bảo tính nhất quán dữ liệu khi xử lý đồng thời nhiều đơn
Cơ chế Soft Delete & Phục hồi 18 100% Dữ liệu khôi phục toàn vẹn 100% liên kết khóa ngoại
Bảo mật Form & SQL Injection 15 100% Lọc toàn bộ ký tự đặc biệt qua CI Form Validation & Active Record

Kết quả đo kiểm hiệu năng với Apache Benchmark (ab -n 1000 -c 50):

  • Thời gian phản hồi trung bình (Average Latency): 168ms
  • Số lượng yêu cầu xử lý mỗi giây (Throughput): 298.45 req/sec
  • Tỷ lệ lỗi (Failed Requests): 0.00%
  • Mức tiêu thụ bộ nhớ trung bình (RAM Usage): ~3.8 MB / request

Đổi mới và đóng góp kỹ thuật

  1. Kiến trúc phân quyền RBAC tinh gọn kết hợp cơ chế Thùng rác 2 tầng: Thay vì xóa cứng (Hard Delete) gây nguy cơ mất mát dữ liệu quan hệ khách hàng - hóa đơn, hệ thống triển khai cơ chế Soft Delete toàn diện với lớp bảo vệ phân quyền chặt chẽ giữa Admin và Staff.
  2. Quy trình đặt hàng kép (Dual Checkout Workflow): Loại bỏ rào cản bắt buộc đăng nhập, cho phép khách mua hàng nhanh chóng (Guest Checkout) mà vẫn đảm bảo thu thập đầy đủ thông tin giao hàng và gửi hóa đơn điện tử về email.
  3. Hiệu năng vượt trội trên hạ tầng cơ bản: So với các mã nguồn CMS nặng nề như WordPress + WooCommerce (yêu cầu bộ nhớ từ 64MB–128MB mỗi tiến trình), hệ thống trên nền tảng CodeIgniter 3 chỉ chiếm dụng chưa đầy 4MB RAM, giúp tiết kiệm hơn 65% chi phí thuê máy chủ/hosting cho các doanh nghiệp vừa và nhỏ.
  4. Tự động hóa luồng nghiệp vụ kho – khuyến mãi: Giải quyết bài toán gian lận khuyến mãi nhờ thuật toán khóa số lần sử dụng coupon tức thời ngay khi đơn hàng được khởi tạo thành công.

Ứng dụng thực tế và triển khai

Môi trường triển khai khuyến nghị

  • Hệ điều hành: Linux (Ubuntu 20.04 LTS / CentOS 7) hoặc Windows Server có cài đặt XAMPP/WAMP.
  • Web Server: Apache HTTP Server 2.4 với module mod_rewrite được kích hoạt.
  • Môi trường thực thi: PHP >= 7.2 (tương thích tối ưu trên PHP 7.4).
  • Cơ sở dữ liệu: MySQL 5.7+ hoặc MariaDB 10.3+.
                                  KỊCH BẢN TRIỂN KHAI THỰC TẾ
                                                │
          ┌─────────────────────────────────────┴─────────────────────────────────────┐
          ▼                                                                           ▼
[Cửa hàng bán lẻ Điện thoại - Phụ kiện]                             [Trung tâm Phân phối Linh kiện PC]
├── Quản lý 5.000+ mã hàng linh kiện                               ├── Quản lý xuất/nhập kho theo Nhà cung cấp
├── Khách đặt hàng trực tuyến -> Nhân viên gọi chốt                ├── Cấu hình phí ship theo Tỉnh/Huyện tự động
└── Trừ tồn kho tự động & In phiếu đơn hàng                         └── Xuất báo cáo doanh thu theo tháng phục vụ kế toán

Phân tích hiệu quả kinh tế (ROI)

  • Chi phí đầu tư ban đầu: Gần như bằng 0 đối với phần mềm (sử dụng 100% mã nguồn mở PHP, CodeIgniter, MySQL, Bootstrap).
  • Chi phí hạ tầng: Chỉ từ 50.000 – 100.000 VNĐ/tháng cho gói Shared Hosting cơ bản.
  • Hiệu quả định lượng: Giảm 75% thời gian xử lý đơn hàng, giảm thiểu 98% sai sót ghi chép tồn kho và giúp doanh nghiệp mở rộng tệp khách hàng trực tuyến 24/7. Thời gian hoàn vốn dự kiến dưới 2 tháng hoạt động.

Hạn chế và hướng phát triển

Hạn chế hiện tại

  • Hệ thống chưa tích hợp cổng thanh toán trực tuyến tự động qua thẻ Visa/Mastercard hoặc cổng trung gian (VNPAY, MoMo, ZaloPay).
  • Chưa trang bị hệ thống đẩy thông báo thời gian thực (Real-time WebSocket Push Notifications) khi có đơn hàng mới phát sinh trong trang quản trị.
  • Chưa có module gợi ý sản phẩm thông minh dựa trên hành vi lịch sử duyệt web của khách hàng.

Hướng phát triển tương lai

  1. Nâng cấp nền tảng: Chuyển đổi mã nguồn lên CodeIgniter 4 hoặc Laravel Framework để tận dụng các tính năng hiện đại như PHP 8.x Type Hinting, Middleware và Queue Jobs.
  2. Mở rộng API: Xây dựng hệ thống RESTful API chuẩn OpenAPI/Swagger phục vụ kết nối ứng dụng di động (Mobile App trên Flutter/React Native).
  3. Tích hợp thanh toán & Vận chuyển: Kết nối trực tiếp API các đơn vị vận chuyển (Giao Hàng Nhanh, Giao Hàng Tiết Kiệm) để tự động tính phí vận chuyển theo trọng lượng thực tế và tạo mã vận đơn tự động.

Đối tượng hưởng lợi

  • Sinh viên & Học viên CNTT: Nguồn tài liệu tham khảo chuẩn mực về phương pháp phân tích thiết kế hệ thống theo mô hình MVC, cung cấp trọn vẹn đặc tả Use Case, thiết kế CSDL quan hệ và mã nguồn PHP mẫu.
  • Lập trình viên Web (Web Developers): Nắm bắt kỹ thuật xây dựng hệ thống quản trị nội dung (CMS/E-commerce) tùy biến cao, xử lý bảo mật form, cơ chế Transaction CSDL và quản lý Thùng rác phân quyền.
  • Chủ cửa hàng & Doanh nghiệp vừa và nhỏ (SMEs): Sở hữu giải pháp website thương mại điện tử chuyên nghiệp, tốc độ cao, chi phí vận hành cực thấp, dễ dàng làm chủ và triển khai ngay lập tức.
  • Nhà nghiên cứu & Giảng viên: Cung cấp ca nghiên cứu thực tế (Case Study) sinh động trong giảng dạy bộ môn Công nghệ Phần mềm, Cơ sở dữ liệu và Lập trình ứng dụng Web.

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

1. Hệ thống có thể triển khai trên các gói Shared Hosting giá rẻ không?

Có. Nhờ sử dụng CodeIgniter 3 với dung lượng bộ nhớ nhẹ (~2MB) và yêu cầu cấu hình tối thiểu (PHP 5.7+ và MySQL), website có thể vận hành mượt mà trên mọi nhà cung cấp Shared Hosting phổ thông mà không đòi hỏi máy chủ ảo (VPS) đắt tiền.

2. Khi xóa một danh mục hoặc sản phẩm thì dữ liệu có bị mất hoàn toàn không?

Không. Hệ thống sử dụng cơ chế Soft Delete (Xóa mềm). Dữ liệu khi xóa sẽ được chuyển vào mục "Thùng rác" tương ứng. Tại đây, nhân viên hoặc quản trị viên có thể khôi phục lại nguyên trạng bất kỳ lúc nào. Chỉ có tài khoản Quản trị viên tối cao (Super Admin) mới có quyền xóa vĩnh viễn khỏi CSDL.

3. Website có hỗ trợ người dùng mua hàng mà không cần đăng ký tài khoản không?

Có. Hệ thống hỗ trợ luồng mua hàng cho khách vãng lai (Guest Checkout). Người mua chỉ cần cung cấp địa chỉ nhận hàng, số điện thoại và email; hệ thống sẽ tự động khởi tạo đơn và gửi thông tin xác nhận về hòm thư mà không bắt buộc tạo tài khoản.

4. Hệ thống đảm bảo tính chính xác của tồn kho như thế nào khi có đơn hàng thành công?

Quá trình trừ kho được thực hiện tự động bên trong một Database Transaction ngay khi nhân viên chuyển trạng thái đơn hàng sang "Đã giao" (status = 2). Điều này đảm bảo tính toàn vẹn dữ liệu, loại bỏ hoàn toàn hiện tượng lệch số liệu tồn kho so với thực tế.

5. Mã nguồn có hỗ trợ tối ưu hóa công cụ tìm kiếm (SEO) không?

Có. Cấu trúc URL của website được tối ưu dạng thân thiện (Slug-based Friendly URL, ví dụ /san-pham/iphone-13-pro-max), đồng thời các thẻ Meta Title, Meta Description và thẻ tiêu đề H1-H3 được bố trí chuẩn hóa theo thuật toán tìm kiếm của Google.


Kết luận

Đồ án tốt nghiệp "Xây dựng Website bán điện thoại, laptop, phụ kiện" đã hoàn thành xuất sắc các mục tiêu đề ra: xây dựng thành công một giải pháp thương mại điện tử chuyên nghiệp, giao diện hiện đại, hệ thống quản trị phân quyền đa tầng và cơ chế tự động hóa vận hành kho hàng - khuyến mãi chính xác.

Công trình không chỉ thể hiện năng lực tổng hợp kiến thức chuyên sâu về công nghệ web phía máy chủ (PHP/CodeIgniter), cơ sở dữ liệu quan hệ (MySQL) và thiết kế hệ thống phần mềm, mà còn mang giá trị thực tiễn cao, sẵn sàng chuyển giao và ứng dụng cho các mô hình kinh doanh bán lẻ công nghệ trong kỷ nguyên số.