2. Đặt tả Use-case
2.13. Đặc tả Use-case “Đặt hàng”
Bảng 3.2.13: Bảng đặc tả Use-case “Đặt hàng”
Mô tả Khách hàng tiến hành thanh toán sản phẩm cần mua
Tác nhân Khách hàng
Luồng chính
Hành vi của tác nhân Hành vi của hệ thống
1 – Khách hàng thực hiện truy cập vào website 2 – Khách hàng truy cập
vào Giỏ hàng
3 – Chọn sản phẩm muốn đặt hàng
4 – Chọn nút Đặt hàng 5 – Đăng nhập và điền thông tin cần thiết để thanh toán sản phẩm
6 – Hệ thống tiến hành kiểm tra thông tin khách hàng
7 – Nếu thông tin hợp lệ, tiến thành cập nhật thông tin đặt hàng lên server và hiển thị thông báo đặt hàng thành công.
8 – Nếu thông tin không hợp lệ, yêu cầu người dùng
Luồng thay thế Nếu thông tin không hợp lệ, khách hàng tiến hành nhập lại
thông tin và tiếp tục đặt hàng
Điều kiện trước Thiết bị truy cập phải có kết nối mạng.
Kết nối thành công với server.
Điều kiện sau
Thành công: Cập nhật thông tin đơn hàng lên CSDL và thông báo về tài khoản Admin
3. Sơ đồ dữ liệu
3.1. Bảng User
Bảng 3.3.1: Bảng User
STT Tên thuộc tính Kiểu Ràng buộc
Ý nghĩa/ghi chú
1 id int PK Mã của bảng User
2 user_name nvarchar NotNull Tên của người dùng 3 pass_word nvarchar NotNull Mật khẩu của người dùng 4 gender int NotNull Giới tính của người dùng 5 address nvarchar NotNull Địa chỉ của người dùng 6 phone_number varchar NotNull SĐT người dùng
7 email varchar NotNull Email dùng để đăng nhập của người dùng
8 bithday datetime NotNull Ngày sinh của người dùng
3.2. Bảng Admin
Bảng 3.3.2: Bảng Admin
STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú
1 id int PK Mã của bảng Admin
2 name nvarchar NotNull Tên của admin
4 pass_word varchar NotNull Mật khẩu để đăng nhập 5 product_id int NotNull Khóa ngoại trỏ đến bảng
Product, thể hiện thông tin sản phẩm
6 category_id int NotNull Khóa ngoại trỏ đến bảng Category, thể hiện thông tin danh mục sản phẩm
7 discount int NotNull Khóa ngoại trỏ đến bảng
Discount, thể hiện thông tin khuyến mãi
3.3. Bảng Product
Bảng 3.3.3: Bảng Product
STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú
1 id int PK Mã của bảng Product
2 product_name nvarchar NotNull Tên của sản phẩm 3 product_price varchar NotNull Giá sản phẩm
4 quantity int NotNull Số lượng sản phẩm
5 image varchar NotNull Hình ảnh sản phẩm
6 slug varchar NotNull Đường dẫn đến sản phẩm
DetailProduct, thể hiện Chi tiết sản phẩm
8 category_id int FK Khóa ngoại trỏ đến bảng
Category, thể hiện danh mục sản phẩm
3.4. Bảng DetailProduct
Bảng 3.3.4: Bảng DetailProduct
STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú
1 id int PK Mã của bảng
DetailProduct
2 image_list varchar NotNull Danh sách hình ảnh của sản phẩm
3 descripton nvarchar NotNull Thông tin chi tiết sản phẩm
4 status int NotNull Trạng thái của sản phẩm
3.5. Bảng Category
Bảng 3.3.5: Bảng Category
STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú
1 id int PK Mã của bảng Category
3 category_slug varchar NotNull Đường dẫn đến danh mục
3.6. Bảng Discount
Bảng 3.3.6: Bảng Discount
STT Tên thuộc tính Kiểu Ràng buộc
Ý nghĩa/ghi chú
1 id int PK Mã của bảng Discount
2 title nvarchar NotNull Tên của sự kiện giảm giá 3 image varchar NotNull Hình ảnh của sự kiện giảm
giá
4 description nvarchar NotNull Mô tả về sự kiện giảm giá 5 discount_slug varchar NotNull Đường dẫn đến discount
3.7. Bảng Transaction
Bảng 3.3.7: Bảng Transaction
STT Tên thuộc tính Kiểu Ràng buộc Ý nghĩa/ghi chú
1 id int PK Khóa ngoại trỏ đến bảng
USER, thể hiện thông tin người thực hiện theo dõi sự kiện
2 status int NotNull Khóa ngoại trỏ đến bảng
tin của sự kiện được theo dõi
3 amount int NotNull Thời gian thực hiện theo
dõi
4 payment varchar NotNull Số tiền thanh toán 5 payment_infor nvarchar NotNull Phương thức thanh toán
6 message nvarchar NotNull
7 product_id Int FK Khóa ngoại trỏ đến bảng
Product
8 user_id int FK Khóa ngoại trỏ đến bảng
User
CHƯƠNG V: THIẾT KẾ GIAO DIỆN 1. Trang Home