<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b> </b>
<b>TRƯỜNG CAO Đ NGẲ FPT POLYTECHNIC</b>
<b>DỰ ÁN 1</b>
<b>PHẦN MỀM QUẢN LÝ QUÁN KARAOKE</b>
<b>Giảng viên hướng dẫn: Nguyễn Thanh Tâm</b>
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">
2.3.2 Thiết kế giao diện cho các chức năng nghiệp vụ 23 Thực hiện viết mã...2
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">
<b>1 PHÂN TÍCH</b>
<b>1.1 H</b>
<b>I NỆTR NGẠ</b>
Những năm gần đây các cuộc cách mạng khoa học công nghệ đang diễn ramột cách sơi động chưa từng thấy trên tồn thế giới ,nó đã thúc đẩy lồi ngườinhanh chóng bước sang một kỷ nguyên mới .Đó là một kỷ nguyên của nền vănminh dựa trên cơ sở công nghiệp trí tuệ nhân tạo .Mở đầu cho cuộc cách mạng khoahọc và công nghệ thông tin hiện nay đã và đang xâm nhập vào mọi lĩnh vực hoạtđộng của xã hội lồi người nó mang lại nhiều lợi ích cao cũng như những lợi nhuậnkhổng lồ và cùng với nó là sự giải quyết về công việc ngày càng nhanh chóng ,mang lại hiệu quả kinh tế cao.
Trong đó , quản lý là một lĩnh vực không thể thiếu trong hầu hết các hoạtđộng kinh tế xã hội .Vì nó đóng một vai trị to lớn , mang lại hiệu quả kinh tế cao,giảm thiểu chi phí về thời gian , nhân lực .Chính vì vậy , khoa học công nghệ là môttrong những giải pháp không thể bỏ qua để đạt được những nhu cầu đó .Cơng nghệthơng tin là một trong những ngành khoa học đó. Đi đôi với sự phát triển công nghệchế tạo các thiết bị máy tính thì việc sản phẩm phần mềm ứng dụng ra đời có ýnghĩa rất quan trọng và có tính chất quyết định trong cơng tác quản lý.
<b>1.2 Y</b>
<b>ÊUC UẦHỆTH NGỐ</b>
/Mơ tả tổng qt chức năng chính của hệ thống
● Chức năng quản lý nhân viên: Hiện form quản lý nhân viên với 4 chức năng chính: Thêm, sửa, xố, tìm kiếm.
o Thêm nhân viên: Khi người dùng muốn thêm nhân viên phải điền
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">
o Xố phịng hát: Khi người dùng muốn xố phịng hát thì phải nhấp vào một dịng có chứa phịng hát muốn xố trên table và nhấn nút xố.
o Tìm phịng hát: Khi người dùng muốn xem,tìm một phịng hát thì nhập vào thanh tìm kiếm để xem.
● Chức năng quản lý khách hàng: Hiện form quản lý khách hàng với 4 chức năng chính: Thêm, sửa, xố, tìm kiếm.
o Thêm khách hàng : Khi người dùng muốn thêm khách hàng phải điền đầy đủ và đúng định dạng thông tin.
o Sửa khách hàng: Khi người dùng nhấn vào một dòng chứa khách hàng muốn sửa trên bảng, thông tin của đó sẽ được hiện lên trên form quản lý khách hàng
o Xoá khách hàng: Khi người dùng muốn xoá thì phải nhấp vào một dịng có chứa khách hàng muốn xố trên table và nhấn nút xố.o Tìm khách hàng: Khi người dùng muốn xem,tìm một thì nhập vào thanh
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">
o Đặt dịch vụ: khi người dùng muốn đặt một dịch vụ phải chọn phòng sử dụng dịch vụ đó và chọn thêm dịch vụ vào phòng
o Huỷ dịch vụ: Khi người dùng muốn huỷ một dịch vụ đã được đặt trước đó phải nhấp vào dịch vụ muốn huỷ trên bản dịch vụ đã đặt và nhấn huỷ
o Thêm dịch vụ: Khi người dùng muốn thêm một dịch vụ mới phải điền đầy đủ thơng tin và đúng định dạng
● Chức năng thanh tốn: Hiện form thanh toán với các chức năng:o Xem dịch vụ: Khi người dùng muốn xem những dịch vụ mà phịng
đã đặt trước đó thì click vào button thêm dịch vụ
o Thanh toán: Khi người dùng kiểm tra đầy đủ thơng tin và muốn xuấthố đơn thì click vào button thanh tốn.
/ Liệt kê các nhóm người dùng
❖ Người sử dụng hệ thống bao gồm:o Admin/ quản lý
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">
•Cơ sở dữ liệu : CSDL Microsoft SQL Server 2012 trở lên
<b>/Sơ đồ Usecase tổng quát</b>
<b>/Sơ đồ Usecase chi tiết❖ Nhân viên:</b>
Ự
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">
❖ Khách hàng
❖ Phòng
❖ Dịch vụ vừa đặt
❖ Dịch vụ
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">
❖ Thanh Toán (Hoá đơn)
<b>2.3 T</b>
<b>HI TẾKẾGIAO DI NỆ</b>
<b>2.3.1 Đăng nh pậ</b>
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">
<b>2.3.2 Quên m t kh uậẩ</b>
<b>2.3.3 Xác nh n m t kh uậậẩ</b>
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">
<b>2.3.4 Đ i m t kh uổậẩ</b>
<b>2.3.5 Trang chủ</b>
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">
<b>2.3.6 Khách hàng</b>
<b>2.3.7 Phòng hát</b>
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">
<b>2.3.8 Nhân viên</b>
<b>2.3.9 D ch vịụ</b>
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">
<b>2.3.10 Thanh tốn</b>
<b>2.3.11 Hóa đ nơ</b>
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">
SET QUOTED_IDENTIFIER ONGO
CREATE TABLE [dbo].[DICHVU]([MADV] [nvarchar](10) NOT NULL,[TENDV] [nvarchar](50) NOT NULL,[GIADV] [float] NOT NULL,
PRIMARY KEY CLUSTERED
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">
/****** Object: Table [dbo].[DVVD] Script Date: 12/3/2023 9:13:31 PM ******/
SET ANSI_NULLS ONGO
SET QUOTED_IDENTIFIER ONGO
CREATE TABLE [dbo].[DVVD](
[MADVVD] [int] IDENTITY(1,1) NOT NULL,[MAHD] [int] NOT NULL,
[MADV] [nvarchar](10) NOT NULL[TENDV] [nvarchar](20) NOT NULL,[TONGTDV] [float] NOT NULL,[SOLUONG] [int] NOT NULL,
PRIMARY KEY CLUSTERED (
[MADVVD] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">
CREATE TABLE [dbo].[KHACHHANG]([MaKH] [nvarchar](10) NOT NULL,[TENKH] [nvarchar](50) NOT NULL,[SDT] [varchar](30) NOT NULL,[GIOITINH] [bit] NOT NULL,[DCHI] [nvarchar](50) NOT NULL,
PRIMARY KEY CLUSTERED (
[MaKH] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]GO
/****** Object: Table [dbo].[NHANVIEN] Script Date: 12/3/2023 9:13:31 PM ******/
SET ANSI_NULLS ONGO
SET QUOTED_IDENTIFIER ONGO
CREATE TABLE [dbo].[NHANVIEN]([MaNV] [nvarchar](10) NOT NULL,[HoTen] [nvarchar](50) NOT NULL,[GIOITINH] [bit] NOT NULL,[NGSINH] [date] NOT NULL,[SDT] [varchar](30) NOT NULL,[EMAIL] [nvarchar](50) NOT NULL,[DCHI] [nvarchar](50) NOT NULL,[MATKHAU] [nvarchar](max) NOT NULL,[VAITRO] [bit] NOT NULL,
PRIMARY KEY CLUSTERED
</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">
SET QUOTED_IDENTIFIER ONGO
CREATE TABLE [dbo].[PHONG]([MAPHG] [nvarchar](10) NOT NULL,[TENPHG] [nvarchar](50) NOT NULL,[LOAIPHG] [bit] NOT NULL,[GIAPHG] [float] NOT NULL,[TrangThai] [bit] NOT NULL,[GHICHU] [nvarchar](50) NULL,
PRIMARY KEY CLUSTERED (
[MAPHG] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">
CREATE TABLE [dbo].[THANHTOAN]([MAHD] [int] IDENTITY(1,1) NOT NULL,[MaKH] [nvarchar](10) NOT NULL,[MAPHG] [nvarchar](10) NOT NULL,[MaNV] [nvarchar](10) NOT NULL,[NgayGioDatPhong] [datetime] NULL,[NgayGioTraPhong] [datetime] NULL,[SoGioHat] [float] NULL,
[GiaPhong] [float] NOT NULL,[ThanhTien] [float] NULL,
PRIMARY KEY CLUSTERED (
INSERT [dbo].[DICHVU] ([MADV], [TENDV], [GIADV]) VALUES (N'DV001', N'BÁNH ORI', 20000)
INSERT [dbo].[DICHVU] ([MADV], [TENDV], [GIADV]) VALUES (N'DV002', N'KẸO DẺO', 30000)
SET IDENTITY_INSERT [dbo].[DVVD] ON
INSERT [dbo].[DVVD] ([MADVVD], [MAHD],[MADV],[TENDV], [TONGTDV], [SOLUONG]) VALUES (2, 2,N'DV001',N'BÁNH ORI', 40000, 2)
INSERT [dbo].[DVVD] ([MADVVD], [MAHD],[MADV],[TENDV], [TONGTDV], [SOLUONG]) VALUES (3,2,N'DV002',N'KẸO DẺO', 60000, 2)
INSERT [dbo].[DVVD] ([MADVVD], [MAHD],[MADV],[TENDV], [TONGTDV], [SOLUONG]) VALUES (4,3 ,N'DV003',N'Bia Heineiken', 60000, 2)
</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">
INSERT [dbo].[DVVD] ([MADVVD], [MAHD],[MADV],[TENDV], [TONGTDV], [SOLUONG]) VALUES (6,12,N'DV004',N'Snack khoai tây', 80000, 4)
SET IDENTITY_INSERT [dbo].[DVVD] OFFGO
INSERT [dbo].[KHACHHANG] ([MaKH], [TENKH], [SDT], [GIOITINH], [DCHI]) VALUES (N'KH001', N'Nguyễn VănA', N'0949923380', 1, N'Cần Thơ')
INSERT [dbo].[KHACHHANG] ([MaKH], [TENKH], [SDT], [GIOITINH], [DCHI]) VALUES (N'KH002', N'Trần Minh B',N'0946778563', 1, N'Cần Thơ')
INSERT [dbo].[KHACHHANG] ([MaKH], [TENKH], [SDT], [GIOITINH], [DCHI]) VALUES (N'KH003', N'Phan Ngọc C',N'0843326778', 0, N'Cần Thơ')
INSERT [dbo].[NHANVIEN] ([MaNV], [HoTen], [GIOITINH], [NGSINH], [SDT], [EMAIL], [DCHI], [MATKHAU],[VAITRO]) VALUES (N'NV001', N'Nguyễn Thiện Đức', 1, CAST(N'2004-10-03' AS Date), N'0948766225',N'', N'ct', N'$2a$10$abcdefghijklmnopqrstuuq3FgY9h6pgSXk4AFFgiWBGrnbPlzyyu',1)
INSERT [dbo].[NHANVIEN] ([MaNV], [HoTen], [GIOITINH], [NGSINH], [SDT], [EMAIL], [DCHI], [MATKHAU],[VAITRO]) VALUES (N'NV002', N'Nguyễn Minh Tuyết', 0, CAST(N'2004-11-01' AS Date), N'0946778536',
</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">
INSERT [dbo].[PHONG] ([MAPHG], [TENPHG], [LOAIPHG], [GIAPHG], [TrangThai], [GHICHU]) VALUES(N'PHG009', N'T9', 0, 120000, 0, N'kk')
INSERT [dbo].[PHONG] ([MAPHG], [TENPHG], [LOAIPHG], [GIAPHG], [TrangThai], [GHICHU]) VALUES(N'PHG010', N'T10', 0, 120000, 0, N'f')
INSERT [dbo].[PHONG] ([MAPHG], [TENPHG], [LOAIPHG], [GIAPHG], [TrangThai], [GHICHU]) VALUES(N'PHG011', N'T11', 0, 120000, 0, N'f')
INSERT [dbo].[PHONG] ([MAPHG], [TENPHG], [LOAIPHG], [GIAPHG], [TrangThai], [GHICHU]) VALUES(N'PHG012', N'T12', 0, 120000, 0, N'fff')
SET IDENTITY_INSERT [dbo].[THANHTOAN] ON
INSERT [dbo].[THANHTOAN] ([MAHD], [MaKH], [MAPHG], [MaNV], [NgayGioDatPhong], [NgayGioTraPhong],[SoGioHat], [GiaPhong], [ThanhTien]) VALUES (2, N'KH001', N'PHG002', N'NV001', CAST(N'2023-12-02T15:00:00.000' AS DateTime), CAST(N'2023-12-03T11:10:47.000' AS DateTime), NULL, 250000, NULL)INSERT [dbo].[THANHTOAN] ([MAHD], [MaKH], [MAPHG], [MaNV], [NgayGioDatPhong], [NgayGioTraPhong],[SoGioHat], [GiaPhong], [ThanhTien]) VALUES (3, N'KH002', N'PHG001', N'NV001', CAST(N'2023-12-02T16:10:00.000' AS DateTime), CAST(N'2023-12-03T11:17:12.000' AS DateTime), NULL, 120000, NULL)INSERT [dbo].[THANHTOAN] ([MAHD], [MaKH], [MAPHG], [MaNV], [NgayGioDatPhong], [NgayGioTraPhong],[SoGioHat], [GiaPhong], [ThanhTien]) VALUES (5, N'KH003', N'PHG003', N'NV001', CAST(N'2023-11-04T00:00:00.000' AS DateTime), CAST(N'2023-12-03T00:19:02.000' AS DateTime), NULL, 300000, NULL)SET IDENTITY_INSERT [dbo].[THANHTOAN] OFF
ALTER TABLE [dbo].[DVVD] WITH CHECK ADD FOREIGN KEY([MADV])REFERENCES [dbo].[DICHVU] ([MADV])
ON UPDATE CASCADEGO
ALTER TABLE [dbo].[DVVD] WITH CHECK ADD FOREIGN KEY([MAHD])REFERENCES [dbo].[THANHTOAN] ([MAHD])
ON UPDATE CASCADE on delete cascadeGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MaKH])REFERENCES [dbo].[KHACHHANG] ([MaKH])
ON DELETE CASCADEGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MaNV])REFERENCES [dbo].[NHANVIEN] ([MaNV])
</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">
ON UPDATE CASCADEGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MAPHG])REFERENCES [dbo].[PHONG] ([MAPHG])
ON UPDATE CASCADEGO
ALTER TABLE [dbo].[DVVD] WITH CHECK ADD FOREIGN KEY([MAHD])REFERENCES [dbo].[THANHTOAN] ([MAHD])
ON UPDATE CASCADE ON DELETE CASCADEGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MaKH])REFERENCES [dbo].[KHACHHANG] ([MaKH])
ON DELETE CASCADEGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MaNV])REFERENCES [dbo].[NHANVIEN] ([MaNV])
ON UPDATE CASCADEGO
ALTER TABLE [dbo].[THANHTOAN] WITH CHECK ADD FOREIGN KEY([MAPHG])
</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">
<b>3.2 L</b>
<b>ẬPTRÌNH</b>
<b> JDBC3.2.1 L p h trớỗ ợ</b>
</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">
<b>3.6 V</b>
<b>I TẾMÃ CHOỨNGD NGỤ</b>
<b>3.6.1 X lý Form Xử3.6.2 X lý Form Yử</b>
<b>4 KI MỂ THỬ</b>
<b>4.1 K</b>
<b>I MỂTHỬFORM</b>
<b> X4.2 K</b>
<b>I MỂTHỬFORM</b>
<b> Y</b>
<b>5 ĐÓNG GÓI VÀ TRI N Ể KHAI</b>
<b>5.1 H</b>
<b>ƯỚNGD NẪCHUY NỂĐ IỔJAR THÀNH EXE</b>
-Sử dụng phần mềm LAUNCH4J để chuyển đổi jar sang exe-Sử dụng phần mềm InnoSetup để đóng gói
<b>5.2 H</b>
<b>ƯỚNGD NẪCÀI Đ TẶTRI NỂKHAI</b>
-Cài SQL Server 2008 trở lên
-Tạo CSDL QuanLiBangHang bằng cách chạy file QuanLiBanHang.sql-Cài đặt JDK 1.8 trở lên
-Chạy file SetupProgram.exe
<b>5.3 H</b>
<b>ƯỚNGD NẪSỬD NGỤPH NẦM MỀ</b>
- Đăng nhập với tài khoản username: NV001 và password:123- Cấp các tài khoản có vai trị là nhân viên hoặc quản lý- Đăng nhập tài khoản mới và xóa tài khoản hieu
- Xem hướng dẫn sử dụng trong menu trợ giúp của phần mềm
</div>