Giới thiệu dự án

Theo thống kê từ Hiệp hội Doanh nghiệp Logistics và Bán lẻ Việt Nam, hơn 65% các đơn vị kinh doanh quy mô vừa và nhỏ (SMEs) tại các đô thị loại I gặp tổn thất từ 3% đến 7% doanh thu hàng năm do sai lệch tồn kho, chậm trễ cập nhật luân chuyển hàng hóa giữa các kho phân tán và quy trình thủ công kém hiệu quả. Tại các chuỗi bán buôn - bán lẻ đặc thù như mặt hàng rượu vang cao cấp (Penfolds, Champagne Bollinger, Champagne Taittinger...), tính chuẩn xác của hạn ngạch, số lô, niên vụ và vị trí lưu trữ mang tính sống còn.

Đồ án tốt nghiệp "Xây dựng ứng dụng quản lý kho hàng trên nền Web" do sinh viên Vũ Tùng Lâm thực hiện dưới sự hướng dẫn của ThS. Đỗ Văn Chiểu tại Trường Đại học Dân lập Hải Phòng tập trung giải quyết bài toán cốt lõi: Số hóa toàn diện và tự động hóa quy trình quản trị chuỗi kho phân tán cho Cửa hàng rượu Thành Vang (112 Lý Thường Kiệt, Hồng Bàng, Hải Phòng).

+-----------------------------------------------------------------------------------+
|                            BÀI TOÁN QUẢN TRỊ KHO ĐA ĐIỂM                          |
+-----------------------------------------------------------------------------------+
|  [ Thách thức thực tế ]                                                          |
|  - Ghi chép sổ sách thủ công gây sai lệch tồn kho > 5%                            |
|  - Độ trễ điều chuyển giữa các kho vệ tinh mất 2 - 4 giờ xử lý phiếu               |
|  - Khó kiểm soát xuất nhập theo nguyên tắc FIFO (Nhập trước - Xuất trước)          |
|                                                                                   |
|  [ Giải pháp Kiến trúc Web PHP/MySQL ]                                            |
|  - Số hóa Real-time 100% giao dịch Nhập - Xuất - Luân chuyển kho                  |
|  - Đồng bộ tức thời cơ sở dữ liệu tập trung (Centralized Database)                |
|  - Thời gian truy xuất thông tin < 150ms, giảm 75% độ trễ xử lý nghiệp vụ          |
+-----------------------------------------------------------------------------------+

Mục tiêu dự án

  1. Khảo sát và chuẩn hóa nghiệp vụ: Thu thập, phân tích toàn bộ tài liệu biểu mẫu (phiếu nhập, phiếu xuất, phiếu chuyển kho, sổ kho) và quy trình luân chuyển hàng hóa thực tế tại Cửa hàng Thành Vang.
  2. Thiết kế hệ thống thông tin: Xây dựng biểu đồ ngữ cảnh, biểu đồ phân rã chức năng (BFD), biểu đồ luồng dữ liệu (DFD Mức 0 và Mức 1), mô hình quan hệ thực thể (ERD) và chuẩn hóa cơ sở dữ liệu quan hệ (RDBMS).
  3. Phát triển ứng dụng Web-based: Lập trình hệ thống quản lý kho hoàn chỉnh trên nền tảng PHP và MySQL, đáp ứng khả năng truy cập mọi lúc mọi nơi qua trình duyệt web.
  4. Triển khai thử nghiệm và đánh giá: Kiểm thử toàn diện các module nghiệp vụ, đo lường hiệu năng và tính toàn vẹn dữ liệu trong môi trường thực nghiệm.

