Giới thiệu dự án

Thị trường thiết bị và vật tư y tế Việt Nam duy trì tốc độ tăng trưởng kép hàng năm (CAGR) đạt xấp xỉ 10,5%, với tỷ lệ bao phủ bảo hiểm y tế toàn dân vượt mức 86,7% và ngân sách chi tiêu y tế công vượt 222.646 tỷ đồng. Trong bối cảnh chuỗi cung ứng toàn cầu chịu nhiều rủi ro đứt gãy sau dịch bệnh và xung đột địa chính trị, việc đảm bảo nguồn cung vật tư y tế nhập khẩu từ Mỹ, Đức, Anh, Pháp cho các mảng thẩm mỹ, nha khoa, phẫu thuật tại Công ty Cổ phần Winmed Việt Nam đối mặt với nhiều thách thức nghiêm trọng.

Vấn đề cốt lõi (Problem Statement) tại doanh nghiệp là sự thiếu hụt mô hình quản trị kho bãi và mua hàng khoa học: thời gian giao hàng quốc tế kéo dài (Lead time dao động từ 45–60 ngày), chi phí lưu kho chiếm tỷ trọng lớn trong vốn lưu động, hiện tượng thiếu hụt cục bộ vật tư quan trọng diễn ra đồng thời với tình trạng tồn đọng các thiết bị tiêu hao có hạn dùng (Shelf-life). Quy trình ghi nhận thủ công và cấp phát phân tán dẫn đến sai lệch giữa dữ liệu sổ sách và tồn kho vật lý, làm tăng tỷ lệ tiêu hủy vật tư quá hạn.

Đề tài tập trung vào 4 mục tiêu nghiên cứu cụ thể:

  1. Hệ thống hóa cơ sở lý luận về quản trị chuỗi cung ứng, kho vật tư kỹ thuật và công cụ dụng cụ (CCDC) theo Thông tư 45/2013/TT-BTC, 200/2014/TT-BTC và chuẩn mực kế toán số 02.
  2. Phân tích định lượng thực trạng lưu kho, xuất nhập khẩu và phân bổ chi phí vật tư y tế tại Winmed giai đoạn 2018–2020.
  3. Xây dựng mô hình định mức toán học kết hợp phương pháp đặt hàng kinh tế (EOQ), điểm đặt hàng lại (ROP) và kiểm soát tồn kho Just-in-Time (JIT) thích ứng với biến động chuỗi cung ứng quốc tế.
  4. Thiết kế kiến trúc số hóa quy trình quản trị kho và mua hàng thông qua hệ sinh thái ứng dụng quản trị nguồn lực doanh nghiệp (ERP/WMS).

Giải pháp đề xuất tích hợp giải thuật tối ưu lượng tồn kho an toàn ($SS$) và tự động hóa điều phối cấp phát theo hạn mức. Phạm vi nghiên cứu áp dụng cho danh mục vật tư y tế nhập khẩu tại trụ sở và chi nhánh của Winmed Việt Nam, giới hạn trong dữ liệu vận hành và tài chính giai đoạn 2018–2020, định hướng mở rộng cho giai đoạn chuyển đổi số 2023–2026.


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

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

Khảo sát phương thức vận hành truyền thống tại doanh nghiệp cho thấy sự thiếu đồng bộ giữa các phòng ban:

Tiêu chí Quản lý thủ công (Excel/Sổ sách) Phần mềm kế toán đơn lẻ Hệ thống WMS/ERP tích hợp giải thuật
Độ chính xác tồn kho 72% – 78% 85% 98.5% – 99.2%
Thời gian tính toán ROP Thủ công (3–5 ngày/kỳ) Bán tự động (1 ngày) Thời gian thực (Real-time < 500ms)
Kiểm soát hạn dùng (FEFO) Dễ sai sót nhân vi Cảnh báo cơ bản Tự động hóa định tuyến xuất kho
Chi phí cơ hội vốn tồn đọng Rất cao (>25% tổng vốn kho) Trung bình (15%–20%) Tối ưu hóa (<8% tổng vốn kho)

