CHƯƠNG I PHÂN TÍCH HỆ THỐNG 4
1. Đặc tả hệ thống 4
1.1. Quản trị viên (Admin): Là người điều hành, có quyền quản trị cao nhất trên Website 4
1.2. Người sử dụng 4
1.3. Khách hàng 4
1.4. Người chụp (Photographer) 4
2. Sơ đồ Usecase 4
3. Đặc tả usecase 5
3.1. Usecase quản lí đăng nhập 5
3.2. Usecase Đặt lịch 5
3.3. Usecase kiểm tra tình trạng ngày trống 6
3.4. Usecase tìm thông tin đặt lịch. 6
4. Phác thảo giao diện 7
4.1. Đăng nhập khách hàng và của nhà cung cấp 7
4.2. Đăng kí tài khoản thành viên 7
4.3. Đăng kí tài khoản Người chụp 8
4.4. Đặt lịch chụp 9
4.5. Thanh toán 10
CHƯƠNG II THIẾT KẾ CSDL 12
1. Sơ đồ ERD 12
2. Thiết kế bảng 12
2.1. Bảng Quyền 12
2.2. Bảng Sản phẩm 13
2.3. Bảng Ảnh 13
2.4. Bảng Chủ Đề 14
2.5. Bảng Admin 14
2.6. Bảng Khách Hàng 15
2.7. Bảng Người Chụp( Photographer) 16
2.8. Bảng Đặt Lịch 17
2.9. Bảng Chi Tiết Đặt Lịch 17
2.10. Bảng Hóa Đơn 18
3. Xây dựng Store procedure 19
3.1. Hàm tính tổng tiền 19
3.2. Cập nhật chủ đề khi thêm mới sản phẩm 19
24 trang |
Chia sẻ: honganh20 | Ngày: 12/02/2022 | Lượt xem: 519 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Đề tài Thiết kế CSDL xây dựng website studio, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT
KHOA ĐIỆN- ĐIỆN TỬ
BÁO CÁO
TTCM Thiết kế Cơ sở dữ liệu
Tên đề tài: XÂY DỰNG WEBSITE STUDIO
GVHD : Lê Thị Bích Tra
SVTH : Nguyễn Thị Hồng Ngọc
MSV : 161250533129
Đà Nẵng tháng 6/2019
MỤC LỤC
CHƯƠNG I PHÂN TÍCH HỆ THỐNG
Đặc tả hệ thống
Website này hoạt động chủ yếu phục vụ cho ba đối tượng chính : Admin (Quản trị viên), Photographer (Người chụp), Khách hàng (Người sử dụng khi chưa đăng kí thành viên)
Quản trị viên (Admin): Là người điều hành, có quyền quản trị cao nhất trên Website
Quản lí thông tin lịch chụp, quản lí khách hàng.
Quản lí Photographer (lịch chụp khi khách đặt)
Quản lí các phản hồi của khách hàng.
Quản lí danh mục (cập nhật album, giá, )
Người sử dụng
Xem thông tin Album – giá cả và các thông tin khác về Studio.
Tìm kiếm, xem các chủ đề, ưu đãi, ....
Đăng kí thành viên trong web.
Khách hàng
Xem và tìm kiếm chủ đề album, các bài viết về album, giá cả, không gian chụp ảnh.
Bình luận ảnh.
Đặt lịch chụp.
Thông tin sản phẩm (photographer, gói chụp, combo chụp, chi phí gói chụp,..)
Có thể đăng, chỉnh sửa, xóa thông tin của mình trên web.
Đóng góp ý kiến bằng cách bình luận trực tiếp vào trang web, được hỗ trợ tư vấn trực tiếp trên trang web.
Thanh toán(trực tiếp, chuyển khoản)
Người chụp (Photographer)
Đăng kí thành viên.
Quản lí các sản phẩm của mình ( Liệt kê sản phẩm, cập nhật sản phẩm).
Duyệt phản hồi từ khách.
Quản lí thông tin riêng của nhà cung cấp.
Xử lý lịch chụp riêng của mỗi nhà cung cấp.
Hỗ trợ
Xem lịch chụp
Sơ đồ Usecase
Hình 1.1 Sơ đồ Use-case
Đặc tả usecase
Usecase quản lí đăng nhập
Đối tượng sử dụng: Admin, Người chụp, Khách hàng.
Usecase này mô tả các bước đăng nhập của actor vào hệ thống
Các bước thực hiện:
Hệ thống yêu cầu actor cung cấp thông tin đăng nhập gồm tên đăng nhập và mật khẩu.
Hệ thống hiển thị yêu cầu xác nhận từ actor.
Actor dùng xác nhận đăng xuất.
Hệ thống đăng xuất tài khoản actor khỏi hệ thống. Nếu actor không xác nhận đăng xuất thì hệ thống giữ nguyên hiện trạng.
Usecase Đặt lịch
Đối tượng sử dụng: Admin, Người chụp, Khách hàng.
Usecase này cho phép admin và Người chụp tiếp nhận việc đặt lịch của khách hàng. Khách hàng cũng có thể đặt lịch chụp trực tiếp trên web thông qua tài khoản thành viên.
Các bước thực hiện:
Các actor (truy cập quyền của mình) đăng nhập vào hệ thống.
Chọn chức năng đặt lịch.
Hệ thống hiển thị form yêu cầu thông tin khách hàng và ngày chụp. Bao gồm Tên, email, sdt, địa chỉ, ngày chụp, chủ đề-combo chụp, giá cả, photographer tùy theo khách hàng lựa chọn.
Admin và Người chụp nhập thông tin và ngày chụp của khách nếu khách đặt trực tiếp tại studio. Khách hàng tự điền form theo yêu cầu của hệ thống nếu đặt lịch trực tiếp trên web.
Hệ thống tự động kiểm tra thông tin lịch chụp mà khách đã đặt, đồng thời lọc danh sách photographer và ngày chụp mà khách hàng đặt vào ngày đó.
TH1: Ngày chụp trống và photographer không bận mà khách yêu cầu:
Admin chọn ngày chụp trống theo yêu cầu khách đặt.
Nhấn nút”Đăng kí” để hoàn tất việc đặt lịch của khách.
Hệ thống kiểm tra dữ liệu vừa đặt và lưu lại thông tin đặt lịch. Nếu thông tin khách đã tồn tại trong hệ thống thì sẽ báo lỗi lịch trùng.
TH2: Ngày chụp và photographer đã bận:
Hệ thống sẽ báo ngày đặt đã kín lịch và yêu cầu khách đặt vào ngày khác.
Admin và Người chụp sẽ báo trực tiếp và tìm lịch trống phù hợp với yêu cầu khác của khách. Nếu khách không còn nhu cầu chụp và thực hiện hủy lịch đăng kí.
Hệ thống thông báo và yêu cầu thực hiện lại.
Usecase kiểm tra tình trạng ngày trống
Đối tượng sử dụng: Admin và Người chụp.
Usecase này cung cấp thông tin về tình trạng ngày chụp còn trống và lịch chụp của photographer cho actor.
Các bước thực hiện:
Actor đăng nhập vào hệ thống.
Chọn chức năng “Đặt lịch”.
Hệ thống sẽ tìm kiếm thông tin lịch chụp dựa vào mã đặt lịch và phản hồi lại tình trạng hiện tại của ngày trống và photographer có lịch trống.
Kết thúc usecase.
Usecase tìm thông tin đặt lịch.
Đối tượng sử dụng: Admin và Người chụp.
Usecase này cho phép lấy thông tin đặt lịch của 1 khách hàng nào đó đến chụp tại studio mà khách đã đặt trước đó.
Các bước thực hiện:
Actor thực hiện chức năng đăng kí đặt lịch trước, chọn chức năng “Tìm thông tin đặt lịch”.
Actor nhập id của khách hoặc thông tin liên quan của khách để tiến hành tìm thông tin đặt lịch.
Hệ thống tìm kiếm thông tin đặt lịch của khách trả về kết quả.
Phác thảo giao diện
Đăng nhập khách hàng và của nhà cung cấp
Tác nhân: Photographer (Người chụp), Khách hàng, Admin.
Input: Người dùng điền thông tin đăng nhập vào form đăng nhập.
Xử lý:
Hệ thống yêu cầu nhập thông tin đăng nhập gồm: Email và mật khẩu của mỗi tài khoản.
Nhập xong thông tin nhấn nút đăng nhập.
Hệ thống kiểm tra thông tin đăng nhập và thông báo đăng nhập thành công hay thất bại.
Output: Hệ thống trả về kết quả đăng nhập cho người dùng:
Nếu thành công: Thông báo thành công và đưa người dùng vào cửa sổ làm việc khác nhau tùy theo từng tác nhân.
Nếu thất bại: Thông báo thất bại và yêu cầu kiểm tra lại tên đăng nhập và mật khẩu.
Phát thảo giao diện:
Hình 1.2 Giao diện đăng nhập
Đăng kí tài khoản thành viên
Tác nhân: Người sử dụng (Khách vãng lai)
Input: Người dùng điền thông tin chi tiết vào form đăng kí.
Xử lý:
Hệ thống yêu cầu nhập thông tin đăng ký gồm: Họ và tên, email, mật khẩu.
Nhập xong thông tin nhấn nút tạo tài khoản hoặc đăng nhập bằng facebook.
Hệ thống kiểm tra thông tin đăng kí và thông báo đăng kí thành công hay thất bại.
Output: Hệ thống trả về kết quả đăng kí cho người dung: thông báo đăng kí thành công hay yêu cầu nhập lại nếu thông tin không hợp lệ.
Giao diện đăng kí tài khoản thành viên.
Hình 1.4 Giao diện đăng kí tài khoản thành viên
Đăng kí tài khoản Người chụp
Tác nhân: Người chụp (Photographer and Admin)
Input: Người dung điền thông tin chi tiết vào form đăng kí.
Xử lý:
Hệ thống yêu cầu nhập thông tin đăng ký gồm: Họ và tên, email, mật khẩu, lĩnh vực hợp tác, điểm mạnh/ điểm yếu, .
Nhập xong thông tin nhấn nút tạo tài khoản.
Hệ thống kiểm tra thông tin đăng kí và thông báo đăng kí thành công hay thất bại.
Output: Hệ thống trả về kết quả đăng kí cho người dung: thông báo đăng kí thành công hay yêu cầu nhập lại nếu thông tin không hợp lệ.
Giao diện đăng kí tài khoản thành viên của người chụp
Hình 1.5 Giao diện đăng kí tài khoản thành viên của người chụp
Đặt lịch chụp
Tác nhân: Thành viên (Đã đăng kí tài khoản).
Input: Thành viên sẽ được đặt Photographer mà mình muốn hợp tác, chọn gói chụp, chi phí gói chụp, không gian chụp, giờ hẹn ..
Xử lý:
Nhấn vào biểu tượng đặt lịch bên cạnh những sản phẩm của Photographer hoặc bên cạnh những album mà admin đăng.
Chỉnh sửa thông tin xong nhấn nút tiếp theo.
Hệ thống hiển thị lại thông tin mà thành viên đã đặt.
Output: Thông tin đặt lịch bao gồm gói chụp, chi phí gói chụp, photographer mà thành viên đã chọn,..
Giao diện đặt lịch chụp:
Hình 1.6 Giao diện đặt lịch
Hình 1.7 Sơ đồ use case đặt lịch
Thanh toán
Tác nhân: Thành viên.
Input: Thông tin thanh toán sẽ hiển thị sau khi thành viên đặt lịch chụp.
Khách hàng sẽ chọn hình thức thanh toán như thanh toán trực tiếp hoặc chuyển khoản.
Xử lý:
Sau khi khách hàng đặt lịch chụp, hệ thống sẽ hiển thị thông tin thanh toán bao gồm số tiền tương ứng với chi phí gói chụp mà thành viên đã chọn.
Khách hàng sẽ chọn phương thức thanh toán như thanh toán đặt cọc hoặc thanh toán toàn bộ và nhấn nút tiếp theo.
Khách hàng sẽ chọn hình thức thanh toán như thanh toán trực tiếp tại Studio hoặc hình thức chuyển khoản và khách hàng sẽ ghi những ghi chú mà khách hàng cần bổ sung và nhấn nút tiếp theo.
Hệ thống sẽ hiển thị lại toàn bộ thông tin mà khách hàng đã đặt và hình thức thanh toán.
Output: Hệ thống sẽ thông báo đặt lịch thành công.
Giao diện thanh toán:
Hình 1.8 Giao diện thanh toán
Hình 1.9 Giao diện thanh toán
CHƯƠNG II THIẾT KẾ CSDL
Sơ đồ ERD
Hình 2 Sơ đồ ERD
Thiết kế bảng
Bảng Quyền
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_Quyen
Mã quyền
Char(5)
Khóa chính
2
Tenquyen
Tên quyền
nvarchar(255)
Bảng Sản phẩm
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_sp
Mã album
Char(5)
Khóa chính
2
Ma_chude
Mã chủ đề
Char(5)
Khóa ngoại
3
Ma_NC
Mã người chụp
Char(5)
Khóa ngoại
4
Soluong
Số lượng
Int
5
Tensp
Tên sản phẩm
nvarchar(255)
6
Ma_anh
Mã ảnh
Char(5)
Khóa ngoại
Bảng Ảnh
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_anh
Mã ảnh
Char(5)
Khóa chính
2
Ma_chude
Mã chủ đề
Char(5)
Khóa ngoại
Bảng Chủ Đề
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_chude
Mã chủ đề
Char(5)
Khóa chính
2
Tenchude
Tên loại
Varchar(255)
3
Dongia
Dongia
decimal
Bảng Admin
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_admin
Mã admin
Char(5)
Khóa chính
2
Hoten_admin
Họ tên admin
nvarchar(255)
3
Tendangnhap_admin
Tên đăng nhập admin
nvarchar(255)
4
Matkhau_admin
Mật khẩu admin
Char(255)
5
Ma_Quyen
Quyền truy cập
Char(5)
Khóa Ngoại
6
Sdt
Số điện thoại
int
7
Email
Email
nvarchar(255)
Bảng Khách Hàng
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_KH
Tên tài khoản kh
Char(5)
Khóa chính
2
Hoten_kh
Họ tên khách hàng
nvarchar(255)
3
Ma_Quyen
Quyền truy cập
Char(5)
Khóa ngoại
4
Tentaikhoan
Tên tài khoản
Nvarchar(50)
5
Matkhau_kh
Mật khẩu khách hàng
Varchar(255)
6
Email
Email
Varchar(255)
7
Sdt
Số điện thoại
int
8
Diachi
Địa chỉ
nvarchar(255)
Bảng Người Chụp( Photographer)
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_NC
Mã người chụp
Char(5)
Khóa chính
2
Ten_nc
Tên nhà người chụp
nvarchar(255)
3
Ma_Quyen
Mã quyền truy cập
Char(5)
Khóa ngoại
4
Matkhau_nc
Mật khẩu nc
Char(255)
5
Email
Email
nvarchar(255)
6
Diachi
Địa chỉ
nvarchar(255)
Bảng Đặt Lịch
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_dl
Mã đặt lịch
Char(5)
Khóa chính
2
Ma_kh
Mã khách hàng
Char(5)
Khóa ngoại
3
Ma_NC
Mã người chụp
Char(5)
Khóa ngoại
4
Ngaydat
Ngày đặt lịch
Date
5
Giohen
Giờ hẹn chụp
Time
6
Sdt
Số điện thoại
int
7
Email
Email
nvarchar(255)
8
Trangthai
Trạng thái lịch chụp
Nvarchar(255)
Bảng Chi Tiết Đặt Lịch
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_chude
Mã chủ đề
Char(5)
Khóa chính
2
Ma_hd
Mã hóa đơn
Char(5)
Khóa chính
3
Ma_NC
Mã NC
Char(5)
Khóa ngoại
4
Ma_dl
Mã đặt lịch
Char(5)
Khóa ngoại
5
Ma_KH
Mã khách hàng
Char(5)
Khóa ngoại
6
Khuyenmai
Khuyến mãi
Varchar(255)
7
Dongia
Đơn giá
decimal
8
Thanhtien
Thành tiền
decimal
Bảng Hóa Đơn
STT
Thuộc tính
Mô tả
Kiểu dữ liệu
Ghi chú
1
Ma_hd
Mã hóa đơn
Char(5)
Khóa chính
2
Ma_NC
Mã nc
Char(5)
Khóa ngoại
3
Ma_Admin
Mã admin
Char(5)
Khóa ngoại
4
Ma_KH
Mã khách hàng
Char(5)
Khóa ngoại
5
Dongia
Đơn giá
Decimal(18,2)
6
Ngaynhap
Ngày nhập hóa đơn
Date
7
Tongtien
Gói combo chụp
decimal
Xây dựng Store procedure
Hàm tính tổng tiền
Cập nhật chủ đề khi thêm mới sản phẩm
Thống kê doanh thu theo ngày
Thống kê doanh thu theo tháng
Thống kê doanh thu theo năm
Cập nhật số lượng ảnh trong chủ đề
Tính tiền mỗi hóa đơn – Hiển thị tiền chụp
Procedure hiển thị danh sách số lượng ảnh mỗi chủ đề
Hiện danh sách sản phẩm của 1 người chụp bất kì
Xem đơn đặt lịch của 1 khách hàng bất kì
Xem đơn đặt lịch của khách hàng với 1 người chụp bất kì
Hiện danh sách sản phẩm với 1 người chụp bất kì
Các file đính kèm theo tài liệu này:
- de_tai_thiet_ke_csdl_xay_dung_website_studio.docx