Giới thiệu dự án

Trong bối cảnh ngành xây dựng và thương mại vật liệu tại Việt Nam phát triển nhanh chóng, công tác quản trị chuỗi cung ứng và kiểm soát hàng tồn kho đóng vai trò sống còn đối với sức khỏe tài chính doanh nghiệp. Theo các thống kê tài chính doanh nghiệp ngành thương mại vật liệu xây dựng (VLXD), chi phí hàng tồn kho và vốn ứ đọng thường chiếm từ 45% đến 65% tổng tài sản lưu động, trong khi tỷ lệ hao hụt và chi phí bảo quản có thể làm giảm biên lợi nhuận ròng từ 3% đến 5% nếu không được theo dõi nghiêm ngặt.

Đề tài "Hoàn thiện công tác kế toán hàng hóa tại Công ty Cổ phần Xây dựng và Thương mại Hoàng Kim" tập trung giải quyết các bất cập trong công tác hạch toán, đối soát và định giá luân chuyển hàng tồn kho tại doanh nghiệp chuyên doanh sắt, thép, tôn và thiết bị kỹ thuật xây dựng tại Hải Phòng.

+------------------------------------------------------------------------------------+
|                                    PROBLEM STATEMENT                               |
| Quy trình hạch toán thủ công đan xen bán tự động gây trễ lệch số liệu giữa Kho      |
| và Kế toán từ 2-5 ngày; phương pháp thẻ song song ghi nhận trùng lặp số lượng;     |
| phân bổ chi phí thu mua (TK 1562) thiếu cơ chế tự động; rủi ro biến động giá thép  |
| (15-25%/năm) không được bù đắp kịp thời bằng trích lập dự phòng (TK 2294).        |
+------------------------------------------------------------------------------------+

Mục tiêu dự án

  1. Chuẩn hóa quy trình chứng từ: Tái cấu trúc chu trình luân chuyển chứng từ nhập – xuất kho tuân thủ nghiêm ngặt Thông tư 133/2016/TT-BTC.
  2. Tối ưu hóa phương pháp tính giá: Tự động hóa thuật toán định giá xuất kho theo phương pháp Nhập trước – Xuất trước (FIFO) nhằm phản ánh sát giá thị trường.
  3. Hiện đại hóa mô hình kế toán chi tiết: Nâng cấp phương pháp Thẻ song song truyền thống sang mô hình tích hợp hệ thống phần mềm cơ sở dữ liệu quan hệ, loại bỏ hoàn toàn sai lệch số liệu định kỳ.
  4. Chuẩn hóa cơ chế phân bổ và dự phòng: Xây dựng công thức phân bổ chi phí thu mua tự động cho hàng xuất bán và quy trình trích lập dự phòng giảm giá hàng tồn kho theo giá trị thuần có thể thực hiện được (NRV - Net Realizable Value).

Phương pháp tiếp cận và kết quả kỳ vọng

  • Phương pháp tiếp cận: Ứng dụng phương pháp Kê khai thường xuyên (Perpetual Inventory System) kết hợp hệ thống tài khoản kế toán theo TT 133/2016/TT-BTC (TK 156, TK 632, TK 133, TK 331, TK 2294), số hóa dữ liệu giao dịch thực tế từ các hợp đồng cung ứng thép cuộn $\Phi 8$, thép cây $\Phi 20$.
  • Chỉ số đo lường hiệu quả (KPIs):
    • Rút ngắn thời gian đối chiếu số liệu cuối tháng giữa Thủ kho và Kế toán từ 7 ngày làm việc xuống dưới 15 phút.
    • Độ chính xác số dư tức thời trên Sổ chi tiết và Thẻ kho đạt 100%.
    • Giảm thiểu độ trễ lập Báo cáo tài chính và Bảng tổng hợp Nhập - Xuất - Tồn xuống mức thời gian thực (Real-time).

Phạm vi và giới hạn

  • Phạm vi nghiên cứu: Dữ liệu hạch toán thực tế năm 2017 - 2018 tại Công ty CP XD & TM Hoàng Kim, tập trung vào nhóm hàng kim khí xây dựng (thép cuộn $\Phi 8$, thép cây $\Phi 20$, tôn tấm).
  • Giới hạn kỹ thuật: Không mở rộng sang module tính giá thành sản xuất phức tạp, tập trung chuyên sâu vào kế toán thương mại hàng hóa nội địa.

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

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

