Đây là báo cáo đồ án tốt nghiệp đã hoàn chỉnh môn lập trình web , it35 Xây dựng website bán hàng trực tuyến tại công ty trách nhiệm hữu hạn cơ khí xây dựng Hoàng Hải . Đại học mở hà nội hệ từ xa , Ehou công nghệ thông tin
Trang 1TRƯỜNG ĐẠI HỌC MỞ HÀ NỘI
TRUNG TÂM ĐÀO TẠO E-LEARNING
Ngành đào tạo: Công nghệ thông tinThời gian thực tập: 02/11 – 22/12/2022
Mã course học: IT35
Trang 2Năm 2022
MỤC LỤC
MỤC LỤC 2
DANH MỤC HÌNH ẢNH 5
DANH MỤC BẢNG BIỂU 7
CHƯƠNG 1: PHÁT BIỂU BÀI TOÁN 8
1.1 Khảo sát hiện trạng 8
1.2 Hạn chế của hệ thống hiện tại 8
1.3 Mục tiêu xây dựng hệ thống 8
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 10
2.1 Tác nhân tác động vào phần mềm 10
2.2 Sơ đồ phân cấp chức năng 10
2.3 Biểu đồ usecase tổng quát 11
2.3.1. Biểu đồ usecase chi tiết chức năng quản lý sản phẩm 12
2.3.2. Biểu đồ usecase chi tiết chức năng quản lý khách hàng 12
2.3.3. Biểu đồ usecase chi tiết chức năng quản lý danh mục 13
2.3.4. Biểu đồ usecase chi tiết chức năng quản lý đơn vị tính 13
2.3.5. Biểu đồ usecase chi tiết chức năng quản lý đơn hàng 14
2.3.6. Biểu đồ usecase chi tiết chức năng QL đơn hàng tác nhân khách hàng 14
2.3.7. Biểu đồ usecase chi tiết chức năng QL sản phẩm tác nhân khách hàng 14
2.3.8. Biểu đồ usecase chi tiết chức năng QL tài khoản tác nhân khách hàng 14
Trang 32.4 Đặc tả usecase 14
2.4.1 Đặc tả usecase chức năng đăng nhập 14
2.4.2 Đặc tả usecase chức năng quản lý khách hàng 15
2.4.3 Đặc tả usecase chức năng quản lý thông tin sản phẩm 19
2.4.4 Đặc tả usecase chức năng quản lý đơn vị tính 22
2.4.5 Đặc tả usecase chức năng quản lý danh mục 24
2.4 Biểu đồ hoạt động 28
2.4.1 Biểu đồ hoạt động chức năng thêm thông tin sản phẩm 28
2.4.2 Biểu đồ hoạt động chức năng sửa thông tin sản phẩm 29
2.4.3 Biểu đồ hoạt động chức năng xóa thông tin sản phẩm 30
2.4.4 Biểu đồ hoạt động chức năng thêm thông tin đơn vị tính 31
2.4.5 Biểu đồ hoạt động chức năng sửa thông tin đơn vị tính 32
2.4.6 Biều đồ hoạt động chức năng xoá thông tin đơn vị tính 33
2.4.7 Biểu đồ hoạt động chức năng thêm thông tin khách hàng 34
2.4.8 Biểu đồ hoạt động chức năng sửa thông tin khách hàng 35
2.4.9 Biểu đồ hoạt động chức năng xóa thông tin khách hàng 36
2.5 Biểu đồ tuần tự 37
2.5.1 Biểu đồ tuần tự chức năng thêm thông tin khách hàng 37
2.5.2 Biểu đồ tuần tự chức năng sửa thông tin khách hàng 37
2.5.3 Biểu đồ tuần tự chức năng xóa thông tin khách hàng 38
2.5.4 Biểu đồ tuần tự chức năng thêm thông tin sản phẩm 38
2.5.5 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm 39
2.5.6 Biểu đồ tuần tự chức năng xoá thông tin sản phẩm 39
2.5.7 Biểu đồ tuần tự chức năng thêm đơn vị tính 40
2.5.8 Biểu đồ tuần tự chức năng sửa đơn vị tính 40
2.5.9 Biểu đồ tuần tự chức năng xoá đơn vị tính 41
CHƯƠNG 3: CÀI ĐẶT HỆ THỐNG 42
Trang 43.1 Công nghệ sử dụng 42
3.1.1 Tổng quan về cơ sở dữ liệu quan hệ 42
3.1.2 Cài đặt SQL và Visual Studio 43
3.2 Giao diện chương trình 44
3.2.1 Giao diện màn hình đăng nhập 44
3.2.2 Giao diện màn hình trang chủ 45
3.2.3 Giao diện màn hình chi tiết sản phẩm 46
3.2.4 Giao diện màn hình giỏ hàng 47
3.2.5 Giao diện màn hình trang chủ admin 48
3.2.6 Giao diện màn hình quản lý đơn hàng 49
3.2.7 Giao diện màn hình quản lý sản phẩm 50
KẾT LUẬN 51
1 Kết quả đạt được 51
2 Hướng phát triển 51
TÀI LIỆU THAM KHẢO 52
Trang 5DANH MỤC HÌNH ẢNH
Hình 2.1: Sơ đồ phân cấp chức năng 10
Hình 2.2: Sơ đồ usecase tổng quát 11
Hình 2.3: Biểu đồ usecase chi tiết chức năng quản lý sản phẩm 12
Hình 2.4: Biểu đồ usecase chi tiết chức năng quản lý khách hàng 12
Hình 2.5: Biểu đồ usecase chi tiết chức năng quản lý danh mục 13
Hình 2.6: Biểu đồ usecase chi tiết chức năng quản lý quản lý đươn vị tính 13
Hình 2.7: Biểu đồ usecase chi tiết chức năng quản lý đơn hàng 14
Hình 2.8: Biểu đồ usecase chi tiết chức năng QL đơn hàng tác nhân khách hàng 14
Hình 2.9: Biểu đồ usecase chi tiết chức năng QL sản phẩm tác nhân khách hàng 14
Hình 2.10: Biểu đồ usecase chi tiết chức năng QL tài khoản tác nhân khách hàng 14 Hình 2.11: Biểu đồ hoạt động chức năng thêm thông tin sản phẩm 28
Hình 2.12: Biểu đồ hoạt động chức năng sửa thông tin sản phẩm 29
Hình 2.13: Biểu đồ hoạt động chức năng xóa thông tin sản phẩm 30
Hình 2.14: Biểu đồ hoạt động chức năng thêm thông tin đơn vị tính 31
Hình 2.15: Biểu đồ hoạt động chức năng sửa thông tin đơn vị tính 32
Hình 2.16: Biểu đồ hoạt động chức năng xoá thông tin đơn vị tính 33
Hình 2.17: Biểu đồ hoạt động chức năng thêm thông tin khách hàng 34
Hình 2.18: Biểu đồ hoạt động chức năng sửa thông tin khách hàng 35
Hình 2.19: Biểu đồ hoạt động chức năng xóa thông tin khách hàng 36
Hình 2.20: Biểu đồ tuần tự chức năng thêm thông tin khách hàng 37
Hình 2.21: Biểu đồ tuần tự chức năng sửa thông tin khách hàng 37
Hình 2.22: Biểu đồ tuần tự chức năng xóa thông tin khách hàng 38
Hình 2.23: Biểu đồ tuần tự chức năng thêm thông tin sản phẩm 38
Hình 2.24: Biểu đồ tuần tự chức năng sửa thông tin sản phẩm 39
Hình 2.25:Biểu đồ tuần tự chức năng xoá thông tin sản phẩm 39
Hình 2.26: Biểu đồ tuần tự chức năng thêm đơn vị tính 40
Hình 2.27: Biểu đồ tuần tự chức năng sửa đơn vị tính 40
Hình 2.28: Biểu đồ tuần tự chức năng xoá đơn vị tính 41
Hình 3.1: Giao diện tải SQL 43
Hình 3.2: Giao diện màn hình đăng nhập 44
Hình 3.3: Giao diện màn hình trang chủ 45
Trang 6Hình 3.4: Giao diện màn hình chi tiết sản phẩm 46
Hình 3.5: Giao diện màn hình giỏ hàng 47
Hình 3.6: Giao diện màn hình trang chủ admin 48
Hình 3.7: Giao diện màn hình quản lý đơn hàng 49
Hình 3.8: Giao diện màn hình quản lý sản phẩm 50
Trang 7DANH MỤC BẢNG BIỂU
Bảng 2.1:Đặc tả usecse chức năng đăng nhập/ đăng xuất 15
Bảng 2.2: Đặc tả usecase chức năng thêm thông tin khách hàng 16
Bảng 2.3: Đặc tả usecase chức năng sửa thông tin khách hàng 17
Bảng 2.4: Đặc tả usecase chức năng xóa thông tin khách hàng 18
Bảng 2.5: Đặc tả usecase chức năng thêm thông tin sản phẩm 19
Bảng 2.6: Đặc tả usecase chức năng sửa thông tin sản phẩm 20
Bảng 2.7: Đặc tả usecase chức năng xóa thông tin sản phẩm 21
Bảng 2.8: Đặc tả usecase chức năng them thông tin đơn vị tính 22
Bảng 2.9: Đặc tả usecase chức năng sửa thông tin đơn vị tính 23
Bảng 2.10: Đặc tả usecase chức năng xóa thông tin đơn vị tính 24
Bảng 2.11: Đặc tả usecase chức năng thêm thông tin danh mục 25
Bảng 2.12: Đặc tả usecase chức năng sửa thông tin danh mục 26
Bảng 2.13: Đặc tả usecase chức năng xóa thông tin danh mục 27
Trang 8CHƯƠNG 1: PHÁT BIỂU BÀI TOÁN
Vì vậy cửa hàng mong muốn xây dựng một phần mềm quản lý bán hàng hiệu quả.1.2 Hạn chế của hệ thống hiện tại
- Không có nơi lưu trữ thông tin các khách hàng đã từng mua sản phẩm để đưa ra đượccác chính sách giảm giá cho khách hàng thân thiết tại hợp tác xã
- Việc lưu trữ thông tin mua bán đề trên giấy tờ nên không thể tránh khỏi thất thoat
- Tốn nhiều thời gian tổng hợp, báo cáo, thống kê
- Không đáp ứng được nhu cầu thông tin phục vụ khách hàng ở các điểm điểm xa hợp tácxã
1.3 Mục tiêu xây dựng hệ thống
- Mục tiêu chính của hệ thống là tạo ra một phần mềm quản lý bán hàng và có thể quản
lý được các thông tin chính của cửa hàng như: quản lý khách hàng, sản phẩm, nhân viên, quản lý hoá đơn, … Lưu thông dữ liệu thuận tiện nhất
- Đảo bảo độ thân thiện dễ sử dụng cho người dùng
- Có khả năng lưu trữ thông tin lâu dài
- Sản phẩm có thể áp dụng vào bài toán thực tế của công ty
- Phần mềm dễ sử dụng
Trang 91.4 Yêu cầu hệ thống được xây dựng
Từ mục đích mà hệ thống đưa ra thì phần mềm cần xây dựng có thể đáp ứng được cácyêu cầu hoạt động hiện tại của cửa hàng như:
Khách hàng mua hàng
- Xem thông tin sản phẩm
- Đăng ký tài khoản
- Thêm sản phẩm vào giỏ hàng
Trang 10CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
2.1 Tác nhân tác động vào phần mềm
Qua yêu cầu của bài toàn xác định các tác nhân tác động vào hệ thống gồm:
- Admin
- Khách hàng
2.2 Sơ đồ phân cấp chức năng
Hình 2.1: Sơ đồ phân cấp chức năng
Trang 112.3 Biểu đồ usecase tổng quát
Hình 2.2: Sơ đồ usecase tổng quát
Trang 122.3.1 Biểu đồ usecase chi tiết chức năng quản lý sản phẩm
Hình 2.3: Biểu đồ usecase chi tiết chức năng quản lý sản phẩm2.3.2 Biểu đồ usecase chi tiết chức năng quản lý khách hàng
Hình 2.4: Biểu đồ usecase chi tiết chức năng quản lý khách hàng
Trang 132.3.3 Biểu đồ usecase chi tiết chức năng quản lý danh mục
Hình 2.5: Biểu đồ usecase chi tiết chức năng quản lý danh mục2.3.4 Biểu đồ usecase chi tiết chức năng quản lý đơn vị tính
Hình 2.6: Biểu đồ usecase chi tiết chức năng quản lý quản lý đươn vị tính
Trang 142.3.5 Biểu đồ usecase chi tiết chức năng quản lý đơn hàng
Hình 2.7: Biểu đồ usecase chi tiết chức năng quản lý đơn hàng2.3.6 Biểu đồ usecase chi tiết chức năng quản lý đơn hàng tác nhân khách hàng
Hình 2.8: Biểu đồ usecase chi tiết chức năng quản lý đơn hàng tác nhân khách hàng2.3.7 Biểu đồ usecase chi tiết chức năng quản lý sản phẩm tác nhân khách hàng
Hình 2.9: Biểu đồ usecase chi tiết chức năng quản lý sản phẩm tác nhân khách hàng2.3.8 Biểu đồ usecase chi tiết chức năng quản lý tài khoản tác nhân khách hàng
Hình 2.10: Biểu đồ usecase chi tiết chức năng quản lý tài khoản tác nhân khách hàng2.4 Đặc tả usecase
2.4.1 Đặc tả usecase chức năng đăng nhập
Usecase DangNhap
Tác nhân Admin
Trang 15Hành động Đăng nhập hoặc đăng xuất khỏi hệ thống
Trạng thái Nếu chức năng thành công, hệ thống kiểm tra quyền của khuyếnmại để tiến hành cấp quyền truy cập khi chuyển đến form chính.
3
Kiểm tra Username vàPassword Nếu trùng khớptrong CSDL chuyển sang formchính Nếu không trùng khớpthì hiển thị thông báo sai4
Nhập lại thông tin nếu nhậpsai Cuối cùng đăng nhập vào
hệ thống
5 Hiển thị form chính của giaodiện trang chủ Kết thúc
UsecaseBảng 2.1:Đặc tả usecse chức năng đăng nhập/ đăng xuất2.4.2 Đặc tả usecase chức năng quản lý khách hàng
Đặc tả usecase chức năng thêm thông tin khách hàng
Usecase Thêm mới thông tin khách hàng
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ thêm một khách hàng, nếu không thì khôngthêm thành công thông tin vào hệ thống
2 Hiển thị form Quản lý khách
hàng
Trang 163 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng.
Bấm “Thêm mới”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.
Bấm lại “Thêm mới”
6 Lưu giá trị vào CSDL, thôngbáo thêm mới thành công Kết
thúc UsecaseBảng 2.2: Đặc tả usecase chức năng thêm thông tin khách hàng
Trang 17 Biểu đồ usecase chức năng sửa thông tin khách hàng
Usecase Sửa mới thông tin khách hàng
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ sửa một thông tin khách hàng, nếu không thìkhông sửa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý khách
hàng
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Cập nhật”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Cập nhật”
6 Lưu giá trị vào CSDL, thôngbáo sửa mới thành công Kết
thúc UsecaseBảng 2.3: Đặc tả usecase chức năng sửa thông tin khách hàng
Trang 18 Đặc tả usecase chức năng xóa thông tin khách hàng
Usecase Xóa mới thông tin khách hàng
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ xóa một thông tin khách hàng, nếu không thìkhông xóa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý khách
hàng
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Xóa”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Xóa”
6 Lưu giá trị vào CSDL, thôngbáo xóa mới thành công Kết
thúc UsecaseBảng 2.4: Đặc tả usecase chức năng xóa thông tin khách hàng
Trang 192.4.3 Đặc tả usecase chức năng quản lý thông tin sản phẩm
Đặc tả usecase chức năng thêm thông tin sản phẩm
Usecase Thêm mới thông tin sản phẩm
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ thêm một sản phẩm, nếu không thì không thêmthành công thông tin vào hệ thống
2 Hiển thị form Quản lý sảnphẩm
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Thêm mới”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Thêm mới”
6
Lưu giá trị vào CSDL, thôngbáo thêm mới thành công Kếtthúc Usecase
Bảng 2.5: Đặc tả usecase chức năng thêm thông tin sản phẩm
Trang 20 Đặc tả usecase chức năng sửa thông tin sản phẩm
Usecase Sửa mới thông tin sản phẩm
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ sửa một thông tin sản phẩm, nếu không thìkhông sửa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý sản
phẩm
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Cập nhật”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Cập nhật”
6 Lưu giá trị vào CSDL, thôngbáo sửa mới thành công Kết
thúc UsecaseBảng 2.6: Đặc tả usecase chức năng sửa thông tin sản phẩm
Trang 21 Đặc tả usecase chức năng xóa thông tin sản phẩm
Usecase Xóa mới thông tin sản phẩm
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ xóa một thông tin sản phẩm, nếu không thìkhông xóa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý sản
phẩm
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Xóa”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Xóa”
6 Lưu giá trị vào CSDL, thôngbáo xóa mới thành công Kết
thúc UsecaseBảng 2.7: Đặc tả usecase chức năng xóa thông tin sản phẩm
Trang 222.4.4 Đặc tả usecase chức năng quản lý đơn vị tính
Đặc tả usecase chức năng thêm thông tin đơn vị tính
Usecase Thêm mới thông tin đơn vị tính
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ thêm một đơn vị tính, nếu không thì khôngthêm thành công thông tin vào hệ thống
2 Hiển thị form Quản lý đơn vịtính
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Thêm mới”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Thêm mới”
6
Lưu giá trị vào CSDL, thôngbáo thêm mới thành công Kếtthúc Usecase
Bảng 2.8: Đặc tả usecase chức năng them thông tin đơn vị tính
Đặc tả usecase chức năng sửa thông tin đơn vị tính
Usecase Sửa mới thông tin đơn vị tính
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ sửa một thông tin đơn vị tính, nếu không thì
không sửa thẻ thành công vào hệ thống
Luồng
sự kiện 1 Tại form chính của giao diệnAdmin, bấm vào tab theo dõi
đơn vị tính
Trang 232 Hiển thị form Quản lý đơn vịtính3
Tại form này, nhập mới các
dữ liệu vào các ô tương ứng
Bấm “Cập nhật”
4 Kiểm tra các giá trị nhập liệu,
nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Cập nhật”
6
Lưu giá trị vào CSDL, thôngbáo sửa mới thành công Kếtthúc Usecase
Bảng 2.9: Đặc tả usecase chức năng sửa thông tin đơn vị tính
Đặc tả usecase chức năng xóa thông tin đơn vị tính
Usecase Xóa mới thông tin đơn vị tính
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ xóa một thông tin đơn vị tính, nếu không thìkhông xóa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý đơn vị
tính
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Xóa”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Xóa”
6 Lưu giá trị vào CSDL, thông
báo xóa mới thành công Kết
Trang 24thúc UsecaseBảng 2.10: Đặc tả usecase chức năng xóa thông tin đơn vị tính2.4.5 Đặc tả usecase chức năng quản lý danh mục
Đặc tả usecase chức năng thêm thông tin danh mục
Usecase Thêm mới thông tin danh mục
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ thêm một danh mục, nếu không thì không thêmthành công thông tin vào hệ thống
Tại form này, nhập mới các
dữ liệu vào các ô tương ứng
Bấm “Thêm mới”
4 Kiểm tra các giá trị nhập liệu,
nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Thêm mới”
6 Lưu giá trị vào CSDL, thôngbáo thêm mới thành công Kết
thúc UsecaseBảng 2.11: Đặc tả usecase chức năng thêm thông tin danh mục
Trang 25 Đặc tả usecase chức năng sửa thông tin danh mục
Usecase Sửa mới thông tin danh mục
Tác nhân Admin
Hành động Đăng nhập vào hệ thống với khuyến mại có quyền Admin
Trạng thái Nếu thành công sẽ sửa một thông tin danh mục, nếu không thìkhông sửa thẻ thành công vào hệ thống
2 Hiển thị form Quản lý danh
mục
3 Tại form này, nhập mới cácdữ liệu vào các ô tương ứng
Bấm “Cập nhật”
4 Kiểm tra các giá trị nhập liệu,nếu lỗi đưa ra thông báo
5 Nhập lại nếu có lỗi xảy ra.Bấm lại “Cập nhật”
6 Lưu giá trị vào CSDL, thôngbáo sửa mới thành công Kết
thúc UsecaseBảng 2.12: Đặc tả usecase chức năng sửa thông tin danh mục