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

Sự bùng nổ của cuộc Cách mạng Công nghiệp 4.0 đã thúc đẩy quá trình chuyển dịch mạnh mẽ từ các phương thức bán hàng truyền thống sang nền tảng thương mại điện tử trực tuyến. Đối với ngành thời trang — một lĩnh vực mang tính đặc thù với tốc độ thay đổi xu hướng nhanh chóng và thị hiếu tiêu dùng đa dạng — các doanh nghiệp đòi hỏi phải có các giải pháp quản lý danh mục sản phẩm linh hoạt, tối ưu hóa quy trình tiếp thị và nâng cao trải nghiệm mua sắm của khách hàng. Tuy nhiên, các doanh nghiệp vừa và nhỏ thường gặp khó khăn về mặt tài chính và công nghệ khi tiếp cận các hệ sinh thái thương mại điện tử quy mô lớn, phức tạp và tốn kém chi phí duy trì.

Từ thực tiễn đó, tác giả Nguyễn Văn Thuận (sinh viên lớp 21CNTT2, Khoa Tin học, Trường Đại học Sư phạm – Đại học Đà Nẵng), dưới sự hướng dẫn của TS. Nguyễn Thị Ngọc Anh, đã thực hiện đồ án chuyên ngành với đề tài: "Nghiên cứu xây dựng website bán quần áo trực tuyến với công nghệ Nodejs".

Đề tài tập trung giải quyết các nhiệm vụ và mục tiêu nghiên cứu cụ thể sau:

  1. Xây dựng một website thương mại điện tử chuyên ngành thời trang có giao diện trực quan, thân thiện và tương thích với nhiều loại thiết bị hiển thị (Responsive Web Design).
  2. Phát triển đầy đủ các phân hệ chức năng cốt lõi cho khách hàng: tìm kiếm, lọc sản phẩm theo tiêu chí, quản lý giỏ hàng, đặt hàng, xác thực tài khoản và theo dõi trạng thái đơn hàng.
  3. Thiết lập hệ thống quản trị (Admin Dashboard) hỗ trợ chủ cửa hàng quản lý danh mục sản phẩm, theo dõi tồn kho, cập nhật đơn hàng, quản lý tài khoản người dùng, phát hành mã giảm giá và xem báo cáo thống kê doanh thu.
  4. Tối ưu hóa trải nghiệm người dùng thông qua tốc độ xử lý nhanh, điều hướng mạch lạc và giảm thiểu thao tác nhập liệu.
  5. Ứng dụng nền tảng runtime Node.js ở phía máy chủ kết hợp với hệ quản trị cơ sở dữ liệu NoSQL MongoDB nhằm bảo đảm hiệu năng xử lý bất đồng bộ, tính linh hoạt của cấu trúc dữ liệu và khả năng mở rộng hệ thống.
  6. Hệ thống hóa và chuyển hóa kiến thức lý thuyết chuyên ngành công nghệ thông tin vào việc giải quyết một bài toán ứng dụng thực tế.

Đố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 trực tuyến; kiến trúc hệ thống web thương mại điện tử; các công nghệ lập trình web phía máy khách (HTML, CSS, JavaScript) và phía máy chủ (Node.js, MongoDB); hành vi tương tác của người dùng trên nền tảng số.
  • Phạm vi nghiên cứu: Tập trung vào các chức năng thiết yếu phục vụ mô hình bán quần áo trực tuyến (quản lý sản phẩm, giỏ hàng, thanh toán, xử lý đơn hàng và thống kê cơ bản); không mở rộng sang việc tích hợp các cổng thanh toán quốc tế phức tạp hoặc ứng dụng trí tuệ nhân tạo (AI) trong phân tích hành vi và gợi ý sản phẩm tự động.

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

Khung lý thuyết và công nghệ nền tảng