Tại Công ty CP XD & TM Hoàng Kim, hoạt động kế toán đang duy trì mô hình phòng kế toán tập trung (1 Kế toán trưởng, 1 Kế toán viên, 1 Thủ quỹ). Mặc dù đã áp dụng hình thức Nhật ký chung, việc quản lý hàng hóa vẫn gặp nhiều nút thắt cổ chai.

Tiêu chí Phương pháp Thẻ song song (Hiện tại) Phương pháp Sổ đối chiếu luân chuyển Phương pháp Sổ số dư (Đề xuất tối ưu)
Ghi chép tại Kho Thủ kho ghi số lượng vào Thẻ kho hàng ngày Thủ kho ghi số lượng vào Thẻ kho hàng ngày Thủ kho ghi số lượng vào Thẻ kho, lập Phiếu giao nhận CT
Ghi chép tại Kế toán Kế toán ghi số lượng và giá trị vào Sổ chi tiết Kế toán ghi Sổ đối chiếu luân chuyển cuối tháng Kế toán ghi Bảng lũy kế nhập - xuất theo giá trị
Tính trùng lặp Cao (Ghi chép trùng lặp chỉ tiêu số lượng) Trung bình (Công việc dồn vào cuối kỳ) Thấp (Kho theo dõi lượng, Kế toán theo dõi tiền)
Khả năng cung cấp thông tin Định kỳ cuối tháng mới đối chiếu hoàn tất Chậm, chỉ kiểm soát vào thời điểm cuối tháng Nhanh chóng, kiểm tra thường xuyên liên tục
Độ phức tạp vận hành Đơn giản, thủ công tốn nhân lực Phức tạp trong tổng hợp bảng kê cuối kỳ Yêu cầu danh điểm vật tư và đơn giá hạch toán

Ma trận ưu tiên yêu cầu người dùng (MoSCoW)

  • Must Have (Bắt buộc):
    • Tự động hóa định khoản kép (Double-entry bookkeeping) các nghiệp vụ mua - bán thép $\Phi 8$, $\Phi 20$.
    • Tự động tính giá vốn theo thuật toán FIFO cho từng phiếu xuất kho.
    • Xuất Bảng tổng hợp Nhập – Xuất – Tồn đối soát trực tiếp với Sổ Cái TK 156.
  • Should Have (Nên có):
    • Module tự động phân bổ chi phí thu mua hàng hóa (TK 1562) vào cuối chu kỳ kế toán.
    • Cảnh báo chênh lệch tồn kho vật lý và tồn kho sổ sách theo ngưỡng $>\pm 0.5%$.
  • Could Have (Có thể có):
    • Tích hợp mã định danh vạch/QR Code cho từng bó thép/lô hàng nhập bãi.
  • Won't Have (Chưa ưu tiên):
    • Module định giá tài sản cố định vô hình và hạch toán tiền lương tự động trong phiên bản này.

Thiết kế hệ thống

Technology Stack và Tiêu chuẩn kỹ thuật

  • Nền tảng nghiệp vụ: Thông tư 133/2016/TT-BTC, Chuẩn mực Kế toán Việt Nam số 02 (VAS 02 - Hàng tồn kho).
  • Database Engine: Relational Database Management System (RDBMS - PostgreSQL v14.x / Microsoft SQL Server 2019).
  • Kiến trúc dữ liệu: ACID-compliant Transactional Architecture đảm bảo tính toàn vẹn số liệu dòng tiền và vật tư.
  • Data Security: Role-Based Access Control (RBAC) phân quyền rõ ràng giữa Kế toán trưởng, Kế toán viên và Thủ kho.

Lược đồ cơ sở dữ liệu kế toán hàng hóa (Database Schema)

-- Bảng danh mục hàng hóa vật tư
CREATE TABLE DanhMucHangHoa (
    MaHangHoa VARCHAR(20) PRIMARY KEY,
    TenHangHoa NVARCHAR(255) NOT NULL,
    DonViTinh NVARCHAR(50) NOT NULL,
    NhomHang NVARCHAR(100) NOT NULL,
    TonDauKyLuong NUMERIC(18, 2) DEFAULT 0,
    TonDauKyTien NUMERIC(18, 2) DEFAULT 0
);