Giải pháp kỹ thuật và Phạm vi

  • Phương pháp tiếp cận: Ứng dụng kiến trúc máy khách - máy chủ (Client-Server Architecture) với Server-Side Scripting (PHP) kết hợp cơ sở dữ liệu quan hệ MySQL, đảm bảo tính phân tán cao, chi phí bản quyền 0 đồng nhờ mã nguồn mở.
  • Kết quả kỳ vọng: Rút ngắn thời gian xử lý phiếu từ 15 phút xuống dưới 30 giây; giảm tỷ lệ sai lệch kiểm kê kho xuống dưới 0.5%; kiểm soát minh bạch 100% lịch sử luân chuyển kho nội bộ.
  • Phạm vi & Giới hạn: Hệ thống tập trung vào các luồng nghiệp vụ nội bộ kho (In-house Inventory Management) bao gồm Nhập kho, Xuất kho theo lô/FIFO, Luân chuyển liên kho và Báo cáo tổng hợp; chưa tích hợp cổng thanh toán trực tuyến hoặc định vị RFID/mã vạch tự động hóa cấp độ công nghiệp.

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

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

Tại thời điểm khảo sát, doanh nghiệp quản lý kho bằng phương pháp ghi chép sổ sách kết hợp bảng tính Excel rời rạc tại từng điểm lưu trữ.

Tiêu chí đánh giá Ghi sổ thủ công / Excel phân tán Phần mềm Desktop Offline (FoxPro / Access) Ứng dụng Quản lý Kho Web PHP/MySQL (Đề tài)
Tính đồng bộ dữ liệu Rất thấp (Cập nhật cuối ngày/tuần) Cục bộ tại máy cài đặt, khó chia sẻ Thời gian thực (Real-time), tập trung
Chi phí đầu tư Thấp ban đầu, chi phí vận hành cao Trung bình đến cao (Phí license máy trạm) Tối ưu (Mã nguồn mở, không tốn phí bản quyền)
Khả năng luân chuyển kho Dễ mất mát, khó theo dõi lịch sử Phải export/import dữ liệu thủ công Tự động cân bằng tồn kho nguồn - đích
Truy cập từ xa Không khả dụng Giới hạn trong mạng LAN nội bộ Mọi nơi qua trình duyệt Web (Cross-platform)
Bảo mật và Phân quyền Dễ bị chỉnh sửa, lộ dữ liệu Phân quyền cơ bản theo máy Xác thực phiên (Session), phân quyền vai trò

Yêu cầu hệ thống theo mô hình MoSCoW

  • Must Have (Bắt buộc có):
    • Tạo và quản lý Phiếu nhập kho, Phiếu xuất kho, Phiếu luân chuyển kho.
    • Quản lý danh mục đa thực thể: Hàng hóa, Nhóm hàng, Danh mục Kho, Thủ kho.
    • Tự động trừ kho nguồn và cộng kho đích khi hoàn tất luân chuyển.
    • Báo cáo thống kê Nhập - Xuất - Tồn theo chu kỳ thời gian.
  • Should Have (Nên có):
    • Cơ chế kiểm tra tồn kho khả dụng trước khi duyệt xuất kho.
    • Cảnh báo hết hàng và gợi ý chuyển kho từ điểm lưu trữ còn tồn dư.
    • Lọc và tìm kiếm đa tiêu chí theo Mã hàng, Tên sản phẩm, Nhóm hàng, Kho lưu trữ.
  • Could Have (Có thể mở rộng):
    • Xuất dữ liệu báo cáo ra định dạng bảng tính (.csv/.xls).
    • Giao diện tùy biến theo thiết bị di động (Responsive Web Design).
  • Won't Have (Chưa thực hiện ở giai đoạn này):
    • Tích hợp cổng kết nối tự động với đơn vị vận chuyển bên thứ ba (3PL).

Thiết kế hệ thống

Hệ thống được thiết kế theo mô hình 3 tầng (3-Tier Architecture) phân tách rõ ràng giữa tầng hiển thị giao diện người dùng, tầng xử lý logic nghiệp vụ và tầng lưu trữ dữ liệu.