Hệ thống được xây dựng dựa trên sự kết hợp của các công nghệ và mô hình kiến trúc chuẩn trong phát triển phần mềm:

  • HTML (HyperText Markup Language): Cung cấp cấu trúc và khung sườn ngữ nghĩa cho toàn bộ các trang web (trang chủ, trang danh mục, chi tiết sản phẩm, giỏ hàng, biểu mẫu đăng ký/đăng nhập).
  • CSS (Cascading Style Sheets): Đảm nhiệm định dạng giao diện, bố cục (sử dụng Flexbox, CSS Grid) và kỹ thuật Media Queries để hỗ trợ hiển thị đáp ứng trên các kích thước màn hình khác nhau (desktop, tablet, smartphone).
  • JavaScript (JS): Ngôn ngữ kịch bản hoạt động ở phía máy khách, thực thi thông qua JavaScript Engine (Google V8), xử lý tương tác giao diện động, kiểm tra tính hợp lệ của biểu mẫu (form validation) và cập nhật dữ liệu DOM theo cơ chế hướng sự kiện (Event-driven).
  • Node.js: Môi trường runtime thực thi mã nguồn JavaScript ở phía máy chủ dựa trên Google V8 Engine. Node.js hoạt động theo mô hình đơn luồng (Single-threaded) kết hợp với cơ chế I/O không chặn (Non-blocking I/O) và vòng lặp sự kiện (Event Loop), giúp xử lý đồng thời nhiều kết nối mà không gây tắc nghẽn tài nguyên. Hệ thống quản lý gói NPM (Node Package Manager) được sử dụng để tích hợp các thư viện bổ trợ.
  • MongoDB: Hệ quản trị cơ sở dữ liệu NoSQL hướng tài liệu (Document-oriented), lưu trữ dữ liệu dưới định dạng JSON-like (BSON). Hệ thống tận dụng đặc tính không yêu cầu lược đồ cố định (Schema-less) và khả năng mở rộng theo chiều ngang (Sharding) để quản lý dữ liệu sản phẩm, đơn hàng và tài khoản người dùng.
  • Mô hình kiến trúc MVC (Model-View-Controller): Tách biệt rõ ràng ba tầng logic của ứng dụng: Model (quản lý miền dữ liệu và tương tác CSDL), View (hiển thị giao diện người dùng) và Controller (tiếp nhận yêu cầu, điều hướng và xử lý logic nghiệp vụ trung gian).

Phương pháp nghiên cứu

Tác giả đã kết hợp bốn phương pháp nghiên cứu chính để hoàn thiện đồ án:

  • Phương pháp lý thuyết: Nghiên cứu tài liệu kỹ thuật chuyên sâu về các giao thức web, kiến trúc Node.js, kỹ thuật lập trình bất đồng bộ và cơ chế quản lý dữ liệu của MongoDB.
  • Phương pháp phân tích: Khảo sát các quy trình bán lẻ thời trang thực tế để xác định các yêu cầu chức năng (Functional Requirements) và phi chức năng (Non-functional Requirements) cho hai nhóm đối tượng tác nhân: Khách hàng (User) và Quản trị viên (Admin).
  • Phương pháp thực nghiệm: Triển khai lập trình từng mô-đun chức năng, xây dựng hệ thống cơ sở dữ liệu và thử nghiệm tích hợp toàn diện trên môi trường phát triển cục bộ.
  • Phương pháp đánh giá: Tiến hành kiểm thử giao diện, kiểm tra tính toàn vẹn của dữ liệu trong các giao dịch đặt hàng và đánh giá khả năng phản hồi của hệ thống qua các kịch bản sử dụng.

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

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