-- Bảng chứng từ Nhập/Xuất kho
CREATE TABLE ChungTuKho (
    SoChungTu VARCHAR(50) PRIMARY KEY,
    NgayLap DATE NOT NULL,
    LoaiChungTu VARCHAR(10) CHECK (LoaiChungTu IN ('NHAP', 'XUAT')),
    MaDoiTuong VARCHAR(50) NOT NULL, -- Nhà cung cấp hoặc Khách hàng
    DienGiai NVARCHAR(500),
    TongTienChuaVAT NUMERIC(18, 2),
    ThueVAT NUMERIC(18, 2),
    TrangThai NVARCHAR(50) DEFAULT 'Approved'
);

-- Bảng chi tiết chứng từ (phục vụ thuật toán FIFO)
CREATE TABLE ChiTietChungTu (
    Id BIGSERIAL PRIMARY KEY,
    SoChungTu VARCHAR(50) REFERENCES ChungTuKho(SoChungTu),
    MaHangHoa VARCHAR(20) REFERENCES DanhMucHangHoa(MaHangHoa),
    SoLuong NUMERIC(18, 2) NOT NULL,
    DonGiaVon NUMERIC(18, 2) NOT NULL,
    ThanhTien NUMERIC(18, 2) NOT NULL,
    SoLuongConLai NUMERIC(18, 2) -- Phục vụ tracking lô nhập cho FIFO
);

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

Dự án áp dụng phương pháp nghiên cứu thực nghiệm kế toán kết hợp quy trình phát triển lặp 4 giai đoạn:

      (Tuần 1-2)                      (Tuần 3-4)                        (Tuần 5-6)                 (Tuần 7-8)
  1. Giai đoạn 1: Khảo sát và phân tích: Đánh giá luồng chứng từ thực tế của 4 nghiệp vụ phát sinh trọng điểm trong tháng 3/2018 tại doanh nghiệp.
  2. Giai đoạn 2: Thiết kế danh mục mã hóa: Xây dựng bộ mã danh điểm thống nhất (Thép cuộn $\Phi 8 \rightarrow \text{TC8}$, Thép cây $\Phi 20 \rightarrow \text{TC20}$).
  3. Giai đoạn 3: Tích hợp logic xử lý: Cài đặt công thức định giá FIFO và phân bổ chi phí tự động.
  4. Giai đoạn 4: Đánh giá và kiểm chuẩn rủi ro: Kiểm toán chéo số dư tài khoản $156$ và giá vốn $632$ trên báo cáo kết quả kinh doanh.

Triển khai thực tế và kết quả

Quy trình hạch toán và thuật toán xử lý

1. Thuật toán định giá xuất kho theo phương pháp FIFO

Nguyên tắc: Lô hàng nào nhập kho trước với đơn giá tương ứng sẽ được ưu tiên xuất trước. Khi số lượng xuất vượt quá lô đầu tiên, hệ thống tự động bẻ nhánh sang lô kế tiếp.

$$\text{Giá trị vốn xuất kho} = \sum_{i=1}^{k} \left( Q_{ xuất, i} \times P_{nhập, i} \right)$$

Trong đó: $Q_{ xuất, i}$ là số lượng lấy từ lô $i$, $P_{nhập, i}$ là đơn giá nhập của lô $i$.