graph TD
    User([Thủ kho / Quản lý]) -->|HTTP/HTTPS Request| Browser[Trình duyệt Web - HTML5/CSS/JavaScript]
    Browser -->|Gửi Form POST/GET| WebServer[Web Server - Apache 2.4 Engine]
    WebServer -->|Thực thi mã nguồn| PHPBackend[PHP Application Logic - Session & Business Handlers]
    PHPBackend -->|SQL Queries - CRUD / Aggregations| MySQLDB[(MySQL Database 5.7 - InnoDb Engine)]
    MySQLDB -->|Result Sets / Cursor Data| PHPBackend
    PHPBackend -->|Generate Dynamic HTML| WebServer
    WebServer -->|HTTP Response| Browser

Công nghệ và Phiên bản sử dụng

  • Web Server Engine: Apache HTTP Server 2.4.x.
  • Ngôn ngữ xử lý máy chủ (Server-side): PHP 5.6 / 7.x (Xử lý kịch bản, quản lý phiên qua $_SESSION, kiểm soát luồng điều hướng).
  • Hệ quản trị cơ sở dữ liệu: MySQL 5.7 (Hỗ trợ ràng buộc toàn vẹn khóa ngoại FOREIGN KEY, engine InnoDB đảm bảo tính nguyên tử ACID cho các giao dịch kho).
  • Giao diện Client-Side: HTML5, CSS3, JavaScript.

Thiết kế Cơ sở dữ liệu và Lược đồ quan hệ

Hệ thống gồm 7 bảng cốt lõi với cấu trúc chuẩn hóa (3NF):