Chương này trình bày chi tiết nền tảng công nghệ phục vụ việc phát triển website:

  • Ngôn ngữ HTML: Lược sử từ phiên bản 1.0 (1991 bởi Tim Berners-Lee) đến chuẩn HTML5 (2014); cấu trúc cây tài liệu chuẩn (<!DOCTYPE html>, <html>, <head>, <body>); các thành phần thẻ ngữ nghĩa, thuộc tính và vai trò xây dựng giao diện hiển thị thông tin sản phẩm, biểu mẫu dữ liệu.
  • Ngôn ngữ CSS: Lịch sử phát triển qua các chuẩn CSS1, CSS2, CSS3; cơ chế phân tích cú pháp tạo cây kết xuất (Render Tree) và giai đoạn vẽ (Painting) trên trình duyệt; hệ thống các bộ chọn (Selector cơ bản, class, id, nhóm), đơn vị đo lường (px, %, em, rem, vw, vh) và quy tắc Media Queries.
  • Ngôn ngữ JavaScript: Nguồn gốc hình thành bởi Brendan Eich (1995); lộ trình chuẩn hóa ECMAScript từ ES1 đến ES12; cơ chế hoạt động bất đồng bộ với Call Stack, Memory Heap, Web APIs, Callback Queue và Event Loop; phân tích các engine thông dịch (SpiderMonkey, Chakra, JavaScriptCore, Google V8).
  • Môi trường thực thi Node.js: Lịch sử ra đời năm 2009 bởi Ryan Dahl; sự hợp nhất với dự án io.js năm 2015; đặc tính Single-threaded, Event-driven và Non-blocking I/O; ưu điểm về thông lượng xử lý các tác vụ I/O-intensive và hạn chế khi xử lý các tác vụ tính toán nặng tiêu tốn CPU.
  • Hệ quản trị CSDL MongoDB: Cơ chế lưu trữ Document-oriented; ưu thế so với cơ sở dữ liệu quan hệ (RDBMS) về sự linh hoạt trong thay đổi cấu trúc dữ liệu; bảng đối chiếu thuật ngữ và thao tác cơ bản giữa MongoDB và MySQL:
Thao tác (Operation) MongoDB MySQL (RDBMS)
Cấu trúc chứa tập hợp Collection Table
Bản ghi dữ liệu Document Row
Tạo mới dữ liệu Insert Insert
Truy vấn / Đọc dữ liệu Find Select
Cập nhật dữ liệu Update Update
Xóa dữ liệu Remove / Delete Delete
  • Mô hình kiến trúc MVC: Phân tích chi tiết ba thành phần Model, View, Controller; nguyên lý tách biệt mối quan tâm (Separation of Concerns), tạo điều kiện thuận lợi cho việc kiểm thử, bảo trì và phát triển song song các tầng phần mềm.

Chương 2: Phân tích và thiết kế hệ thống

Chương 2 tập trung vào việc mô hình hóa bài toán quản lý và bán hàng trực tuyến thông qua hệ thống tài liệu đặc tả và các biểu đồ UML:

  • Phát biểu và đặc tả bài toán: Xác định yêu cầu cho hai nhóm vai trò chính:
    • Người dùng (Khách hàng): Truy cập trang chủ, tìm kiếm/lọc sản phẩm, xem chi tiết, đăng ký tài khoản, đăng nhập, khôi phục mật khẩu thông qua mã OTP gửi qua email, quản lý giỏ hàng (thêm/sửa số lượng/chọn size, màu/xóa), thanh toán, tra cứu lịch sử mua hàng, chi tiết đơn hàng và hủy đơn hàng.
    • Quản trị viên (Admin): Đăng nhập hệ thống quản trị, thực hiện CRUD (thêm, sửa, xóa) sản phẩm và quản lý tồn kho, quản lý danh sách đơn hàng và cập nhật trạng thái đơn (xác nhận, vận chuyển, hoàn thành), quản lý tài khoản người dùng, quản lý mã giảm giá và xem báo cáo thống kê doanh thu.
  • Xây dựng biểu đồ UML:
    • Biểu đồ ca sử dụng (Use Case Diagram): Mô hình hóa các ca sử dụng tổng quát của hệ thống và lập bảng phân tích đặc tả chi tiết cho từng ca sử dụng (Đăng ký, Xem thông tin sản phẩm, Thêm sản phẩm, Đặt hàng, Quản lý đơn hàng, Kiểm tra giỏ hàng, Đổi mật khẩu, Thống kê).
    • Biểu đồ hoạt động (Activity Diagram): Mô hình hóa luồng xử lý nghiệp vụ cho các tiến trình: Đăng ký, Đăng nhập, Khôi phục mật khẩu, Tìm kiếm sản phẩm, Thêm vào giỏ hàng, Cập nhật giỏ hàng, Thanh toán, Thêm/Sửa/Xóa sản phẩm, Quản lý đơn hàng, Tìm kiếm và Xóa thông tin người dùng.
    • Biểu đồ tuần tự (Sequence Diagram): Mô tả sự tương tác theo trục thời gian giữa tác nhân, giao diện, bộ điều khiển và cơ sở dữ liệu cho các ca sử dụng: Đăng ký, Đăng nhập, Đổi mật khẩu và Tìm kiếm sản phẩm.
    • Biểu đồ lớp (Class Diagram): Thiết kế các thực thể dữ liệu, thuộc tính và mối quan hệ giữa chúng trong hệ thống (Người dùng, Sản phẩm, Đơn hàng, Chi tiết đơn hàng, Giỏ hàng, Mã giảm giá).