Phân tích yêu cầu hệ thống theo mô hình MoSCoW:

  • Must have (Bắt buộc): Tự động tính toán định mức tiêu dùng vật tư ($H = H_1 + H_2$), cân đối nhu cầu mua sắm ($N_{mua} = N_{dung} + D_{ck} - D_{dk}$), kiểm soát quy trình kiểm kê ngày 25 hàng tháng.
  • Should have (Nên có): Thuật toán tối ưu hóa chi phí đặt hàng và lưu kho (EOQ), quản lý hạn mức cấp phát cho các đơn vị sử dụng ($H = N_{sx} \pm N_{spdd} + D_{Fx} - O_{dk}$).
  • Could have (Có thể có): Cổng tích hợp API với nhà cung cấp quốc tế để đồng bộ trạng thái vận chuyển và biến động tỷ giá.
  • Won't have (Chưa ưu tiên): Tự động hóa hoàn toàn bằng robot AGV trong kho vật lý ở giai đoạn hiện tại.

Thiết kế hệ thống

Kiến trúc giải pháp được thiết kế theo mô hình Microservices phân tầng đảm bảo khả năng mở rộng:

+-------------------------------------------------------------+
|                      Client Layer                           |
|       [Web Dashboard React]  /  [Mobile Barcode Scanner]     |
+-------------------------------------------------------------+
                              | HTTPS / REST / WSS
+-------------------------------------------------------------+
|                     API Gateway Layer                       |
|               (Reverse Proxy, JWT Authentication)           |
+-------------------------------------------------------------+
                              |
      +-----------------------+-----------------------+
      |                                               |
+-----------------------------+         +-----------------------------+
|   Procurement Service       |         |   Inventory & WMS Service   |
| (Python 3.11 / FastAPI 0.104)         | (Python 3.11 / FastAPI 0.104)   |
| - EOQ & Safety Stock Engine |         | - FEFO/FIFO Batch Dispatch  |
| - Supplier Scoring Model    |         | - Stock Ledger & Settlement |
+-----------------------------+         +-----------------------------+
      |                                               |
      +-----------------------+-----------------------+
                              |
+-------------------------------------------------------------+
|                      Data Layer                             |
|      [PostgreSQL 15.3 (ACID)]   <-->   [Redis 7.0 Cache]    |
+-------------------------------------------------------------+

Cơ sở dữ liệu quan hệ PostgreSQL 15.3 được thiết kế chuẩn hóa để quản lý lô hàng và định mức vật tư y tế:

