Thiết kế database

Một phần của tài liệu Xây dựng hệ thống thương mại hướng dịch vụ (Trang 72 - 83)

Hình 4-30 Lược đồ cơ sở dữ liệu

4.5.2 Danh sách các bảng cơ sở dữ liệu

STT Tên bảng Ý nghĩa

Quản lý sản phẩm – danh mục

1 Category Lưu trữ danh mục hàng hóa, sản phẩm, dịch vụ

2 Products Lưu trữ thông tin sản phẩm

3 ProductsType Lưu thông tin loại sản phẩm như sản phẩm khuyến mãi, sản phẩm mới, sản phẩm bình thường.

3 Account Lưu trữ thông tin của một nguời dùng hệ thống: nguời dùng trên SaaSSystem hoặc SaaS Client

4 Order Lưu trữ thông tin đặt hàng

5 OrderDetail Lưu trữ chi tiết thông tin đặt hàng

6 Customer Lưu trữ thông tin khách hàng

7 Payment Lưu trữ thông tin các phương thức thanh tóan

8 BankCard Lưu thông tin tài khỏan ngân hàng của khách hàng CutomerUserBankCard Lưu thông tin sử dụng thẻ ngân hàng của nguời dùng

(khách hàng đầu cuối)

UserGroup Lưu thông tin nhóm người dùng. Để đơn giản, hiện tại chương trình cố định 3 nhóm ngừời dùng: SaaSAdmin, SaaSCustomer, ClientCustomer.

User Lưu thông tin chung về nguời dùng trên các hệ thống: SaaSSystem và các website của SaaSUser

Function Lưu thông tin chức năng của chương trình Module Thông tin các phân hệ hệ thống

Screen Lưu thông tin về các màn hình. Một module có thể có nhiều màn hình làm việc

FunctionInScreen Lưu thông tin tính năng trong một màn hình. VD: Trong màn hình sản phẩm có các tính năng sau: Cập nhật sản phẩm, Thêm mới sản phẩm, Xóa sản phẩm. Template Lưu thông tin về giao diện của người dùng

(SaaSCustomer)

9 TypeRegister Loại đăng ký bao gồm: demo, 3 tháng, 6 tháng, 1 năm.

10 Banners Lưu thông tin banner quảng cáo của người dùng. Mỗi SaaSCustomer sẽ quản lý phần banner của mình riêng

11 Content Lưu thông tin tin tức. Mỗi SaaSCustomer sẽ quản lý phần banner của mình riêng. Hiện tại, để đơn giản, chương trình gói gọn phần tin tức làm 4 dạng (không chia danh mục tin): top, right, left, bottom.

12 Menu Lưu thông tin menu. Hiện tại có 4 dạng menu: top, left, right, bottom.

4.5.3 Mô tả thuộc tính một số bảng cơ sở dữ liệu

Tên bảng: Category

Ý nghĩa: Lưu trữ thông tin danh mục sản phẩm

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id Số nguyên >0 Mã danh mục.

2 Name Chuỗi(100) Khác rỗng Tên danh mục

5 Level Số nguyên Y | N Cấp bậc của danh mục (adsbygoogle = window.adsbygoogle || []).push({});

4 SaaSCustomerId Số nguyên >0 Mã tài khoản sở hữu

Tên bảng: Product

Ý nghĩa: Lưu trữ thông tin sản phẩm

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id Số nguyên >0 Mã sản phẩm

2 Name Chuỗi (100) Khác rỗng Tên sản phẩm

3 Code Chuỗi (50) Khác rỗng Mã sản phẩm

4 CategoryId Số nguyên >0 Mã danh mục

5 Quantity Số nguyên >=0 Số lượng sản phẩm

6 CurrentQuantity Số nguyên >=0 Số lượng hiện tại

7 ThumbImage Chuỗi (100) Khác rỗng Tên file hình nhỏ sản phẩm

8 LargeImage Chuỗi (100) Khác rỗng Tên file hình lớn sản phẩm

9 ShortDescription Chuỗi Khác rỗng Mô tả ngắn về sản phẩm

10 FullDescription Chuỗi Khác rỗng Mô tả đầy đủ về sản phẩm