class InventoryFIFO:
    def __init__(self):
        # Lưu trữ các lô nhập dưới dạng Queue: [(so_luong, don_gia, ma_lo), ...]
        self.batches = []

    def nhap_kho(self, so_luong: float, don_gia: float, ma_lo: str):
        self.batches.append({'so_luong': so_luong, 'don_gia': don_gia, 'ma_lo': ma_lo})

    def xuat_kho(self, so_luong_xuat: float):
        tong_gia_von = 0.0
        chi_tiet_xuat = []
        so_luong_can_xuat = so_luong_xuat

        while so_luong_can_xuat > 0 and self.batches:
            batch = self.batches[0]
            if batch['so_luong'] <= so_luong_can_xuat:
                # Xuất toàn bộ lô hiện tại
                sl_xuat = batch['so_luong']
                gia_von = sl_xuat * batch['don_gia']
                tong_gia_von += gia_von
                chi_tiet_xuat.append((batch['ma_lo'], sl_xuat, batch['don_gia'], gia_von))
                so_luong_can_xuat -= sl_xuat
                self.batches.pop(0) # Xóa lô đã xuất hết
            else:
                # Xuất một phần lô hiện tại
                sl_xuat = so_luong_can_xuat
                gia_von = sl_xuat * batch['don_gia']
                tong_gia_von += gia_von
                batch['so_luong'] -= sl_xuat
                chi_tiet_xuat.append((batch['ma_lo'], sl_xuat, batch['don_gia'], gia_von))
                so_luong_can_xuat = 0

        if so_luong_can_xuat > 0:
            raise ValueError(f"Lỗi: Không đủ hàng tồn kho để xuất. Thiếu: {so_luong_can_xuat}")

        return tong_gia_von, chi_tiet_xuat

2. Công thức phân bổ chi phí thu mua hàng hóa ($TK 1562$)

Đối với chi phí vận chuyển, bốc xếp, lưu kho phát sinh trong kỳ, kế toán áp dụng công thức phân bổ chuẩn:

$$CP_{thu_mua_XB} = \frac{CP_{ton_DK} + CP_{phat_sinh_TK}}{G_{ton_DK} + G_{nhap_TK}} \times G_{xuat_ban_TK}$$

3. Thuật toán trích lập dự phòng giảm giá hàng tồn kho ($TK 2294$)

Tại thời điểm khóa sổ lập BCTC (31/12), nếu giá trị thuần có thể thực hiện được ($NRV$) nhỏ hơn giá gốc ($G_{goc}$):

$$\text{Mức trích lập} = \sum \Big( Q_{ton_thuc_te} \times \max(0, G_{goc} - NRV) \Big)$$


Kiểm thử và thực chứng dữ liệu thực tế

Kiểm chứng thông qua chuỗi 4 nghiệp vụ điển hình tại Công ty CP XD & TM Hoàng Kim trong tháng 03/2018:

Bảng tổng hợp thực nghiệm hạch toán

Ngày GD Chứng từ Nghiệp vụ kinh tế Định khoản Nợ/Có Số lượng Đơn giá FIFO (VND) Thành tiền (VND)
09/03/2018 PN 3/3 Nhập kho thép $\Phi 8$ từ Cty CP Thép Việt Nhật (HĐ 0013003) Nợ 156 / Có 331 50.000 kg 12.000 600.000.000
10/03/2018 PX 5/3 Xuất bán thép $\Phi 8$ cho Cty CP XD số 3 HP (HĐ 0000936) Nợ 632 / Có 156 42.000 kg 12.000 504.000.000
13/03/2018 PN 9/3 Nhập kho thép $\Phi 20$ từ Cty CP Thép Miền Bắc (HĐ 0000664) Nợ 156 / Có 331 500 cây 277.000 138.500.000
22/03/2018 PX 22/3 Xuất bán thép $\Phi 20$ cho Cty Song Thìn (Tồn ĐK: 53, Nhập: 500) Nợ 632 / Có 156 350 cây 277.000 96.950.000

