Đây là báo cáo đồ án tốt nghiệp chưa 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 tnhh 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 Lưu Ý :Xem lại các biểu đồ UC, mới chỉ có tác nhân Admin sử dụng hệ thống; Tài liệu tham khảo chưa đầy đủ; Đã cài đặt một số chức năng cơ bản, cần hoàn thiện các chức năng hệ thống
PHÁT BIỂU BÀI TOÁN
Khảo sát hiện trạng
Đơn vị: Công ty TNHH Cơ khí xây dựng Hoàng Hải
Mã số thuế: 0108514610 Địa chỉ: Số 38 ngách 1 ngõ 45 đường Đồng Me, Phường Mễ Trì, Quận Nam Từ Liêm, Hà Nội
Công ty TNHH Cơ khí xây dựng Hoàng Hải chuyên cung cấp các loại cơ khí cho các cửa hàng kinh doanh chuyên doanh, do đó việc quản lý bán hàng, sản phẩm, và thông tin nhân viên, khách hàng là rất quan trọng Hiện tại, công ty đang sử dụng Excel và Word để quản lý, dẫn đến khó khăn trong việc tổng hợp và báo cáo Vì vậy, việc triển khai phần mềm quản lý bán hàng là cần thiết để nâng cao hiệu quả quản lý.
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ả.
Hạn chế của hệ thống hiện tại
Hợp tác xã hiện chưa có hệ thống lưu trữ thông tin về khách hàng đã từng mua sản phẩm, điều này gây khó khăn trong việc áp dụng các chính sách giảm giá cho khách hàng thân thiết.
- 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ác xã
Mục tiêu xây dựng hệ thống
Hệ thống nhằm phát triển phần mềm quản lý bán hàng hiệu quả, cho phép quản lý thông tin quan trọng của cửa hàng như khách hàng, sản phẩm, nhân viên và hóa đơn, đồng thời đảm bảo lưu trữ dữ liệu một cách 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
1.4 Yêu cầu hệ thống được xây dựng
Phần mềm cần được phát triển để đáp ứng các yêu cầu hoạt động hiện tại của cửa hàng, dựa trên mục đích mà hệ thống đã đề ra.
- Xem thông tin sản phẩm
- Thêm sản phẩm vào giỏ hàng
- Quản lý đơn vị tính
- Quản lý sản phẩm và dịch vụ
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
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:
Sơ đồ phân cấp chức năng
Hình 2.1: Sơ đồ phân cấp chức năng
Biểu đồ usecase tổng quát
Hình 2.2: Sơ đồ usecase tổng quát
2.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ẩm 2.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
2.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ục 2.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
2.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àng 2.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
Biểu đồ usecase chi tiết chức năng quản lý đơn hàng và quản lý sản phẩm của tác nhân khách hàng được trình bày trong Hình 2.8.
Biểu đồ usecase chi tiết chức năng quản lý sản phẩm và quản lý tài khoản của tác nhân khách hàng được trình bày trong Hình 2.9.
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àng
Đặc tả usecase
2.4.1 Đặc tả usecase chức năng đăng nhập
Hà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ến mại để tiến hành cấp quyền truy cập khi chuyển đến form chính.
Tác nhân tác động Hệ thống
1 Hiển thị form đăng nhập, yêu cầu đăng nhập 2
Từ form đăng nhập, người dùng điền Username và Password, click đăng nhập để gửi yêu cầu
Kiểm tra Username và Password Nếu trùng khớp trong CSDL chuyển sang form chính Nếu không trùng khớp thì hiển thị thông báo sai 4
Nhập lại thông tin nếu nhập sai Cuối cùng đăng nhập vào hệ thống
5 Hiển thị form chính của giao diện trang chủ Kết thúc Usecase
Bảng 2.1:Đặc tả usecse chức năng đăng nhập/ đăng xuất 2.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
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ông thêm thành công thông tin vào hệ thống
Tác nhân tác động Hệ thống
1 Tại form chính của giao diện Admin, bấm vào tab theo dõi mượn trả sách
2 Hiển thị form Quản lý khách hàng
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo thêm mới thành công Kết thúc Usecase
Bảng 2.2: Đặc tả usecase chức năng thêm thông tin khách hàng
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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi khách hàng
2 Hiển thị form Quản lý khách hàng
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo sửa mới thành công Kết thúc Usecase
Bảng 2.3: Đặc tả usecase chức năng sửa thông tin khách hàng
Đặ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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi khách hàng
2 Hiển thị form Quản lý khách hàng
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo xóa mới thành công Kết thúc Usecase
Bảng 2.4: Đặc tả usecase chức năng xóa thông tin khách hàng
2.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
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êm thành công thông tin vào hệ thống
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi mượn trả sách
2 Hiển thị form Quản lý sản phẩm
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
Lưu giá trị vào CSDL, thông báo thêm mới thành công Kết thúc Usecase
Bảng 2.5: Đặc tả usecase chức năng thêm thông tin sản phẩm
Đặ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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi sản phẩm
2 Hiển thị form Quản lý sản phẩm
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo sửa mới thành công Kết thúc Usecase
Bảng 2.6: Đặc tả usecase chức năng sửa thông tin sản phẩm
Đặ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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi sản phẩm
2 Hiển thị form Quản lý sản phẩm
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo xóa mới thành công Kết thúc Usecase
Bảng 2.7: Đặc tả usecase chức năng xóa thông tin sản phẩm
2.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
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ông thêm thành công thông tin vào hệ thống
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi mượn trả sách
2 Hiển thị form Quản lý đơn vị tính
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
Lưu giá trị vào CSDL, thông báo thêm mới thành công Kết thú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
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
Tác nhân tác động Hệ thống
Luồng sự kiện 1 Tại form chính của giao diện
Admin, bấm vào tab theo dõi đơn vị tính
2 Hiển thị form Quản lý đơn vị tính 3
Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
Lưu giá trị vào CSDL, thông báo sửa mới thành công Kết thú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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi đơn vị tính
2 Hiển thị form Quản lý đơn vị tính
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo xóa mới thành công Kết thúc Usecase Bảng 2.10: Đặc tả usecase chức năng xóa thông tin đơn vị tính
2.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
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êm thành công thông tin vào hệ thống
Tác nhân tác động Hệ thống
1 Tại form chính của giao diện
Admin, bấm vào tab theo dõi mượn trả sách
2 Hiển thị form Quản lý danh mục 3
Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo thêm mới thành công Kết thúc Usecase
Bảng 2.11: Đặc tả usecase chức năng thêm thông tin danh mục
Đặ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
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
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi danh mục
2 Hiển thị form Quản lý danh mục
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo sửa mới thành công Kết thúc Usecase
Bảng 2.12: Đặc tả usecase chức năng sửa thông tin danh mục
Đặc tả usecase chức năng xóa thông tin danh mục
Usecase Xóa mới thông tin danh mục
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 danh mục, nếu không thì không xóa thẻ thành công vào hệ thống
Tác nhân tác động Hệ thống
Tại form chính của giao diện Admin, bấm vào tab theo dõi danh mục
2 Hiển thị form Quản lý danh mục
3 Tại form này, nhập mới các dữ liệu vào các ô tương ứng.
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.
6 Lưu giá trị vào CSDL, thông báo xóa mới thành công Kết thúc Usecase
Bảng 2.13: Đặc tả usecase chức năng xóa thông tin danh mục
Biểu đồ hoạt động
2.4.1 Biểu đồ hoạt động chức năng thêm thông tin sản phẩm
Hình 2.11: Biểu đồ hoạt động chức năng thêm thông tin sản phẩm
2.4.2 Biểu đồ hoạt động chức năng sửa thông tin sản phẩm
Hình 2.12: Biểu đồ hoạt động chức năng sửa thông tin sản phẩm
2.4.3 Biểu đồ hoạt động chức năng xóa thông tin sản phẩm
Hình 2.13: Biểu đồ hoạt động chức năng xóa thông tin sản phẩm
2.4.4 Biểu đồ hoạt động chức năng thêm thông tin đơn vị tính
Hình 2.14: Biểu đồ hoạt động chức năng thêm thông tin đơn vị tính
2.4.5 Biểu đồ hoạt động chức năng sửa thông tin đơn vị tính
Hình 2.15: Biểu đồ hoạt động chức năng sửa thông tin đơn vị tính
2.4.6 Biều đồ hoạt động chức năng xoá thông tin đơn vị tính
Hình 2.16: Biểu đồ hoạt động chức năng xoá thông tin đơn vị tính
2.4.7 Biểu đồ hoạt động chức năng thêm thông tin khách hàng
Hình 2.17: Biểu đồ hoạt động chức năng thêm thông tin khách hàng
2.4.8 Biểu đồ hoạt động chức năng sửa thông tin khách hàng
Hình 2.18: Biểu đồ hoạt động chức năng sửa thông tin khách hàng
2.4.9 Biểu đồ hoạt động chức năng xóa thông tin khách hàng
Hình 2.19: Biểu đồ hoạt động chức năng xóa thông tin khách hàng
Biểu đồ tuần tự
2.5.1 Biểu đồ tuần tự chức năng thêm thông tin khách hàng
Hình 2.20: Biểu đồ tuần tự chức năng thêm thông tin khách hàng 2.5.2 Biểu đồ tuần tự chức năng sửa thông tin khách hàng
Hình 2.21: Biểu đồ tuần tự chức năng sửa thông tin khách hàng
2.5.3 Biểu đồ tuần tự chức năng xóa thông tin khách hàng
Hình 2.22: Biểu đồ tuần tự chức năng xóa thông tin khách hàng 2.5.4 Biểu đồ tuần tự chức năng thêm thông tin sản phẩm
Hình 2.23: Biểu đồ tuần tự chức năng thêm thông tin sản phẩm
2.5.5 Biểu đồ tuần tự chức năng sửa thông tin sản phẩm
Hình 2.24: Biểu đồ tuần tự chức năng sửa thông tin sản phẩm 2.5.6 Biểu đồ tuần tự chức năng xoá thông tin sản phẩm
Hình 2.25:Biểu đồ tuần tự chức năng xoá thông tin sản phẩm
2.5.7 Biểu đồ tuần tự chức năng thêm đơn vị tính
Hình 2.26: Biểu đồ tuần tự chức năng thêm đơn vị tính 2.5.8 Biểu đồ tuần tự chức năng sửa đơn vị tính
Hình 2.27: Biểu đồ tuần tự chức năng sửa đơn vị tính
2.5.9 Biểu đồ tuần tự chức năng xoá đơn vị tính
Hình 2.28: Biểu đồ tuần tự chức năng xoá đơn vị tính
CÀI ĐẶT HỆ THỐNG
Công nghệ sử dụng
3.1.1 Tổng quan về cơ sở dữ liệu quan hệ
Cơ sở dữ liệu (CSDL) là nguồn thông tin thiết yếu cho hệ thống thông tin máy tính, nơi dữ liệu được lưu trữ có cấu trúc theo quy định nhất định, giúp giảm thiểu sự dư thừa và đảm bảo tính toàn vẹn của dữ liệu.
Hệ quản trị cơ sở dữ liệu (CSDL) là tập hợp các chương trình cho phép xử lý và thay đổi dữ liệu Nó đóng vai trò quan trọng như một bộ diễn dịch với ngôn ngữ bậc cao, giúp người dùng tương tác với hệ thống mà không cần phải hiểu sâu về thuật toán hay cách biểu diễn dữ liệu trong máy tính.
Trong lịch sử phát triển của CSDL, có 3 mô hình CSDL chính thường được sử dụng, đó là:
Mô hình phân cấp là một cấu trúc dữ liệu dạng cây, trong đó các nút đại diện cho các tập thực thể Các nút con và nút cha được liên kết với nhau thông qua các mối quan hệ xác định.
Mô hình mạng được thể hiện dưới dạng đồ thị có hướng, tương tự như mô hình cây với một nút cha có thể có nhiều nút con Tuy nhiên, điểm khác biệt là mỗi nút con trong mô hình mạng có thể liên kết với nhiều nút cha, điều này giúp việc truy cập thông tin trở nên linh hoạt hơn.
Mô hình quan hệ dựa trên lý thuyết tập hợp của các quan hệ, trong đó dữ liệu được tổ chức thành các bảng hai chiều Mỗi bảng bao gồm các hàng và cột, với mỗi hàng đại diện cho một bản ghi và mỗi cột xác định một trường dữ liệu Các bảng có thể kết nối với nhau để thiết lập các mối quan hệ.
Mô hình quan hệ là loại mô hình được nhiều người quan tâm nhất trong ba loại mô hình, nhờ vào tính độc lập dữ liệu cao, dễ sử dụng và được hình thức hóa toán học một cách tốt.
3.1.2 Cài đặt SQL và Visual Studio
Hình 3.29: Giao diện tải SQL
Sau đó thực hiện cài đặt Visual Studio (có thể tham khảo trên Internet)
Visual Studio là công cụ lập trình website nổi tiếng của Microsoft, chưa có phần mềm nào thay thế được Được phát triển bằng hai ngôn ngữ C# và VB+, Visual Studio giúp người dùng lập trình hệ thống một cách dễ dàng và nhanh chóng.
Visual Studio là phần mềm lập trình hệ thống do Microsoft phát triển, với nhiều phiên bản khác nhau ra đời từ khi nó được giới thiệu Sự đa dạng này cho phép người dùng chọn lựa phiên bản phù hợp với dòng máy và cấu hình của mình.
Visual Studio cho phép người dùng tùy chỉnh giao diện chính của máy tính theo nhu cầu sử dụng của họ.
Giao diện chương trình
3.2.1 Giao diện màn hình đăng nhập
Hình 3.30: Giao diện màn hình đăng nhập
3.2.2 Giao diện màn hình trang chủ
Hình 3.31: Giao diện màn hình trang chủ
3.2.3 Giao diện màn hình chi tiết sản phẩm
Hình 3.32: Giao diện màn hình chi tiết sản phẩm
3.2.4 Giao diện màn hình giỏ hàng
Hình 3.33: Giao diện màn hình giỏ hàng
3.2.5 Giao diện màn hình trang chủ admin
Hình 3.34: Giao diện màn hình trang chủ admin
3.2.6 Giao diện màn hình quản lý đơn hàng
Hình 3.35: Giao diện màn hình quản lý đơn hàng
3.2.7 Giao diện màn hình quản lý sản phẩm
Hình 3.36: Giao diện màn hình quản lý sản phẩm