Luận Văn Quản Lý Vé Xem Phim (SQL)
Có thể bạn quan tâm
Trang chủ Tìm kiếm Trang chủ Tìm kiếm Luận văn Quản lý vé xem phim (SQL) doc 103 10 MB 39 185 4.3 ( 16 lượt) Xem tài liệu Nhấn vào bên dưới để tải tài liệu Tải về Đang chuẩn bị: 60 Bắt đầu tải xuống Để tải xuống xem đầy đủ hãy nhấn vào bên trên Chủ đề liên quan xử lý thông tin luận văn phân tích thiết kế Hệ thống thông tin Thông tin quản lý Quản lý vé xem phim
Nội dung
1 LỜI CẢM ƠN Đầu tiên, chúng tôi xin cảm ơn các thầy cô trong khoa Tin học trường Cao đẳng Công Nghệ Thông Tin – Đại học Đà Nẵng, cùng quý thầy cô bộ môn trong suốt quá trình học tập tại trường, chúng tôi đã được các thầy cô cung cấp, truyền đạt và chỉ bảo nhiệt tình tất cả kiến thức nền tảng quý giá. Đặc biệt là TS. Huỳnh Công Pháp, thầy đã không ngừng giúp đỡ chúng tôi trong quá trình hoàn thiện đồ án này. Nhân đây, chúng con cũng xin bày tỏ lòng biết ơn sâu sắc đến ba mẹ và gia đình đã nuôi dạy chúng con nên người. Xin cảm ơn ba mẹ đã luôn tin tưởng, luôn là chỗ dựa tinh thần vững chắc, giúp chúng con vượt qua mọi khó khăn thử thách trong cuộc sống cũng như trong đợt thực tập này. Bên cạnh đó, trong thời gian hoàn thành đồ án này, chúng tôi cũng đã nhận được nhiều sự giúp đỡ cùng những lời động viên chân thành và quý báu của bạn bè và người thân, chúng tôi xin hết lòng biết ơn. Tuy nhiên, do thời gian hạn hẹp, mặc dù đã nỗ lực hết sức mình, nhưng chắc rằng đồ án khó tránh khỏi những thiếu sót. Chúng tôi rất mong nhận được sự thông cảm và chỉ bảo tận tình của các thầy cô và các bạn. 2 NHẬN XÉT 3 LỜI CAM ĐOAN Chúng tôi xin cam đoan: Những nội dung trong bài báo cáo này là do chúng tôi thực hiện dưới sự hướng dẫn trực tiếp của TS. Huỳnh Công Pháp Mọi tham khảo dùng trong bài báo cáo đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian và địa điểm công bố. Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo hay gian trá, chúng tôi xin chịu hoàn toàn trách nhiệm. Nhóm sinh viên thực hiện: Võ Hà Thảo Nhi Đoàn Lê Thanh Hằng Trần Thị Mỹ Hạnh 4 MỤC LỤC LỜI CẢM ƠN............................................................................................................1 NHẬN XÉT................................................................................................................ 2 LỜI CAM ĐOAN......................................................................................................3 MỤC LỤC.................................................................................................................. 4 Chương 1: TỔNG QUAN VỀ ĐỀ TÀI.....................................................................7 1.1 Đặt vấn đề............................................................................................................7 1.2 Giải pháp.............................................................................................................7 1.3 Mục đích và ý nghĩa của đề tài...........................................................................8 1.3.1 Mục đích............................................................................................................8 1.3.2 Ý nghĩa............................................................................................................... 8 Chương 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG..........................................9 2.1 Mô tả yêu cầu......................................................................................................9 2.1.1 Module dành cho người quản lý.........................................................................9 2.1.2 Module dành cho thành viên và khách xem online...........................................17 2.2 Lược đồ cơ sở dữ liệu quan hệ.........................................................................25 2.2.1 Giải thích tên bảng...........................................................................................26 2.2.2 Ý nghĩa các trường tương ứng..........................................................................27 2.2.3 Giải thích mối quan hệ giữa các bảng..............................................................31 2.3 Kiến trúc kỹ thuật tổng quan của hệ thống.....................................................33 2.4 Thiết kế chi tiết của một số chức năng quan trọng.........................................34 2.4.1 Chức năng bán vé.............................................................................................34 2.4.2 Chức năng đặt vé..............................................................................................42 2.4.3 Chức năng thống kê phim................................................................................50 2.4.4 Chức năng Quản lý phòng................................................................................55 2.4.5 Chức năng Quản lý lịch chiếu..........................................................................59 Chương 3: KẾT QUẢ CHẠY DEMO VÀ KIỂM THỬ.......................................65 3.1 Kết quả chạy demo một số kịch bản chính......................................................65 3.1.1 Kịch bản đặt vé................................................................................................65 3.1.2 Chức năng cập nhật lịch chiếu..........................................................................70 3.2 Kết quả kiểm thử...............................................................................................76 5 Chương 4: KẾT LUẬN...........................................................................................76 4.1 Đánh giá kết quả thực hiện...............................................................................76 4.1.1 Ưu điểm của sản phẩm.....................................................................................76 4.1.2 Nhược điểm của sản phẩm...............................................................................77 4.2 Hướng phát triển của đề tài..............................................................................77 PHỤ LỤC................................................................................................................. 79 1. Bảng kế hoạch thực hiện đồ án.......................................................................79 2. Bảng phân công công việc lập trình và kiểm thử..........................................79 2.1 Bảng phân công công việc lập trình....................................................................79 2.2 Bảng phân công công việc kiểm thử...................................................................81 3. Hướng dẫn cài đặt hệ thống............................................................................82 3.1 Hướng dẫn cài đặt Eclipse...................................................................................82 Bước 1 : Giải nén phần mềm Eclipse........................................................................83 Bước 2: Chọn workspace cho Eclipse.......................................................................83 3.2 Hướng dẫn cài đặt SQL Server 2005 Express.....................................................85 Bước 1: Cài Windows Installer 3.1...........................................................................85 Bước 2: Cài Microsoft .Net Framework 2.0..............................................................86 Bước 3: Cài đặt Microsoft SQL Server 2005............................................................87 Bước 4: Cài đặt công cụ quản lý SQL Server Management Studio Express.............87 3.3 Hướng dẫn đưa source code vào eclipse.............................................................90 Bước 1: Tạo mới một Dynamic Web Project............................................................90 Bước 2: Import source code vào eclipse....................................................................94 3.4 Attach cơ sở dữ liệu vào SQL.............................................................................97 Bước 1: Copy 2 file đã export từ SQL vào thư mục SQL Server..............................97 Bước 2: Attach file vào SQL Server.........................................................................98 MỤC LỤC HÌNH ẢNH.........................................................................................100 DANH MỤC TÀI LIỆU THAM KHẢO.................................................................103 6 Chương 1: TỔNG QUAN VỀ ĐỀ TÀI 1.1 Đặt vấn đề Giả sử bạn muốn đi xem một bộ phim nhưng việc chờ đợi mua vé tại rạp lại khiến bạn mất nhiều thời gian và đôi khi lại không như mong muốn vì có thể không chọn được xuất chiếu như ý mình. Việc này khiến bạn chán nản và gây lười biếng khi nghĩ đến việc đi xem phim tại rạp. Để khắc phục tình trạng này, chúng tôi mang đến cho bạn giải pháp nhanh chóng và tiện lợi, ngay từ bây giờ, bạn có thể ngồi ngay tại nhà, tại công ty, hay tại một nơi nào đó và chỉ với 1 cú click chuột, bạn hoàn toàn có thể an tâm vì mình đã có chỗ ngồi tại rạp phim và được xem bộ phim theo ngày và giờ chiếu mình mong muốn. Ở Việt Nam, hình thức đặt vé online còn khá mới mẻ chính vì vậy đây là thị trường đầy tiềm năng. Hơn nữa, ngày nay ở Việt Nam, công nghệ thông tin được áp dụng rộng rãi và hiệu quả tới nhiều lĩnh vực hoạt động của xã hội. Với thực tế về phát triển công nghệ và thực tiễn ứng dụng ở Việt Nam, cùng với sự quyết tâm của Đảng và Chính phủ trong định hướng thúc đẩy phát triển ứng dụng Công nghệ thông tin (CNTT) vào đời sống và nền kinh tế đã làm tăng cao tốc độ ứng dụng và số lượng người làm việc trực tiếp trên Internet. Cùng với hạ tầng CNTT đã được đầu tư rất nhiều để sẵn sàng cho các ứng dụng tin học hóa. Số lượng người thường xuyên truy cập Internet để làm việc cập nhật và tìm kiếm thông tin ngày càng nhiều với tốc độ tăng trưởng 40%/năm. 1.2 Giải pháp Từ những thuận lợi trên, Website bán vé xem phim có hỗ trợ đặt vé online của chúng tôi ra đời với phương châm mang đến sự tiện lợi và hiện đại cho người tiêu dùng Việt Nam. Khi quyết định kinh doanh trên lĩnh vực này, chúng tôi xác định việc cạnh tranh với những thương hiệu nổi tiếng, đã tạo dựng được thương hiệu cho mình như Megastar, Rapphimquocgia… là rất khó. Để khắc phục được điều này và biến nó thành lợi thế cạnh tranh, Website chúng tôi tạo ra sự khác biệt: hướng tới một phân khúc thị trường nhỏ với đối tượng khách hàng là giới trẻ, những bộ phim bom tấn cũng như các phim yêu thích sẽ được cập nhật thường xuyên, đón đầu xu hướng giới trẻ. Đặc biệt chúng tôi còn đưa ra những chiêu Marketing độc đáo, đường truyền nhanh và ổn định. Với những kiến thức có được, chúng tôi quyết định tạo một website quản lý việc bán vé xem phim thay vì một phần mềm trên máy cục bộ. Bởi phần mềm trên máy cục bộ chỉ người quản lý mới có thể sử dụng được, cũng như có những mặt hạn chế khác, thay vào đó khi làm một website, chúng tôi đã hướng đến mọi đối tượng. Chúng tôi lựa chọn ngôn ngữ Java vì nó là một ngôn ngữ mạnh mẽ, có thể giải quyết hầu hết các công việc mà các ngôn ngữ khác khó có thể làm được. Java được thiết kế xoay quanh mô hình hướng đối tượng. Vì vậy trong Java, tiêu điểm là 7 dữ liệu và các phương pháp thao tác lên dữ liệu đó. Ngày nay, Java được sử dụng rộng rãi để viết chương trình chạy trên Internet. Quan trọng nhất vẫn là tính bảo mật cao của ngôn ngữ Java, nó cung cấp một môi trường quản lý thực thi chương trình. Java cho rằng không có một đoạn mã nào là an toàn cả, chính vì vậy Java không chỉ là ngôn ngữ lập trình thuần tuý mà còn cung cấp nhiều mức để kiểm soát tính an toàn khi thực thi chương trình. JSP (Java Server Pages) còn được biết đến với một cái tên khác là Java Scripting Preprocessor - tạm dịch là "Bộ tiền xử lý văn lệnh Java" - là một công nghệ Java cho phép các nhà phát triển tạo nội dung HTML, XML hay một số định dạng khác của trang web một cách năng động, trong khi hồi âm yêu cầu của trình khách. Công nghệ này cho phép người ta nhúng mã Java và một số hành động xử lý đã được định trước (pre-defined actions) vào trong nội dung tĩnh của trang...Ưu điểm của JSP là độ bảo mật tin cậy hơn so với các ứng dụng mã nguồn mở khác, tự do triển khai và phát triển các ứng dụng Website hơn, mạnh mẽ hơn với kết nối cơ sở dữ liệu SQL Server 2005. Việc lựa chọn SQL Server 2005 bởi nó có những tính năng mà chúng tôi cần, sử dụng SQL Server 2005 giảm sự trùng lặp thông tin xuống mức thấp nhất. Do đó đảm bảo thông tin có tính nhất quán và toàn vẹn dữ liệu. Ngoài ra, SQL Server 2005 có thể đảm bảo dữ liệu có thể được truy xuất theo nhiều cách khác nhau và nhiều người có thể sử dụng một cơ sở dữ liệu. Website của chúng tôi được thiết kế theo mô hình client - Server (Khách Chủ). Trong mô hình này, máy khách và máy chủ như tham gia vào một cuộc hội thoại theo cơ chế “yêu cầu - đáp ứng” (request - response). Một ứng dụng chạy trên máy khách và yêu cầu dữ liệu từ máy chủ. Phía máy chủ xử lý các yêu cầu từ phía ứng dụng và chỉ gửi về các dữ liệu được yêu cầu bởi máy khách. Do đó, các công việc được tách biệt giữa máy khách và máy chủ. 1.3 Mục đích và ý nghĩa của đề tài 1.3.1 Mục đích Xây dựng được website giúp các rạp phim có thể bán vé cũng như quản lý rạp một cách tốt, thuận tiện và nhanh chóng hơn. Ngoài ra, hệ thống cũng có thể giúp các bạn muốn xem phim có thể ở nhà an tâm đặt vé, lựa chọn cho mình những bộ phim yêu thích với xuất chiếu thích hợp. 1.3.2 Ý nghĩa Qua việc xây dựng website này, chúng tôi có thể áp dụng những kiến thức được bồi dưỡng trong quá trình học tập tại trường vào công việc thực tế. Từ đó, chúng tôi đã tích lũy cho bản thân những kinh nghiệm quý báu mà sau này sẽ là nền tảng giúp cho việc lập nghiệp của bản thân. 8 Ngoài ra nếu website được tiếp tục hoàn thiện, mang vào áp dụng thực tế, chúng tôi tin rằng sản phẩm tạo thành sẽ giúp ích rất lớn cho các nhà quản lý rạp phim lẫn người đi xem. Chương 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 2.1 Mô tả yêu cầu Sau khi tìm hiểu và khảo sát thực tế tại các rạp chiếu phim, chúng tôi đã xác định các tác nhân sử dụng website như sau: Admin: Người quản lý hệ thống. Nhân viên bán vé: Người sử dụng website để bán vé xem phim cho khách hàng. Khách xem: Khách chỉ xem website mà không đăng ký thành viên tại website. Thành viên: Khách xem online và thực hiện đăng ký thành viên tại website thì trở thành thành viên. Dựa vào các tác nhân trên, website của chúng tôi gồm có 2 module chính: một module dành cho người quản lý và nhân viên bán vé, một module dành cho thành viên và khách xem. 2.1.1 Module dành cho người quản lý Sơ đồ chức năng 9 Hình 2.1 - Sơ đồ chức năng cho người quản lý Admin có thể: Quản lý danh sách phim. Quản lý danh sách lịch chiếu phim. Quản lý danh sách các phòng chiếu phim. Quản lý danh sách các sự kiện khuyến mãi ở rạp phim. Quản lý danh sách các thành viên. Quản lý danh sách các nhân viên. Thống kê số lượng phim và vé xem phim. Nhân viên bán vé có thể: Xử lý đặt vé online. Bán vé Mô tả usecase Usecase quản lý phim 10 Hình 2.2 - Usecase quản lý phim Admin có thể xem, thêm, sửa, xóa, cập nhật, tìm kiếm phim cũng như các thông tin liên quan đến phim. 11 Usecase quản lý lịch chiếu phim Hình 2.3 - Usecase quản lý lịch chiếu Admin có thể xem, thêm, sửa và tìm kiếm lịch chiếu phim. Đặc biệt, admin có còn có thể, tìm kiếm, thêm lịch hàng loạt và sửa lịch hàng loạt trong một khoảng thời gian nhất định. 12 Usecase quản lý phòng Hình 2.4 - Usecase quản lý phòng Admin có thể xem, thêm, sửa, xóa, cập nhật, tìm kiếm các phòng chiếu phim. Bên cạnh đó, admin cũng có thể quản lý ghế ở mỗi phòng. Usecase quản lý ghế Hình 2.5 - Usecase quản lý ghế Admin có thể thêm, cập nhật thông tin và xóa ghế ở mỗi phòng chiếu phim. 13 Usecase quản lý sự kiện Hình 2.6 - Usecase quản lý sự kiện Admin có thể xem, thêm, cập, sửa, xóa và tìm kiếm các sự kiện khuyến mãi đang hoặc sắp có ở rạp phim. Usecase giao dịch Hình 2.7 - Usecase giao dịch Nhân viên bán vé có thể sử dụng website để xử lý đặt vé online và bán vé xem phim cho khách hàng. 14 Usecase bán vé Hình 2.8 - Usecase bán vé Khi muốn bán vé, nhân viên bán vé chọn ngày bán, tiếp theo chọn tên phim muốn bán tương ứng với ngày vừa chọn, rồi chọn xuất chiếu của phim tương ứng với tên phim và ngày chiếu vừa chọn. Cuối cùng, nhân viên bán vé chọn ghế trống và bán cho khách hàng. Usecase xử lý đặt vé online Hình 2.9 - Usecase xử lý đặt vé online 15 Nhân viên bán vé có thể xem danh sách các thành viên đã đặt vé online. Nếu những thành viên đã đặt vé hợp lệ thì nhân viên bấm xác nhận đặt vé. Nếu những thành viên đặt vé không hợp lệ hoặc đã trước giờ chiếu phim 15 phút mà vẫn chưa đến rạp mua vé (thành viên khi đặt vé online phải đến rạp trước 15 phút để trả tiền và lấy vé) thì nhân viên bán vé có thể xóa. Usecase quản lý thành viên Hình 2.10 - Usecase quản lý thành viên Admin có thể xem danh sách thành viên, xóa và tìm kiếm thành viên. Ngoài ra, admin có thể thống kê được số lượng thành viên của website. Bên cạnh đó, admin còn có thể mở và khóa tài khoản của thành viên. 16 Usecase quản lý nhân viên Hình 2.11 - Usecase quản lý nhân viên Admin có thể xem danh sách nhân viên, thêm, sửa và xóa nhân viên. Bên cạnh đó, admin cũng có thể thống kê được tổng số nhân viên của rạp phim. Usecase thống kê Hình 2.12 - Usecase thống kê 17 Admin có thể thống kê một phim có bao nhiêu ngày chiều và xuất chiếu trong một khoảng thời gian nhất định. Admin có thể thống kê số lượng vé bán được của rạp phim trong một khoảng thời gian nhất định. 2.1.2 Module dành cho thành viên và khách xem online Sơ đồ chức năng Hình 2.13 - Sơ đồ chức năng dành cho thành viên và khách xem Xem và tìm kiếm danh sách các phim và các thông tin liên quan đến phim. Xem thông tin lịch chiếu phim. Xem và tìm kiếm danh sách các sự kiện khuyến mãi đang và sắp có tại rạp phim. Xem các câu hỏi thường gặp và câu trả lời. Thành viên có thể: Đăng nhập. Xem và cập nhật các thông tin thành viên của mình. Đặt vé online. Hủy các vé online đã đặt. Khách xem có thể: Đăng ký thành viên. 18 Mô tả usecase Usecase đăng ký và xem trang chủ của khách xem: Hình 2.14 - Usecase đăng ký và xem trang chủ của khách xem Khách xem có thể đăng ký tại website để trở thành thành viên. Bên cạnh đó, khách xem có thể xem danh sách tất cả các phim. 19 Usecase xem trang chủ của thành viên: Hình 2.15 - Usecase xem trang chủ của thành viên Thành viên và khách xem có thể xem danh sách tất cả các phim. Ngoài ra, thành viên có thể bình luận phim mà mình muốn. Usecase xem thông tin phim: Hình 2.16 - Usecase xem thông tin phim 20 Thành viên và khách xem có thể lựa chọn xem,và tìm kiếm danh sách các phim cũng như các thông tin liên quan đến phim đang chiếu đang hoặc sắp chiếu để phù hợp với nhu cầu của mỗi người. Usecase xem lịch chiếu phim: Hình 2.17 - Usecase xem lịch chiếu phim Thành viên và khách xem có thể xem tất cả các thông tin về lịch chiếu phim hoặc có thể lựa chọn xem thông tin lịch chiếu phim theo ngày hoặc theo phim tùy vào nhu cầu của mỗi người. 21 Usecase xem sự kiện: Hình 2.18 - Usecase xem sự kiện Thành viên và khách xem có thể tìm kiếm và xem thông tin các sự kiện khuyến mãi đang và sắp diễn ra tại rạp phim. Usecase xem FAQ: Hình 2.19 - Usecase xem FAQ 22 Thành viên và khách xem có thể các câu hỏi thường gặp và câu trả lời đã có sẵn trên website để tự mình giải đáp những thắc mắc của mình. Usecase đặt vé online: Hình 2.20 - Usecase đặt vé online Thành viên sau khi chọn xuất chiếu của phim mà mình muốn theo ngày chiếu hoặc theo tên phim thì có thể chọn số lượng vé và đặt vé online. 23 Usecase xem thông tin thành viên: Hình 2.21 - Usecase xem thông tin Thành viên có thể xem và cập nhật các thông tin thành viên của mình. Bên cạnh đó, thành viên cũng có thể xem thông tin và hủy các vé online mà mình đã đặt. 24 Usecase đăng nhập: Hình 2.22 - Usecase đăng nhập Admin, nhân viên bán vé, thành viên đăng nhập vào hệ thống để có thể sử dụng một số chức năng nhất định của website. Trên đây là các usecase mô tả các chức năng cơ bản trong 2 module chính của website. 25 2.2 Lược đồ cơ sở dữ liệu quan hệ Sau khi có được mô tả chi tiết các chức năng của hệ thống như phần trước, chúng tôi đã thiết kế lược đồ cơ sở dữ liệu quan hệ của website như sau: Hình 2.23 - Lược đồ cơ sở dữ liệu quan hệ 2.2.1 Giải thích tên bảng 26 Tên bảng Giải thích BinhLuan Bảng Bình Luận chứa bình luận phim ChiTietGhe Bảng Chi Tiết Ghế chứa số ghế DangPhim Bảng Dạng Phim chứa tên dạng phim DangPhong Bảng Dạng Phòng chứa tên dạng phòng DanhSachDatVeOnline Bảng Danh Sách Đặt Vé Online Ghe Bảng Ghế chứa số ghế và trạng thái của ghế Gia Bảng Giá chứa số tiền LichChieu Bảng Lịch Chiếu chứa lịch chiếu của phim LoaiGhe Bảng Loại Ghế chứa tên loại ghế LoaiPhim Bảng Loại Phim chứa tên loại phim NhanVien Bảng Nhân Viên chứa thông tin nhân viên Phim Bảng Phim chứa thông tin phim Phong Bảng Phòng chứa thông tin phòng QuocGia Bảng Quốc Gia chứa tên quốc gia Quyen Bảng Quyền có tên quyền SuKien Bảng Sự Kiện chứa tên và nội dung sự kiện ThanhVien Bảng Thành Viên chứa thông tin thành viên TinhTrang Bảng Tình Trạng chứa tình trạng của ghế Ve Bảng Vé chứa đơn giá XuatChieu Bảng Xuất Chiếu chứa giờ chiếu của phim 2.2.2 Ý nghĩa các trường tương ứng Tên trường Tên bảng Kiểu dữ Độ dài liệu tối đa Ý nghĩa 27 MaBinhLuan TenDangNhapTV BinhLuan ThanhVien, DanhSachDatVeOnline NoiDungBinhLuan BinhLuan int varchar MaPhim int nvarchar 200 varchar 5 Tên phim Mã dạng phim MaLoaiPhim DoDaiGio Phim, BinhLuan, DanhSachDatVeOnline, XuatChieu, Ve Phim DangPhim, Phim, Gia LoaiPhim, Phim Phim Mã bình luận Tên đăng nhập của thành viên Nội dung chi tiết của bình luận Mã phim varchar int DoDaiPhut Phim int MaQuocGia NgayBatDau QuocGia, Phim Phim varchar 50 datetime NgayKetThuc Phim datetime AnhDaiDien Phim varchar GhiChu Phim ntext MoTaPhim Phim ntext TenLoaiPhim TenDangPhim LoaiPhim DangPhim nvarchar 30 nvarchar 15 TenQuocGia HoTen QuocGia ThanhVien nvarchar 30 nvarchar 50 NgaySinh ThanhVien datetime Mã loại phim Độ dài (phần giờ) Độ dài (phần phút) Mã quốc gia Ngày bắt đầu chiếu phim Ngày kết thúc chiếu phim Ảnh đại diện cho phim Ghi chú của phim Mô tả của phim Tên loại phim Tên dạng phim Tên quốc gia Họ tên của thành viên Ngày sinh của TenPhim MaDangPhim 30 text 5 100 28 thành viên Địa chỉ của thành viên Mật khẩu đăng nhập của thành viên Số điện thoại của thành viên Địa chỉ email của thành viên Giới tính của thành viên Mã xác nhận đặt vé online Mã xuất chiếu DiaChi ThanhVien nvarchar 100 MatKhau ThanhVien varchar 30 SoDienThoai ThanhVien varchar 11 Email ThanhVien varchar 50 GioiTinh ThanhVien varchar 10 MaXacNhan DanhSachDatVeOnline XuatChieu, DanhSachDatVeOnline, Ve, LichChieu DanhSachDatVeOnline int int Số lượng vé thường được phép đặt còn lại SoLuongVeVip DanhSachDatVeOnline int MaLichChieu DanhSachDatVeOnline, LichChieu, Ve DanhSachDatVeOnline int Số lượng vé vip được phép đặt còn lại Mã lịch chiếu GioChieu XuatChieu int PhutChieu XuatChieu int MaXuatChieu SoLuongVeThuon g TrangThaiDatVe int varchar 50 Trạng thái đặt vé (bao gồm Xác nhận và Chưa xác nhận) Giờ chiếu phim (phần giờ) Giờ chiếu phim (phần 29 MaPhong varchar NgayChieu MaVe TenDangNhapNV Phong, Ghe, Ve, LichChieu LichChieu Ve NhanVien, Ve 5 MaGia MaSuKien DonGia Gia, Ve SuKien, Ve Ve varchar int int 5 SoGhe varchar 5 TenSuKien NoiDungSK Ghe, Ve,ChiTietGhe SuKien SuKien NgayBatDauSK SuKien datetime NgayKetThucSK SuKien datetime HinhAnhSuKien SuKien varchar MucGiamGia GhiChuSK SuKien SuKien nvarchar 5 nvarchar 200 MatKhauNV NhanVien varchar TenNhanVien MaQuyen NhanVien Quyen, NhanVien nvarchar 50 varchar 5 datetime int varchar 10 nvarchar 100 text 100 30 phút) Mã phòng chiếu Ngày chiếu Mã vé Tên đăng nhập của nhân viên Mã giá bán Mã sự kiện Đơn giá của vé xem phim Mã số ghế Tên sự kiện Nội dung sự kiện Ngày bắt đầu áp dụng sự kiện Ngày kết thúc áp dụng sự kiện Đường dẫn chứa hình ảnh đại diện của sự kiện Mức giảm giá Ghi chú cho sự kiện Mật khẩu đăng nhập của nhân viên Tên nhân viên Mã quyền (dùng để phân loại admin, user, người 30 dùng) Ngày sinh của nhân viên Giới tính của nhân viên Mã loại ghế Số tiền vé NgaySinhNV NhanVien datetime GioiTinhNV NhanVien varchar 10 MaLoaiGhe SoTien LoaiGhe, Ghe, Gia Gia varchar int 5 TenLoaiGhe LoaiGhe nvarchar 20 Tên loại ghế MaTinhTrang TinhTrang, Ghe varchar TinhTrangGhe TinhTrang nvarchar 50 TrangThaiGhe Ghe nvarchar 30 TenPhong Phong nvarchar 30 Mã tình trạng (gồm 2 tình trạng D và E) Tình trạng ghế (gồm Tốt hay Hỏng) Trạng thái ghế (gồm Đã bán hay Chưa bán) Tên phòng MaDangPhong DangPhong, Phong varchar TenDangPhong DangPhong nvarchar 30 TrangThaiPhong Phong nvarchar 30 SoLuongDayGheToiDa SoLuongGheToiDaOMoiDay Phong numeric 2,0 Phong numeric 2,0 GhiChuPhong Phong nvarchar 200 TenQuyen Quyen nvarchar 20 2.2.3 Giải thích mối quan hệ giữa các bảng 5 5 Mã dạng phòng Tên dạng phòng Trạng thái phòng Số lượng dãy ghế tối đa Số lượng ghế tối đa ở mỗi dãy Ghi chú của phòng Tên quyền truy cập 31 Tên bảng Tên bảng Phim BinhLuan Qua n hệ 1-n Phim DangPhim 1-n Phim LoaiPhim 1-n ThanhVien BinhLuan 1-n ThanhVien DanhSachDatVeOnlin e 1-n Phim XuatChieu 1-n XuatChieu LichChieu 1-n LichChieu Phong 1-n XuatChieu Ve 1-n Giải thích Giữa bảng Phim và bảng BinhLuan có quan hệ 1-n, vì một phim có thể có một hoặc nhiều bình luận cho phim đó. Giữa bảng Phim và bảng DangPhim có quan hệ 1-n, vì một dạng phim có thể là dạng của một hoặc nhiều phim. Giữa bảng Phim và bảng LoaiPhim có quan hệ 1-n, vì một loại phim có thể là loại của một hoặc nhiều phim. Giữa bảng ThanhVien và bảng BinhLuan có quan hệ 1n, vì một thành viên có thể có một hoặc nhiều bình luận. Giữa bảng ThanhVien và bảng DanhSachDatVeOnline có quan hệ 1-n, vì một thành viên có thể đặt một hoặc nhiều vé. Giữa bảng Phim và bảng XuatChieu có quan hệ 1-n, vì một phim thì có thể có một hoặc nhiều xuất chiếu. Giữa bảng XuatChieu và bảng LichChieu có quan hệ 1-n, vì một lịch chiếu có thể có một hoặc nhiều xuất chiếu. Giữa bảng LichChieu và bảng Phong có quan hệ 1-n, vì một phòng có thể có một hoặc nhiều lịch chiếu. Giữa bảng XuatChieu và bảng Ve có quan hệ 1-n, vì một xuất chiếu có thể là xuất chiếu 32 SuKien Ve 1-n Ve ChiTietGhe 1-n ChiTietGh e Ghe 1-n NhanVien Ve 1-n LichChieu Ve 1-n Phong LichChieu 1-n Phong Ghe 1-n Gia Ve 1-n cho một hoặc nhiều vé. Giữa bảng SuKien và bảng Ve có quan hệ 1-n, vì một sự kiện có thể áp dụng cho một hoặc nhiều vé. Giữa bảng Ve và bảng ChiTietGhe có quan hệ 1-n, vì một ghế có thể đại diện cho một hoặc nhiều vé tại mỗi thời điểm lịch chiếu khác nhau. Giữa bảng ChiTietGhe và bảng Ghe có quan hệ 1-n, vì mỗi số ghế có thể đại diện cho một ghế ở nhiều phòng. Giữa bảng NhanVien và bảng Ve có quan hệ 1-n, vì một nhân viên có thể bán một hoặc nhiều vé. Giữa bảng LichChieu và bảng Ve có quan hệ 1-n, vì một lịch chiếu có thể là lịch chiếu của một hoặc nhiều vé. Giữa bảng Phong và bảng LichChieu có quan hệ 1-n, vì một phòng có thể có một hoặc nhiều lịch chiếu. Giữa bảng Phong và bảng Ghe có quan hệ 1-n, vì một phòng có thể chứa một hoặc nhiều ghế. Giữa bảng Gia và bảng Ve có quan hệ 1-n, vì một giá có thể ứng với một hoặc nhiều vé. 2.3 Kiến trúc kỹ thuật tổng quan của hệ thống Hệ thống của chúng tôi được thiết kế dựa trên kiến trúc tổng quan: 33 Hình 2.24 - Kiến trúc kỹ thuật tổng quan của hệ thống Tầng thứ nhất - Tầng giao diện (giao tiếp với người sử dụng): chỉ đơn thuần xử lý việc giao tiếp với người sử dụng, nhập xuất … mà không thực hiện việc tính toán, kiểm tra, xử lý hay các thao tác liên quan đến cơ sở dữ liệu. Tầng thứ hai - Tầng xử lý nghiệp vụ: lớp này chuyên thực hiện các xử lý, kiểm tra các ràng buộc, các quy tắc ứng xử của phần mềm, các chức năng cốt yếu… Việc thực hiện này độc lập với cách thiết kế cũng như cài đặt giao diện. Thông tin cho lớp này thực hiện các xử lý của mình được lấy từ lớp giao diện. Tầng thứ ba - Tầng quản lý dữ liệu: lớp này chuyên thực hiện các công việc liên quan đến dữ liệu. Dữ liệu lấy từ cơ sở dữ liệu (SQL Server 2005). Đối với cơ sở dữ liệu, lớp này thực hiện kết nối trực tiếp với cơ sở dữ liệu và thực hiện tất cả thao tác liên quan đến cơ sở dữ liệu. 34 Cách hoạt động của hệ thống như sau: Người dùng (client) thông qua các trình duyệt web (IE, Firefox, Opera…) truy cập vào website được hiển thị dưới dạng các trang HTML, CSS, Javascript đã được mã hóa. Người dùng (client) từ đây thông qua giao thức HTTP, gửi các yêu cầu (request) đến Server. Tại đây Web Server (Tomcat) sẽ tiếp nhận và xử lý các yêu cầu nhờ vào các JSP Pages. Web Server sẽ tính toán và phân tích các yêu cầu nhờ vào các JSP Pages và truy cập vào cơ sở dữ liệu (SQL Server 2005) để truy xuất dữ liệu. Dữ liệu được yêu cầu sẽ được cơ sở dữ liệu (SQL Server 2005) truy xuất ra và đưa đến Web Server, tại đây các JSP Pages tiếp tục tính toán và xử lý dữ liệu được nhận. Sau đó Web Server (Tomcat) sẽ trả về kết quả cho người dùng (client) thông qua các trang HTML, CSS, Javascript đã được mã hóa. Người dùng (client) lúc này tiếp tục thông qua các trình duyệt web (IE, Firefox, Opera…) để đọc và xem các trang kết quả này. 2.4 Thiết kế chi tiết của một số chức năng quan trọng Do website có quá nhiều chức năng, để mô tả được hết các chức năng thì thật sự không cần thiết. Vậy nên, chúng tôi chỉ xin mô tả một vài chức năng quan trọng nổi bật của website. 2.4.1 Chức năng bán vé Sơ đồ tuần tự 35 Hình 2.25 - Sơ đồ tuần tự chức năng bán vé Nhân viên bán vé sau khi đăng nhập thành công thì có thể click vào mục giao dịch, chọn bán vé để bắt đầu bán vé. 36 Hình 2.26 - Giao diện của màn hình bán vé Ở trang bán vé, nhân viên bán vé click chọn ngày muốn bán, sau đó website sẽ hiển thị các phim hiện có tương ứng với ngày mà nhân viên bán vé đã chọn. Tiếp theo, nhân viên bán vé click chọn phim muốn bán, sau đó website sẽ hiển thị các xuất chiếu hiện có của phim và ngày tương ứng mà nhân viên bán vé đã chọn. Sau đó, nhân viên bán vé tiếp tục click chọn xuất chiếu phim muốn bán, website sẽ chuyển sang màn hình giao dịch hiển thị phòng và ghế tương ứng với phim, xuất chiếu và ngày chiếu mà nhân viên bán vé đã click chọn trước đó. 37 Hình 2.27 - Giao diện của màn hình giao dịch Ở màn hình hiển thị phòng và ghế này, sơ đồ ghế được hiển thị tương ứng như vị trí chỗ ngồi của khách hàng trong phòng chiếu phim. Tại màn hình này, nhân viên có thể nhìn thấy số ghế của mỗi ghế, ghế nào là ghế VIP (ghế có hiển thị chữ V), ghế nào là ghế thường (ghế có hiển thị chữ T), ghế nào là ghế hỏng không được bán (hiển thị chữ D và màu xám đen), ghế nào là ghế đã bán (ghế hiển thị màu đỏ), ghế nào là ghế chưa bán (hiển thị màu tím nhạt). Bên cạnh đó, ở màn hình này còn hiển thị số lượng vé thường, vé VIP online đã đặt và số lượng ghế còn trống cũng như số lượng ghế đã bán giúp nhân viên bán vé có thể bán vé được dễ dàng hơn. Dựa vào sơ đồ ghế đó, nhân viên bán vé click chọn vào ghế trống muốn bán. 38 Hình 2.28 - Giao diện của màn hình thông tin ghế Sau khi nhân viên bán vé click chọn vào ghế trống, website sẽ chuyển sang màn hình hiển thị những thông tin về ghế mà nhân viên đã chọn như mã phòng, tên phim, ngày chiếu, xuất chiếu, số ghế, trạng thái ghế… Nhân viên bán vé có thể chọn những sự kiện khuyến mãi đang được áp dụng tại rạp bằng cách chọn trên combobox ở mục tên sự kiện, mức giảm giá và tổng tiền sẽ được tự động nhảy tương ứng với số ghế và mức giảm giá của sự kiện mà nhân viên bán vé vừa chọn. Nhân viên bán vé muốn bán vé thì tiếp tục click OK, màn hình sẽ quay lại trang giao dịch hiển thị ghế ban đầu, và ghế màu xanh nhạt ( chưa bán ) vừa chọn sẽ tự động chuyển sang màu đỏ ( đã bán ). Nếu không bán, nhân viên bán vé có thể click chọn Cancel để quay trở lại trang giao dịch ban đầu. 39 Nếu nhân viên click chọn ghế đã bán thì website sẽ chuyển sang màn hình thông tin ghế nhưng ở đây, nhân viên bán vé chỉ có thể xem các thông tin ghế đã hiển thị, button OK để bán vé bị disable. Nhân viên bán vé cũng có thể bấm Cancel để quay trở lại trang giao dịch ban đầu. Hình 2.29 - Giao diện của màn hình khi ghế được chọn không sử dụng được Nếu nhân viên bán vé click chọn vào ghế hỏng thì màn hình sẽ nhảy ra thông báo “Ghế này không sử dụng được”. Nhân viên bán vé click chọn OK để quay trở lại màn hình giao dịch như ban đầu. 40 Mô tả thuật toán chức năng bán vé Hình 2.30 - Sơ đồ khối thuật toán chức năng bán vé Các biến a, b, c sẽ lấy giá trị ngày chiếu, tên phim, xuất chiếu từ hàm request.getParameter(); khi nhân viên bán vé chọn ngày chiếu, tên phim, xuất chiếu để bán vé. Từ đó, hệ thống chuyển sang màn hình hiển thị phòng và danh sách ghế tương ứng với các giá trị vừa lấy. Sau đó, khi nhân viên bán vé chọn ghế trống để bán, hệ thống bắt đầu truy cập Database lấy trạng thái ghế tương ứng với số ghế mà nhân viên bán vé vừa click chọn và trả về resultSet. 41 Nếu resultSet trạng thái ghế của ghế đã chọn là “chưa bán” (ghế có màu tím nhạt), khi người dùng click chọn ok thì trạng thái ghế trong Database tự động được cập nhật chuyển sang “đã bán” và trả lại trang HTML (ghế tự động chuyển sang màu đỏ) cho người dùng. Nếu resultSet trạng thái ghế của ghế đã chọn là “đã bán” thì hệ thống chỉ cho phép hiển thị thông tin, các button khác bị disable. Nhân viên bán vé chỉ có thể xem thông tin ghế và bấm nút Cancel. Khi bấm nút Cancel, hệ thống trả lại trang HTML giao dịch trước đó. Nếu resultSet trạng thái ghế của ghế đã chọn là “hỏng” thì hệ thống hiện ra thông báo và trả về HTML. Một số câu lệnh truy vấn SQL đã sử dụng trong chức năng này Câu lệnh sql để tính tổng số lượng vé thường online đã đặt: SELECT sum (SoLuongVeThuong) FROM DanhSachDatVeOnline INNER JOIN LichChieu ON LichChieu.MaLichChieu = DanhSachDatVeOnline.MaLichChieu and LichChieu.NgayChieu = '"+ngayChieu+"' and LichChieu.MaPhong = '"+maPhong+"' inner join XuatChieu ON XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and XuatChieu.GioChieu = '"+gioChieu+"' and XuatChieu.PhutChieu = '"+phutChieu+"' Ở đây ta thống kê số lượng vé thường bằng cách dùng câu lệnh Select sum trường SoLuongVeThuong từ bảng DanhSachDatVeOnline nối trong với bản LichChieu và XuatChieu với điều kiện theo ngày chiếu, mã phòng, và giờ chiếu xác định. Các biến ngaychieu, maPhong, gioChieu, xuatChieu được lấy giá trị từ hàm request.getParameter();. 42 Câu lệnh sql để tính tổng số lượng vé vip online đã đặt: SELECT sum (SoLuongVeVip) FROM DanhSachDatVeOnline INNER JOIN LichChieu ON LichChieu.MaLichChieu=DanhSachDatVeOnline.MaLichChieu and LichChieu.NgayChieu= '"+ngayChieu+"' and LichChieu.MaPhong = '"+maPhong+"' inner join XuatChieu ON XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and XuatChieu.GioChieu = '"+gioChieu+"' and XuatChieu.PhutChieu = '"+phutChieu+"' Tương tự, ta thống kê số lượng vé VIP bằng cách dùng câu lệnh Select sum trường SoLuongVeVIP từ bảng DanhSachDatVeOnline inner join với bảng LichChieu và XuatChieu với điều kiện theo ngày chiếu, mã phòng, và giờ chiếu xác định. 2.4.2 Chức năng đặt vé Sơ đồ tuần tự 43 Hình 2.31 - Sơ đồ tuần tự chức năng đặt vé 44 Hình 2.32 - Giao diện màn hình lịch chiếu theo phim Thành viên sau khi đăng nhập thành công có thể đặt vé bằng cách click vào Lịch chiếu trên menu rồi chọn xem xuất chiếu theo phim. Ứng với mỗi phim sẽ có các xuất chiếu của phim đó, thành viên click vào tên phim bất kì, xuất chiếu sẽ được hiển thị trên màn hình. 45 Hình 2.33 - Giao diện màn hình đặt vé Click vào xuất chiếu, thành viên sẽ được chuyển đến trang Đặt vé, tại đây thành viên sẽ chọn số lượng vé thường hoặc vé VIP (mặc định không quá 8 vé mỗi loại). Ứng với mỗi loại vé và số lượng đã chọn, giá tiền sẽ được hiển thị trên màn hình. Sau đó, thành viên click vào nút đặt vé. Nếu quá trình đặt vé thành công, màn hình sẽ hiện ra thông báo. Click vào OK để quay trở lại màn hình đặt vé. 46 Hình 2.34 - Giao diện màn hình đặt vé sau khi đặt xong 47 Mô tả thuật toán chức năng đặt vé Hình 2.35 - Sơ đồ khối thuật toán chức năng đặt vé 48 Gán a, b, c, d, e lần lượt là tenPhim, maXuatChieu, soluongVeThuong, soluongVeVIP, maLichChieu, có a, b, c, d nhận giá trị từ Database thông qua lệnh hàm request.getParameter(); khi thành viên chọn tên phim, xuất chiếu rồi chọn số lượng vé. Lúc này hệ thống thực hiện gọi trang JSP để truy cập vào Database đếm số lượng vé online được phép đặt và trả về một resultset rs, sau đó thực hiện so sánh với điều kiện c (số lượng vé thường) + d (số lượng vé VIP) có bé hơn hoặc bằng với rs (số lượng vé online được phép đặt). Nếu điều kiện sai thì hiện ra thông báo hết vé tại trang HTML rồi kết thúc quá trình xử lý đặt vé. Nếu điều kiện đúng thì tiếp tục thực hiện thêm mới dòng dữ liệu vào danh sách đặt vé online trong Database tenPhim, maXuatChieu, soluongVeThuong, soluongVeVIP, maLichChieu và xác định trạng thái “Chuaxacnhan”, rồi sau đó hiện ra thông báo đặt vé thành công tại trang html và kết thúc quá trình xử lý đặt vé. Một số câu lệnh truy vấn SQL đã sử dụng trong chức năng này Câu lệnh SQL xuất ra mã xuất chiếu và mã ngày chiếu tương ứng với tên phim mà người dùng đã chọn: SELECT sum (SoLuongVeVip) FROM DanhSachDatVeOnline INNER JOIN LichChieu ON LichChieu.MaLichChieu=DanhSachDatVeOnline.MaLichChieu and LichChieu.NgayChieu= '"+ngayChieu+"' and LichChieu.MaPhong = '"+maPhong+"' INNER JOIN XuatChieu ON XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and XuatChieu.GioChieu = '"+gioChieu+"' and XuatChieu.PhutChieu = '"+phutChieu+"' SELECT XuatChieu.MaXuatChieu,XuatChieu.MaPhim,LichChieu.MaLichChieu FROM XuatChieu, LichChieu, Phim WHERE XuatChieu.MaPhim = Phim.MaPhim and XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and Phim.MaPhim 49 ='"+session.getAttribute("maPhim")+"'and LichChieu.NgayChieu ='"+session.getAttribute("ngayChieuAttribute")+"' Ở đây, ta dùng câu lệnh Select các trường MaXuatChieu từ bảng XuatChieu, MaPhim từ bảng XuatChieu, MaLichChieu từ bảng LichChieu với điều kiện mã phim và ngày chiếu xác định (lấy giá trị từ hàm session.getAttribute). Để từ đó ta có thể xuất ra xuất chiếu và ngày chiếu tương ứng. Câu lệnh SQL chèn dòng dữ liệu vào cơ sở dữ liệu khi người dùng đặt vé: SELECT sum (SoLuongVeVip) FROM DanhSachDatVeOnline INNER JOIN LichChieu ON LichChieu.MaLichChieu=DanhSachDatVeOnline.MaLichChieu and LichChieu.NgayChieu= '"+ngayChieu+"' and LichChieu.MaPhong = '"+maPhong+"' INNER JOIN XuatChieu ON XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and XuatChieu.GioChieu = '"+gioChieu+"' and XuatChieu.PhutChieu = '"+phutChieu+"' SELECT XuatChieu.MaXuatChieu,XuatChieu.MaPhim,LichChieu.MaLichChieu FROM XuatChieu, LichChieu, Phim WHERE XuatChieu.MaPhim = Phim.MaPhim and XuatChieu.MaXuatChieu = LichChieu.MaXuatChieu and Phim.MaPhim ='"+session.getAttribute("maPhim")+"'and LichChieu.NgayChieu ='"+session.getAttribute("ngayChieuAttribute")+"' INSERT INTO [Quanlybanvephim].[dbo].[DanhSachDatVeOnline] ([TenDangNhapTV], [SoLuongVeThuong] ,[MaPhim],[SoLuongVeVip],[MaXuatChieu], [MaLichChieu]) VALUES ('"+tendn+"','"+SLveThuong+"' ,'"+maPhim3+"' ,'"+SLveVip+"' ,'"+maXuatChieu+"' ,'"+maLichChieu+"')"; 50 Ở đây, ta dùng câu lệnh Insert into để thêm mới vào bảng DanhSachDatVeOnline ở cột: TenDangNhapTV, SoLuongVeThuong, MaPhim, SoLuongVeVip, MaXuatChieu, MaLichChieu giá trị lần lượt là: '"+tendn+"', '"+SLveThuong+"', '"+maPhim3+"', '"+SLveVip+"', '"+maXuatChieu+"' , '"+maLichChieu+"'. 2.4.3 Chức năng thống kê phim Sơ đồ tuần tự Hình 2.36 - Sơ đồ tuần tự chức năng thống kê phim Admin sau khi đăng nhập thành công có thể sử dụng chức năng thống kê phim bằng cách click chọn Thống kê phim trên Menu. Trên màn hình sẽ xuất hiện textbox để Admin nhập ngày, hoặc cũng có thể chọn ngày trên lịch tự động có sẵn ở bên cạnh textbox. Admin cần chọn 2 thời điểm thời gian là “Từ ngày” và 51 “Đến ngày” để xác nhận khoảng thời gian mà Admin muốn thống kê phim. Hình 2.37 - Giao diện màn hình thống kê phim Ở màn hình này, nếu admin nhập ngày tháng năm trong từ ngày bé hơn ngày tháng năm trong đến ngày thì sau khi Admin click nút tìm kiếm, website sẽ hiện ra thông báo lỗi. Admin click OK để quay trở lại trang thống kê ban đầu. Nếu admin nhập đúng ngày tháng năm trong “Từ ngày” nhỏ hơn hoặc bằng ngày tháng năm trong “Đến ngày” thì sau khi Admin click chọn nút “Thống kê”. Màn hình sẽ hiển thị bảng thống kê gồm tên các bộ phim cùng số lượng vé bán được của phim đó trong khoảng thời gian mà Admin đã chọn. 52 Mô tả thuật toán chức năng thống kê phim Hình 2.38 - Sơ đồ khối thuật toán chức năng thống kê phim Ta lấy a và b tượng trưng cho tu_ngay và den_ngay, giá trị a và b được lấy thông qua hàm request.getParameterVaLues(); String tuNgayGT = request.getParameter("txtTuNgay"); String denNgayGT = request.getParameter("txtDenNgay"); 53 Sau đó, ta đem so sánh với điều kiện a= '"+tuNgay+"' Các biến tuNgay, denNgay lấy giá trị từ hàm request.getParameter (); (do Admin nhập). Câu lệnh select đếm tất cả những vé của phim có ngày chiếu trùng với ngày chiếu mà Admin yêu cầu. SELECT count ([Ve].[MaVe]) FROM [Quanlybanvephim].[dbo].[Ve] ,[Quanlybanvephim].[dbo]. [LichChieu] WHERE [Ve].[MaLichChieu]=[LichChieu].[MaLichChieu] and [Ve]. [MaPhim]= '"+maPhimArray.get(i)+"' and '"+tuNgay+"'= '"+ gio+ "' and GioChieu < '" + gioKeTiep + "' "+ "' and NgayChieu='"+ ngay.get(k) + "' and GioChieu >= '"+ gio+ "' and GioChieu < '" + gioKeTiep + "' ";+ maPhong.get(i) + "' and NgayChieu='"+ ngay.get(k) + "' and GioChieu >= '" 65 Chương 3: KẾT QUẢ CHẠY DEMO VÀ KIỂM THỬ 3.1 Kết quả chạy demo một số kịch bản chính Để giúp thầy cô và các bạn hiểu rõ hơn về website, sau đây chúng tôi xin trình bày kết quả demo một số kich bản chính của website. 3.1.1 Kịch bản đặt vé Đầu tiên, khách xem khi vào website muốn đặt vé phải thực hiện viện đăng ký. Muốn đăng ký thành viên, khách xem click vào mục “Đăng nhập” trên Menu. Website sẽ hiển thị ra màn hình đăng nhập, và bên cạnh đó là mục hướng dẫn đăng ký, khách xem click link hướng dẫn để chuyển qua trang đăng ký. Hình 3.1 - Giao diện của màn hình đăng ký thành viên Ở trang đăng ký thành viên này, khách xem điền đầy đủ các thông tin như Họ tên, Tên đăng nhập, Mật khẩu, Email, Số điện thoại, Ngày sinh, Giới tính, Địa chỉ. Các thông tin Họ tên, Tên 66 đăng nhập, Mật khẩu, Nhập lại mật khẩu, Email có dấu * màu đỏ là các thông tin bắt buộc phải điền. Nếu khách xem không điền, hệ thống lập tức đưa ra thông báo. Các thông tin còn lại như Giới Tính, Ngày Sinh, Địa Chỉ thì không bắt buộc phải điền. Sau khi điền đầy đủ các thông tin, người dùng click vào nút “Thêm” ở bên dưới để hoàn tất việc đăng ký thành viên. Nếu các thông tin khách xem điền hợp lệ thì hệ thống sẽ đưa ra thông báo đăng ký thành công. Nếu không, hệ thống sẽ đưa ra thông báo đăng ký sai. Sau khi hoàn tất việc đăng ký thành viên, khách xem đã trở thành thành viên với tài khoản trên website bao gồm tên đăng nhập và mật khẩu vừa đăng ký. Lúc này thành viên click vào mục “Đăng nhập” trên Menu để tiến hành đăng nhập. Hình 3.2 - Giao diện của màn hình đăng nhập 67 Thành viên điền tên đăng nhập và mật khẩu vào textbox. Nếu tên đăng nhập và mật khẩu đúng thì đăng nhập thành công vào hệ thống và màn hình chuyển sang trang chủ. Ngược lại, nếu tên đăng nhập và mật khẩu không đúng thì hệ thống báo thông tin đăng nhập sai. Sau khi đăng nhập thành công, thành viên muốn đặt vé click vào lịch chiếu để chọn xem lịch chiếu theo phim hoặc theo ngày tùy theo nhu cầu của mỗi người. Ở đây chúng tôi demo cách chọn lịch chiếu theo phim. Thành viên click vào mục “Lịch chiếu” và click chọn “Theo phim”. Hình 3.3 - Giao diện màn hình trang chủ 68 Website chuyển sang màn hình lịch chiếu theo phim. Ở đây, màn hình hiển thị danh sách các phim đang và sắp chiếu hiện có tại rạp. Thành viên click chọn phim muốn xem. Sau khi thành viên click chọn tên phim muốn xem, ngày chiếu và xuất chiếu tương ứng với phim đó sẽ hiện ra ở khung phía bên phải. Hình 3.4 - Giao diện màn hình trang lịch chiếu theo phim 69 Ở đây, thành viên click chọn vào xuất chiếu muốn xem. Website chuyển sang màn hình đặt vé. Hình 3.5 - Giao diện màn hình đặt vé Ở trang màn hình đặt vé, thành viên click chọn số lượng vé thường và số lượng vé VIP muốn đặt. Khi thành viên click chọn số lượng cột “Thành tiền” sẽ tự động nhảy giá tương ứng với số lượng vé mà thành viên đã chọn. Mỗi loại vé, thành viên chỉ được đặt tối đa là 8 vé. Sau khi chọn số lượng vé mình muốn, thành viên click vào button “Đặt vé” để thực hiện việc đặt vé. Vì hệ thống chỉ cho phép số lượng vé online được đặt chiếm 30% trên tổng số vé. Nên nếu số lượng vé thành viên đặt lúc này lớn hơn số lượng vé online được phép đặt thì hệ thống sẽ hiển thị thông báo hết vé. Ngược lại, nếu số lượng vé thành viên đặt lúc này hợp lệ thì hệ thống hiển thị thông báo mã vé và đặt vé thành công. 70 Hình 3.6 - Giao diện màn hình trang đặt vé sau khi đặt vé thành công Thành viên nhớ mã vé mà website đã hiển thị để đến rạp phim đối chiếu và thanh toán. Cuối cùng, thành viên click OK để quay trở lại website. 3.1.2 Chức năng cập nhật lịch chiếu Admin muốn cập nhật lịch chiếu thì phải đăng nhập. Để đăng nhập, Admin click vào link Admin trên trang chủ. 71 Hình 3.7 - Giao diện màn hình trang chủ Sau khi click chọn link Admin, website chuyển sang màn hình đăng nhập Admin. Admin điền tên đăng nhập và mật khẩu của mình vào. 72 Hình 3.8 - Giao diện màn hình trang đăng nhập admin Nếu tên đăng nhập và mật khẩu không hợp lệ thì hệ thống hiển thị thông báo lỗi. Nếu tên đăng nhập và mật khẩu hợp lệ thì admin đăng nhập thành công và màn hình chuyển sang module dành cho Admin và nhân viên bán vé. Admin sau khi đăng nhập thành công, muốn cập nhật lịch chiếu, admin click chọn mục “Lịch chiếu” trên Menu. 73 Hình 3.9 - Giao diện màn hình trang quản lý lịch chiếu Ở màn hình này, admin có thể tự nhập ngày tháng năm vào 2 textbox “Từ ngày” và “Đến ngày” hoặc có thể click chọn ngày tháng năm ở trên lịch có sẵn ở màn hình để chọn khoảng thời gian mà mình muốn cập nhật. Sau đó Admin click vào button Tìm kiếm. Nếu ngày tháng năm ở ô “Từ ngày” lớn hơn ngày tháng năm ở ô “Đến ngày” thì hệ thống hiện ra thông báo lỗi. Ngược lại, nếu ngày tháng năm ở ô “Từ ngày” bé hơn hoặc bằng ngày tháng năm ở ô “Đến ngày” là hợp lệ, thì hệ thống hiển thị trên màn hình lịch chiếu có các thông tin tên phim, giờ bắt đầu chiếu, giờ kết thúc chiếu theo phòng chiếu và ngày chiếu. Ngày chiếu nằm trong khoảng thời gian mà Admin vừa click chọn. 74 Hình 3.10 - Giao diện màn hình quản lý lịch chiếu khi đang cập nhật Ở màn hình này, những thông tin lịch chiếu ở những ngày bé hơn ngày thực tại bị disable, tức là Admin chỉ có thể xem mà không được quyền cập nhật sửa chữa thông tin các lịch chiếu trong quá khứ. Đối với lịch chiếu từ ngày hiện tại trở đi, Admin có thể cập nhật lịch chiếu bằng cách chọn tên phim từ danh sách phim hiện có tại rạp ở combobox. Sau đó Admin nhập giờ bắt đầu chiếu vào textbox. Cuối cùng, Admin click vào button Cập nhật. 75 Hình 3.11 - Giao diện màn hình quản lý lịch chiếu sau khi cập nhật lịch Sau khi Admin click vào button “Cập nhật” thì thông tin ở giờ kết thúc tự động nhảy ra ứng với giờ bắt đầu chiếu mà Admin nhập và các thông tin lịch chiếu đã được cập nhật xong. 76 3.2 Kết quả kiểm thử Số lượng màn hình 33 Chương 4: KẾT LUẬN Số lượng test case 1155 Số lượng lỗi 231 4.1 Đánh giá kết quả thực hiện Xây dựng website quản lý bán vé xem phim có hỗ trợ đặt vé online không phải là 1 giải pháp mới mẻ, nhưng nó mang tính thực tế cao, nhất là trong giai đoạn hiện nay – khi Việt Nam đang tiến hành các chính sách công nghiệp hóa, hiện đại hóa đất nước, đẩy mạnh công nhệ thông tin, đưa tin học hóa vào cuộc sống. Việc thiết lập website riêng và quản lý chúng cho các rạp phim nói chung càng trở nên là nhu cầu thiết yếu. Dưới sự hướng dẫn và gợi ý của TS. Huỳnh Ngọc Pháp, chúng tôi đã thực hiện đề tài này nhằm đưa ra một giải pháp quản lý phù hợp cho các website của rạp phim. 4.1.1 Ưu điểm của sản phẩm Với sự nỗ lực hết sức mình, chúng tôi đã cố gắng hoàn thành các yêu đầu đặt ra, bao gồm: Giao diện được thiết kế trên Photoshop để tăng tính thẩm mỹ và tạo tính sống động, thu hút người ghé xem trang web. Toàn bộ website đều sử dụng template để thiết kế và lập trình trên template cho phần phân quyền quản trị. Lập trình hiển thị nội dung phim, lịch chiếu và cả các sự kiện liên quan đến rạp. Lập trình cho phép khách hàng đặt chỗ trực tuyến trên website, ứng với phim, lịch chiếu được chọn. Lập trình quản trị cho phép việc thêm mới, hiệu chỉnh, xóa bỏ các phim, lịch chiếu của phim hay các sự kiện liên quan đến rạp. Lập trình quản lý việc đặt chỗ và xuất vé (bao gồm các phần xác nhận thông tin có liên quan đến vé đã đặt, xuất vé khi người đặt vé đến rạp nhận vé). Thực hiện thành công việc lập trình upload file, phục vụ cho thao tác cập nhật ảnh trong quản lý phim và các sự kiện. Việc cập nhật ảnh này được thực hiện 1 lần ngay khi người quản trị cập nhật thông tin cho phim và sự kiện đó. Tất cả các form nhập liệu đều được bẫy lỗi cho các trường. Mã hóa dữ liệu tài khoản khách hàng. 77 Quản lý phân quyền người quản trị cho các cấp quyền quy định (thêm, xóa, sửa người quản trị, phân biệt nhau bởi username). 4.1.2 Nhược điểm của sản phẩm Như đã nói, website của rạp chiếu phim chỉ là tiêu biểu cho một trong số rất nhiều cách thức xây dựng và quản lý website để nó hoạt động thực sự hiệu quả, khai thác được lượng khách tiềm năng trên xa lộ thông tin internet. Ngoài ra, do sự hạn hẹp cả về thời gian và khả năng nên website của chúng tôi xây dựng được trong đồ án này chỉ mới đáp ứng được những yêu cầu cơ bản, website còn nhiều mặt hạn chế: Giao diện người dùng còn chưa sinh động, còn vài điểm chưa thật sự giúp người dùng dễ dàng trong việc sử dụng. Còn nhiều chức năng đã định nghĩa trong website nhưng vẫn chưa làm được. Vẫn chưa áp đụng được các thuật toán tối ưu (tìm kiếm và sắp xếp) vào bài toán. 4.2 Hướng phát triển của đề tài Để có thể áp dụng website này vào thực tế một cách thuận tiện và tốt hơn, hệ thống này có thể phát triển theo các hướng như sau trong tương lai gần: Bổ sung và hoàn thiện thêm giao diện người dùng sinh động hơn. Thiết kế và lập trình thêm một số chức năng khác phục vụ, thu hút khách hàng đến với website. Chẳng hạn: Tin tức & sự kiện: Đưa các thông tin mang tính chất thời sự có liên quan đến hoạt động của rạp, các thông tin nổi bật về các bộ phim trong và ngoài nước hay danh sách các thông tin, địa chỉ của các rạp chiếu phim ở địa phương. Ở trang này có thể thỏa thuận thêm với các đối tác, các rạp chiếu phim này để thu phí quảng cáo hoặc trao đổi thông tin trên các website của họ để tăng cơ hội đưa website của April đến với nguồn khách hàng tiềm năng vô hạn trên internet. Dịch vụ: Trình bày các dịch vụ tiện ích khác của rạp như các dịch vụ phục vụ combo đồ ăn thức uống. Ứng dụng: Để tăng thêm sự phong phú cho website, ta có thể thiết kế thêm chức năng upload một số bộ phim lên website để cho phép người dùng vào website xem và download một số phim cũ. 78 Chỉnh sửa và hoàn thiện các trang template để tránh trường hợp website bị hụt khi khách hàng mở trên các màn hình có độ phân giải lớn. Có thể thiết kế thêm một số trang chủ dưới dạng Flash và đặt chúng ở chế độ thay đổi luân phiên mỗi khi có thêm lượt truy cập mới. Quản lý khách hàng thân thiết: cho phép khách hàng của rạp đăng ký hội viên câu lạc bộ khách hàng của rạp và tùy theo mức độ “thân thiết” của hội viên đối với rạp mà rạp sẽ có chế độ ưu đãi thích hợp. Kết hợp giải pháp thanh toán trực tuyến thông qua hệ thống chứng thực hợp pháp, giúp cho khách hàng đặt vé và trả tiền ngay trên mạng. Có như vậy thì quá trình thương mại điện tử mới thực sự có thể thực hiện trên website này. Kết hợp thêm các services đáng tin cậy để giúp người quản trị dễ dàng và tiết kiện thời gian, công sức trong việc chứng thực thông tin tài khoản khách hàng. Tăng cường chế độ bảo mật cho website. Bảo mật Server: Sử dụng các chế độ bảo mật trên Server mà website được lưu trữ, có thể sử dụng HTTPS Server để mã hóa thông tin khách hàng, tăng khả năng chứng thực và bảo mật của website. Bảo mật source code của website: Có thể dùng các kỹ thuật mã hóa toàn bộ source code của website để chống đánh cắp và bảo mật thông tin. Bảo mật cơ sở dữ liệu trên SQL Server: Thay vì sử dụng cách thức phân quyền bằng bảng Login như trong đồ án này, chúng ta có thể chuyển sang phân quyền bằng cách tạo các users trực tiếp trên cơ sở dữ liệu SQL, và phân quyền cho các users này qua các Role của SQL. Khi đó, ta có thể quy định cụ thể người đăng nhập vào website với tên đăng nhập nào thì sẽ được giao quyền truy xuất những bảng nào, thậm chí là những trường dữ liệu nào trên Database. 79 PHỤ LỤC 1. Bảng kế hoạch thực hiện đồ án STT Nội dung công việc 1 Khảo sát thực tế 2 Mô tả và phân tích đề tài 3 Xây dựng, đặc tả các sơ đồ Use Case Thiết kế cơ sở dữ liệu 4 Dự kiến thời gian Số ngày công 27/02 28/02/2012 29/02 – 02/03/2012 03/03 – 06/03/2012 06/03- 2 Số người thực hiện 1 3 3 3 3 1 3 4 3 20 3 10 3 16 3 5 Thiết kế giao diện 6 Coding. 7 Kiểm thử 07/3/2012 08/03 – 12/03/2012 13/03 – 02/04/2012 03/04 - Hoàn chỉnh báo cáo và slide 13/04/2012 14/04 30/04/2012 8 2. Bảng phân công công việc lập trình và kiểm thử 2.1 Bảng phân công công việc lập trình Screen admin và user Các màn hình có chữ admin thì chỉ admin mới view được: STT Tên màn hình 1 2 3 4 5 Đăng nhập Admin Đăng nhập Admin sai Quản lý phim Thông báo xóa Thêm phim Số ngày thực hiện 2 0.5 3.5 0.5 2.5 Người thực hiện Hằng Hằng Hằng Hằng Hằng 80 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Lịch chiếu Chi tiết lịch chiếu Thêm lịch chiếu Thêm lịch hàng loạt Quản lý phòng Thêm phòng Quản lý ghế Quản lý sự kiện Thêm sự kiện Chọn lịch chiếu Chọn ghế Thông tin ghế Xử lý đặt vé online Thông báo hủy Thành viên Thống kê phim Thống kê vé Tạo tài khoản nhân viên Trang chủ Chi tiết phim Chi tiết lịch chiếu từng phim 3.5 2.5 3 3 3.5 2.5 3 2.5 2 3.5 3 2.5 3.5 0.5 2 3.5 2.5 2.5 2 2 3 Hạnh Hạnh Hạnh Hạnh Hằng Hằng Nhi Hạnh Hạnh Nhi Nhi Nhi Hạnh Hạnh Hằng Hạnh Hạnh Nhi Hằng Hằng Hằng 27 28 Đăng nhập User Đăng nhập thành công 1.5 1.5 Nhi Nhi 29 Thông tin đăng nhập sai 0.5 Nhi 30 31 Đăng ký Thông báo đăng ký sai 2 0.5 Nhi Nhi 32 Thông báo đăng ký thành công 0.5 Nhi 33 34 35 36 Phim đang chiếu Phim sắp chiếu Xem tất cả phim Lịch chiếu theo tựa phim 3.5 3 2.5 3.5 Hằng Hằng Hằng Hạnh 37 Lịch chiếu theo ngày 3.5 Hạnh 81 38 Lịch chiếu theo tất cả 3 Hạnh 39 40 41 Sự kiện Thắc mắc Thông tin thành viên 2 1.5 2 Hạnh Hằng Nhi 42 Trang đổi mật khẩu 2 Nhi 43 Thông báo đổi mật khẩu 0.5 Hạnh 44 45 Thông báo hủy vé Thông báo cập nhật 0.5 0.5 Nhi Nhi 46 Chọn số lượng vé (Giao dịch) 2.5 Hằng 47 Thông báo đặt vé thành công 1 Hằng 48 Sơ đồ ghế (Lịch chiếu) 1.5 Hạnh 2.2 Bảng phân công công việc kiểm thử STT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Tên màn hình Đăng nhập Admin Quản lý phim Thêm phim Lịch chiếu Quản lý phòng Thêm phòng Quản lý ghế Quản lý sự kiện Thêm sự kiện Chọn lịch chiếu Chọn ghế Xử lý đặt vé online Thành viên Thống kê phim Thống kê vé Tạo tài khoản nhân viên Số ngày thực hiện 0.25 0.25 0.5 0.5 0.5 0.5 0.25 0.25 0.5 0.25 0.25 0.25 0.25 0.25 0.25 0.5 Người thực hiện Nhi Hằng Hằng Nhi Hạnh Hằng Nhi Hạnh Hạnh Nhi Nhi Hạnh Nhi Hạnh Hạnh Nhi 82 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 Trang chủ Chi tiết phim Chi tiết lịch chiếu từng phim Đăng nhập User Đăng ký Phim đang chiếu Phim sắp chiếu Xem tất cả phim Lịch chiếu theo tựa phim Lịch chiếu theo ngày Lịch chiếu theo tất cả Sự kiện Thắc mắc Thông tin thành viên Trang đổi mật khẩu Chọn số lượng vé (Giao dịch) Sơ đồ ghế (Lịch chiếu) 0.25 0.25 0.25 Hằng Hằng Hằng 0.25 0.5 0.25 0.25 0.25 Nhi Nhi Hằng Hằng Hằng Hạnh 0.25 0.25 0.5 0.25 0.5 0.25 0.25 Hạnh Hạnh Hạnh Hằng Nhi Nhi Nhi Nhi 3. Hướng dẫn cài đặt hệ thống 3.1 Hướng dẫn cài đặt Eclipse Như đã biết chúng ta có rất nhiều công phục vụ cho việc lập trình Java như JBuilder, Jcreator, Netbean. Đối với website này, chúng tôi sử dụng công cụ lập trình Java cực hay, hiện đang được giới lập trình yêu thích (vì là miễn phí, nhiều công cụ hỗ trợ và đặc biệt là đỡ tốn tài nguyên máy) là Eclipse. Trước tiên bạn phải đàm bảo là đã cài đặt bộ công cụ phát triển ứng dụng Java JDK(Java Development Kit). JDK chứa những công cụ sau : javac : Chương trình dịch chuyển mã nguồn sang bytecode. java : Bộ thông dịch: Thực thi java application. appletviewer : Bộ thông dịch: Thực thi java applet mà không cần sử dụng trình duyệt như Nestcape, hay IE, v.v. javadoc :Bộ tạo tài liệu dạng HTML từ mã nguồn và chú thích. jdb : Bộ gỡ lỗi (java debuger). javap : Trình dịch ngược bytecode. 83 Bạn vào trang : http://www.eclipse.org/downloads/ để download các gói cần thiết cho việc cài đặt bao gồm : eclipse-SDK-3.3.1.1-win32.zip (Công cụ lập trình JAVA). emf-sdo-xsd-SDK-2.3.1.zar. GEF-ALL-3.3.1.zip. JEM-runtime-1.2.rar. JEM-SDK-1.2.zip. VE-runtime-1.2.rar. VE-SDK-1.2.rar. Bước 1 : Giải nén phần mềm Eclipse - Sau khi giải nén ta sẽ click chọn file “eclipse.exe”. Lần đầu chạy phầm mềm, nó sẽ yêu cầu ta chọn workspace, nơi mà ta sẽ lưu trữ tất cả các project của mình sau này. Bước 2: Chọn workspace cho Eclipse - Hộp thoại “Workspace Launcher” xuất hiện, cho click nút “Browse” để chọn nơi lưu trữ các project làm việc. Hình 1 - Chọn workspace cho eclipse - Sau khi chọn xong, ta click chọn “OK”. - Màn hình làm việc của Eclipse: 84 Hình 2 - Màn hình làm việc của eclipse 3.2 Hướng dẫn cài đặt SQL Server 2005 Express Để cài đặt SQL Server 2005 Express, máy phải có: Bộ Windows Installer 3.1 trở lên. Ta có thể download tại: http://go.microsoft.com/fwlink/?LinkID=46459. Microsoft .Net Framework 2.0. Hệ điều hành 32 bit: http://go.microsoft.com/fwlink/? LinkID=55731. Hệ điều hành 64 bit: http://go.microsoft.com/fwlink/? LinkID=55734. File cài đặt SQL Server 2005 Express, có thể download tại website của Microsoft. SQL Server Management Studio Express. Sau khi download về, các thành phần trên sẽ có file cài đặt lần lượt: WindowsInstaller-K8893803-v2-x86.exe: Windows Installer 3.1. dotnetfx.exemicrosoft .Net Framework 2.0. SQLEXPR.EXE: SQL Server 2005 Express. SQL Server 2005_SSMSEE.msd: công cụ quản lý SQL Server Management Studio Express. 85 Bước 1: Cài Windows Installer 3.1 - Nhấn vào file WindowsInstaller-K8893803-v2-x86.exe. Hình 3 - Cài Windows Installer 3.1 Bước 2: Cài Microsoft .Net Framework 2.0 - Double_click vào file dotnetfx.exe Hình 4 - Cài Microsoft .Net Framework 2.0 - Hộp thoại Microsoft. NET Framework 2.0 Setup xuất hiện, click nút Next. 86 - Sau đó Chọn “I accept the terms of the License Agreement”, chọn “OK”. Hình 5 - Quá trình hoàn tất cài đặt Microsoft.Net - Hoàn tất cài đặt Microsoft. NET Framework 2.0. Bước 3: Cài đặt Microsoft SQL Server 2005 - Double_click vào file SQLEXPR.EXE, sau đó hộp thoại Microsoft SQL Server 2005 Setup xuất hiện. 87 Hình 6 - Quá trình cài đặt Microsoft SQL Server 2005 - Click chọn “I accept the licensing terms and conditions”, tiếp tục chọn Next. - Hoàn tất bước cài đặt Microsoft SQL Server 2005. Bước 4: Cài đặt công cụ quản lý SQL Server Management Studio Express - Double_click vào file SQL Server 2005_SSMSEE.msd. - Hộp thoại Microsoft SQL Server Management Studio Express Setup xuất hiện, click nút Next. 88 Hình 7 - Quá trình cài đặt SQL Server Management Studio Express - Ta Chọn “I accept the terms in the license agreement”. Hình 8 - Chấp nhận cài đặt SQL Server Management Studio Express 89 - Ta tiếp tục nhập tên của người và tên tổ chức sử dụng, click Next. Hình 9 - Nhập tên và công ty sử dụng SQL Server Management - Tiếp tục chọn bộ công cụ ta muốn cài đặt, sau đó chọn Next. Hình 10 - Chọn bộ công cụ của SQL Server Management Studio 90 - Quá trình cài đặt bắt đầu. - Chọn finish để hoàn tất quá trình cài đặt SQL Server Management Studio Express. Hình 11- Hoàn tất cài đặt SQL Server Managemient Studio Express - Lúc này ta có thể sử dụng SQL Server 2005 bằng cách click vào biểu tượng Microsoft SQL Server Management Studio Express. 3.3 Hướng dẫn đưa source code vào eclipse Để đưa được source code vào eclipse, trước tiên ta cần tạo mới một Dynamic Web Project để chứa source code của mình: Bước 1: Tạo mới một Dynamic Web Project - Chạy eclipse, vào mục File trên thanh menu, chọn New và chọn Dynamic Web Project. 91 Hình 12 - Tạo project - Hộp thoại “New Dynamic Web Project” xuất hiện. Hình 13 - Chọn Tomcat 92 - Ở mục Project name, ta đặt tên cho thư mục Project sẽ chứa source code. - Sau đó, click New Runtime…, hộp thoại “New Server Runtime Environment” xuất hiện, ta chọn Server mà mình muốn chạy, click Next. Hình 14 - Chọn đường dẫn đến Tomcat - Hộp thoại khác xuất hiện, ở trường Name đã chứa tên Server mà ta chọn từ trước. - Ở trường Tomcat installation directory, ta click vào nút Browse để chọn đường dẫn đến thư mục chứa Server đó. - Hộp thoại Browse For Folder xuất hiện, ta tiếp tục chọn đường dẫn đến thư mục chứa Server mà ta muốn chạy, click nút OK. 93 Hình 15 - Chọn jre - Sau khi chọn đường dẫn cho Server xong, ở trường JRE, ta tiếp tục chọn jre6, click Finish. Hình 16 - Hoàn tất quá trình tạo mới Dynamic Web Project 94 - Ta tiếp tục click Finish để hoàn tất quá trình tạo mới Dynamic Web Project. Bước 2: Import source code vào eclipse - Ta click vào File chọn Import. Hình 17 - Import source code vào eclipse - Ta chọn File System, click Next. Hình 18 - Chọn import source 95 - Ở trường From directory, ta click nút Browse. Hình 19 - Chọn đường dẫn tới thư mục chứa - Hộp thoại Import from directory xuất hiện, ta chọn đường dẫn đến thư mục chứa source code, click OK. - Source code mà ta chọn sẽ xuất hiện ở ô textbox bên trái, ta click chọn. - Ở trường Into folder, ta click nút Browse để chọn thư mục sẽ chứa source code. Hình 20- Chọn folder chứa source code 96 - Hộp thoại Import from directory xuất hiện, ta chọn đường dẫn đến thư mục chứa source code, click OK. - Cuối cùng, để hoàn tất ta click nút Finish. Hình 21 - Hoàn tất - Để có thế chạy được source code, ta cần thay cổng truy cập vào SQL trong source code. - Trước tiên ta cần có chương trình Current Port kiểm tra cổng chạy, ta sẽ có được số Port của SQL. Hình 22 - Xem cổng chạy của SQL 97 - Ta vào source code và thay cổng truy cập vào SQL. Hình 23 - Đổi cổng trong source code 3.4 Attach cơ sở dữ liệu vào SQL Bước 1: Copy 2 file đã export từ SQL vào thư mục SQL Server Hình 24 - Copy file vào SQL Server 98 Bước 2: Attach file vào SQL Server Hình 25 - Attach file vào SQL Server - Ta mở SQL Server, ở trường Database ta click phải chuột vào chọn Attach. Hình 26 - Chọn file attach 99 - Hộp thoại Attach Database xuất hiện, ta click nút Add. - Ta chọn file mà mình muốn Attach, click OK. Hình 27 - Chọn file muốn attach 100 MỤC LỤC HÌNH ẢNH Hình 2.1 - Sơ đồ chức năng cho người quản lý..................................................9 Hình 2.2 - Usecase quản lý phim......................................................................10 Hình 2.3 - Usecase quản lý lịch chiếu..............................................................11 Hình 2.4 - Usecase quản lý phòng...................................................................12 Hình 2.5 - Usecase quản lý ghế........................................................................12 Hình 2.6 - Usecase quản lý sự kiện..................................................................13 Hình 2.7 - Usecase giao dịch...........................................................................13 Hình 2.8 - Usecase bán vé................................................................................14 Hình 2.9 - Usecase xử lý đặt vé online.............................................................14 Hình 2.10 - Usecase quản lý thành viên...........................................................15 Hình 2.11 - Usecase quản lý nhân viên............................................................16 Hình 2.12 - Usecase thống kê...........................................................................16 Hình 2.13 - Sơ đồ chức năng dành cho thành viên và khách xem....................17 Hình 2.14 - Usecase đăng ký và xem trang chủ của khách xem.......................18 Hình 2.15 - Usecase xem trang chủ của thành viên.........................................19 Hình 2.16 - Usecase xem thông tin phim..........................................................19 Hình 2.17 - Usecase xem lịch chiếu phim.........................................................20 Hình 2.18 - Usecase xem sự kiện......................................................................21 Hình 2.19 - Usecase xem FAQ.........................................................................21 Hình 2.20 - Usecase đặt vé online....................................................................22 Hình 2.21 - Usecase xem thông tin...................................................................23 Hình 2.22 - Usecase đăng nhập.......................................................................24 Hình 2.23 - Lược đồ cơ sở dữ liệu quan hệ......................................................25 Hình 2.24 - Kiến trúc kỹ thuật tổng quan của hệ thống....................................33 Hình 2.25 - Sơ đồ tuần tự chức năng bán vé....................................................35 Hình 2.26 - Giao diện của màn hình bán vé.....................................................36 Hình 2.27 - Giao diện của màn hình giao dịch................................................37 Hình 2.28 - Giao diện của màn hình thông tin ghế..........................................38 Hình 2.29 - Giao diện của màn hình khi ghế được chọn không sử dụng được. 39 Hình 2.30 - Sơ đồ khối thuật toán chức năng bán vé........................................40 101 Hình 2.31 - Sơ đồ tuần tự chức năng đặt vé.....................................................43 Hình 2.32 - Giao diện màn hình lịch chiếu theo phim......................................44 Hình 2.33 - Giao diện màn hình đặt vé............................................................45 Hình 2.34 - Giao diện màn hình đặt vé sau khi đặt xong.................................46 Hình 2.35 - Sơ đồ khối thuật toán chức năng đặt vé........................................47 Hình 2.36 - Sơ đồ tuần tự chức năng thống kê phim........................................50 Hình 2.37 - Giao diện màn hình thống kê phim................................................51 Hình 2.38 - Sơ đồ khối thuật toán chức năng thống kê phim............................52 Hình 2.39 - Sơ đồ tuần tự chức năng quản lý phòng........................................55 Hình 2.40 - Giao diện màn hình quản lý phòng...............................................56 Hình 2.41 - Sơ đồ khối thuật toán chức năng cập nhật phòng.........................57 Hình 2.42 - Sơ đồ tuần tự của chức năng quản lý lịch chiếu............................60 Hình 2.43 - Giao diện của màn hình quản lý lịch chiếu...................................61 Hình 2.44 - Sơ đồ khối của thuật toán chức năng tìm kiếm lịch chiếu..............62 Hình 1 - Chọn workspace cho eclipse..............................................................84 Hình 2 - Màn hình làm việc của eclipse...........................................................84 Hình 3 - Cài Windows Installer 3.1..................................................................85 Hình 4 - Cài Microsoft .Net Framework 2.0....................................................86 Hình 5 - Quá trình hoàn tất cài đặt Microsoft.Net...........................................86 Hình 6 - Quá trình cài đặt Microsoft SQL Server 2005....................................87 Hình 7 - Quá trình cài đặt SQL Server Management Studio Express...............88 Hình 8 - Chấp nhận cài đặt SQL Server Management Studio Express.............88 Hình 9 - Nhập tên và công ty sử dụng SQL Server Management.....................89 Hình 10 - Chọn bộ công cụ của SQL Server Management Studio....................89 Hình 11- Hoàn tất cài đặt SQL Server Managemient Studio Express..............90 Hình 12 - Tạo project.......................................................................................91 Hình 13 - Chọn Tomcat....................................................................................91 Hình 14 - Chọn đường dẫn đến Tomcat...........................................................92 Hình 15 - Chọn jre...........................................................................................93 102 Hình 16 - Hoàn tất quá trình tạo mới Dynamic Web Project...........................93 Hình 17 - Import source code vào eclipse........................................................94 Hình 18 - Chọn import source..........................................................................94 Hình 19 - Chọn đường dẫn tới thư mục chứa...................................................95 Hình 20- Chọn folder chứa source code...........................................................95 Hình 21 - Hoàn tất...........................................................................................96 Hình 22 - Xem cổng chạy của SQL..................................................................96 Hình 23 - Đổi cổng trong source code.............................................................97 Hình 24 - Copy file vào SQL Server.................................................................97 Hình 25 - Attach file vào SQL Server...............................................................98 Hình 26 - Chọn file attach................................................................................98 Hình 27 - Chọn file muốn attach......................................................................99 103 DANH MỤC TÀI LIỆU THAM KHẢO [1] Hanumant Deshmukh, Jignesh Malavia, Jacquelyn Carter. SCWCD Exam Study Kit Java Web Component Developer Certification. Manning Publications Company, 2003, 562 tr. [2] Paul Wilton, John W. Colby. Beginning SQL. Wiley Publishing, Inc, 2005, 522 tr. [3] Timothy Blum, Kevvie Fowler, Raymond Arthur Gabriel, K. Brian Kelly, Matt Shepherd, Mark Horninger. How to cheat at Securing SQL Server 2005. Elsevier, Inc, 2007, 420 tr. [4] Website: http://www.w3schools.com/ http://TemplateKingdom.com/ [5] Bài giảng Lập trình Java – Tiến sĩ Huỳnh Công Pháp [6] Giáo trình Hệ Quản trị cơ sở dữ liệu – Thạc sĩ Văn Đỗ Cẩm Vân This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.Tìm kiếm
Chủ đề
Giải phẫu sinh lý Hóa học 11 Atlat Địa lí Việt Nam Tài chính hành vi Bài tiểu luận mẫu Trắc nghiệm Sinh 12 Thực hành Excel Đơn xin việc Đề thi mẫu TOEIC Lý thuyết Dow Đồ án tốt nghiệp Mẫu sơ yếu lý lịch adblock Bạn đang sử dụng trình chặn quảng cáo?Nếu không có thu nhập từ quảng cáo, chúng tôi không thể tiếp tục tài trợ cho việc tạo nội dung cho bạn.
Tôi hiểu và đã tắt chặn quảng cáo cho trang web nàyTừ khóa » Sơ đồ Use Case Quản Lý Rạp Chiếu Phim
-
Hệ Thống Quản Lý Rạp Chiếu Phim
-
Báo Cáo Hệ Thống Thông Tin Quản Lý Website Quản Lý Rạp Chiếu Phim
-
He-thong-quan-ly-rap-chieu-phim[123doc] - - StuDocu
-
Hệ Thống Quản Lý Rạp Chiếu Phim | Xemtailieu
-
[PDF] ĐỀ TÀI : WEB QUẢN LÝ CỦA RẠP CHIẾU PHIM - PDFCOFFEE.COM
-
[PDF]Báo Cáo Chuyên đề Học Phần Phân Tích Thiết Kế Hướng đối Tượng
-
BÁO CÁO PHÂN TÍCH KINH DOANH HỆ THỐNG QL RẠP CHIẾU ...
-
Hệ Thống Quản Lý Rạp Chiếu Phim
-
Luận Văn Quản Lý Vé Xem Phim (SQL) - TaiLieu.VN
-
[PDF] Xây Dựng Website Quản Lý Rạp Chiếu Phim Bằng Ngôn Ngữ Java
-
CNPM By Hoang An - Prezi
-
Báo Cáo Xây Dựng Chương Trình Quản Lý Bán Vé Xem Phim
-
[DOC] đặc Tả Use Case Quản Lý Thư Viện - 5pdf