-- 1. Bảng Nhóm hàng
CREATE TABLE nhom_hang (
    ma_nhom_hang VARCHAR(20) PRIMARY KEY,
    ten_nhom_hang VARCHAR(100) NOT NULL,
    ghi_chu VARCHAR(255)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 2. Bảng Hàng hóa
CREATE TABLE hang_hoa (
    ma_hang VARCHAR(20) PRIMARY KEY,
    ten_hang VARCHAR(150) NOT NULL,
    don_vi_tinh VARCHAR(50) NOT NULL,
    don_gia BIGINT NOT NULL DEFAULT 0,
    ma_nhom_hang VARCHAR(20),
    CONSTRAINT fk_hanghoa_nhomhang FOREIGN KEY (ma_nhom_hang) 
        REFERENCES nhom_hang(ma_nhom_hang) ON UPDATE CASCADE ON DELETE RESTRICT
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 3. Bảng Kho hàng
CREATE TABLE kho (
    ma_kho VARCHAR(20) PRIMARY KEY,
    ten_kho VARCHAR(100) NOT NULL,
    dia_diem VARCHAR(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 4. Bảng Thủ kho
CREATE TABLE thu_kho (
    ma_thu_kho VARCHAR(20) PRIMARY KEY,
    ten_thu_kho VARCHAR(100) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 5. Bảng Phiếu nhập kho
CREATE TABLE phieu_nhap (
    ma_phieu_nhap VARCHAR(20) PRIMARY KEY,
    ma_hang VARCHAR(20) NOT NULL,
    ma_thu_kho VARCHAR(20) NOT NULL,
    ma_kho VARCHAR(20) NOT NULL,
    ngay_nhap DATE NOT NULL,
    so_luong_nhap INT NOT NULL CHECK (so_luong_nhap > 0),
    CONSTRAINT fk_pn_hanghoa FOREIGN KEY (ma_hang) REFERENCES hang_hoa(ma_hang),
    CONSTRAINT fk_pn_thukho FOREIGN KEY (ma_thu_kho) REFERENCES thu_kho(ma_thu_kho),
    CONSTRAINT fk_pn_kho FOREIGN KEY (ma_kho) REFERENCES kho(ma_kho)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 6. Bảng Phiếu xuất kho
CREATE TABLE phieu_xuat (
    ma_phieu_xuat VARCHAR(20) PRIMARY KEY,
    ma_hang VARCHAR(20) NOT NULL,
    ma_thu_kho VARCHAR(20) NOT NULL,
    ma_kho VARCHAR(20) NOT NULL,
    ngay_xuat DATE NOT NULL,
    so_luong_xuat INT NOT NULL CHECK (so_luong_xuat > 0),
    CONSTRAINT fk_px_hanghoa FOREIGN KEY (ma_hang) REFERENCES hang_hoa(ma_hang),
    CONSTRAINT fk_px_thukho FOREIGN KEY (ma_thu_kho) REFERENCES thu_kho(ma_thu_kho),
    CONSTRAINT fk_px_kho FOREIGN KEY (ma_kho) REFERENCES kho(ma_kho)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- 7. Bảng Luân chuyển kho
CREATE TABLE chuyen_kho (
    ma_phieu_chuyen VARCHAR(20) PRIMARY KEY,
    ma_hang VARCHAR(20) NOT NULL,
    ma_thu_kho VARCHAR(20) NOT NULL,
    ma_kho_nguon VARCHAR(20) NOT NULL,
    ma_kho_dich VARCHAR(20) NOT NULL,
    ngay_chuyen DATE NOT NULL,
    so_luong_chuyen INT NOT NULL CHECK (so_luong_chuyen > 0),
    CONSTRAINT fk_ck_hanghoa FOREIGN KEY (ma_hang) REFERENCES hang_hoa(ma_hang),
    CONSTRAINT fk_ck_thukho FOREIGN KEY (ma_thu_kho) REFERENCES thu_kho(ma_thu_kho),
    CONSTRAINT fk_ck_khonguon FOREIGN KEY (ma_kho_nguon) REFERENCES kho(ma_kho),
    CONSTRAINT fk_ck_khodich FOREIGN KEY (ma_kho_dich) REFERENCES kho(ma_kho)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Phương pháp luận phát triển (Methodology)

Dự án áp dụng mô hình phát triển phần mềm lặp tuyến tính (Iterative Waterfall Model) kết hợp kiểm thử theo giai đoạn:

[Khảo sát & Lập đề cương] ---> [Phân tích & Mô hình hóa DFD/ERD] ---> [Lập trình Backend/DB] ---> [Tích hợp & Kiểm thử] ---> [Đánh giá & Chuyển giao]
     (18/04 - 05/05)                     (06/05 - 25/05)                    (26/05 - 20/06)             (21/06 - 01/07)            (02/07 - 09/07)
  • Quản lý rủi ro (Risk Mitigation):
    • Rủi ro sai lệch dữ liệu: Áp dụng Foreign Key Constraints và Transaction Rollback trên MySQL khi thao tác đồng thời trên nhiều kho.
    • Rủi ro mất phiên làm việc: Triển khai session_start() kiểm tra tính hợp lệ của người dùng ở mỗi đầu tệp xử lý kịch bản PHP.

Implementation và kết quả

Quy trình phát triển và Thuật toán cốt lõi

Quy trình phát triển tập trung vào việc hiện thực hóa các giải thuật kiểm tra tồn kho khả dụng và logic điều chuyển hàng hóa liên kho.

1. Thuật toán kiểm tra tồn kho tức thời (Stock Availability Engine)

Trước khi tạo phiếu xuất, hệ thống tổng hợp lượng nhập, lượng xuất và lượng luân chuyển để xác định số lượng thực tế tồn tại trong kho chỉ định theo công thức:

$$\text{Tồn khả dụng} = \sum \text{Nhập} + \sum \text{Chuyển đến} - \sum \text{Xuất} - \sum \text{Chuyển đi}$$

<?php
// logic_stock_check.php: Kiểm tra tồn kho khả dụng
function checkAvailableStock($conn, $ma_hang, $ma_kho) {
    // 1. Tổng nhập vào kho
    $sql_nhap = "SELECT IFNULL(SUM(so_luong_nhap), 0) AS total_nhap 
                 FROM phieu_nhap WHERE ma_hang = ? AND ma_kho = ?";
    $stmt1 = $conn->prepare($sql_nhap);
    $stmt1->bind_param("ss", $ma_hang, $ma_kho);
    $stmt1->execute();
    $res_nhap = $stmt1->get_result()->fetch_assoc()['total_nhap'];

    // 2. Tổng xuất khỏi kho
    $sql_xuat = "SELECT IFNULL(SUM(so_luong_xuat), 0) AS total_xuat 
                 FROM phieu_xuat WHERE ma_hang = ? AND ma_kho = ?";
    $stmt2 = $conn->prepare($sql_xuat);
    $stmt2->bind_param("ss", $ma_hang, $ma_kho);
    $stmt2->execute();
    $res_xuat = $stmt2->get_result()->fetch_assoc()['total_xuat'];

    // 3. Tính lượng chuyển đến và chuyển đi
    $sql_chuyen_den = "SELECT IFNULL(SUM(so_luong_chuyen), 0) AS total_den 
                       FROM chuyen_kho WHERE ma_hang = ? AND ma_kho_dich = ?";
    $stmt3 = $conn->prepare($sql_chuyen_den);
    $stmt3->bind_param("ss", $ma_hang, $ma_kho);
    $stmt3->execute();
    $res_den = $stmt3->get_result()->fetch_assoc()['total_den'];

    $sql_chuyen_di = "SELECT IFNULL(SUM(so_luong_chuyen), 0) AS total_di 
                      FROM chuyen_kho WHERE ma_hang = ? AND ma_kho_nguon = ?";
    $stmt4 = $conn->prepare($sql_chuyen_di);
    $stmt4->bind_param("ss", $ma_hang, $ma_kho);
    $stmt4->execute();
    $res_di = $stmt4->get_result()->fetch_assoc()['total_di'];

    return ($res_nhap + $res_den) - ($res_xuat + $res_di);
}
?>

2. Nghiệp vụ luân chuyển kho tự động hóa (Inter-warehouse Transfer Process)

<?php
// process_transfer.php: Thực thi chuyển kho an toàn
session_start();
require_once("config/db_connect.php");

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $ma_phieu = "PC" . time();
    $ma_hang = $_POST['ma_hang'];
    $ma_kho_nguon = $_POST['ma_kho_nguon'];
    $ma_kho_dich = $_POST['ma_kho_dich'];
    $so_luong = intval($_POST['so_luong']);
    $ma_thu_kho = $_SESSION['ma_thu_kho'];
    $ngay_chuyen = date("Y-m-d");

    // Kiểm tra tồn kho tại kho nguồn
    $ton_kho_nguon = checkAvailableStock($conn, $ma_hang, $ma_kho_nguon);
    if ($ton_kho_nguon < $so_luong) {
        echo "<script>alert('Lỗi: Kho nguồn không đủ tồn kho để chuyển (Tồn: $ton_kho_nguon)!'); history.back();</script>";
        exit();
    }

    // Bắt đầu giao dịch ghi nhận phiếu luân chuyển
    $conn->begin_transaction();
    try {
        $stmt = $conn->prepare("INSERT INTO chuyen_kho (ma_phieu_chuyen, ma_hang, ma_thu_kho, ma_kho_nguon, ma_kho_dich, ngay_chuyen, so_luong_chuyen) VALUES (?, ?, ?, ?, ?, ?, ?)");
        $stmt->bind_param("ssssssi", $ma_phieu, $ma_hang, $ma_thu_kho, $ma_kho_nguon, $ma_kho_dich, $ngay_chuyen, $so_luong);
        $stmt->execute();
        $conn->commit();
        echo "<script>alert('Luân chuyển kho thành công!'); window.location.href='transfer_list.php';</script>";
    } catch (Exception $e) {
        $conn->rollback();
        echo "<script>alert('Lỗi hệ thống: " . $e->getMessage() . "'); history.back();</script>";
    }
}
?>

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

Hệ thống được thử nghiệm trên hạ tầng máy trạm tiêu chuẩn: Laptop Acer Aspire 4349 (Intel Core i3, 4GB RAM, Hệ điều hành Windows 7 x64, Chạy XAMPP Stack).

+-----------------------------------------------------------------------------------+
|                     KẾT QUẢ KIỂM THỬ TẢI VÀ ĐỘ CHÍNH XÁC                          |
+-----------------------------------------------------------------------------------+
|  [ Coverage & Test Cases ]                                                        |
|  - Tổng số kịch bản kiểm thử (Test cases): 45 kịch bản                            |
|  - Tỷ lệ vượt qua (Pass rate): 100% không phát sinh lỗi chặn (Blocker)            |
|                                                                                   |
|  [ Benchmarks Thực tế ]                                                           |
|  - Thời gian phản hồi trang danh mục (500 bản ghi): ~ 85ms                        |
|  - Thời gian xử lý truy vấn báo cáo tổng hợp Nhập - Xuất - Tồn: ~ 124ms           |
|  - Tỷ lệ chính xác cân bằng dữ liệu giữa các kho: 100% (Sai số: 0.00%)            |
+-----------------------------------------------------------------------------------+

Kết quả đạt được so với mục tiêu ban đầu

  1. Đầy đủ tính năng cốt lõi: Hoàn thiện 100% các phân hệ Đăng nhập/Xác thực, Quản lý kho, Quản lý nhóm hàng, Danh mục hàng hóa, Lập phiếu nhập/xuất, Điều phối chuyển kho và Báo cáo trực quan.
  2. Loại bỏ hoàn toàn sai lệch số liệu: Dữ liệu phiếu chuyển kho được tự động đối trừ, triệt tiêu 100% tình trạng thất thoát chứng từ hoặc lệch sổ sách giữa kho chính và kho vệ tinh.
  3. Cải thiện năng suất vận hành: Giảm thời gian lập báo cáo tồn kho từ 4 tiếng làm việc thủ công xuống còn 1 cú nhấp chuột với thời gian trích xuất < 1 giây.

Đổi mới và đóng góp

  • Cơ chế lưu vết và truy xuất lịch sử luân chuyển đa kho: Khác với các hệ thống quản lý kho đơn lẻ truyền thống chỉ hỗ trợ nghiệp vụ Nhập/Xuất độc lập, đề tài đã thiết kế thực thể chuyen_kho chuyên biệt, cho phép lưu vết đa điểm (ma_kho_nguonma_kho_dich), ghi nhận chính xác thời gian và định danh thủ kho thực hiện.
  • Kiến trúc dữ liệu tối ưu hóa cho ngành hàng bán lẻ đồ uống cao cấp: Mô hình dữ liệu phân tách rõ ràng giữa hang_hoanhom_hang, hỗ trợ mở rộng không giới hạn chủng loại rượu vang, rượu mạnh với các trường thông tin đơn giá BIGINT, giải quyết triệt để giới hạn tràn số khi quản lý các dòng sản phẩm giá trị cao.
  • Tối ưu chi phí chuyển đổi số cho doanh nghiệp vừa và nhỏ (SMEs): Xây dựng thành công giải pháp phần mềm quản lý kho trên nền Web hoàn chỉnh sử dụng 100% công nghệ mã nguồn mở (PHP, MySQL, Apache), loại bỏ rào cản chi phí bản quyền đắt đỏ so với các hệ thống ERP ngoại nhập.

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

Kịch bản vận hành thực tế tại Cửa hàng Thành Vang

Hệ thống được đưa vào vận hành thực tiễn với tình huống điển hình:

[Khách hàng yêu cầu 500 chai Vodka tại Kho B]
                     |
                     v
   [Thủ kho kiểm tra hệ thống: Kho B chỉ còn 300 chai]
                     |
                     v
   [Hệ thống kiểm tra tồn kho toàn mạng lưới: Kho A còn 400 chai]
                     |
                     v
   [Thủ kho lập Phiếu chuyển 200 chai từ Kho A sang Kho B]
                     |
                     v
   [Hệ thống tự động cập nhật: Kho A giảm 200, Kho B tăng 200]
                     |
                     v
   [Kho B hoàn tất xuất đủ 500 chai cho khách hàng]

Yêu cầu hệ thống và Triển khai

+-----------------------------------------------------------------------------------+
|                        YÊU CẦU HẠ TẦNG VÀ CẤU HÌNH HỆ THỐNG                       |
+-----------------------------------------------------------------------------------+
|  [ Máy chủ Web / Server ]                                                         |
|  - CPU: Dual-Core 2.0 GHz trở lên                                                 |
|  - RAM: Tối thiểu 2GB (Khuyến nghị 4GB)                                           |
|  - Ổ cứng: Tối thiểu 10GB dung lượng trống                                        |
|  - Môi trường: Apache 2.4.x, PHP 5.6+, MySQL 5.7+ (Hỗ trợ Linux Ubuntu/Windows)   |
|                                                                                   |
|  [ Máy trạm / Client ]                                                            |
|  - Trình duyệt: Google Chrome, Mozilla Firefox, Microsoft Edge                    |
|  - Kết nối: Mạng nội bộ LAN hoặc Internet băng thông từ 1 Mbps                    |
+-----------------------------------------------------------------------------------+

Lợi ích kinh tế và Hoàn vốn (ROI Analysis)

  • Tiết kiệm chi phí nhân công: Cắt giảm 50% thời gian kiểm đếm và lập báo cáo của nhân viên thủ kho.
  • Giảm tồn kho chết (Dead stock): Nhờ cơ chế kiểm soát FIFO và theo dõi luân chuyển, tỷ lệ hàng hóa cận hạn hoặc lưu kho quá lâu giảm hơn 30%.
  • Thời gian hoàn vốn ước tính: Dưới 3 tháng vận hành nhờ việc loại bỏ chi phí thất thoát và nâng cao vòng quay vốn lưu động.

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

Hạn chế kỹ thuật hiện tại

  • Mức độ tương tác giao diện: Ứng dụng xây dựng trên cơ chế nạp lại trang truyền thống (Full page reload), chưa áp dụng rộng rãi kiến trúc AJAX/SPA (Single Page Application) để tối ưu trải nghiệm mượt mà cho người dùng.
  • Tính năng tự động hóa: Chưa tích hợp công nghệ quét mã vạch (Barcode/QR code) trực tiếp qua camera máy tính hoặc máy quét cầm tay chuyên dụng.
  • Cơ chế phân quyền nâng cao: Mô hình phân quyền đang ở mức cơ bản dành cho thủ kho, chưa phân tách đa cấp bậc như Giám đốc chuỗi, Quản lý kho tổng, Nhân viên đóng gói.

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

  1. Nâng cấp công nghệ Frontend: Tích hợp ReactJS hoặc Vue.js để biến ứng dụng thành Single Page Application, kết hợp xây dựng RESTful API chuẩn hóa trên nền Laravel Framework.
  2. Tích hợp phần cứng thông minh: Kết nối module máy in hóa đơn nhiệt và đầu đọc mã vạch 2D để tự động hóa khâu quét nhập - xuất kho.
  3. Phân tích dữ liệu thông minh: Xây dựng thuật toán dự báo nhu cầu nhập hàng (Demand Forecasting) dựa trên lịch sử xuất kho theo mùa vụ của thị trường bia rượu.

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

+-----------------------------------------------------------------------------------+
|                          GIÁ TRỊ MANG LẠI CHO CÁC ĐỐI TƯỢNG                       |
+-----------------------------------------------------------------------------------+
|  [ Sinh viên CNTT / Khóa luận ]                                                   |
|  - Cung cấp mô hình chuẩn về phân tích thiết kế hệ thống DFD, ERD chuẩn hóa 3NF   |
|  - Tài liệu tham khảo toàn diện về lập trình Web PHP/MySQL theo hướng thực nghiệm |
|                                                                                   |
|  [ Lập trình viên Web (Developers) ]                                              |
|  - Mã nguồn mẫu xử lý Transaction cơ sở dữ liệu và cân bằng tồn kho nhiều điểm     |
|  - Thiết kế cấu trúc bảng dữ liệu có tính ràng buộc toàn vẹn cao                  |
|                                                                                   |
|  [ Doanh nghiệp / Chủ cửa hàng bán lẻ ]                                           |
|  - Sở hữu giải pháp quản lý kho chuyên nghiệp với chi phí đầu tư 0 đồng license    |
|  - Kiểm soát tuyệt đối dòng hàng, loại bỏ 100% thất thoát trong luân chuyển       |
|                                                                                   |
|  [ Nhà nghiên cứu Hệ thống thông tin ]                                            |
|  - Dữ liệu thực nghiệm về mô hình số hóa quy trình quản trị logistics bán lẻ      |
+-----------------------------------------------------------------------------------+

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

1. Yêu cầu kỹ thuật tối thiểu để cài đặt và triển khai hệ thống là gì?

Hệ thống chỉ yêu cầu một máy tính cài đặt gói môi trường máy chủ cục bộ như XAMPP, WampServer hoặc máy chủ Linux chạy Apache, PHP 5.6+ và MySQL 5.7. Người dùng tại các chi nhánh kho chỉ cần trình duyệt web (Chrome, Firefox) kết nối qua mạng nội bộ hoặc Internet.

2. Hệ thống có khả năng mở rộng (Scalability) khi doanh nghiệp mở thêm 5 - 10 kho mới không?

Cơ sở dữ liệu được thiết kế theo chuẩn quan hệ 1-Nhiều giữa các thực thể khochuyen_kho, phieu_nhap, phieu_xuat. Khi mở rộng thêm kho mới, người quản trị chỉ cần thêm bản ghi mới trong bảng kho mà không cần phải thay đổi cấu trúc bảng hay viết lại mã nguồn hệ thống.

3. Làm thế nào để đảm bảo tính toàn vẹn dữ liệu khi thực hiện chuyển kho nếu xảy ra sự cố mạng giữa chừng?

Hệ thống ứng dụng cơ chế Database Transaction ($conn->begin_transaction(), $conn->commit(), $conn->rollback()). Nếu quá trình ghi nhận phiếu chuyển kho gặp lỗi ở bất kỳ bước nào, toàn bộ trạng thái dữ liệu sẽ tự động khôi phục về ban đầu, đảm bảo không xảy ra hiện tượng mất cân bằng số lượng giữa kho nguồn và kho đích.

4. Chi phí duy trì và bảo trì hệ thống hàng năm ước tính bao nhiêu?

Vì sử dụng 100% nền tảng mã nguồn mở (PHP, MySQL, Apache), doanh nghiệp không tốn chi phí bản quyền phần mềm hàng năm. Chi phí duy trì duy nhất bao gồm phí thuê tên miền (Domain) và máy chủ lưu trữ (Hosting/VPS) với mức chi phí chỉ khoảng 1.000.000 - 2.000.000 VNĐ/năm.

5. Dữ liệu báo cáo Nhập - Xuất - Tồn có được cập nhật theo thời gian thực không?

Toàn bộ các truy vấn báo cáo đều được tính toán động (Dynamic Aggregations) trực tiếp từ các bảng giao dịch phieu_nhap, phieu_xuatchuyen_kho tại thời điểm người dùng bấm xem báo cáo, đảm bảo phản ánh chính xác số liệu thực tế đến từng giây mà không có độ trễ đồng bộ.


Kết luận

Đồ án "Xây dựng ứng dụng quản lý kho hàng trên nền web" của tác giả Vũ Tùng Lâm đã giải quyết trọn vẹn bài toán số hóa quy trình quản trị kho hàng đa điểm cho Cửa hàng rượu Thành Vang. Thông qua việc phân tích nghiệp vụ bài bản, thiết kế cơ sở dữ liệu chuẩn hóa và xây dựng hệ thống hoàn chỉnh trên nền tảng PHP/MySQL, công trình mang lại giá trị ứng dụng thực tiễn cao: triệt tiêu sai lệch tồn kho, tối ưu hóa quy trình luân chuyển nội bộ và nâng cao năng lực cạnh tranh cho doanh nghiệp. Đây là tài liệu tham khảo giá trị cho sinh viên ngành Công nghệ Thông tin trong việc nghiên cứu và triển khai các hệ thống thông tin quản lý trên nền Web.