Nền tảng Kiến thức - Hành trang tới Tương lai
Card image

Chương trình học


  1. Bức tranh Tổng thể về Lập trình WEB 1
    1. Kiến thức nền tảng cần có khi xây dựng trang web Thương mại điện tử từ A-Z
  2. Giới thiệu, cài đặt, cấu hình môi trường lập trình 10
    1. Cài đặt web server XAMPP
    2. Cài đặt công cụ truy vấn database HeidiSQL
    3. Cài đặt Composer để quản lý các gói thư viện trong PHP
    4. Cài đặt trình soạn thảo code Visual Studio Code IDE
    5. Tạo tên miền ảo trên máy cục bộ (virtual host on localhost) bằng XAMPP
    6. Cài đặt nền tảng quản lý Source Code sử dụng GIT
    7. Cài đặt công cụ quản lý Source Code TortoiseGit
    8. Cài đặt chế độ Debug PHP với Visual Studio Code
    9. Tạo chứng chỉ SSL trên Localhost
    10. Cài đặt công cụ quản trị, vẽ mô hình ER database MySQL WorkBench
  3. Tập làm quen với quản lý source code bằng GitHub 3
    1. GitHub là gì?
    2. Tạo tài khoản, tạo kho dữ liệu (repository), clone source, commit/push và pull source với GitHub
    3. Cách đóng gói phiên bản (Alpha, Beta, Release) bằng Tag trong GitHub
  4. Phân tích Nghiệp vụ và Thiết kế Cơ sở dữ liệu Database 4
    1. Phân tích Nghiệp vụ cần có trong Trang web Thương mại điện tử
    2. Cơ sở dữ liệu mẫu
    3. Thiết kế các table Danh mục
    4. Thiết kế các table liên quan đến Sản phẩm
  5. PHP căn bản 1
    1. PHP là gì? Viết chương trình PHP đầu tiên
  6. Dự án thực tế mẫu (PHP thuần) - Giai đoạn Chuẩn bị dữ liệu, Phân tích dự án 4
    1. [Setup] - Khởi tạo dự án, chuẩn bị môi trường phát triển
    2. [Business] - Phân tích các yêu cầu, nghiệp vụ của khách hàng
    3. [Database] - Thiết kế database đáp ứng các yêu cầu, nghiệp vụ đã phân tích
    4. [Resource] - Chuẩn bị nội dung, hình ảnh cho dự án
  7. Dự án thực tế mẫu (PHP thuần) - Thiết kế Backend 1
    1. [Backend] - Thiết kế bố cục layouts cho giao diện Backend
  8. Dự án thực tế mẫu (PHP thuần) - Thiết kế Frontend 1
    1. [Frontend] - Thiết kế bố cục layouts cho giao diện Frontend

Chương 6-Bài 2. [Business] - Phân tích các yêu cầu, nghiệp vụ của khách hàng

Tác giả: Dương Nguyễn Phú Cường
Ngày đăng: Hồi xưa đó

Yêu cầu Khách hàng

Công ty TNHH MTV shop Hoa Tươi Sunshine có nhu cầu cần mở rộng thị trường, tạo thêm nhiều kênh kết nối, đưa sản phẩm đến với khách hàng trong và ngoài nước.Nhận thấy tình hình công nghệ đang phát triển, công ty muốn thành lập một Trang web bán hàng thương mại điện tử, với các yêu cầu cần có như sau:

1. Quản lý thông tin về Sản phẩm

