Bài tập lớn lập trình hướng đối tượng đề tài phân tích thiết kế hệ thống quản lý quán cà phê

22 13 0
Bài tập lớn lập trình hướng đối tượng đề tài phân tích thiết kế hệ thống quản lý quán cà phê

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BÀI TẬP LỚN LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG LỜI CẢM ƠN Để hoàn thành báo cáo học phần Lập trình hướng đối tượng trước tiên nhóm em xin gửi lời cảm ơn chân thành đến thầy Nguyễn Hoàng Anh (giảng viên phụ trách mơn Lập trình hướng đối tượng) - người tận tình hướng dẫn, giúp đỡ việc nâng cao kiến thức chuyên môn, phát huy cho chúng em tính tự học, tự tìm hiểu, từ hình thành cho chúng em phương pháp nghiên cứu, tìm tịi, tiếp cận với khoa học cơng nghệ Đồng thời trau dồi cho chúng em kỹ học tập động sáng tạo Chúng em xin gửi lời cảm ơn chân thành đến Khoa CNTT1 Trường tạo điều kiện thuận lợi cho chúng em học tập hoàn thành đề tài nghiên cứu Vì kiến thức cịn hạn chế, q trình tìm hiểu đề tài chúng em tránh sai sót Chúng em mong nhận nhận xét, đánh giá, đóng góp ý kiến từ thầy cô để rút kinh nghiệm từ báo cáo học phần chuẩn bị tốt cho báo cáo học phần sau Chúng em xin chân thành cảm ơn! Hà Nội, ngày 23 tháng 11 năm 2022 Mục lục Danh sách thành viên nhóm nhiệm vụ .4 Danh mục hình vẽ Giới thiệu ứng dụng .6 a Giới thiệu b Tổng quan ứng dụng c Phát biểu toán Phân tích đặc tả yêu cầu hệ thống a Sơ đồ quan hệ thực thể b Class diagram c Sơ đồ chức hệ thống d EER diagram 10 Mô tả chức hệ thống 10 a Quản lý sinh viên .10 b Quản lý phiếu mượn 10 c Quản lý sách .11 d Quản lý vi phạm .11 e Quản lý thống kê báo cáo 12 Các class khai báo 12 Mơ tả thuật tốn thao tác .15 Cài đặt triển khai 18 Các cập nhật hạn chế 22 10 Kết luận 23 11 Tài liệu tham khảo 23 Danh sách thành viên nhóm nhiệm vụ Danh mục hình vẽ Hình 1: Sơ đồ thực thể quan hệ Hình 2: Class diagram Hình 3: Sơ đồ chức hệ thống Hình 4: EER diagram .10 Hình 5: Giao diện đăng nhập ứng dụng 18 Hình 6: Màn hình ứng dụng 19 Hình 7: Giao diện quản lý thức uống .20 Hình 8: Giao diện quản lý nhân viên 21 Hình 9: Giao diện quản lý đặt bàn 21 Hình 10: Giao diện chức đặt bàn 22 Hình 11: Giao diện thống kê 22 Hình 12: Hố đơn xuất .23 Giới thiệu ứng dụng: a Giới thiệu: Trên giới Việt Nam, công nghệ thông tin trở thành công nghệ mũi nhọn, ngành khoa học kỹ thuật khơng thể thiếu việc áp dụng vào hoạt động xã hội như: quản lý hệ thống thư viện sách, quán cà phê, kinh tế, thông tin, kinh doanh, hoạt động lĩnh vực nghiên cứu… Ở nước ta nay, việc áp dụng vi tính hóa quản lý quan, xí nghiệp, tổ chức phổ biến trở nên cấp thiết, ngành nghề đòi hỏi người phải xử lý khối lượng công việc khổng lồ, kiến thức, suy nghĩ, đào tạo chuyên sâu Một vấn đề cấp thiết đặt quản lý làm để chuẩn hóa cách xử lý liệu trường học, chúng em chọn đề tài “Phân tích thiết kế hệ thống quản lý quán cà phê” b Tổng quan ứng dụng: Quản lý quán cà phê phần mềm phát triển để ứng dụng công nghệ vào việc quản lý kinh doanh quán cafe Thông qua hệ thống phần mềm này, chủ cửa hàng dễ dàng thực nghiệp vụ tối ưu hóa q trình vận hành sở Ứng dụng gồm tính như: + Nhân viên: - Quản lí thức uống cửa hàng - Quản lí bàn, thông tin order, thông tin giao dịch, thông tin khách - Thống kê xuất hóa đơn + Admin: - Quản lí thức uống cửa hàng - Quản lí bàn, thơng tin order, thơng tin giao dịch, thơng tin khách - Thống kê xuất hóa đơn - Quản lí nhân viên Ứng dụng viết ngơn ngữ lập trình Java, sử dụng thư viện JavaSwing để thiết kế giao diện đồ họa người dùng (Graphical User Interface), sử dụng MySQL server để quản trị sở liệu c Phát biểu toán: Xây dựng phần mềm dựa yêu cầu sau: - Giao diện phải đẹp, thân thiện, dễ sử dụng Tốc độ xử lý phải nhanh, không để khách hàng chờ lâu Khi thay đổi chức giao diện dễ dàng - Cập nhật đồ uống Giúp khách hàng cảm thấy thoải mái nhanh chóng đặt đồ uống toán Cho biết bàn trống, số nguyên liệu cịn lại kho Phân tích đặc tả yêu cầu hệ thồng: a Sơ đồ quan hệ thực thể: Hình Sơ đồ quan hệ thực thể b Class Diagram: Hình Class diagram c Sơ đồ chức hệ thống: Hình Sơ đồ chức hệ thống d EER diagram: Hình EER diagram Mô tả chức hệ thống: a Quản lý thức uống: - Miêu tả: Quản lý đồ uống lại kho, cho phép tùy chỉnh loại đồ uống, bao gồm tính thêm đồ uống, chỉnh sửa thơng tin đồ uống nhận thấy có sai sót, xóa đồ uống kho - Đầu vào: Nhập từ bàn phím - Xử lý: Sau lấy thông tin từ người nhập, phần mềm truy xuất vào CSDL, sau thực tác vụ tương ứng với người nhập yêu cầu: thêm, sửa, xóa CSDL - Xuất: Thơng tin tồn kho qn Cà phê sau cập nhật liệu b Quản lý Nhân viên: - - - Miêu tả: Quản lý tồn nhân viên qn Cà phê, có tính tùy chỉnh thêm nhân viên, sửa lại thơng tin nhân viên, xóa nhân viên nhân viên khơng cịn quản lý qn, đăng kí Tài khoản, Mật cho nhân viên để truy cập vào phần mềm Đầu vào: Nhập từ bàn phím Xử lý: Sau lấy thơng tin từ người nhập, phần mềm truy xuất vào CSDL, sau thực tác vụ tương ứng với người nhập u cầu: thêm, sửa, xóa CSDL Xuất: Thơng tin cá nhân tồn nhân viên có quán Cà phê (trừ tài khoản mật nhân viên) sau cập nhật liệu c Đặt bàn: - Miêu tả: Quản lý, ghi thông tin đặt bàn khách cho quán Cà phê, có chức tùy chỉnh thêm thông tin đặt bàn trước, chỉnh sửa lại thông tin khách hàng đặt bàn, xóa thơng tin đặt bàn khách tới hủy đặt bàn trước tời thời gian đặt bàn - Đầu vào: Nhập từ bàn phím - Xử lý: Sau lấy thông tin từ khách tới đặt bàn, người nhập nhập thông tin đặt bàn khách vào phần mềm, phần mềm truy xuất vào CSDL, sau thực tác vụ tương ứng với người nhập yêu cầu: thêm, sửa, xóa CSDL - Xuất: Thông tin cá nhân, thời gian đặt bàn khách d Bán hàng: - Miêu tả: Quản lý tình trạng bàn thời gian thực (Ví dụ bàn trống, bàn có người ngồi, bàn đặt trước khách, bàn thao tác tính tiền) Thực tác vụ gọi đồ uống, xác nhận đồ uống bàn, tính tổng tiền đồ uống bàn, tính tiền thừa cho khách, xuất hóa đơn đồ uống - Đầu vào: CSDL khách đặt bàn trước Lựa chọn hình bàn cịn người ngồi để thao tác lựa chọn đồ uống xác nhận đồ uống Lựa chọn hình bàn có người ngồi để tính tiền - Xử lý: Sau lấy thông tin từ người nhập, phần mềm truy xuất vào CSDL, sau thực tác vụ tương ứng với người nhập yêu cầu: thêm, sửa, xóa CSDL Dữ liệu làm tảng để in hóa đơn sau khách trả tiền, xử lý lưu liệu cho phần thống kê quán cuối ngày cuối tháng, cuối năm - Xuất: Thông tin đồ uống bàn, số tiền khách phải trả, số tiền thừa khách nhận lại, thơng tin hóa đơn 10 e Thống kê: - Miêu tả: Quản lý hóa đơn, tổng thu nhập quán sau ngày, tháng năm - Đầu vào: CSDL hóa đơn phần Bán hàng Lựa chọn tùy chỉnh hình thức thống kê (theo ngày, theo tháng hay theo năm) - Xử lý: Lấy thơng tin lựa chọn tùy chỉnh hình thức thống kê người nhập, truy xuất CSDL - Xuất: In thơng tin tồn hóa đơn theo hình thức thống kê mà người nhập lựa chọn Tính tổng thu nhập Các class khai báo: a Class AboutFr - Thuộc tính: Detail detail - Phương thức: + Constructor: khởi tạo trả đối tượng Class định nghĩa + btnHomeActionPerformed: trở hình b Class Constants: - Thuộc tính: int soBanDoc, int soBanNgang, int Button_Width, int Button_Height, int distance c Class DatbanFr: - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, String sql - Phương thức: + Constructor: khởi tạo trả đối tượng Class định nghĩa + Load: Hiển thị thông tin khách hàng + reset: Tải lại thông tin hiển thị + checkNull: Kiểm tra xem người nhập nhập đầy đủ thông tin khách hàng chưa + checkThanhtoan: Kiểm tra toán + loadBan, loadHours, loadMinute: Hiển thị thông tin phần bàn, thời gian + addCustomer, editCustomer, btnDelActionPerformed: Chỉnh sửa khách đặt bàn + check: Kiểm tra xem khách có trùng khơng + btnHomeActionPerformed: Trờ hình 11 + tableDatbanMouseClicked: Lựa chọn khách hàng bảng liệu để chỉnh sửa + btnCancelActionPerformed: Hủy thao tác thời d Class LoginFr: - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, String sql - Phương thức: + Constructor: khởi tạo trả đối tượng Class định nghĩa + checkNull: Kiểm tra xem nhập đầy đủ thông tin tài khoản mật chưa + btnCancelActionPerformed: Thốt ứng dụng + btnLoginActionPerformed: Kiểm tra xem có nhập tài khoản mật không e Class MainFr: - Thuộc tính: Detail detail - Phương thức: + Constructor: khởi tạo trả đối tượng Class định nghĩa + btnExitActionPerformed: Thốt chương trình + btnQLNuocActionPerformed: Lối vào giao diện quản lý đồ uống + btnQLNVActionPerformed: Lối vào giao diện quản lý nhân viên + btnBanhangActionPerformed: Lối vào giao diện bán hàng + btnDatbanActionPerformed: Lối vào giao diện đặt bàn + btnThongkeActionPerformed: Lối vào giao diện thống kê + btnAboutActionPerformed: Lối vào giao diện About + btnLogoutActionPerformed: Đăng xuất khỏi tài khoản f Class ThongKeFr: - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, boolean leapYear, boolean Year, boolean Month, boolean Day, String sql - Phương thức: + load: Hiển thị toàn liệu thống kê thu nhập quán Cà phê + convertedToNumbers: chuyển tiền nhập từ String sang kiểu số nguyên + Refresh: Hiển thị lại liệu 12 + checkOption: kiểm tra tùy chọn thị (Xem theo ngày, theo tháng hay theo năm) + addDay: thêm lựa chọn xem theo ngày + FindDay, FindMonth, FindYear: tìm liệu theo ngày, tháng, năm + getDay, getMonth, getYear: lấy liệu theo ngày, tháng, năm + btnHomeActionPerformed: Trờ hình g Class banhangFr: - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, boolean leapYear, boolean Year, boolean Month, boolean Day, String sql, boolean Pay, ImageIcon icon1, ImageIcon icon2, ImageIcon icon3 - Phương thức: + Constructor: khởi tạo trả đối tượng Class định nghĩa + getHours, getMinute: lấy ngày từ String + checkStatus: Kiểm tra tình trạng bàn theo ngày + taoBan, veBan: Hiển thị bàn giao diện + checkBill: Kiểm tra hóa đơn + loadLoainuoc: Hiển thị nước để người nhập lựa chọn + Update: Hiển thị lại sau thêm nước + deleteThongTinHoaDon, deleteHoaDon: xóa thơng tin hóa đơn thống kê + loadData: Hiển thị tên thức uống mà bàn đặt + checkTinhTrangban: Kiểm tra xem bàn cịn trống hay có người ngồi, người đặt bàn trước chưa + checkSoLuongHang: Kiểm tra cịn hàng kho để bán cho khách khơng + tinhTongTien: Tính tiền tồn đồ uống bàn + luuThongKe: Sau toán xong ta lưu lại liệu doanh thu hóa đơn + addThucUong: Thêm thức uống + addHoaDon: Thêm hóa đơn vào database + btnHomeActionPerformed: Trờ hình + btnPrintActionPerformed: In hóa đơn + tfTienNhanCuaKachKeyReleased: Tính tiền thừa khách nhận lại h Class qlnuocFr: 13 - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, String sql - Phương thức: + Constructor: Khởi tạo trả đối tượng Class định nghĩa + loadLoaiNuoc: Hiển thị lựa chọn loại nước + loadData: Truy xuất liệu đồ uống có + reset: Hiển thị lại liệu + checkNull: Kiểm tra xem nhập đầy đủ thông tin đồ uống chưa + addDrink, editDrink, btnDelActionPerformed: Chỉnh sửa thông tin đồ uống + tableDrinkMouseClicked: Bảng đồ uống để lựa chọn chỉnh sửa + btnFindActionPerformed: Tìm thức uống theo tên theo mã + btnHomeActionPerformed: Trờ hình i Class qlnvFr: - Thuộc tính: String server, String user, String password, String db, Integer port, SQLServerDataSource ds, Connection conn, PreparedStatement statement, Detail detail, ResultSet rs, boolean add, boolean change, String sql - Phương thức: + Constructor: Khởi tạo trả đối tượng Class định nghĩa + loadData: Hiển thị liệu thông tin nhân viên + reset: Hiển thị lại trạng thái + checkNull: Kiểm tra xem nhập đầy đủ thông tin nhân viên chưa + addNV, changeNV, btnDelActionPerformed: Chỉnh sửa, thêm nhân viên nhân viên vào database + tableNVMouseClicked: Hiện bảng đển click nhân viên muốn tùy chỉnh + btnSaveActionPerformed: Lưu lại thông tin nhân viên thêm chỉnh sửa + btnFindActionPerformed: Tìm kiếm nhân viên theo tên theo mã nhân viên + btnBackActionPerformed: Trở hình j Class Detail - Thuộc tính: String user, String name, Boolean isAdmin - Phương thức: + Constructor: Khởi tạo trả đối tượng Class định nghĩa + Getter, Setter: Hàm lấy nhập xuất đối tượng 14 Mô tả thuật toán thao tác: a Đăng nhập vào Phần mềm: - Thuật toán kiểm tra nhập đủ tài khoản mật chưa cách xem xâu tài khoản mật có rỗng khơng: - Thuật tốn kiểm tra xem có nhập tài khoản mật khơng cách truy xuất CSDL bảng QLNV: b Quản lý nhân viên: - Thuật tốn tìm nhân viên theo tên, mã theo giới tính câu truy xuất SQL, sau hiển thị kết 15 c Bán hàng: - Thuật tốn kiểm tra tình trạng bàn Để kiểm tra xem cịn bàn khơng ta truy xuất vào CSDL, bàn trống, ta hiển thị icon1, cịn khơng cịn trống, ta sử dụng icon3 16 - Thuật tốn kiểm tra bàn có người đặt chưa Để kiểm tra, ta truy xuất vào CSDL bảng DatBan Nếu có người đặt bàn, tính tốn xem thời gian đặt bàn với thời gian có khớp khoảng 30 phút tới tiếng không Nếu khớp ta ẩn bàn để điểu chuyển khách khơng ngồi bàn có người đặt - Thuật toán kiểm tra lại số nước kho để bán cho khách Trong trường hợp thực tế trước chọn số lượng đồ uống xác nhận, ta cần kiểm tra lại xem hàng để làm đồ uống khơng Cách thực hiện, ta kết nối với CSDL bảng QLNuoc, sau sử dụng trỏ kiểm tra xem số lượng đồ uống Nếu số lượng u cầu khơng đủ, ta ẩn thức uống người bán hàng thao tác với thức uống Cài đặt triển khai a Yêu cầu kỹ thuật Các công cụ: - Java JDK 18 Microsoft SQL để kết nối tới DB IDE hỗ trợ Java IntellJ, NetBeans,… Nhập Database kèm “data.sql” Thư viện jcalender, mssql-jdbc, iReport b Triển khai ứng dụng Đầu tiên bắt đầu chạy, hình đăng nhập ra, yêu cầu người dùng cần đăng nhập tài khoản 17 Hình 5: Giao diện đăng nhập ứng dụng Sau đăng nhập tài khoản người dùng đưa đến hình ứng dụng quản lý quán café Ứng dụng có chức năng: quản lý đồ uống, quản lý nhân viên, bán hang, đặt bàn, thống kê Hình 6: Màn hình ứng dụng 18 Hình 7: Giao diện quản lý thức uống Hình 8: Giao diện quản lý nhân viên 19 Hình 9: Giao diện quản lý đặt bàn Hình 10: Giao diện chức đặt bàn 20 Hình 11: Giao diện thống kê Hình 12: Hố đơn xuất Cập nhật hạn chế a Tính cập nhật - Đã sửa chữa lỗi từ nguồn code tham khảo chạy ứng dung - Thêm chức thống kê - Thêm chức in hoá đơn b Hạn chế 21 - Giao diện ứng dụng chưa bắt mắt Phần xử lý chưa tối ưu hoàn toàn, dẫn đến gây rối số trường hợp, làm cho UML trở nên lớn 10 Kết luận Mặc dù mặt hạn chế, ứng dụng giúp quản lý quán café với yêu cầu thiết yếu quản lý nhân viên, quản lý nước uống, quản lý đặt bàn, thống kê 11 Tài liệu tham khảo - Mô hình quản lý qn cafe số tính năng: https://www.youtube.com/watch?v=4LZMnLIVzC0 - Source code tham khảo: https://drive.google.com/file/d/18QAueeS3xgV5w4ES3J8GlJeAL9Rzp9h9/ view - Link sản phẩm : https://github.com/huytre123qwe/QLCF_2 22

Ngày đăng: 30/03/2023, 06:31

Tài liệu cùng người dùng

Tài liệu liên quan