Nhân viên bán vé nhận vé và giấy ghi Danh sách vé tháng mà nhân viên bán vé đã bán được. Hết ca làm việc, nhân viên bán vé nộp cho phòng kinh doanh số vé xe còn lại. Phòng kinh doanh sẽ lấy số vé thu về để tính số lượng vé bán được trong ngày và yêu cầu nhân viên bán vé ký nhận vào Bảng theo dõi bán vé ngày. Việc bán vé tháng cũng được phòng kinh doanh quản lý. Hàng ngày, nhân viên bán vé tháng đến nhận tem vé tháng bao gồm: vé ưu tiên 1 tuyến, vé ưu tiên liên tuyến, vé bình thường 1 tuyến, vé bình thường liên tuyến và một số vé đặc biệt như tem vé tháng tuyến số 07 (Nội Bài – Kim Mã)… Nhân viên bán vé tháng nhận tem vé tháng và giấy Danh sách vé tháng đã bán. Khi phát hành các loại tem vé tháng cho nhân viên bán vé, phòng kinh doanh sẽ ghi lại số vé phát ra.
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN
BÁO CÁO
ĐỀ TÀI MÔN NHẬP MÔN CƠ SỞ PHẦN MỀM
Quản lý bán vé xe bus Giảng viên hướng dẫn: Ths.NGUYỄN THỊ BÍCH NGUYÊN
Trang 2Mục lục
HIỆN TRẠNG 3
1 Khảo sát 3
2 Ưu điểm 3
3 Nhược điểm 3
4 Hướng giải quyết 3
YÊU CẦU 3
1 Yêu cầu chức năng nghiệp vụ 4
2 Yêu cầu chức năng hệ thống và yêu cầu chất lượng 4
Yêu cầu chức năng hệ thống 4
Yêu cầu chất lượng hệ thống 4
SƠ ĐỒ USE CASE 3
1 Biểu đồ đăng nhập 4
2 Biểu đồ use case quản lí vé lượt 4
3 Biểu đồ use case quản lí vé tháng 4
THIẾT KẾ CƠ SỞ DỮ LIỆU 3
1 Xác định thực thể 3
2 Sơ đồ ERD 3
3 Dạng chuẩn 3 3
4 Diagram 3
5 Cấu trúc các bảng: 4
THIẾT KẾ GIAO DIỆN 4
1 Login 4
2 Quên mật khẩu 4
3 Trang chủ 5
4 Trang quản lí tuyến xe 6
5 Bán vé 8
6 Phân công 10
THIẾT KẾ MÃ 10
1 Đăng nhập và phân quyền: 11
2 Quên mật khẩu: 11
3 Thống kê số lượng vé bán được từ ngày đến ngày 11
Trang 34 Tìm kiếm thông tin các đối tượng 11
5 Các tính năng thêm xóa sửa các đối tượng 11
NHỮNG ĐIỀU CHƯA LÀM ĐƯỢC 11
KẾT LUẬN 11
TÀI LIỆU THAM KHẢO 11
Trang 4HIỆN TRẠNG
1 Khảo sát
Trước giờ làm, nhân viên bán vé đến phòng kinh doanh, ở đó, phòng kinh doanh thực hiện nhiệm vụ phát vé cho nhân viên bán vé, ghi lại số vé phát cho nhân viên bán vé
Hình 1.1 Mẫu ảnh vé xe buýt
Nhân viên bán vé nhận vé và giấy ghi Danh sách vé tháng mà nhân viên bán vé đã bán được Hết ca làm việc, nhân viên bán vé nộp cho phòng kinh doanh số vé xe còn lại Phòng kinh doanh sẽ lấy số vé thu về để tính số lượng vé bán được trong ngày và yêu cầu nhân viên bán vé ký nhận vào Bảng theo dõi bán vé ngày
Việc bán vé tháng cũng được phòng kinh doanh quản lý Hàng ngày, nhân viên bán vé tháng đến nhận tem vé tháng bao gồm: vé ưu tiên 1 tuyến, vé ưu tiên liên tuyến, vé bình thường 1 tuyến, vé bình thường liên tuyến và một số vé đặc biệt như tem vé tháng tuyến số 07 (Nội Bài – Kim Mã)… Nhân viên bán vé tháng nhận tem vé tháng và giấy Danh sách vé tháng đã bán Khi phát hành các loại tem
vé tháng cho nhân viên bán vé, phòng kinh doanh sẽ ghi lại số vé phát ra
Hình 1.2: Mẫu ảnh tem vé tháng
Sau một ngày làm việc, nhân viên bán vé tháng nộp lại tem cho phòng kinh doanh đồng thời ký nhận vào Bảng theo dõi bán vé tháng Phòng kinh doanh có quyền điều những nhân viên bán vé tháng tới các điểm bán vé tháng một cách định kỳ và luôn phiên.
Trang 52 Ưu điểm
- Dễ dàng quản lý đối với nhân viên có ít kinh nghiệm sử dụng máy tính.
- Đã có thể quản lý tốt việc bán vé xe buýt
3 Nhược điểm
- Việc quản lý còn thủ công
- Việc quản lý dựa trên giấy tờ nên khi cần tìm đến một hồ sơ nào đó thì mất rất nhiều thời gian và công sức để tìm kiếm trong kho hồ sơ lưu, sẽ khó bảo quản(lưu trữ không an toàn).
- Nhược điểm lớn nhất mà ta cần phải nói đến ở đây đó là nghiệp vụ hoạt động của xí nghiệp (cụ thể là công việc quản lý) đều dựa trên giấy tờ như: cập nhật, sửa đổi về vé ngày, vé tháng,… Việc tính toán như: tổng số tem vé tháng bán được trong một ngày, số
vé ngày bán được của một tuyến xe… đều diễn ra rất thủ công và phải làm bằng tay nên việc xử lý các yêu cầu đề ra sẽ rất mất nhiều thời gian và công sức.
4 Hướng giải quyết
Qua khảo sát phát hiện những ưu và nhược điểm trên em đã viết xây dựng phần mềm
“Quản lý bán vé xe buýt” nhằm giúp cho việc quản lý vé xe của nhân viên trở nên đơn giản linh hoạt và thông minh hơn trong quá trình.Phần mềm quản lý bán vé xe buýt của thành phố sẽ có thể cập nhật thêm được các loại vé mới, giá cả của từng loại vé mỗi khi
có sự thay đổi Việc này rất hữu ích, vì khi nhân viên bán vé đến chốt vé có thể tính được
số lượng vé đã bán ra mà còn tính ra được số tiền thu được của từng loại vé vì phần giá
vé đã được cập nhật trong hệ thống Khi đó chương trình sẽ tự động tính toán được tổng
số tiền đã bán được của các loại vé mà không cần sự tính toán thủ công nữa Khi cần lập báo cáo về tình hình kinh doanh của xí nghiệp, phòng kinh doanh sẽ sử dụng phần mềm
để thống kê số tiền bán được theo từng ngày, từng tháng của các tuyến xe buýt, của các điểm bán vé tháng; đồng thời tạo ra các báo cáo tổng hợp về doanh thu vé ngày, doanh thu vé tháng, số lượng khách tham gia lưu thông trong từng tháng, từng năm Việc tạo ra báo cáo số lượng hành khách tham gia lưu thông bằng xe buýt sẽ giúp cho ban giám đốc
và phòng kinh doanh trong xí nghiệp tính toán và đưa ra những quyết định đúng đắn về
Trang 6việc bổ sung thêm xe hoặc cắt giảm một số xe để chuyển sang các tuyến xe có lượng hành khách tham gia lưu thông nhiều hơn.
YÊU CẦU.
1 Yêu cầu chức năng nghiệp vụ.
Tài khoản: Có 2 loại tài khoản là
admin và nhân viên.
Trang 7STT Công việc Loại công
việc Quy định Biểu mẫu liên quan Ghi chú
1 Quản lí tuyến xe Lưu trữ Thêm, xóa, sửa
3 Quản lí nhân viên Lưu trữ Thêm, xóa nhân
viên, sửa thông tin nhân viên.
(1)
4 Quản lí vé tháng Lưu trữ Thêm mới, gia
hạn, xem chi tiết các khách hàng
5 Quản lí tài khoản Lưu trữ Thêm, xóa tài
khoản, sửa thông tin tài khoản.
lượt Lưu trữ thông tin giá lượt Thêm, xóa, sửa (1)
8 Quản lí xe bus Lưu trữ Thêm, xóa, sửa xe
11 Tìm kiếm Tra cứu Tìm kiếm thông
tin các đối tượng.
Trang 8Nhân viên:
STT Công việc Loại công việc Quy định Biểu mẫu
liên quan Ghi chú
1 Bán vé tháng Lưu trữ Thêm mới, gia
hạn, xem chi tiết các khách hàng.
2 Bán vé lượt Lưu trữ Cuối ngày chốt ca.
3 Xem lịch phân
4 Tìm kiếm Tra cứu Tìm kiếm thông
tin các đối tượng.
- Giải thích:
o (1): Chỉ xóa được khi đối tượng không liên quan đến các chức năng khác.
o (2): Chỉ xóa được lịch phân công sau ngày hiện tại.
2 Yêu cầu chức năng hệ thống và yêu cầu chất lượng.
Yêu cầu chức năng hệ thống.
1 Login Login sẽ phân quyền dựa trên mã tài
khoản Nếu quên mật khẩu sẽ gửi mail về email của nhân viên.
*Mật khẩu có mã hóa bằng thuật toán md5 Khi quên mật khẩu yêu cầu nhập đúng email của nhân
viên.
Có quyền thêm xóa sửa các đối tượng, phân công nhân viên làm việc theo lịch.
2) Nhân Viên:
Chỉ có thể bán vé và xem lịch làm việc của mình.
Khi xóa phải xem các đối tượng có ảnh hưởng đến các đối tượng khác hay
Trang 9Yêu cầu chất lượng hệ thống
Tác nhân: Nhân viên
Mô tả: Use case cho phép thành viên đăng nhập vào hệ thống.
Tiền điều kiện: Thành viên chưa đăng nhập vào hệ thống.
Dòng sự kiện chính:
1 Thành viên chọn chức năng đăng nhập.
2 Form Đăng nhập hiển thị.
3 Nhập tên, mật khẩu vào form Đăng nhập.
4 Hệ thống kiểm tra tên, mật khẩu nhập của thành viên.
5 Nếu thành viên nhập sai tên, mật khẩu thì chuyển sang dòng sự kiện rẽ nhánh A1 Nếu nhập đúng thì tiếp tục thực hiện các chức năng trong hệ thống.
6 Use case kết thúc.
Dòng sự kiện rẽ nhánh:
Dòng rẽ nhánh A1: Thành viên đăng nhập không thành công.
1 Hệ thống thông báo quá trình đăng nhập không thành công.
2 Nhập lại Nếu quên mật khẩu thì thực hiện A2.
Trang 103 Hệ thống yêu cầu thành viên nhập lại tên, mật khẩu.
4 Nếu xem đồng ý thì quay về bước 2 của luồng sự kiện chính, nếu không đồng ý thì use case kết thúc.
5 Nếu chọn quên mật khẩu thì nhánh A2 thực hiện:
6 Hệ thống yêu cầu thành viên nhập email, sau đó xác thực email nếu đúng sẽ gửi mật khẩu mới đến mail nhân viên và kết thúc use case.
Hậu điều kiện: Thành viên đăng nhập thành công và có thể thực hiện các chức năng mà hệ thống cung cấp.
2 Biểu đồ use case quản lí vé lượt
Hình 3.2 Use case quản lí vé lượt.
Đặc tả:
Tác nhân: Nhân viên, Admin
Mô tả: Use case cho phép them danh sách vé lượt trong hệ thống.
Tiền điều kiện: Chọn xe và ngày để bán.
Dòng sự kiện chính:
1 Người quản trị chọn kiểu tác động lên danh sách Vé lượt: thêm danh sách
Vé lượt vào cơ sở dữ liệu của hệ thống.
A Thêm Vé Lượt:
1 Hệ thống hiển thị nút chọn loại vé cần bán (thường hoặc ưu tiên).
2 Nếu thành công thì thực hiện bước 1.5 Nếu sai thực hiện dòng sự kiện rẽ nhánh A1.
3 Lưu số lượng Vé lượt đến cuối ngày chốt ca sẽ lưu vào cơ sở dữ liệu 1.5.Hiển thị thông báo thành công và hiện số lượng bên form chọn xe A1 Nếu sai thì sẽ hiện thông báo error.
3 Biểu đồ use case quản lí vé tháng
Trang 11Hình 3.3 Use case quản lí vé tháng
Đặc tả:
Tác nhân: Nhân viên, Admin
Mô tả: Use case cho phép thêm danh sách Vé Tháng trong hệ thống.
Tiền điều kiện: …
Dòng sự kiện chính:
2 Người quản trị chọn kiểu tác động lên danh sách Vé Tháng: thêm danh sách
Vé tháng vào cơ sở dữ liệu của hệ thống.
3 Nhánh A3: Sẽ thêm mới, gia hạn thời gian sử dụng của khách hàng
cũ thông qua form Thêm Vé Tháng.
4 Nhánh A4: Nếu khách hàng mới thì phải thêm khách hàng trước khi thêm thông tin vé tháng Điền form Thêm Khách Hàng mới -> Thêm
Vé Tháng.
5 Nếu nhập thành công thì hiện thông báo thành công và lưu thông tin
Vé Tháng Nếu sai hiển thị thông báo error và quay lại trang bán vé.
2 Use case kết thúc.
Dòng sự kiện rẽ nhánh A1:
1 Hệ thống thông báo việc nhập dữ liệu không hợp lệ.
2 Người quản trị nhập lại thông tin.
3 Quay lại bước 1.3 của dòng sự kiện chính.
Hậu điều kiện: các thông tin về Vé Tháng, vé lượt được cập nhật trong cơ sở dữ liệu.
Trang 12THIẾT KẾ CƠ SỞ DỮ LIỆU.
1 Xác định thực thể
CheDo (maCheDo, tenCheDo)
ChuyenXe(id, maTuyen, gioXuatPhat, gioKetThuc)
CTChuyen(id, idPhanCong, idChuyen)
GiaVeLuot(maGia, maCheDo, giaVeLuot, thoiGianApDung)
GiaVeThang(maGia, maCheDo, giaVeThang, thoiGianApDung)
KhachThang(maKhachThang, hoTen, ngaySinh, note)
NhanVien(maNhanVien, hoTen, email, soDienThoai, gioiTinh, namSinh,
diaChi)
PhanCong(idPhanCong, maNhanVien, bienSoXe, ngay)
Role(maRole, tenRole)
TaiKhoan(maTaiKhoan, username, password, maRole, maNhanVien, image)
ThongTinVeLuot(id, maPhanCong, maGiaLuot, soLuong)
ThongTinVeThang(maVeThang, maKhachThang, maTuyenXe)
ThongTinVeThangDetail(id, maGiaThang, ngayMua, ngayHetHan, maVeThang,
addNewBy, addNewdate)
TuyenXe(maTuyen, tenTuyen, thoiGianChuyen, thoiGianNghi, mocTuyen1,
mocTuyen2, thoiGianBatDau, thoiGianKetThuc)
Xe(bienSoXe)
2 Sơ đồ ERD
3 Dạng chuẩn 3
CheDo (maCheDo, tenCheDo)
ChuyenXe(id, maTuyen, gioXuatPhat, gioKetThuc)
CTChuyen(id, idPhanCong, idChuyen)
GiaVeLuot(maGia, maCheDo, giaVeLuot, thoiGianApDung)
Trang 13 GiaVeThang(maGia, maCheDo, giaVeThang, thoiGianApDung)
KhachThang(maKhachThang, hoTen, ngaySinh, note)
NhanVien(maNhanVien, hoTen, email, soDienThoai, gioiTinh, namSinh,
diaChi)
PhanCong(idPhanCong, maNhanVien, bienSoXe, ngay)
Role(maRole, tenRole)
TaiKhoan(maTaiKhoan, username, password, maRole, maNhanVien, image)
ThongTinVeLuot(id, maPhanCong, maGiaLuot, soLuong)
ThongTinVeThang(maVeThang, maKhachThang, maTuyenXe)
ThongTinVeThangDetail(id, maGiaThang, ngayMua, ngayHetHan, maVeThang,
addNewBy, addNewdate)
TuyenXe(maTuyen, tenTuyen, thoiGianChuyen, thoiGianNghi, mocTuyen1,
mocTuyen2, thoiGianBatDau, thoiGianKetThuc)
ChuyenXe
Column name Data type Constraint
Trang 16THIẾT KẾ GIAO DIỆN
1 Login
2 Quên mật khẩu
Trang 173 Trang chủ
Trang 184 Trang quản lí tuyến xe
o Thông tin tuyến xe:
Trang 19o Thêm 1 tuyến xe:
o Sửa thông tin tuyến:
Trang 20o Xóa tuyến:
5 Bán vé
Trang 21o Bán vé lượt.:
o Bán vé tháng:
Trang 22o Chọn xe:
6 Phân công
Trang 23THIẾT KẾ MÃ
1 Đăng nhập và phân quyền:
o Input: username và password
o Output: Nếu tài khoản tồn tại sẽ login thành công và ngược lại.
o Giải thuật:
Lấy username và password trên so sánh với tài khoản trong database, nếu trùng sẽ xem quyền tài khoản và dùng nó để phân quyền Nếu không trùng sẽ báo lỗi và quay về trang đăng nhập.
2 Quên mật khẩu:
o Input: email tài khoản.
o Output: Nếu email hợp lệ sẽ gửi password mới về email, ngược lại
sẽ không nhận được.
o Giải thuật:
Gửi mật khẩu mới về email hợp lệ thông qua javax.mail-api.
Trang 243 Thống kê số lượng vé bán được từ ngày đến ngày.
o Input: Ngày bắt đầu và kết thúc.
o Output: Bảng chi tiết thống kê số lượng vé bán được theo mỗi tuyến.
o Giải thuật:
Trang 25 Ta dùng 2 input trên duyệt qua list thông tin vé lượt và
vé tháng, xem tuyến nào trong ngày hôm đó bán được
vé sẽ show lên view.
4 Tìm kiếm thông tin các đối tượng.
o Input: 1 hoặc nhiều ký tự bất kì.
o Output: Lọc ra đối tượng nếu trong thuộc tính có các ký tự trên.
5 Các tính năng thêm xóa sửa các đối tượng.
o Admin có tất cả quyền trên các đối tượng, nhân viên chỉ có thể thêm
vé để bán
NHỮNG ĐIỀU CHƯA LÀM ĐƯỢC.
1 Thời gian xử lý còn chậm.
2 Thiếu ý tưởng để thiết kế giao diện.
3 Chưa đa nền tảng (chỉ sử dụng trên trình duyệt web).
KẾT LUẬN.
- Đề tài “Quản lý bán vé xe bus” xuất phát từ thực tế ngày nay nhầm tối ưu hóa thời gian và công sức khi đi xe bus Giúp người quản lý dễ dàng hơn trong việc theo dõi chi tiết các đối tượng và đưa ra được các so sánh trực quan, qua đó có những biện pháp giúp công ti phát triển hơn.
- Mặc dù đã có nhiều cố gắng tìm hiểu các kiến thức đã được học từ cô và nhiều nguồn khác nhưng do hạn chế về thời gian và khả năng, kinh nghiệm của nhóm nên không tránh khỏi thiếu sót trong quá trình là đề tài và báo cáo.
- Nhóm chúng em xin chân thành cảm ơn cô Thạc sỹ Nguyễn Thị Bích
Nguyên, người đã quan tâm, nhiệt tình giúp đỡ nhóm em trong suốt thời gian qua.
TÀI LIỆU THAM KHẢO.
- https://stackjava.com/category/spring-mvc
Trang 26- https://www.w3schools.com/
- https://stackoverflow.com/
- https://www.google.com/