11 CreatedDate Ngày giờ >=Ngày hiện tại Ngày tạo sản phẩm

12 UpdatedDate Ngày giờ >=Ngày hiện tại Ngày cập nhật sản phẩm

13 Price Số thực >=0 Giá sản phẩm

14 ProductTypeId Số nguyên P: Khuyến mãi | G: quà tặng | N: mới

Loại sản phẩm:

Khuyến mãi, mới, quà tặng

không

16 Published Kí tự (5) Y | N Cho hiển thị ra bên ngoài hay không

Tên bảng: ProductType

Ý nghĩa: Lưu trữ thông tin loại sản phẩm

STT Tên trường Kiểu Điều kiện Diễn giải 1 Id Số nguyên >0 Mã danh mục.

2 Name Chuỗi (100) Khác rỗng Tên danh mục

3 Icon Chuỗi (100) Biểu tuợng cho loại sản phẩm

Tên bảng: Order

Ý nghĩa: Lưu trữ thông tin đặt hàng sản phẩm

STT Tên trường Kiểu Điều kiện Diễn giải (adsbygoogle = window.adsbygoogle || []).push({});

1 Id AutoNumber >0 Mã danh mục.

2 OrderDate Ngày giờ >=Ngày hiện tại Ngày đặt hàng

3 Total Số thực >=0 Tổng tiền

4 PaymentId Số nguyên >0 Mã phương thức thanh toán

5 ClientCustomerId Số nguyên >0 Mã khách hàng (đầu cuối)

6 SaaSCustomerId Số nguyên >0 Mã khách hàng (SaaSSytem)

7 IsDeleted Kí tự (5) Y | N Xóa hay không.

Tên bảng: OrderDetail

STT Tên trường Kiểu Điều kiện Diễn giải 1 ProductId Số nguyên >0 Mã sản phẩm

2 OrderPrice Số thực >=0 Giá đặt

3 Quantity Số nguyên >=0 Số lượng đặt

4 OrderId Số nguyên >0 Mã đơn hàng

Tên bảng: Payment

Ý nghĩa: Lưu trữ các phương thức thanh toán

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id AutoNumber >0 Mã phương thức

2 Name Chuỗi(100) Khác rỗng Tên phương thức

3 Description Chuỗi Mô tả phương thức

Tên bảng: User

Ý nghĩa: Lưu trữ thông tin người dùng chung

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id Số nguyên >0 Mã khách hàng

2 Name Chuỗi (100) Khác rỗng Tên khách hàng

3 UserName Chuỗi (20) Khác rỗng Tên đăng nhập

4 Password Chuỗi (32) Khác rỗng, lớn hơn 6 kí tự, kí tự trong [0-9], [a-z] và [A-Z]

Mật khẩu

5 Email Chuỗi (30) Khác rỗng, theo đúng định dạng email hiện hành

Email

7 Phone Chuỗi (30) Số điện thoại

Birthday Ngày giờ Ngày sinh (adsbygoogle = window.adsbygoogle || []).push({});

8 RegisteredDate Ngày giờ Ngày đăng ký

9 GroupId Số nguyên >0 Mã nhóm người dùng

10 IsActive Chuỗi(1) Y|N Đuợc kích hoạt hay không

11 Description Chuỗi Mô tả người dung

12 ExpiredDate Ngày giờ Ngày hết hạn

TemplateId Số nguyên >0 Mã giao diện RegisteredTypeId Số nguyên >0 Mã loại đăng ký SaaSUserId Số nguyên >0 Mã người dùng (hệ

thống SaaS) IsDeleted Chuỗi (1) Y|N Xóa hay không

Tên bảng: TypeRegister

Ý nghĩa: Lưu trữ loại đăng ký

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id AutoNumber >0 Mã loại đăng ký

2 Name Chuỗi(100) Khác rỗng Tên của loại đăng ký. VD: 3 tháng, 6 tháng, …

3 NumDay Số nguyên >0 Số ngày. Mỗi loại đăng ký đều qui ra ngày.

Tên bảng: CustomerUseBankCard

Ý nghĩa: Cho biết khách hàng dùng thẻ gì.

STT Tên trường Kiểu Điều kiện Diễn giải 1 CustomerId Số nguyên >0 Mã khách hàng