Chương 3: Cài đặt chương trình và kết quả

Chương 3 trình bày việc hiện thực hóa các thiết kế thành phần mềm chạy trên thực tế với hệ thống giao diện trực quan:

  • Cài đặt hệ thống phía máy chủ bằng Node.js kết nối cơ sở dữ liệu MongoDB.
  • Triển khai toàn bộ giao diện phía người dùng:
    • Trang chủ hiển thị danh mục sản phẩm và sản phẩm nổi bật.
    • Giao diện đăng nhập, đăng ký tài khoản mới.
    • Giao diện quên mật khẩu, màn hình nhập mã xác thực OTP và thiết lập mật khẩu mới.
    • Danh mục tất cả sản phẩm, giao diện lọc và chi tiết từng sản phẩm.
    • Giao diện giỏ hàng và màn hình thanh toán đơn hàng.
    • Giao diện thông tin tài khoản cá nhân, lịch sử đơn hàng và chi tiết trạng thái đơn hàng.
  • Triển khai hệ thống giao diện quản trị (Admin):
    • Bảng điều khiển thống kê tổng quan (doanh thu, số lượng đơn hàng, sản phẩm bán chạy).
    • Giao diện quản lý danh sách sản phẩm, biểu mẫu thêm mới và chỉnh sửa thông tin sản phẩm.
    • Giao diện quản trị đơn hàng, xem chi tiết và cập nhật tiến trình xử lý đơn hàng.
    • Giao diện quản lý danh sách tài khoản người dùng và giao diện quản lý mã giảm giá.

Thiết kế và triển khai

Kiến trúc phân tầng và luồng dữ liệu

Hệ thống được tổ chức theo mẫu kiến trúc Model-View-Controller (MVC) với cấu trúc phân định rõ ràng nhiệm vụ của từng tầng:

[Trình duyệt Web (Client)]
  1. Tầng View (Client-side): Được xây dựng bằng HTML5, CSS3 và JavaScript thuần. Tầng này chịu trách nhiệm hiển thị cấu trúc trang, định dạng đồ họa theo hướng đáp ứng (Responsive) và bắt các sự kiện tương tác của người dùng (bấm nút mua hàng, cập nhật giỏ, gửi biểu mẫu).
  2. Tầng Controller (Server-side): Sử dụng Node.js để tiếp nhận các yêu cầu HTTP từ trình duyệt. Controller thực hiện kiểm tra tính hợp lệ của dữ liệu đầu vào, gọi các hàm nghiệp vụ, điều phối dữ liệu với Model và gửi kết quả hiển thị về cho View.
  3. Tầng Model (Database Layer): Sử dụng MongoDB để lưu trữ các tài liệu (Documents) tương ứng với các thực thể trong hệ thống. Tầng này định nghĩa cấu trúc dữ liệu cho người dùng, sản phẩm, đơn hàng và mã giảm giá, đồng thời thực thi các thao tác đọc/ghi dữ liệu.

Phân hệ người dùng và chức năng chi tiết

Hệ thống phân quyền tách biệt hai nhóm tác nhân chính trên website:

Nhóm tác nhân Phân hệ chức năng Mô tả chi tiết các tác vụ nghiệp vụ
Khách hàng (User) Xác thực & Tài khoản Đăng ký tài khoản, đăng nhập hệ thống, đổi mật khẩu, khôi phục mật khẩu qua mã OTP gửi về email, cập nhật thông tin cá nhân.
Mua sắm & Giỏ hàng Duyệt danh mục (áo, quần, phụ kiện), tìm kiếm theo tên/giá/kích thước/màu sắc; thêm sản phẩm vào giỏ, cập nhật số lượng, đổi thuộc tính size/color hoặc xóa khỏi giỏ.
Đặt hàng & Thanh toán Thực hiện quy trình thanh toán đơn hàng; theo dõi lịch sử đặt hàng, xem chi tiết từng đơn hàng và thực hiện quyền hủy đơn hàng khi đơn chưa chuyển sang trạng thái xử lý.
Quản trị viên (Admin) Quản lý sản phẩm Thêm sản phẩm mới, chỉnh sửa thông tin (tên, mô tả, đơn giá, kích cỡ, màu sắc, hình ảnh), theo dõi số lượng tồn kho và xóa sản phẩm.
Quản lý đơn hàng Xem danh sách đơn hàng mới phát sinh, kiểm tra thông tin khách hàng, cập nhật trạng thái xử lý (chờ duyệt, đang giao, đã hoàn thành, đã hủy).
Quản trị hệ thống Quản lý danh sách tài khoản người dùng, tìm kiếm và xóa tài khoản vi phạm; phát hành và cấu hình mã giảm giá (voucher); xem báo cáo thống kê doanh thu và đơn hàng.

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

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

Đồ án đã xây dựng hoàn chỉnh một website thương mại điện tử phục vụ ngành thời trang với các kết quả cụ thể:

  • Hiện thực hóa thành công các giao diện người dùng chính: Trang chủ, Đăng nhập, Đăng ký, Quên mật khẩu, Danh mục sản phẩm, Chi tiết sản phẩm, Giỏ hàng, Thanh toán, Thông tin người dùng, Chi tiết đơn hàng, Lịch sử đơn hàng.
  • Triển khai đầy đủ các giao diện phân hệ quản trị: Bảng thống kê quản trị, Quản lý sản phẩm (danh sách, thêm, sửa, xóa), Quản lý đơn hàng (cập nhật trạng thái), Quản lý tài khoản và Quản lý mã giảm giá.
  • Xây dựng thành công cơ chế xác thực an toàn thông qua tính năng khôi phục mật khẩu sử dụng mã OTP gửi trực tiếp qua email.
  • Đảm bảo luồng xử lý đơn hàng khép kín từ lúc khách hàng chọn sản phẩm, lưu giỏ hàng, áp dụng giảm giá, tiến hành thanh toán đến khi người quản trị tiếp nhận, xử lý và cập nhật trạng thái giao hàng.

Đóng góp của đề tài

  1. Về mặt thực tiễn: Cung cấp một giải pháp phần mềm bán hàng trực tuyến với cấu trúc gọn nhẹ, chi phí triển khai hợp lý, đáp ứng đầy đủ các nghiệp vụ cốt lõi cho các cửa hàng và doanh nghiệp thời trang quy mô vừa và nhỏ.
  2. Về mặt công nghệ và học thuật: Ứng dụng thành công hệ sinh thái JavaScript đồng nhất (JavaScript ở client, Node.js ở server) kết hợp cơ sở dữ liệu MongoDB và mô hình MVC; cung cấp tài liệu phân tích thiết kế hệ thống chi tiết qua các biểu đồ ca sử dụng, biểu đồ hoạt động, biểu đồ tuần tự và biểu đồ lớp.

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

Hạn chế của đề tài

  • Hệ thống chưa tích hợp các cổng thanh toán trực tuyến tự động quy mô quốc tế hoặc các cổng trung gian thanh toán phổ biến tại Việt Nam; phương thức thanh toán chủ yếu vẫn dựa trên quy trình ghi nhận và xử lý đơn hàng nội bộ.
  • Chưa ứng dụng các giải pháp phân tích dữ liệu nâng cao hay thuật toán trí tuệ nhân tạo (AI/Machine Learning) nhằm phân tích hành vi khách hàng để đưa ra các gợi ý sản phẩm mang tính cá nhân hóa.
  • Do MongoDB không áp đặt các ràng buộc quan hệ chặt chẽ ở mức cơ sở dữ liệu, toàn bộ việc kiểm tra tính toàn vẹn và logic ràng buộc dữ liệu phụ thuộc hoàn toàn vào tầng xử lý ứng dụng (Application Layer).