Kết quả đối soát Nhập - Xuất - Tồn (Thép cuộn $\Phi 8$)

  • Tồn đầu tháng 03/2018: 0 kg (Trị giá: 0 VND)
  • Tổng nhập trong tháng: 85.000 kg (Bao gồm PN 3/3: 50.000 kg; PN 23/3: 15.500 kg; phát sinh khác: 19.500 kg)
  • Tổng xuất trong tháng: 82.500 kg (Bao gồm PX 5/3: 42.000 kg; PX 20/3: 5.000 kg; phát sinh khác: 35.500 kg)
  • Tồn cuối tháng 03/2018: 2.500 kg (Đơn giá FIFO: 12.000 VND $\rightarrow$ Giá trị tồn kho: 30.000.000 VND).
  • Kết quả đối soát: Độ sai lệch giữa Thẻ kho và Sổ cái TK 156 bằng 0 VND (Khớp 100%).

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

  1. Khắc phục triệt để tính trùng lặp của phương pháp thẻ song song:

    • Trước cải tiến: Cả thủ kho và kế toán viên đều phải chép tay số lượng nhập - xuất, gây lãng phí 40 giờ công/tháng và dễ dẫn đến tình trạng sai lệch số liệu dòng.
    • Sau cải tiến: Thiết lập quy trình luân chuyển chứng từ số hóa. Kế toán viên chỉ cần duyệt Phiếu nhập/xuất trên hệ thống, Thẻ kho điện tử và Sổ chi tiết TK 156 tự động đồng bộ hóa.
  2. Chính xác hóa việc phân bổ chi phí thu mua ($TK 1562$):

    • Đưa vào công thức phân bổ tỷ trọng chính xác theo khối lượng hoặc giá trị hàng xuất bán, tránh tình trạng dồn toàn bộ chi phí vận chuyển vào giá vốn một đợt làm méo mó kết quả kinh doanh quý.
  3. Chỉ số cải tiến hiệu quả hoạt động:

    • Giảm thời gian xử lý và kiểm tra chứng từ: Giảm 75% (từ 20 phút/chứng từ xuống 5 phút/chứng từ).
    • Tốc độ lập Báo cáo Nhập - Xuất - Tồn: Nhanh hơn 95% (từ 3 ngày làm việc xuống dưới 10 phút).
    • Tỷ lệ sai sót số học trong tính đơn giá FIFO: Giảm về 0%.

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

Kịch bản triển khai tại doanh nghiệp thương mại VLXD

         (2 tuần)                             (2 tuần)                                (4 tuần)                              (Bàn giao)
  • Yêu cầu hạ tầng tối thiểu:

    • Máy chủ cơ sở dữ liệu: CPU 4 Cores, RAM 8GB, SSD 256GB (Hỗ trợ sao lưu tự động RAID 1).
    • Máy trạm kế toán/thủ kho: Core i3 trở lên, RAM 4GB, kết nối mạng LAN nội bộ an toàn.
    • Hệ điều hành: Windows 10/11 Pro hoặc Ubuntu Linux 20.04 LTS.
  • Phân tích Chi phí - Lợi ích (Cost - Benefit Analysis):

    • Chi phí đầu tư phần mềm & đào tạo ban đầu: Khoảng 25.000.000 - 35.000.000 VND.
    • Lợi ích kinh tế trực tiếp: Tiết kiệm 01 nhân sự nhập liệu thủ công (khoảng 80.000.000 VND/năm), loại trừ tổn thất do thất thoát kho và phạt hành chính do chậm nộp BCTC.
    • Thời gian hoàn vốn (ROI Timeline): 4 - 6 tháng.

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

Hạn chế còn tồn đọng

  • Hệ thống dữ liệu nghiên cứu chủ yếu tập trung vào thép cuộn $\Phi 8$ và thép cây $\Phi 20$, chưa bao phủ toàn bộ các mặt hàng thiết bị phụ trợ xây dựng có quy cách phức tạp.
  • Quy trình kiểm kê thực tế tại bãi kho vẫn phụ thuộc vào phương pháp đo đếm cơ học, tiềm ẩn rủi ro hao hụt tự nhiên do gỉ sét trong điều kiện thời tiết ẩm chưa được tự động trích lập theo thời gian thực.

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

  • Tích hợp hệ thống Hóa đơn điện tử theo Nghị định 123/2020/NĐ-CP và Thông tư 78/2021/TT-BTC trực tiếp vào phần mềm kế toán.
  • Nghiên cứu ứng dụng công nghệ quét mã QR/Barcode trên từng kiện thép kết hợp cân điện tử tự động kết nối qua giao thức IoT để loại bỏ hoàn toàn thao tác kiểm đếm thủ công tại kho bãi.

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

  • Sinh viên chuyên ngành Kế toán - Kiểm toán: Tài liệu tham khảo toàn diện về phương pháp luận hạch toán hàng tồn kho, sơ đồ chữ T, bảng đối chiếu luân chuyển và bài toán FIFO thực tế theo TT 133/2016/TT-BTC.
  • Kế toán viên và Kiểm toán viên: Nắm vững cấu trúc luân chuyển chứng từ thực chiến, kỹ thuật phân bổ tài khoản $1562$ và kỹ thuật trích lập dự phòng tài khoản $2294$.
  • Chủ doanh nghiệp thương mại vừa và nhỏ (SMEs): Bản thiết kế giải pháp tinh gọn giúp tối ưu vốn lưu động nằm trong hàng tồn kho, nâng cao tính minh bạch tài chính trước cơ quan thuế và đối tác ngân hàng.
  • Kỹ sư phát triển phần mềm ERP: Nắm bắt chính xác mô hình dữ liệu thực tế (Database Schema) và các trường hợp biên (Edge Cases) trong bài toán quản lý hàng tồn kho ngành vật tư.

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