- Mã sản phẩm: là một mã duy nhất, không được phép trùng nhau. Được quản lý theo mã SKU (xem thêm tại đây Mả SKU là gì?). - Giá bán: tính theo đơn vị VNĐ. - Tên sản phẩm: có thể nhập tên tiếng Việt, có thể có các ký hiệu đặc biệt để PR sản phẩm tốt. Ví dụ như: Tủ lạnh Panasonic Inverter 188 lít NR-BA229PKVN. - Mô tả ngắn: dòng thông tin mô tả ngắn gọn, súc tích (tóm tắt) về sản phẩm. Cần có khung nhập liệu để người dùng thao tác đơn giản như Word (sử dụng CKEDITOR hoặc TINYMCE để thao tác). - Mô tả chi tiết: thông tin mô tả một cách chi tiết về Sản phẩm như thông số kỹ thuật, các hướng dẫn sử dụng sản phẩm, lưu ý khi sử dụng sản phẩm, ... - Mỗi sản phẩm sẽ có 1 hình ảnh đại diện và có thể có vô số ảnh chụp các góc cạnh liên quan để người dùng có thể xem kỹ lưỡng trước khi quyết định mua hàng. - Sản phẩm cần được phân loại theo từng Nhóm/Loại để khách hàng có thể tìm kiếm dễ dàng, như Điện máy / Điện lạnh / Hàng xách tay / Túi xách / Giỏ hoa / Hoa tươi, ...

2. Quản lý thông tin về nguồn gốc của Sản phẩm

Sản phẩm cần phải lưu trữ được nguồn gốc sản phẩm này là từ nhà Sản xuất nào tạo ra và hãng nào Cung cấp (phân phối) đến hệ thống bán hàng của trang web. Các thông tin cần lưu trữ như: - Mã NSX / NCC: là duy nhất, không trùng nhau. - Tên NSX / NCC - Địa chỉ NSX / NCC - Điện thoại NSX / NCC - Ghi chú thêm

3. Quản lý thông tin về Khách hàng

Trang web cần lưu trữ được thông tin về Khách hàng thông qua việc đăng ký tài khoản, các thông tin cần lưu trữ như sau: - Tài khoản / mật khẩu truy cập hệ thống. Mỗi tên tài khoản là duy nhất, không được phép trùng nhau. - Họ tên khách hàng - Địa chỉ - Ngày sinh - Giới tính - Số điện thoại - Email

4. Quản lý thông tin về Đơn hàng

Khi khách hàng tiến hành Đặt hàng trên hệ thống, sẽ phát sinh 1 Đơn hàng mới trong dữ liệu. Đơn hàng cần lưu trữ được các thông tin như sau: - Mã đơn hàng: là duy nhất, không được trùng nhau. Là một mã tự sinh theo quy cách sau: YYMM-xxxx, với YY là 2 số hiện tại của năm hiện hành (thời điểm khách Đặt hàng), MM là 2 số của tháng hiện hànhxxxx là số đơn hàng tự động tăng theo thứ tự, khi qua tháng tiếp theo sẽ tự động reset lại về số 0. Ví dụ:
  • 2101-0001 (đơn hàng số 1 trong tháng 01 năm 2021)
  • 2101-1234 (đơn hàng số 1234 trong tháng 01 năm 2021)
  • 2102-0001 (đơn hàng số 1 trong tháng 02 năm 2021)
  • ...
- Ngày đặt hàng: tính cả ngày tháng năm giờ phút giây. - Ngày giao hàng: tính cả ngày tháng năm giờ phút giây. Ngày mà đơn hàng này đã được giao cho khách hàng. - Người giao hàng: họ tên của nhân viên đi giao hàng. - Đơn hàng này đã mua các Sản phẩm nào? Số lượng và Đơn giá mua của từng Sản phẩm? - Trạng thái của đơn hàng: cần quản lý theo các trạng thái sau: 1-Mới đặt hàng ==> 2-Đang giao hàng ==> 3-Đã hoàn tất xử lý. Workflow như sau:
  • Khi khách hàng mới đặt hàng trên Hệ thống, trạng thái Đơn hàng mặc định là 1-Mới đặt hàng.
  • Sau đó, nhân viên Quản trị của công ty sẽ tiến hành kiểm tra thông tin đơn hàng và điều phối người đi giao hàng cho khách. Lúc này cập nhật dữ liệu thông tin Ngày giao hàng, Người giao hàng và chuyển trạng thái Đơn hàng thành 2-Đang giao hàng.
  • Khi đã giao hàng cho khách hàng và nhận đủ tiền thanh toán. Nhân viên Quản trị của công ty sẽ tiến hành cập nhật lại trạng thái Đơn hàng thành 3-Đã hoàn tất xử lý.
 