Hướng phát triển

  • Tích hợp thêm các cổng thanh toán điện tử trực tuyến (như ví điện tử, thẻ ngân hàng, thẻ quốc tế) để tự động hóa hoàn toàn quy trình thu chi.
  • Nghiên cứu và tích hợp mô-đun gợi ý sản phẩm thông minh dựa trên lịch sử xem hàng và thói quen mua sắm của từng khách hàng.
  • Tối ưu hóa cấu trúc cơ sở dữ liệu và cơ chế lưu trữ đệm (caching) để nâng cao khả năng chịu tải và phục vụ lượng người dùng truy cập đồng thời lớn hơn.

Giá trị tham khảo

Báo cáo đồ án chuyên ngành 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: Tài liệu minh họa trực quan cho quy trình phân tích và thiết kế hệ thống thông tin hoàn chỉnh, từ bước mô tả bài toán, xây dựng biểu đồ use case, biểu đồ hoạt động, biểu đồ tuần tự, biểu đồ lớp đến việc ánh xạ sang mã nguồn.
  • Người học lập trình Web Full-stack: Cung cấp tài liệu tham khảo về cách ứng dụng mô hình MVC với nền tảng Node.js, kỹ thuật thao tác dữ liệu với MongoDB và cách xây dựng giao diện người dùng hướng đáp ứng bằng HTML, CSS, JavaScript thuần.
  • Các nhà phát triển hệ thống thương mại điện tử cơ bản: Tham khảo cấu trúc nghiệp vụ của phân hệ quản trị (sản phẩm, đơn hàng, người dùng, mã khuyến mãi) và luồng xử lý giỏ hàng/thanh toán.

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

1. Hệ thống sử dụng công nghệ nào cho tầng máy chủ và cơ sở dữ liệu?
Hệ thống sử dụng nền tảng runtime Node.js (dựa trên engine Google V8) cho tầng backend và hệ quản trị cơ sở dữ liệu NoSQL MongoDB (dạng Document-oriented) để lưu trữ dữ liệu sản phẩm, người dùng và đơn hàng.

2. Phân hệ bảo mật và quản lý tài khoản của website có tính năng gì nổi bật?
Hệ thống cung cấp đầy đủ các chức năng đăng ký, đăng nhập, đổi mật khẩu và đặc biệt là tính năng khôi phục mật khẩu an toàn thông qua việc gửi mã xác thực OTP qua email của người dùng.

3. Sự khác biệt cơ bản giữa việc tổ chức dữ liệu trong MongoDB và MySQL được đồ án trình bày như thế nào?
Trong khi MySQL tổ chức dữ liệu theo bảng (Table) với các hàng (Row) có cấu trúc cố định và sử dụng các câu lệnh SQL (SELECT, INSERT, UPDATE, DELETE), MongoDB tổ chức dữ liệu thành các tập hợp (Collection) chứa các tài liệu (Document) linh hoạt dạng JSON-like và sử dụng các thao tác như Find, Insert, Update, Remove.

4. Phân hệ quản trị (Admin) hỗ trợ những chức năng nào cho người bán hàng?
Người quản trị có thể thực hiện thêm, sửa, xóa và kiểm tra tồn kho sản phẩm; xem danh sách và cập nhật trạng thái đơn hàng; quản lý danh sách tài khoản người dùng (bao gồm tìm kiếm và xóa tài khoản); tạo và quản lý mã giảm giá; xem bảng báo cáo thống kê về doanh thu và số lượng đơn hàng.


Kết luận

Đồ án "Nghiên cứu xây dựng website bán quần áo trực tuyến với công nghệ Nodejs" của tác giả Nguyễn Văn Thuận đã hoàn thành xuất sắc các mục tiêu nghiên cứu và yêu cầu kỹ thuật đặt ra. Đề tài đã xây dựng thành công một hệ thống thương mại điện tử chuyên ngành thời trang với đầy đủ phân hệ mua sắm cho khách hàng và phân hệ quản trị nghiệp vụ cho người bán, dựa trên nền tảng công nghệ hiện đại Node.js, MongoDB và mô hình kiến trúc MVC. Báo cáo không chỉ phản ánh kết quả phần mềm hoàn chỉnh mà còn thể hiện quy trình phân tích thiết kế hệ thống bài bản, đóng vai trò là tài liệu tham khảo có giá trị học thuật và ứng dụng cao cho sinh viên ngành công nghệ thông tin.