1. Yêu cầu kỹ thuật cốt lõi để triển khai hệ thống kế toán hàng hóa theo TT 133 là gì?

Doanh nghiệp cần thiết lập hệ thống tài khoản chi tiết (TK 1561, TK 1562), xây dựng bộ mã danh điểm hàng hóa không trùng lặp và trang bị phần mềm kế toán hỗ trợ phương pháp Kê khai thường xuyên với cơ chế sao lưu dữ liệu tự động.

2. Khi giá sắt thép biến động mạnh, phương pháp FIFO có làm sai lệch lợi nhuận không?

Trong thời kỳ giá nguyên vật liệu tăng cao, phương pháp FIFO sẽ cho giá vốn hàng bán ($TK 632$) thấp hơn do lấy giá của các lô nhập cũ, dẫn đến lợi nhuận gộp trên sổ sách cao hơn. Doanh nghiệp cần chủ động theo dõi để trích lập dự phòng giảm giá hàng tồn kho ($TK 2294$) khi thị trường có dấu hiệu đảo chiều.

3. Làm thế nào để xử lý chênh lệch giữa Thẻ kho và Sổ chi tiết kế toán vào cuối kỳ?

Nguyên nhân thường do ghi nhận thiếu chứng từ hoặc sai sót thời điểm nhập liệu. Kế toán cần lập Biên bản kiểm kê, sử dụng tài khoản $1381$ (Tài sản thiếu chờ xử lý) hoặc $3381$ (Tài sản thừa chờ xử lý) để cân bằng số liệu trước khi tìm ra nguyên nhân cụ thể.

4. Chi phí thu mua (vận chuyển, bốc xếp) nên hạch toán gộp vào giá mua hay tách riêng vào TK 1562?

Nếu chi phí thu mua phát sinh lớn và liên quan đến nhiều chủng loại hàng hóa nhập cùng chuyến xe, bắt buộc phải hạch toán vào TK 1562 để phân bổ dần vào cuối kỳ. Nếu chi phí nhỏ và xác định trực tiếp cho từng mặt hàng, có thể cộng trực tiếp vào giá trị nhập kho trên TK 1561.

5. Chi phí đầu tư và thời gian hoàn vốn (ROI) khi tin học hóa công tác kế toán kho là bao lâu?

Với doanh nghiệp quy mô vừa và nhỏ như Hoàng Kim, tổng chi phí triển khai hệ thống phần mềm và thiết bị chuẩn khoảng 25 - 35 triệu đồng, thời gian thu hồi vốn đạt được trong vòng 4 đến 6 tháng nhờ cắt giảm thời gian lao động và ngăn ngừa thất thoát hàng hóa.


Kết luận

Đề tài "Hoàn thiện công tác kế toán hàng hóa tại Công ty Cổ phần Xây dựng và Thương mại Hoàng Kim" đã giải quyết trọn vẹn cả hai khía cạnh: lý luận nghiệp vụ kế toán thực chứng và giải pháp tin học hóa quản trị kho hàng. Việc kết hợp chặt chẽ giữa hình thức Nhật ký chung, phương pháp kê khai thường xuyên và thuật toán định giá FIFO mang lại một hệ thống thông tin tài chính chuẩn mực, minh bạch, tuân thủ Thông tư 133/2016/TT-BTC.

Mô hình này không chỉ giúp Ban Giám đốc Công ty Hoàng Kim kiểm soát chặt chẽ hàng hóa, tiết kiệm chi phí bảo quản và tối ưu hóa vòng quay vốn lưu động, mà còn đóng vai trò như một khuôn mẫu (framework) chuẩn mực có thể nhân rộng cho các doanh nghiệp hoạt động trong lĩnh vực thương mại và phân phối vật liệu xây dựng trên toàn quốc.