ID UC2.11Name Xem danh sách hàng hóa tồn khoChức năng cho phép quản lý và nhân viên kiểm tra số hàng tồn khoActors Quản lý và nhân viên Pre-conditions User đã có tài khoản và đã được phâ
Trang 1KHOA CÔNG NGHỆ THÔNG TIN
Nhóm sinh viên thực hiện: Nhóm 2
Danh sách sinh viên: Nguyễn Phú Hải <0188666>
Trang 21 Đặt vấn đề:
I.1 Hệ thống dự định làm:
Ngày nay, đời sống con người đang ngày càng hiện đại, Công nghệ thông tin cũng ngày một phát triển lớn mạnh.Qua đó nhu cầu đời sống của con người ngày càng hiện đại, công nghệ thông tin càng được ứng dụng vào nhiều lĩnh vực để thỏa mãn nhu cầu con người Giáo dục, sản xuất, kinh doanh, giải trí,…Đặc biệt là quản lý
Quản lý kho trong doanh nghiệp là một công việc quan trọng đòi hỏi bộ phận quản lý phải tiến hành nhiều nghiệp vụ phức tạp Các doanh nghiệp không chỉ có mô hình tập trung mà còn tổ chức mô hình kho phân tán trên nhiều địa điểm khác nhau Do vậy cách quản lý kho theo phương pháp truyền thống sẽ không còn hiệu quả
Việc ứng dụng Công nghệ thông tin đã mang lại bước đột phá mới cho công tác quản lý kho, giúp doanh nghiệp nắm bắt được thông tin về hàng hóa, vật tư, nguyên vật liệu và sản phẩm một cách chính xác kịp thời Từ đó, ngườiquản lý có thể đưa ra các kế hoạch và quyết định đúng đắn, nâng cao kết quả sản xuất kinh doanh
Do đó, chúng em quyết định thực hiện phân tích và thiết kế một hệ thống quản lý kho hàng
Ngôn ngữ lập trình: C# Winform
Hệ quản trị CSDL: Mysql Server
I.2 Tóm tắt dự án:
a Mô tả sơ lược:
Quy trình hệ thống quản lý kho hàng bao gồm nhiều bước cơ bản để đảm bảo rằng hàng hóa được quản lý, lưu trữ và xuất bán một cách hiệu quả Dưới đây
là một mô tả tổng quan về các bước trong quy trình này:
Bước 1: Nhân viên nhận thông tin về đơn và hàng hóa cần được nhập kho, sau
đó nhập thông tin vào phiếu in nhập kho
Bước 2: Xác nhận nhập kho, xác định vị trí lưu trữ cho hàng hóa vừa nhập cùng với báo cáo lại tình trạng cho quản lý
Bước 3: Khi có yêu cầu xuất kho, kiểm tra tình trạng kho hàng xem có đủ điềukiện xuất kho không, sau đó nhập thông tin xuất vào phiếu in xuất kho.Bước 4: Xác nhận xuất kho, báo cáo thống kê lại tình trạng kho hàng
Trang 3b Nhu cầu quản lý:
Tình trạng kho hàng
Ghi nhận phiếu nhập/xuất hàng
Tình trạng nhập/xuất hàng
Thống kê, báo cáo
Quản lý tài khoản người dùng
c Phạm vi: Khu vực kho hàng của công ty
d Đối tượng
Quản lý: Quản trị viên có toàn quyền hệ thống
Nhân viên: có quyền nhập/xuất,in phiếu kho hàng, kiểm tra tình trạng kho hàng, nhập/xuất hàng
2 Xác định yêu cầu nghiệp vụ:
2.1 Tình trạng kho hàng:
Nhân viên và quản lý có thể theo dõi tình trạng kho hàng thông qua danh sách hàng hóa dược hiển thị trên hệ thống.Danh sách này bao gồm: mã hàng hóa, tên hàng hóa, số lượng tồn kho, loại hàng hóa, đơn giá
Cho phép tìm kiếm theo mã hàng hóa, tên hàng hóa
Trang 4Khi cần xuất kho, nhân viên nhập thông tin các hàng hóa cần xuất vào phiếu xuất kho gồm:
2.6 Quản lý tài khoản :
Mỗi người dùng được cấp tài khoản riêng trên hệ thống bao gồm các thông tin cá nhân Người dùng đăng nhập bằng Username và Password
Phần mềm quản lý người dùng gồm các nhóm:
-Quản lý: toàn quyền hệ thống
-Nhân viên
2.7 Báo cáo và thống kê:
Quản lý có thể xem được báo cáo về tình trạng tồn kho, doanh số xuất nhập hàng
II PHÂN TÍCH CHỨC NĂNG:
1 Phân tích yêu cầu hệ thống:
1.1 Yêu cầu chức năng:
a Yêu cầu quản lý tình trạng kho hàng
Trang 5o Lưu trữ thông tin hàng hóa: Mã hàng hóa, tên hàng hóa, số lượng tồn kho, loại hàng hóa, đơn giá.
o Tra cứu,tìm kiếm hàng hóa theo mã hàng hóa, tên hàng hóa
o Thêm hàng hóa mới
o Cập nhật thông tin hàng hóa
o Xóa hàng hóa
o Thống kê danh sách hàng hóa
b Yêu cầu quản lý nhà cung cấp:
o Lập bảng lưu trữ về thông tin nhà cung cấp: tên, địa chỉ, sđt…
o Tra cứu nhà cung cấp theo mã nhà cung cấp, tên nhà cung cấp
o Thêm nhà cung cấp mới
o Cập nhập thông tin nhà cung cấp
o Xóa nhà cung cấp
o Thống kê danh sách các nhà cung cấp
c Yêu cầu quản lý nhập hàng:
o Lưu trữ thông tin phiếu nhập hàng: mã phiếu nhập, ngày nhập, mã cung cấp, tên hàng hóa, số lượng…
o Tra cứu đơn nhập hàng theo mã phiếu nhập, ngày…
o Thêm phiếu nhập hàng
o Cập nhật, sửa thông tin phiếu nhập
o Xóa phiếu nhập sau khi thanh toán cho nhà cung cấp
o Thống kê, báo cáo tình hình nhập hàng
d Yêu cầu quản lý xuất hàng:
o Lưu trữ thông tin phiếu xuất hàng: mã phiếu xuất, ngày xuất, tên hàng hóa,
số lượng…
o Tra cứu đơn xuất hàng theo mã phiếu xuất, ngày…
o Thêm phiếu xuất
o Cập nhật, sửa thông tin phiếu xuất
Trang 6o Xóa phiếu xuất sau khi được thanh toán
o Thống kê, báo cáo tình hình xuất hàng
e Yêu cầu quản lý đơn đặt hàng:
o Lưu trữ thông các đơn đặt hàng gồm: mã đơn, ngày đặt,số lượng,tên hàng…
o Tra cứu các đơn hàng theo theo mã đơn, ngày đặt hàng…
o Thêm mới đơn hàng khi có khách hàng đặt
o Cập nhật, thay đổi mặt hàng hay số lượng, ngày đặt…
o Xóa đơn hàng
o Thống kê số lượng đặt hàng của từng mặt hàng theo đơn đặt hàng
f Yêu cầu quản lý thống kê:
o Thống kê các loại hàng được xuất hay nhập nhiều nhất trong ngày
g Yêu cầu quản lý tài khoản:
o Xem danh sách tài khoản của người dùng Thông tin gồm: Mã, Tên, SĐT, Địa chỉ, Chức vụ
o Thêm mới nhân viên
o Xóa nhân viên
o Đổi mật khẩu tài khoản
o Phân quyền truy cập hệ thống: Quản lý, nhân viên
1.2 Yêu cầu phi chức năng:
- Giao diện thân thiện, dễ sử dụng
- Ổn định, hiệu quả
- Khả năng lưu trữ, phục hồi dữ liệu
- Yêu cầu phân quyền người dùng
2 Use case tổng quát hệ thống:
Trang 72.1 Usecase quản lý tình trạng kho hàng
Trang 8ID UC2.11
Name Xem danh sách hàng hóa tồn kho
Brief
description
Chức năng cho phép quản lý và nhân viên kiểm tra số hàng tồn kho
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User truy cập vào trang quản trị CMS
2 User chọn chức năng xem danh sách tồn kho
Alternative flow
Result Hiện danh sách hàng hóa tồn kho
Exceptions
Name Thông tin hàng hóa
Brief description Chức năng cho phép quản lý và nhân viên kiểm tra thông tin hàng
hóa: Mã hàng hóa, tên hàng hóa, số lượng tồn kho, loại hàng hóa,đơn giá
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User truy cập vào một loại hàng hóa có trên danh sách tồn
Name Tìm kiếm hàng hóa theo mã
Brief description Chức năng cho phép quản lý và nhân viên tìm kiếm hàng hóa qua mã
hàng hóa
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User truy cập phần tìm kiếm hàng hóa
2 Nhập hàng hóa cần tìm bằng mã hàng hóa đã có
3 Hiển thị mã hàng hóa, tên hàng hóa, số lượng tồn kho, loạihàng hóa, đơn giá
Trang 9Alternative flow
Result Thông tin hàng hóa theo yêu cầu
Exceptions
Name Thêm tồn kho
Brief description Chức năng cho phép nhân viên thêm tồn kho nếu có
Actors nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User them hàng hàng hóa cần them vào tồn kho có sẵn
2 Nhập hàng hóa: mã hàng hóa, tên hàng hóa, số lượng tồn kho,loại hàng hóa, đơn giá
Name Xóa tồn kho
Brief description Chức năng cho phép nhân viên xóa tồn kho khi không còn mặt hàng
Actors nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User Xóa hàng hóa cần xóa
Trang 10ID UC2.21
Name Quản lý nhập hàng
Brief description Chức năng cho phép quản lý và nhân viên có thông tin về mặt hàng
đã nhập về kho
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Thông tin thông báo về mặt hàng đã xuất kho
Name Quản lý xuất hàng
Brief description Chức năng cho phép quản lý và nhân viên có thông tin về mặt hàng
đã xuất kho
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Thông tin thông báo về mặt hàng đã xuất kho
2 Tự động cập nhật số mặt hàng sau khi đã xuất kho và hiển thị
Trang 11ID UC2.41
Name Danh sách các phiếu xuất nhập kho
Brief description Chức năng cho phép quản lý và nhân viên có thông tin về mặt hàng
đã xuất kho, nhập kho theo ngày tháng năm
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Truy cập vào danh sách
Name Thông tin phiếu
Brief description Chức năng cho phép quản lý và nhân viên có thông tin về mặt hàng
đã xuất kho, nhập kho theo ngày tháng năm bao gồm: mã hàng hóa,tên hàng hóa, số lượng tồn kho, loại hàng hóa, đơn giá
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Truy cập vào danh sách
Trang 122 Truy cập vào phiếu cần kiểm tra
Alternative flow
Result Phiếu cần kiểm tra theo yêu cầu
Exceptions
Name Thông tin phiếu
Brief description Chức năng cho phép quản lý và nhân viên có thông tin về mặt hàng
đã xuất kho, nhập kho theo ngày tháng năm bao gồm: mã hàng hóa,tên hàng hóa, số lượng tồn kho, loại hàng hóa, đơn giá
Actors Quản lý và nhân viên
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Truy cập vào danh sách
2 Tìm kiếm phiếu thông qua ngày tháng năm
Alternative flow
Result Phiếu cần kiểm tra theo yêu cầu
Exceptions
Trang 132.5.Quản lý tài khoản
2.4.1
Name Thêm kỹ thuật viên
Brief description Cho phép quản lý có thể thêm được tài khoản vào sử dụng hệ thống
Actors Quản lý
Pre-conditions Quản lý đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Quản lý truy cập vào trang quản trị cms
2 Quản lý chọn “Quản lý tài khoản”
3 Quản lý chọn “Thêm tài khoản”
4 Quản lý Nhập tất cả các trường thông tin tài khoản và chọnbutton “Thêm tài khoản”
5 Hệ thống validate trường thông tin của tài khoản và tạo tàikhoản mới
6 Hệ thống thông báo “Thêm tài khoản thành công” và refresh
Trang 14lại danh sách tài khoản hiển thị
Alternative flow 5.1 Thông tin của tài khoản sai định dạng/lỗi/không xác thực thì Hệ
thống hiển thị thông báo và dừng tiến trình thêm mới tài khoản
Result Quản lý thêm mới thành công tài khoản
Exceptions Nếu Quản lý không nhập đủ các trường, hiển thị thông báo yêu
cầu nhập dưới mỗi trường
2.4.2 Usecase: Xóa kỹ thuật viên:
Name Xóa kỹ thuật viên
Brief description Chức năng cho phép quản lý xóa được kỹ thuật viên trong danh sách
người dùng hệ thống
Actors Quản lý
Pre-conditions Quản lýđã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Quản lý truy cập vào trang quản trị CMS
2 Quản lý chọn chức năng “Quản lý tài khoản”
3 Hệ thống hiển thị danh sách tất cả tài khoản có trong hệthống
4 User chọn 1 tài khoản muốn xóa, và chọn “Xóa tài khoản”
5 Hệ thống thông báo “Xác nhận xóa”
2.4.3 Usecase: Tìm kiếm nhân viên:
Name Tìm kiếm nhân viên
Brief description Chức năng cho phép quản trị viên tìm kiếm thông tin kỹ thuật viên
Actors Quản lý
Pre-conditions Quản lý đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Quản lý truy cập vào trang quản trị CMS
2 Quản lý chọn chức năng “Quản lý tài khoản”
3 User tìm kiếm thông tin nhân viên bằng cách nhập mã Kỹ thuậtviên hoặc tên nhân viên để tìm kiếm
Trang 154 Hệ thống hiển thị kết quả tìm kiếm cho Quản lý xem
Alternative flow 4.1 Hệ thống không tìm kiếm được thông tin thì thông báo lỗi/không
tìm thấy nhân viên nào cho Quản lý biết và refresh lại danh sách tàikhoản
Result User tìm kiếm thành công thông tin nhân viên
Exceptions
2.4.4 Usecase: Đổi mật khẩu:
Name Đổi mật khẩu
Brief description Chức năng cho phép User đổi được mật khẩu đăng nhập hệ thống
Actors User dùng hệ thống
Pre-conditions User đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 User truy cập vào trang quản trị CMS
2 User chọn chức năng “Quản lý tài khoản”
3 User chọn “Đổi mật khẩu”
4 Hệ thống hiển thị form đổi mật khẩu bao gồm các trườngthông tin: nhập mật khẩu cũ, nhập mật khẩu mới, xác nhận mật khẩumới
5 User nhập đầy đủ thông tin trên form và chọn “Đổi mậtkhẩu”
6 Hệ thống xử lý đổi mật khẩu cho User và thông báo “Đổimật khẩu thành công”
Alternative flow
Result User đổi được mật khẩu tài khoản của mình thành công
Exceptions - User nhập sai thông tin mật khẩu cũ thì hiển thị thông báo
ngay dưới trường đó
2.4.5 Usecase: Phân quyền tài khoản:
Name Phân quyền tài khoản
Brief description Chức năng cho phép quản lý phân quyền cho tài khoản
Actors Quản lý
Pre-conditions Quản lý đã có tài khoản và đã được phân quyền vào hệ thống
Basic flow 1 Quản lý truy cập vào trang quản trị CMS
2 Quản lý chọn chức năng “Quản lý tài khoản”
3 Quản lý chọn “Phân quyền tài khoản”
Trang 164 Hệ thống hiển thị dánh sách tài khoản và quyền tương ứng
5 Quản lý chọn 1 tài khoản muốn phân quyền lại và chỉnh sửaquyền của tài khoản đó
6 Quản lý “Lưu lại”
7 Hệ thống hiển thị thông báo phân quyền thành công
Alternative flow
Result Quản lý phân quyền thành công cho tài khoản
Exceptions
Trang 171.2 Biểu đồ tuần tự nhà cung cấp
Trang 181.3 Biểu đồ trình tự hàng hóa
Trang 191.4 Biểu đồ tuần tự đơn hàng
Trang 201.5 Biểu đồ tuần tự phiếu nhập hàng
Trang 211.6 Biểu đồ tuần tự xuất hàng
Trang 221.7 Biểu đồ tuần tự người dùng
Trang 232 Thiết kế biểu đồ lớp
Trang 24Biểu đồ lớp quản lý kho hàng
3 Thiết kế cơ sở dữ liệu
3.1 Sơ đồ dữ liệu
3.2 Mô tả chi tiết các lớp đối tượng
Trang 25Bảng NguoiDung
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
TaiKhoan Varchar 50 Not null
Primary Key
Tên tài khoản
SDT Nvarchar 20 Số điện thoại
Bảng NhaCungCap
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaCC Nvarchar 10 Not null
Primary Key
Mã cung cấpTenNCC Nvarchar 50 Tên nhà cung
cấpSDT Nvarchar 50 Số điện thoại
Bảng HangHoa
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaHH Nvarchar 10 Not null
Primary Key Mã hàng hóaTenHH Nvarchar 50 Tên hàng hóaMaLH Nvarchar 10 Foreign Key với
LoaiHang Mã loại hàng
Bảng DonDatHang
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaDH Nvarchar 10 Not null
Primary Key Mã đặt hàng
Trang 26MaNV Nvarchar 10 Foreign Key với
NhanVien
Mã nhân viên
Bảng ChiTietDonDatHang
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaDH Nvarchar 10 Not null
Primary Key
Mã đặt hàngMaHH Nvarchar 10 Not null
Primary Key
Mã hàng hóa
Bảng PhieuNhap
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaPN Nvarchar 10 Not null
Primary Key
Mã phiếu nhập
MaCC Nvarchar 10 Foreign Key với
NhaCungCap Mã cung cấpNgayTT Datetime Ngày thanh toánMaNV Nvarchar 10 Foreign Key với
NhanVien Mã nhân viên
Bảng ChiTietPhieuNhap
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaPN Nvarchar 10 Not null
Primary Key
Mã phiếu nhập
Bảng PhieuXuat
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaPX Nvarchar 10 Not null
Primary Key
Mã phiếu xuất
MaNV Nvarchar 10 Foreign Key với
NhanVien Mã nhân viên
Bảng ChiTietPhieuXuat
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaPX Nvarchar 10 Not null
Primary Key Mã phiếu xuất
Trang 27MaHH Nvarchar 10 Not null
Primary Key
Mã hàng hóa
Bảng TonKho
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
NgayThangNam Nvarchar 10 Not null
Primary Key Ngày tháng năm tồn khoMaHH Nvarchar 10 Not null
Primary Key Mã hàng hóa
kho
Bảng LoaiHang
Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú
MaLoai Nvarchar 10 Not null
Primary Key Mã loại hàngTenloai Nvarchar 50 Tên loại hàng