Yêu cầu kỹ thuật xây dựng Web

Cần thiết kế đầy đủ Backend và Frontend.

Phần Backend

  1. Có chức năng Đăng nhập, Đăng xuất
  2. Có đầy đủ chức năng để xử lý dữ liệu (CRUD, Xem, Thêm, Sửa, Xóa)
  3. Có chức năng phân quyền tùy theo vai trò (Giám đốc, Quản trị Hệ thống, Nhân viên bán hàng, ...)
  4. Có chức năng quản lý Đơn hàng
  5. Có hệ thống báo cáo (Báo cáo Doanh thu theo ngày, tháng; Báo cáo Sản phẩm bán chạy nhất theo ngày, tháng). Hỗ trợ xuất báo cáo ra PDF, Excel

Phần Frontend

  1. Có chức năng Đăng nhập, Đăng xuất
  2. Hỗ trợ 2 ngôn ngữ (Tiếng Việt, Tiếng Anh)
  3. Có chức năng tìm kiếm sản phẩm theo nhu cầu của khách hàng
  4. Có chức năng quản lý Giỏ hàng

Giao diện

  1. Giao diện thân thiện với người dùng
  2. Cần thiết kế theo dạng Reponsive, có thể hiển thị tốt trên Desktop và thiết bị Di động

Các bài học

Chương trình học

Bao gồm Module, Chương, Bài học, Bài tập, Kiểm tra...

Chương trình học


  1. Bức tranh Tổng thể về Lập trình WEB 1
    1. Kiến thức nền tảng cần có khi xây dựng trang web Thương mại điện tử từ A-Z
  2. Giới thiệu, cài đặt, cấu hình môi trường lập trình 10
    1. Cài đặt web server XAMPP
    2. Cài đặt công cụ truy vấn database HeidiSQL
    3. Cài đặt Composer để quản lý các gói thư viện trong PHP
    4. Cài đặt trình soạn thảo code Visual Studio Code IDE
    5. Tạo tên miền ảo trên máy cục bộ (virtual host on localhost) bằng XAMPP
    6. Cài đặt nền tảng quản lý Source Code sử dụng GIT
    7. Cài đặt công cụ quản lý Source Code TortoiseGit
    8. Cài đặt chế độ Debug PHP với Visual Studio Code
    9. Tạo chứng chỉ SSL trên Localhost
    10. Cài đặt công cụ quản trị, vẽ mô hình ER database MySQL WorkBench
  3. Tập làm quen với quản lý source code bằng GitHub 3
    1. GitHub là gì?
    2. Tạo tài khoản, tạo kho dữ liệu (repository), clone source, commit/push và pull source với GitHub
    3. Cách đóng gói phiên bản (Alpha, Beta, Release) bằng Tag trong GitHub
  4. Phân tích Nghiệp vụ và Thiết kế Cơ sở dữ liệu Database 4
    1. Phân tích Nghiệp vụ cần có trong Trang web Thương mại điện tử
    2. Cơ sở dữ liệu mẫu
    3. Thiết kế các table Danh mục
    4. Thiết kế các table liên quan đến Sản phẩm
  5. PHP căn bản 1
    1. PHP là gì? Viết chương trình PHP đầu tiên
  6. Dự án thực tế mẫu (PHP thuần) - Giai đoạn Chuẩn bị dữ liệu, Phân tích dự án 4
    1. [Setup] - Khởi tạo dự án, chuẩn bị môi trường phát triển
    2. [Business] - Phân tích các yêu cầu, nghiệp vụ của khách hàng
    3. [Database] - Thiết kế database đáp ứng các yêu cầu, nghiệp vụ đã phân tích
    4. [Resource] - Chuẩn bị nội dung, hình ảnh cho dự án
  7. Dự án thực tế mẫu (PHP thuần) - Thiết kế Backend 1
    1. [Backend] - Thiết kế bố cục layouts cho giao diện Backend
  8. Dự án thực tế mẫu (PHP thuần) - Thiết kế Frontend 1
    1. [Frontend] - Thiết kế bố cục layouts cho giao diện Frontend

Bài học trước Bài học tiếp theo