2 BankCardId Số nguyên >0 Mã tài khỏan thẻ

Tên bảng: ClientSystemUsePayment

Ý nghĩa: Cho biết khách hàng dùng những phương thức thanh toán gì.

STT Tên trường Kiểu Điều kiện Diễn giải

1 SaaSCustomerId Số nguyên >0 Mã khách hàng (hệ thống SaaS)

2 PaymentId Số nguyên >0 Mã phương thức thành toán

Tên bảng: Banner

Ý nghĩa: Lưu trữ thông tin banner quảng cáo của từng hệ thống con.

STT Tên trường Kiểu Điều kiện Diễn giải

1 BannerId Số nguyên >0 Mã banner ( khóa chính)

2 Image Chuỗi(200) Lưu đường dẫn đến file

hình của banner

3 Title Chuỗi(100) Tiêu đề banner

4 Target Chuỗi(10) Vị trí màn hình khi click vào banner. Có 2 giá trị: blank, parent (adsbygoogle = window.adsbygoogle || []).push({});

5 Pos Chuỗi(10) Vị trí hiển thị của banner trên giao diện, có 4 loại: left, right, bottom, top

6 Url Chuỗi(255) Link của banner

7 Hits Số nguyên >=0 Số lượt xem banner

8 UserId Số nguyên Mã người dùng, cho biết banner này thuộc về hệ thống của người dùng nào

Khóa ngoại tham chiếu đến trường Id trong bảng User

9 Published Chuỗi Cho biết banner này

được hiển thị bên ngoài giao diện hay không

10 Order Số nguyên Thứ tự hiển thị của

banner

Tên bảng: Content

Ý nghĩa: Lưu tin tức của từng hệ thống con

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id Số nguyên >0 Mã tin tức ( khóa chính)

2 ThumbImage Chuỗi(50) Lưu đường dẫn đến file hình nhỏ của banner

3 LargeImage Chuỗi(50) Lưu đường dẫn đến file hình lớn của banner

4 Title Chuỗi(100) Tiêu đề

5 Body Chuỗi Nội dung tin tức

6 UserId Số nguyên Mã người dùng, cho biết tin này thuộc về hệ thống của người dùng nào.

Khóa ngoại tham chiếu đến trường Id trong bảng User

7 CreatedDate Ngày giờ >=Ngày hiện tại Ngày tạo

8 Published Chuỗi(1) Cho biết tin này có được hiển thị hay không

Tên bảng: Menu

STT Tên trường Kiểu Điều kiện Diễn giải

1 Id Số nguyên >0 Mã menu ( khóa chính)

2 Name Chuỗi(100) Tên menu

3 ContentId Số nguyên Khóa ngoại tham chiếu đến trường Id trong bảng Content, cho biết menu này sẽ link tới tin nào.

4 UserId Số nguyên Mã người dùng, cho biết tin này thuộc về hệ thống của người dùng nào. Khóa ngoại tham chiếu đến trường Id trong bảng User

5 Type Chuỗi Vị trí hiển thị của menu.

Có 4 vị trí: left, right, bottom, top

6 Url Chuỗi(255) Đường link đến trang bất (adsbygoogle = window.adsbygoogle || []).push({});

kì( nếu ContentID là null)

7 Order Số nguyên Thứ tự hiển thị của menu

8 Published Chuỗi(1) Cho biết menu này có được hiển thị hay không

Tên bảng: Config

Ý nghĩa: Lưu thông tin cấu hình của từng hệ thống con

STT Tên trường Kiểu Điều kiện Diễn giải

1 UserId Số nguyên Mã người dùng, cho

biết thông tin cấu hình này là của hệ thống nào.

2 CompanyName Chuỗi Tên công ty

3 Banner Chuỗi(100) Banner sẽ được hiển thị trên website

4 Logo Chuỗi(100) Logo sẽ được hiển thị trên website

5 Email Chuỗi(50) Email liên hệ của hệ

thống

6 SiteName Chuỗi(255) Tên website

7 Footer Chuỗi(500) Thông tin được hiển thị trên footer của website

Một phần của tài liệu Xây dựng hệ thống thương mại hướng dịch vụ (Trang 72 - 83)