Xây dựng Website, quản lý du lịch, VI TRAVEL
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN ======***====== Báo cáo thực tập tốt nghiệp Đề tài:Xây dựng Website quản lý du lịch VI TRAVEL Giáo viên hướng dẫn: Sinh viên: Mã sinh viên: Ths.Ngơ Thị Bích Thúy Phạm Hồng Phi 1041060039 Hà Nội, năm 2019 LỜI MỞ ĐẦU Nếu bạn doanh nghiệp kinh doanh lĩnh vực du lịch hẳn bạn biết rõ internet nơi khách hàng bạn tiếp cận họ có kế hoạch nghỉ ngơi thư giãn Khách hàng tiềm biết đến khách sạn, dịch vụ tour du lịch hay khu nghỉ mát bạn thơng qua website Chính nói thiết kế Website du lịch thành cơng huyết mạch sống doanh nghiệp liên quan đến du lịch Trên thực tế, thiết kế Website du lịch có nhiều điểm khác biệt so với thiết kế Website bán hàng hay website giới thiệu công ty Ngồi tính để quản trị website quản lý tin tức, quản lý menu, Website du lịch cần phải có tính đặc thù để đáp ứng tối đa nhu cầu người dùng Nếu website quý công ty không thỏa mãn yêu cầu khó chiếm lĩnh thị trường, tính cạnh tranh ngành du lịch lớn Chương Giới thiệu ngôn ngữ công cụ lựa chọn 1.Giới thiệu ngôn ngữ C# 1.1. C# là gì ? C# (hay C sharp) ngơn ngữ lập trình đơn giản, phát triển đội ngũ kỹ sư Microsoft vào năm 2000, người dẫn đầu Anders Hejlsberg Scott Wiltamuth C# ngơn ngữ lập trình đại, hướng đối tượng xây dựng tảng hai ngôn ngữ mạnh C++ Java C# thiết kế cho Common Language Infrastructure (CLI), mà gồm Executable Code Runtime Environment, cho phép sử dụng ngôn ngữ high-level đa dạng tảng cấu trúc máy tính khác C# với hỗ trợ mạnh mẽ NET Framework giúp cho việc tạo ứng dụng Windows Forms hay WPF (Windows Presentation Foundation), trở nên dễ dàng 1.2 Đặc trưng C# C# ngôn ngữ đơn giản Như ta biết ngơn ngữ C# dựng tảng C++ Java nên ngôn ngữ C# đơn giản Nếu thân thiện với C C++ hoậc chí Java, thấy C# giống diện mạo, cú pháp, biểu thức, toán tử chức khác lấy trực tiếp từ ngơn ngữ C C++, cải tiến để làm cho ngôn ngữ đơn giản Một vài cải tiến loại bỏ dư thừa, thêm vào cú pháp thay đổi C# là ngôn ngữ hiện đại Một vài khái niệm mẻ mơ hồ với bạn vừa học lập trình, xử lý ngoại lệ, kiểu liệu mở rộng, bảo mật mã nguồn v v Đây đặc tính cho ngơn ngữ đại cần có Và C# chứa tất đặt tính ta vừa nêu Các bạn dần tìm hiểu đặt tính qua học series C# là một ngơn ngữ lập trình thuần hướng đối tượng Lập trình hướng đối tượng(tiếng Anh: Object-oriented programming, viết tắt: OOP) phương pháp lập trình có tính chất Đó tính trừu tượng (abstraction), tính đóng gói (encapsulation), tính đa hình (polymorphism) tính kế thừa (inheritance) C# hỗ trợ cho tất đặc tính Và để hiểu rõ có chương trình bày phần C# là một ngơn ngữ ít từ khóa C# ngơn ngữ sử dụng giới hạn từ khóa (gồm khoảng 80 từ khóa mười kiểu liệu xây dựng sẵn) Nếu bạn nghĩ ngơn ngữ có nhiều từ khóa mạnh mẽ Điều khơng phải thật, lấy ví dụ ngơn ngữ C# làm điển hình Nếu bạn học sâu C# bạn thấy ngơn ngữ sử dụng để làm nhiệm vụ Ngồi những đặc điểm trên thì còn một số ưu điểm nổi bật của C#: C# có cấu trúc gần gũi với ngơn ngữ lập trình truyền thống, nên dể dàng tiếp cận học nhanh với C# C# biên dịch nhiều tảng máy tính khác C# xây dựng tảng C++ Java nên thừa hưởng ưu điểm ngơn ngữ C# phần NET Framework nên chống lưng lớn đến từ phận C# có IDE Visual Studio nhiều plug-in vơ mạnh mẽ 1.3 Các phiên C# C# 1.0 phát hành vào tháng 1/2002 C# 1.1 phiên 1.2 phát hành vào tháng 4/2003 C# 2.0 phát hành vào thánh 11/2005 C# 3.0 phát hành vào tháng 11/2007 C# 4.0 phát hành vào tháng 4/2010 C# 5.0 phát hành vào tháng 8/2012 C# 6.0 phát hành vào tháng 6/2015 C# 7.0 phát hành vào tháng 3/2017 C# 7.1 7.2 phát hành vào tháng 8/2017 Giới thiệu ASP.NET MVC 2.1 MVC gì? MVC viết tắt Model – View – Controller Là design pattern Được vận hành để tách mã lệnh thành phần riêng biệt Ở phần MVC có chức đặc thù Để xử lý tác vụ mà request gởi tới MVC làm cho mã lệnh trở nên sáng, dễ phát triển dễ nâng cấp theo thời gian Để làm việc tốt MVC, cần nắm thật vững kiến thức OOP Bản chất framework khác hình thành lý thuyết MVC Do nắm tốt MVC Thì framework khác chắn khơng cảm thấy khó hiểu Model: Là thành phần chịu trách nhiệm xử lý thao tác database Và gởi trả kết thông qua view View: Là phần hiển thị thông tin website, sau qua controller nhận kết từ phía model view bước cuối để chuyển thông tin tới người dùng Controller: Là phần điều hướng request tới tác vụ tương ứng Controller phần thiếu framework Vì có trách nhiệm gởi nhận request từ hệ thống tới người sử dụng 2.2 Xuất xứ Tất bắt đầu vào năm 70 kỷ 20, phòng thí nghiệm Xerox PARC Palo Alto Sự đời giao diện đồ họa (Graphical User Interface) lập trình hướng đối tượng ( Object Oriented Programming) cho phép lập trình viên làm việc với thành phần đồ họa đối tượng đồ họa có thuộc tính phương thức riêng Khơng dừng lại đó, nhà nghiên cứu Xerox PARC xa cho đời gọi kiến trúc MVC ( viết tắt Model – Vie w – Controller) MVC phát minh Xerox Parc vào năm 70, TrygveReenskaug MVC lần xuất công khai Smalltalk-80 Sau thời gian dài khơng có thơng tin MVC, tài liệu 80 Smalltalk Các giấy tờ quan trọng đƣợc công bố MVC “A Cookbook for Using the Model-ViewController User Interface Paradigm in Smalltalk – 80”, Glenn Krasner Stephen Pope, xuất tháng / tháng năm 1988 2.3 Kiến trúc mô hình MVC Trong kiến trúc MVC, đối tượng đồ họa người dùng(GUI Compone nt) bao gồm thành phần bản: Model, View, Controller Model có trách nhiệm toàn liệu trạng thái đối tượng đồ họa View thể trực quan Model, hay nói cách khác giao diện đối tượng đồ họa Và Controller điều khiển việc tương tác đối tượng đồ họa với người sử dụng đối tượng khác Hình 1.1: Các thành phần mơ hình MVC Khi người sử dụng đối tượng khác cần thay đổi trạng thái đối tượng đồ họa, tương tác thông qua Controller đối tượng đồ họa Controller thực việc thay đổi Model Khi có thay đổi xảy Model, phát thơng điệp ( broadcast message) thông báo cho View Controller biết Nhận thông điệp từ Model, View cập nhật lại thể mình, đảm bảo ln thể trực quan xác Model Còn Controller, nhận thơng điệp từ Model, có tương tác cần thiết phản hồi lại người sử dụng đối tượng khác Hình 1.2: Mơ hình MVC Ví dụ : Lấy ví dụ GUI Component (thành phần đồ họa người dùng) đơn giản Checkbox Checkbox có thành phần Model để quản lý trạng thái check hay uncheck, thành phần View để thể với trạng thái tương ứng lên hình, thành phần Controller để xử lý kiện có tương tác người sử dụng đối tượng khác lên Checkbox Khi người sử dụng nhấn chuột vào Checkbox, thành phần Controller Checkbox xử lý kiện này, yêu cầu thành phần Model thay đổi liệu trạng thái Sau thay đổi trạng thái, thành phần Model phát thông điệp đến thành phần View Controller Thành phần View Checkbox nhận thông điệp cập nhật lại thể Checkbox, phản ánh xác trạng thái Checkbox Model lưu giữ Thành phần Controller nhận thông điệp Model gởi tới có tương tác phản hồi với người sử dụng cần thiết 2.4 : Đặc điểm mơ hình MVC Cái lợi ích quan trọng mơ hình MVC giúp cho ứng dụng dễ bảo trì, module hóa chức năng, xây dựng nhanh chóng MVC tách tác vụ ứng dụng thành phần riêng lẻ model, view, controller giúp cho việc xây dựng ứng dụng nhẹ nhàng Dễ dàng thêm tính mới, tính cũ dễ dàng thay đổi MVC cho phép nhà phát triển nhà thiết kế làm việc đồng thời với MVC cho phép thay đổi phần ứng dụng mà không ảnh hưởng đến phần khác Sở dĩ kiến trúc MVC tách biệt (decoupling) phụ thuộc thành phần đối tượng đồ họa, làm tăng tính linh động (flexibility) tính tái sử dụng (reusebility) đối tượng đồ họa Một đối tượng đồ họa dễ dàng thay đổi giao diện cách thay đổi thành phần View cách thức lưu trữ (Model) xử lý (Controller) không thay đổi Tương tự, ta thay đổi cách thức lưu trữ (Model) xử lý (Controller) đối tượng đồ họa mà thành phần lại giữ ngun Chính mà kiến trúc MVC ứng dụng để xây dựng nhiều framework thư viện đồ họa khác Tiêu biểu thư viện đồ họa ngơn ngữ lập trình hướng đối tượng SmallTalk (cũng Xerox PARC nghiên cứu phát triển vào thập niên 70 kỷ 20) Các Swing Components Java xây dựng dựa kiến trúc MVC Đặc biệt tảng ASP.NET MVC Frame work 2.5 : Ưu/Nhược điểm mô hình MVC Ưu điểm : MVC làm cho ứng dụng trở nên sáng, giúp lập trình viên phân tách ứng dụng thành ba lớp cách rõ ràng Điều giúp ích cho việc phát triển ứng dụng xét mặt lâu dài cho việc bảo trì nâng cấp hệ thống MVC mơ hình lập trình tiên tiến bậc nay, điều mà framework nổ lực để hướng tới đơn giản yếu tố lâu dài cho người sử dụng Nhược điểm : Mặc dù, MVC tỏ lợi nhiều so với cách lập trình thông thường Nhưng MVC phải nạp, load thư viện đồ sộ để xử lý liệu Chính điều làm cho mơ hình trở nên chậm chạp nhiều so với việc code tay túy MVC đòi hỏi người tiếp cận phải biết qua OOP, có kinh nghiệm tương đối cho việc thiết lập xây dựng ứng dụng hồn chỉnh Sẽ khó khăn OOP người sử dụng yếu MVC tận dụng mảng thành phần cho việc truy xuất liệu Nhất với việc sử dụng active record để viết ứng dụng Chúng cần người viết phải nắm vứng mơ hình mảng đa chiều Giới thiệu Visual Studio 3.1 Hướng dẫn cài đặt - Ngôn ngữ C# Microsoft phát triển kèm theo IDE (intergrated development environment) phần mềm Microsoft visual studio - Hiện phiên Visual Studio phiên Visual Studio 2017 - Ta download phần mềm tại: https://visualstudio.microsoft.com/fr/ - Có phiên cho người dung lựa chọn, học sinh, sinh viên, lựa chọn phiên Community 2017 hồn tồn miễn phí cung cấp đầy đủ tính cần thiết Sau download xong, ta nhận file cài đặt Visual Studio, khởi chạy file cài đặt Khi chạy file, cửa sổ thông báo cần download them nội dung liên quan, ta đợi download cài đặt xong 10 - Tiếp theo ta cần chọn Install để cài đặt - Tiếp theo ta lựa chọn thành phần ngôn ngữ tảng cài đặt 11 - Lựa chọn phiên framework hỗ trợ ngôn ngữ sử dụng: 12 - Sau hoàn tất, ta bấm install để cài đặt Việc cài đặt diễn hoàn toàn tự động tốc độ cài đặt phụ thuộc vào tốc độ mạng internet cấu hình máy Sauk hi cài đặt xong ta tiến hành khởi động lại máy tính 1.1 Hướng dẫn sử dụng - Kích đúp vào biểu tượng chương trình để khởi chạy - Giao diện chạy chương trình: - Để tạo project mới, ta chọn File/new/Project 13 - Cửa sổ new project lên cho phép ta chọn mơ hình để làm việc winform, webform,…Ở ta lựa chọn Visual C# ASP.NET web Application (.NET Framework) - Ta đặt tên cho project phần Name: TTTN Vị trí lưu phần Location : C:\Users\hungn\Desktop\TTTN\ Tên Solution phần Solution name: Lựa chọn phiên Framework phần Framework (thường để mặc định) Nhấn Ok để khởi tạo project 14 - Lựa chọn mơ hình MVC nhấn Ok Giao diện chương trình sau tạo: - Mặc định chương trình tạo ln dự án mà ta khơng cân làm Ta bấm Ctrl+F5 để xem kết 15 Chương Khảo sát hệ thống 2.1 Khảo sát sơ hệ thống 2.1.1 Mục đích Nhằm làm rõ yêu cầu hệ thống Tiếp cận nghiệp vụ chuyên môn, môi trường hoạt động hệ thống Tìm hiểu chức năng, cách thức hoạt động hệ thống Thu thập thông tin, sổ sách, mẫu biểu phục vụ cho pha phân tích Thu thập thơng tin nghiệp vụ, quy trình xử lý 2.1.2 Phương pháp Quan sát trực tiếp Phỏng vấn Nghiên cứu biểu mẫu 2.1.3 Đối tượng khảo sát Người quản lý Nhân viên bán hàng 2.1.4 Kết khảo sát sơ * Qua khảo sát thực tế công ty Vitravel, thu thập số liệu sau đây: - Phân tích thiết kế hệ thống thực việc quản lí Tour du lịch nước nhằm giúp cho việc : - Tổ chức Tour, việc quản lý số vấn đề liên quan khách hàng,nhân viên, phương tiện,…được tốt hơn, đảm bảo tính xác nhanh chóng thuận lợi - Mỗi Tour du lịch thường lưu trữ thông tin : MaTour, TenTour, NgayBD, NgayKT, Gia… 16 - Mỗi khách hàng đăng ký nhiều Tour thông tin khách hàng lưu trữ gồm : MaKH, TenKH, Phai, DiaChi, SDT… - Công ty gồm nhiều đại lý ,trong số có đại lý làm trụ sở thông tin đại lý gồm:MaDL, TenDL, DiaChi, SDT… - Các đại lý thực thống việc tổ chức, quản lý bán vé cho khách hàng, thông tin vé gồm: MaVe, TenVe… - Mỗi chuyến du lịch có hướng dẫn viên (HDV)du lịch phụ trách hướng dẫn khách tham quan suốt Tour du lịch thông tin HDV gồm: MaHDV, TenHDV, Phai, DiaChi, SDT… -Mỗi Tour có phương tiện vận chuyển riêng để đảm bảo cho việc tham quan, thông tin phương tiện gồm: MaPT, TenPT, LoaiPT, SoCho… - Mỗi Tour du lịch có nhiều điểm tham quan điểm tham quan khách hàng nghỉ khách sạn thông tin điểm tham quan gồm: MaDD, TenDD, Tinh…,thông tin lưu trữ khách sạn gồm: MaKS, TenKS, DiaChi… 2.2 Xác định yêu cầu hệ thống 2.2.1 Yêu cầu chức Khắc phục nhược điểm hệ thống cũ, hệ thống cần có cải biến sau: - Quản lý vấn đề liên quan đến Tour du lịch bao gồm : Khách hàng, Nhân viên, Địa diểm , Khách sạn , v v cách dễ dàng thuận tiện Quản lý việc công nợ Khách hàng với Công ti cung cấp dịch vụ du lịch Quản lý việc Thu – Chi công ti cách rành mạch, xác, khách quan Bổ sung thêm việc quản lý dịch vụ kèm Tour du lịch bao gồm : Hoạt động, lịch trình, phí tổn v.v Phân loại Tour du lịch theo nhóm để dễ dàng quản lý trích xuất Bổ sung thêm thông tin : o Tour : Loại hình tour, số người tham gia, số trẻ em, số người lớn, giá người o Nhân viên : Mã nhân viên, Tên nhân viên, Tuổi, Giới tính, Địa chỉ, SDT, Email, Số CMT, Ngày gia nhập, chức vụ o Khách sạn : Mã khách sạn, Tên, Loại khách sạn, Giá, Trạng thái , v v o Khách hàng : Lưu trữ lại tồn thơng tin mà khách hàng cung cấp theo đơn đặt Tour o Phương tiện : Mã tài xế, Tên tài xế , Loại phương tiện, Giá v.v o Địa danh : Mã địa danh, Tên địa danh, Mã vùng, Giá, v.v o Dịch vụ kèm : Mã dịch vụ, Tên dịch vụ, giá cho người v v 17 o Hướng dẫn viên : Mã HDV, Tên HDV, Tuổi, Địa chỉ, Giới tính, SĐT, Bằng cấp, v.v 2.2.2 Yêu cầu phi chức Chương trình thực sử dụng môi trường WEB nên cần người sử dụng có Laptop kết nối mạng Internet sử dụng dễ dàng nên khơng có u cầu cấu hình Điều làm tăng tính thơng dụng dễ dàng sử dụng Chương trình! 2.2.3 : Một số hình ảnh Chương trình - Màn hình KINH DOANH 18 - Màn hình KẾ TỐN - Màn hình BÁO CÁO 19 - Màn hình QUẢN TRỊ 20 Chương Các chức hệ thống 21 ... Để làm việc tốt MVC, cần nắm thật vững kiến thức OOP Bản chất framework khác hình thành lý thuyết MVC Do nắm tốt MVC Thì framework khác chắn khơng cảm thấy khó hiểu Model: Là thành phần chịu... phần Controller để xử lý kiện có tương tác người sử dụng đối tượng khác lên Checkbox Khi người sử dụng nhấn chuột vào Checkbox, thành phần Controller Checkbox xử lý kiện này, yêu cầu thành phần... nghiệp kinh doanh lĩnh vực du lịch hẳn bạn biết rõ internet nơi khách hàng bạn tiếp cận họ có k hoạch nghỉ ngơi thư giãn Khách hàng tiềm biết đến khách sạn, dịch vụ tour du lịch hay khu nghỉ