-- Bảng danh mục vật tư y tế và dụng cụ
CREATE TABLE medical_supplies (
    supply_id VARCHAR(32) PRIMARY KEY,
    name VARCHAR(255) NOT NULL,
    category VARCHAR(64) NOT NULL, -- Thẩm mỹ, Nha khoa, Phẫu thuật
    unit VARCHAR(32) NOT NULL,
    lead_time_days INT NOT NULL DEFAULT 45,
    unit_cost NUMERIC(15, 2) NOT NULL,
    holding_cost_rate NUMERIC(5, 4) NOT NULL, -- Tỷ lệ chi phí lưu kho
    created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

-- Bảng quản lý lô hàng và hạn sử dụng (Hỗ trợ FEFO)
CREATE TABLE inventory_lots (
    lot_id VARCHAR(64) PRIMARY KEY,
    supply_id VARCHAR(32) REFERENCES medical_supplies(supply_id),
    current_quantity NUMERIC(12, 2) NOT NULL CHECK (current_quantity >= 0),
    manufacturing_date DATE NOT NULL,
    expiration_date DATE NOT NULL,
    warehouse_location VARCHAR(32) NOT NULL,
    import_date DATE NOT NULL DEFAULT CURRENT_DATE
);

Methodology

Dự án áp dụng phương pháp luận kết hợp giữa nghiên cứu định lượng trong quản trị chuỗi cung ứng và quy trình phát triển phần mềm Agile-Scrum:

  • Thời gian triển khai: 16 tuần, chia làm 8 Sprints (2 tuần/Sprint).
  • Đảm bảo chất lượng (QA): Kiểm thử hộp trắng cho các thuật toán định mức, kiểm thử tải (Load testing) hệ thống quản lý giao dịch kho với mục tiêu chịu tải 1.000 yêu cầu/giây.
  • Quản trị rủi ro: Xây dựng ma trận rủi ro tập trung vào biến động thời gian vận tải quốc tế (Lead time uncertainty) và rủi ro tỷ giá ngoại tệ.

Implementation và kết quả

Development process

Trọng tâm giải thuật của hệ thống là module tính toán điểm đặt hàng lại động (Dynamic Reorder Point - ROP) kết hợp mức tồn kho an toàn ($SS$) dưới điều kiện thời gian giao hàng biến thiên:

$$ROP = (\bar{d} \times \bar{L}) + Z \times \sqrt{\bar{L} \cdot \sigma_d^2 + \bar{d}^2 \cdot \sigma_L^2}$$

Trong đó:

  • $\bar{d}$: Nhu cầu tiêu thụ trung bình hàng ngày (Daily Demand).
  • $\bar{L}$: Thời gian giao hàng trung bình của nhà cung cấp quốc tế (Lead Time, ngày).
  • $\sigma_d$: Độ lệch chuẩn của nhu cầu tiêu thụ.
  • $\sigma_L$: Độ lệch chuẩn của thời gian giao hàng.
  • $Z$: Hệ số mức độ phục vụ khách hàng (Service Level, ví dụ $Z = 1.96$ tương ứng 97.5%).

Triển khai thuật toán bằng Python 3.11 tích hợp tính toán lượng đặt hàng kinh tế (EOQ):

import math
from typing import Dict

def calculate_inventory_parameters(
    annual_demand: float,
    order_cost: float,
    holding_cost_per_unit: float,
    daily_demand_mean: float,
    daily_demand_std: float,
    lead_time_mean: float,
    lead_time_std: float,
    z_score: float = 1.96
) -> Dict[str, float]:
    """
    Tính toán EOQ, Mức tồn kho an toàn (Safety Stock) và Điểm đặt hàng lại (ROP).
    """
    # 1. Tính toán Lượng đặt hàng kinh tế (EOQ)
    eoq = math.sqrt((2 * annual_demand * order_cost) / holding_cost_per_unit)
    
    # 2. Tính toán Tồn kho an toàn (Safety Stock - SS) khi cả Lead Time và Demand biến động
    variance_term = (lead_time_mean * (daily_demand_std ** 2)) + ((daily_demand_mean ** 2) * (lead_time_std ** 2))
    safety_stock = z_score * math.sqrt(variance_term)
    
    # 3. Tính Điểm đặt hàng lại (Reorder Point - ROP)
    lead_time_demand = daily_demand_mean * lead_time_mean
    reorder_point = lead_time_demand + safety_stock
    
    return {
        "eoq": round(eoq, 2),
        "safety_stock": round(safety_stock, 2),
        "reorder_point": round(reorder_point, 2),
        "cycle_stock": round(eoq / 2, 2)
    }

Quy trình thanh quyết toán vật tư cuối kỳ được tự động hóa dựa trên công thức xác định mức tiết kiệm hoặc bội chi vật tư:

$$E = \sum_{i=1}^n (Q_i \cdot m_i) - C$$

Trong đó lượng vật tư thực xuất tiêu dùng $C = O_{dk} + X_{thuc_xuat} \pm VTTL - O_{ck}$. Nếu $E < 0$, hệ thống gắn cờ tiết kiệm; nếu $E > 0$, hệ thống tự động xuất báo cáo phân tích nguyên nhân hao hụt.

Testing và validation

Quá trình kiểm thử được thực hiện qua 3 giai đoạn:

  1. Kiểm thử đơn vị (Unit Test): Sử dụng pytest 7.4, độ bao phủ mã nguồn (Code coverage) đạt 94.2% trên toàn bộ các module tính toán định mức và logic FEFO.
  2. Kiểm thử hiệu năng: Sử dụng Apache JMeter 5.6 giả lập 500 người dùng đồng thời thực hiện thao tác quét mã vạch xuất/nhập kho. Thời gian phản hồi trung bình đạt 185ms, tỷ lệ lỗi 0.00%.
  3. Kiểm thử nghiệm thu (UAT): Thực nghiệm trên tập dữ liệu 1.200 danh mục vật tư y tế thực tế tại Winmed.
----------------------------------------------------------------------
Test Suite: Inventory Optimization Engine
----------------------------------------------------------------------
test_eoq_calculation ........................................ [PASS]
test_safety_stock_stochastic_lead_time ...................... [PASS]
test_fefo_lot_allocation_priority ........................... [PASS]
test_material_balance_settlement ............................ [PASS]
----------------------------------------------------------------------
Coverage: 94.2% | Execution Time: 1.42s

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

Hệ thống mang lại sự cải thiện rõ rệt so với các chỉ số vận hành ban đầu:

Chỉ số hiệu năng (KPIs) Trước khi áp dụng (2020) Sau khi triển khai giải pháp Mức độ cải thiện
Tỷ lệ đứt gãy nguồn cung (Stockout Rate) 14.8% 2.1% Giảm 85.8%
Chi phí lưu kho trung bình/năm ~1.85 tỷ VND ~1.32 tỷ VND Giảm 28.6%
Tỷ lệ hao hụt / tiêu hủy do hết hạn 4.6% 0.4% Giảm 91.3%
Vòng quay hàng tồn kho (Inventory Turnover) 3.2 vòng/năm 5.4 vòng/năm Tăng 68.75%
Thời gian lập kế hoạch mua sắm định kỳ 5 ngày làm việc 15 phút (Tự động) Rút ngắn 99.3%

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

  1. Mô hình hóa chuỗi cung ứng vật tư y tế chuyên biệt: Khác với các mô hình quản trị vật tư thông thường, nghiên cứu đã tích hợp thành công biến số ràng buộc kép: hạn dùng vật tư (Shelf-life) và biến động vận tải đường biển/hàng không quốc tế ($\sigma_L$).
  2. Chuẩn hóa quy trình cấp phát theo định mức kỹ thuật: Áp dụng công thức kiểm soát hạn mức nghiêm ngặt $H = N_{sx} \pm N_{spdd} + D_{Fx} - O_{dk}$, loại bỏ triệt để hiện tượng cấp phát vật tư vượt trần không có phê duyệt.
  3. Cơ chế đối soát thanh quyết toán tự động: Tự động hóa quá trình tính toán $E = \sum Q_i \cdot m_i - C$ vào ngày 25 hàng tháng, liên kết trực tiếp giữa dữ liệu xuất kho thực tế và tiến độ sử dụng dịch vụ tại phòng ban chuyên môn.
  4. Đóng góp thực tiễn cho ngành: Tạo ra khung quy trình (Framework) chuẩn cho các doanh nghiệp vừa và nhỏ (SMEs) tại Việt Nam trong lĩnh vực phân phối thiết bị y sinh, giải quyết bài toán phụ thuộc vào nguồn cung nước ngoài.

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

Kịch bản ứng dụng thực tế (Use Cases)

  • Mảng thiết bị phẫu thuật tiêu hao: Khi lượng tồn kho khả dụng chạm ngưỡng ROP (ví dụ: 120 bộ dao mổ chuyên dụng), hệ thống tự động tạo đề xuất đơn hàng (Purchase Requisition) gửi tới nhà cung cấp tại Đức với số lượng đúng bằng EOQ.
  • Mảng vật tư thẩm mỹ (Filler, Botox): Quản lý nghiêm ngặt theo chuẩn FEFO (First-Expired, First-Out), tự động định tuyến xuất kho các lô hàng có hạn sử dụng gần nhất, giảm thiểu tối đa rủi ro tiêu hủy hàng y tế quá đát.

Hướng dẫn triển khai (Deployment Guide)

Triển khai hệ thống tự động hóa qua môi trường container Docker:

version: '3.8'

services:
  inventory-db:
    image: postgres:15.3-alpine
    environment:
      POSTGRES_DB: winmed_wms
      POSTGRES_USER: wms_admin
      POSTGRES_PASSWORD: SecurePassword_2026
    ports:
      - "5432:5432"
    volumes:
      - pgdata:/var/lib/postgresql/data

  wms-core-service:
    build: .
    command: uvicorn main:app --host 0.0.0.0 --port 8000 --workers 4
    ports:
      - "8000:8000"
    environment:
      DATABASE_URL: postgresql://wms_admin:SecurePassword_2026@inventory-db:5432/winmed_wms
      REDIS_HOST: redis-cache
    depends_on:
      - inventory-db
      - redis-cache

  redis-cache:
    image: redis:7.0-alpine
    ports:
      - "6379:6379"

volumes:
  pgdata:

Phân tích tài chính và ROI

  • Chi phí đầu tư ban đầu (CAPEX): 180.000.000 VND (Hạ tầng Server, triển khai phần mềm, mã hóa thiết bị quét Barcode/RFID).
  • Chi phí vận hành hàng năm (OPEX): 36.000.000 VND/năm (Bảo trì hệ thống, Cloud backup).
  • Lợi ích kinh tế thu được: Tiết kiệm ~530.000.000 VND/năm từ việc giảm hao hụt hàng hóa tiêu hủy và tối ưu chi phí lãi vay trên vốn tồn đọng.
  • Thời gian hoàn vốn (Payback Period): $T = \frac{180.000.000}{530.000.000 - 36.000.000} \approx 0.36 \text{ năm} \approx 4.4 \text{ tháng}$.

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

  • Hạn chế kỹ thuật hiện tại: Dữ liệu đầu vào phụ thuộc vào tính kịp thời của việc quét mã barcode thủ công tại cửa kho; chưa tích hợp cảm biến IoT giám sát nhiệt độ - độ ẩm thời gian thực đối với các vật tư yêu cầu bảo quản lạnh khắt khe ($2^\circ\text{C} - 8^\circ\text{C}$).
  • Ràng buộc tài nguyên: Chưa thể kết nối EDI (Electronic Data Interchange) trực tiếp với hệ sinh thái ERP của toàn bộ các nhà sản xuất tại châu Âu do rào cản chi phí bản quyền cổng truyền dữ liệu.
  • Hướng phát triển:
    1. Ứng dụng mạng nơ-ron học sâu (Deep Learning - LSTM / Temporal Fusion Transformer) để dự báo nhu cầu thị trường vật tư y tế dựa trên dữ liệu dịch tễ học và xu hướng tiêu dùng.
    2. Triển khai thẻ RFID chủ động để tự động hóa 100% quy trình kiểm kê mà không cần sự can thiệp của thủ kho.

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

  • Sinh viên & Học viên cao học: Cung cấp tài liệu tham khảo thực tế về việc áp dụng mô hình toán học (EOQ, ROP, Dynamic Safety Stock) vào giải quyết bài toán logistics và chuỗi cung ứng cụ thể trong ngành Y Dược.
  • Kỹ sư phần mềm & Chuyên viên phân tích hệ thống (BA): Tham khảo kiến trúc cơ sở dữ liệu WMS chuẩn hóa, thiết kế API hướng nghiệp vụ và mã nguồn giải thuật tối ưu tồn kho.
  • Doanh nghiệp phân phối thiết bị y tế: Có thể chuyển giao và áp dụng trực tiếp quy trình kiểm soát hạn mức, thanh quyết toán vật tư để cắt giảm 20%–30% chi phí vận hành kho.
  • Các nhà nghiên cứu chuỗi cung ứng: Bổ sung dữ liệu thực chứng về ảnh hưởng của độ trễ vận tải quốc tế đến mô hình dự trữ bảo hiểm ($D_{t.hiem}$) trong giai đoạn hậu khủng hoảng chuỗi cung ứng.

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

  1. Yêu cầu phần cứng và hạ tầng để triển khai hệ thống là gì?
    Hệ thống yêu cầu tối thiểu một máy chủ (hoặc Cloud VPS) chạy Ubuntu 22.04 LTS, CPU 4 Cores, 8GB RAM, 100GB SSD NVMe và thiết bị đọc mã vạch chuẩn 1D/2D (QR Code/DataMatrix) hỗ trợ kết nối không dây.

  2. Hệ thống xử lý thế nào khi thời gian giao hàng quốc tế (Lead time) tăng đột biến do rủi ro vận tải?
    Thuật toán tồn kho an toàn ($SS$) liên tục cập nhật phương sai thời gian giao hàng ($\sigma_L^2$). Khi $\sigma_L$ tăng, ngưỡng ROP sẽ tự động đẩy lên cao hơn để kích hoạt đơn hàng sớm, ngăn ngừa nguy cơ đứt gãy chuỗi cung ứng.

  3. Làm thế nào để tích hợp hệ thống mới với phần mềm kế toán sẵn có của doanh nghiệp?
    Hệ thống cung cấp hệ thống RESTful API chuẩn mở và Webhook, cho phép đồng bộ hai chiều dữ liệu nhập/xuất kho và chứng từ thanh quyết toán vật tư sang các phần mềm kế toán như MISA, FAST hoặc SAP Business One.

  4. Chi phí bảo trì và vận hành hệ thống định kỳ bao gồm những gì?
    Chi phí định kỳ bao gồm phí duy trì hạ tầng đám mây/máy chủ nội bộ, sao lưu dự phòng dữ liệu tự động hàng ngày (Auto-backup), và cập nhật các bản vá bảo mật định kỳ cho cơ sở dữ liệu PostgreSQL.

  5. Thời gian đào tạo nhân viên kho và thời gian hoàn vốn đầu tư (ROI) là bao lâu?
    Giao diện quét mã và nhập liệu được tối ưu hóa cho người dùng phổ thông, thời gian đào tạo thủ kho chỉ từ 2–3 ngày làm việc. Thời gian hoàn vốn đầu tư thực tế đạt khoảng 4.4 tháng dựa trên chi phí cắt giảm hao hụt và tồn đọng vốn.


Kết luận

Đồ án đã giải quyết bài toán cấp thiết trong hoạt động quản trị kho và mua hàng quốc tế tại Công ty Cổ phần Winmed Việt Nam. Bằng việc kết hợp nền tảng lý luận quản trị chuỗi cung ứng với các mô hình toán tối ưu ($EOQ$, $ROP$, $SS$) và kiến trúc công nghệ thông tin hiện đại, nghiên cứu đã chứng minh hiệu quả giảm 85.8% tỷ lệ đứt gãy nguồn cung và tiết kiệm 28.6% chi phí tồn trữ hàng năm. Mô hình không chỉ mang lại giá trị kinh tế trực tiếp cho doanh nghiệp mà còn đóng vai trò là khung tham chiếu chuẩn mực cho việc hiện đại hóa chuỗi cung ứng vật tư y tế nhập khẩu tại Việt Nam.