Trường Đại học Sài Gòn
Khoa Công nghệ thông tin
Đề tài
Xây dựng website và ứng dụng quản lý cho
Hệ thống bán sách
GVHD: Th.s Cao Thái Phương Thanh
Nhóm sinh viên thực hiện:
1. Phạm Ngọc Phi 3108410148
2. Hồ Văn Thơm 3108410210
3. Huỳnh Thị Như Hảo 3108410049
Tp Hồ Chí Minh, tháng 10 - 2011
Mục lục
Phần I: Mô tả hệ thống
1. Mô tả ứng dụng:
Nhà sách XX thành lập được một thời gian với đa dạng mọi thể loại sách dành cho mọi lứa tuổi. Do
nhu cầu quản lý ngày càng cao và cần mở rộng thị trường kinh doanh, tìm kiếm khách hàng, nhà
sách cần phát triển ứng dụng quản lý và 1 trang web để quảng bá sản phẩm đồng thời bán hàng trực
tuyến.
o Đối với trang web:
Khách hàng có thể tìm kiếm sách và thông tin về quyển sách họ cần bằng cách nhập
tên sách hoặc tên tác giả(tùy theo khách hàng nhớ).
Sau khi tìm và chọn được sách cần mua, khách hàng thêm sách vào giỏ hàng. Họ có
thể thêm hoặc xóa sách có trong giỏ hàng.
Để hoàn thành việc đặt hàng, khách hàng cần đăng nhập vào trang web. Nếu là khách
hàng cũ thì chỉ cần đăng nhập với tài khoản đã tạo. Ngược lại nếu là khách hàng mới
thì phải tạo tài khoản mới để đăng nhập. Việc này giúp quản lý được thông tin khách
hàng.
o Đối với ứng dụng quản lý:
Quy trình nhập hàng: khi có nhu cầu cung cấp sách thì nhà sách sẽ liên hệ với nhà
cung cấp. Khi nhận hàng, nhân viên sẽ kiểm tra hàng và cập nhật danh mục sách. Mỗi
quyển sách xác định được các thông tin: mã sách, mã thể loại, tác giả và giá sách có
lượng(trên hoặc dưới số lượng tùy chọn).
Phần II: Phân tích – Thiết kế mô hình
1. Concept class diagram
Xây dựng phần mềm theo mô hình phân lớp 3
Xây dựng phần mềm theo mô hình phân lớp 4
2. Physical data model
2.1 Mô hình:
Xây dựng phần mềm theo mô hình phân lớp 5
2.2 Mô tả dữ liệu:
Bảng 1: Sach - Sách
STT Tên dữ liệu Kiểu dữ liệu Ý nghĩa Khóa
1 id int Hệ thống tự động phát sinh
cho mỗi quyển sách 1 id khác
nhau để phân biệt.
Khóa chính.
2 Ms nvarchar(5) Mỗi quyển sách được đặt 1
mã số khác nhau để phân biệt
với các quyển sách khác.
3 Ten_sach nvarchar(50) Mỗi quyển sách đều có 1 tên
sách.
4 Don_vi_tinh nvarchar(10) Đơn vị dùng để tính sách.
5 Mo_ta nvarchar(256) Nội dung tóm tắt của mỗi
quyển sách.
6 Hinh_minh_hoa nvarchar(256) Hình minh họa cho mỗi
quyển sách.
7 Ngay_nhap datetime Ngày quyển sách được nhập
về.
8 idChuDe int id chủ đề của mỗi quyển sách. Khóa ngoại.
9 idTacGia int id tác giả viết quyển sách đó. Khóa ngoại.
Bảng 2: GiaSach – Giá sách
Khóa chính.
2 Mcd nvarchar(5) Mỗi chủ đề được đặt 1 mã số
khác nhau.
3 Ten_chu_de nvarchar(50) Tên của mỗi chủ đề.
Bảng 5: TonKho – Tồn kho
STT Tên dữ liệu Kiểu dữ liệu Ý nghĩa Khóa
1 id int Hệ thống tự động phát sinh
cho mỗi bảng tồn kho 1 id
khác nhau để phân biệt.
Khóa chính.
2 idSach int id của sách có trong bảng tồn
kho.
Khóa ngoại.
3 Tg_CapNhat datetime Ngày cập nhật tồn kho.
4 So_luong_ton int Số lượng tồn kho của mỗi
sách.
Xây dựng phần mềm theo mô hình phân lớp 7
Bảng 6: DonDatHang – Đơn đặt hàng
STT Tên dữ liệu Kiểu dữ liệu Ý nghĩa Khóa
1 id int Hệ thống tự động phát sinh
cho mỗi đơn đặt hàng 1 id
khác nhau để phân biệt.
Khóa chính.
2 Ngay_dat_hang datetime Ngày khách hàng đặt hàng
trực tuyến.
3 Ngay_giao_hang datetime Ngày giao hàng cho khách.
4 Tong_tien float Số tiền khách hàng cần thanh
toán.
5 Da_giao_hang bit Phần kiểm tra hàng đã được
giao chưa.
cho mỗi khách hàng 1 id khác
nhau để phân biệt.
Khóa chính.
2 tenDangNhap nvarchar(50) Tên khách hàng dùng đăng
nhập vào hệ thống web.
3 matKhau nvarchar(128) Mật khẩu khi khách hàng
đăng nhập ứng với mỗi tên
đăng nhập.
4 Ngay_sinh datetime Ngày sinh của khách hàng.
5 Gioi_tinh nvarchar(3) Giới tính khách hàng.
6 Email nvarchar(50) Địa chỉ mail của khách hàng.
7 Dia_chiKh nvarchar(50) Địa chỉ của khách hàng – nơi
giao hàng.
8 Dien_thoaiKh nvarchar(11) Điện thoại của khách hàng.
Bảng 10: PhieuNhapHang – Phiếu nhập hàng
STT Tên dữ liệu Kiểu dữ liệu Ý nghĩa Khóa
1 id int Hệ thống tự động phát sinh
cho mỗi phiếu nhập 1 id khác
nhau để phân biệt.
Khóa chính.
2 Ngay_nhap datetime Ngày nhập hàng.
3 Tong_tien float Tổng tiền của mỗi phiếu nhập
hàng.
Xây dựng phần mềm theo mô hình phân lớp 9
Bảng 11: CT_PhieuNhapHang – Chi tiết phiếu nhập hàng
STT Tên dữ liệu Kiểu dữ liệu Ý nghĩa Khóa
1 id int Hệ thống tự động phát sinh
cho mỗi chi tiết phiếu nhập 1
id khác nhau để phân biệt.
Khóa chính.
: KhachHang : KhachHang
: wfrmDs_SachTheoPLoai : wfrmDs_SachTheoPLoai : wfrmChiTietGioHang : wfrmChiTietGioHang
: XuLyDonDatHang : XuLyDonDatHang : XuLyCT_DonDatHang : XuLyCT_DonDatHang
: DonDatHang : DonDatHang : CT_DonDatHang : CT_DonDatHang
GioHang ~
session["GioHang']
1: click nut ChonMua
3: click Xem gio hang
2: GioHang.Add()
4: Redirect("ChiTietGioHang.aspx")
5: Load_DsGioHang()
6: Click nut DatHang
8: InsertDdh( )
11: return Id_ddh
16: ShowMessage()
12: InsertCtDdh( )
15: return
9: Insert()
10: return Id_ddh
13: Insert()
14: return
7: KiemTraDangNhap()
Xây dựng phần mềm theo mô hình phân lớp 13
3.4 Quản lý sách:
a. Thêm sách:
: ADmin : ADmin
: frmDanhMucSach : frmDanhMucSach
: frmSach : frmSach
: XuLyTheLoai : XuLyTheLoai : XuLyTacGia : XuLyTacGia : XuLyGiaSach : XuLyGiaSach : XuLySach : XuLySach : XuLyTonKho : XuLyTonKho
: TheLoai : TheLoai : GiaSach : GiaSach : TacGia : TacGia : Sach : Sach : TonKho : TonKho
31: CapNhatTonKho( )
32:
33:
set slTon = 0
Xây dựng phần mềm theo mô hình phân lớp 14
b. Sửa sách:
18: bt_LuuSach_Click( )
19: Update( )
20: Update( )
21:
22: UpdateGiaBySach( )
23: UpdateGiaBySach( )
24:
: ADmin : ADmin
: frmDanhMucSach : frmDanhMucSach
: frmSach : frmSach
: XuLySach : XuLySach : XuLyTacGia : XuLyTacGia : XuLyTheLoai : XuLyTheLoai : XuLyGiaSach : XuLyGiaSach
: Sach : Sach : TheLoai : TheLoai : GiaSach : GiaSach : TacGia : TacGia
12: Chon sach
13: bt_SuaSach_Click( )
1: KhoiTao( )
2: frmDanhMucSach_Load( )
6: GetALL( )
7: GetALL()
8:
3: GetAll( )
4: GetAll( )
9: GetAllTacGia( )
10: GetAllTacGia( )
11:
: ADmin : ADmin
: frmQuanLyPhieuNhap : frmQuanLyPhieuNhap
: frmPhieuNhap : frmPhieuNhap
: XuLySach : XuLySach : XuLyPhieuNhap : XuLyPhieuNhap : XuLyCT_PhieuNhap : XuLyCT_PhieuNhap : XuLyTonKho : XuLyTonKho
: Sach : Sach : PhieuNhap : PhieuNhap : TonKho : TonKho : CT_PhieuNhap : CT_PhieuNhap
1: KhoiTao( )
2: frmQuanLyPhieuNhap_Load( )
13: Tao phieu nhap
14: Chon san pham
16: bt_LuuPhieu_Click( )
17: InsertPhieuNhap( )
18: InsertPhieuNhap( )
21: InsertCT_PhieuNhap( )
22: InsertCT_PhieuNhap( )
6: bt_ThemPhieu_Click( )
3: GetDanhMucPhieu( )
4: GetDanhMucPhieu( )
5:
7: KhoiTao( )
8: frmPhieuNhap_Load( )
9: GetAll( )
10: GetAll( )
11:
12:
19:
20:
23:
24:
25: CapNhatTonKho( )
26: CapNhatTonKho( )
3: GetDanhMucPhieu( )
4: GetDanhMucPhieu( )
8: KhoiTao( )
9: frmPhieuNhap_Load( )
5:
23:
24:
27:
28:
29: CapNhatTonKho( )
30: CapNhatTonKho( )
31:
32:
33: ShowMessage()
c. Xóa phiếu nhập:
Xây dựng phần mềm theo mô hình phân lớp 18