3.1. Công nghệ sử dụng
3.1.1. Windows Forms và Ngơn ngữ lập trình C#
Windows Forms
Windows Forms hay viết tắt là WinForm là thuật ngữ chỉ việc phát triển các ứng dụng giao diện người dùng bằng cách sử dụng các thành phần xây dựng sẵn (Buil in component) còn được gọi là các điều khiển.
Hình 3.1: WinForm và .Net Framework
Hay nói cách khác Windows Forms là một API (Application Programming Interface) cho phép tạo GUI (Graphical User Interface) cho các ứng dụng chạy trên Desktop.
Các điều khiển này dùng để hiển thị thông tin cho người dùng cũng như cho người dùng nhập thông tin vào Windows Forms ra đời đáp ứng nhu cầu tạo ứng dụng nhanh (Rapid Application Development).
C#
C# là một ngơn ngữ lập trình hướng đối tượng được phát triển bởi Microsoft, là phần khởi đầu cho kế hoạch .NET của họ. Tên của ngôn ngữ bao gồm ký tự thăng theo Microsoft nhưng theo ECMA là C#, chỉ bao gồm dấu số thường. Microsoft phát triển C# dựa trên C++ và Java. C# được miêu tả là ngơn ngữ có được sự cân bằng giữa C++, Visual Basic, Delphi và Java.
C# là ngơn ngữ lập trình phản ánh trực tiếp nhất đến.NET Framework mà tất cả các chương trình.NET chạy, và nó phụ thuộc mạnh mẽ vào Framework này.
Hình 3.3: Ví dụ về C#
Ngơn ngữ lập trình C# được đánh giá là dễ học và kết hợp được nhiều ưu điểm của các ngơn ngữ lập trình hướng đối tượng Java và C++. Do đó ngơn ngữ C# đựơc sử dụng rộng rãi nhất.
C# có thể được viết với bất kỳ trình soạn thảo văn bản nào như Notepad của Windows, và sau đó biên dịch với trình biên dịch dịng lệnh của C#, csc.exe ln đi kèm với .Net framework.
Do đó mà ngày nay, C# được rất nhiều các coder trên thế giới ưu chuộng và tìm hiểu.
3.1.2. PHP
PHP (Hypertext Preprocessor) là một ngơn ngữ lập trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng qt.
Hình 3.4: Sơ đồ hoạt động của PHP và HTML
PHP rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngơn ngữ lập trình web phổ biến nhất thế giới.
Được phát triển năm 1994 bởi Rasmus Lerdorf. Lúc đầu chỉ là một bộ đặc tả của Perl được sử dụng để lưu dấu vết của trang web.Sau đó đã được phát triển thành một máy đặc tả (Scripting engine). Và nó đã khơng cịn là một dự án cá nhân của Ramus Lerdorf nữa mà trở thành một công nghệ web quan trọng hiện nay.
Các điểm mạnh của PHP:
Được sử dụng linh hoạt và mềm dẻo hơn.
PHP được thực hiện rất nhanh và hiệu quả, do đó 1 server có thể đáp ứng được hàng triệu lượt người truy cập.
Hỗ trợ rất nhiều cơ sở dữ liệu như: MySQL, Oracle, InterBase... Cung cấp thư viện rất phong phú.
Là một mã nguồn mở. Dễ học + dễ sử dụng.
Được sử dụng trên nhiều hệ điều hành khác nhau. Nhiều hệ thống CMS miễn phí dùng.
3.1.3. HQT CSDL MySQL
CSDL là 1 phần quan trọng không thể thể thiếu được trong các ứng dụng web chuyên nghiệp. MySQL từ lâu đã là hệ CSDL được dùng phổ biến nhất với PHP vì tính gọn nhẹ, nhanh, miễn phí và được PHP hỗ trợ sẵn.
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.Với tốc độ và
tính bảo mật cao, MySQL rất thích hợp cho các ứng dụng có truy cập CSDL trên internet.
MySQL miễn phí hồn tồn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare, SGI Irix, Solaris, SunOS,...
MySQL là một trong những ví dụ rất cơ bản về Hệ Quản trị Cơ sở dữ liệu quan hệ sử dụng Ngơn ngữ truy vấn có cấu trúc (SQL).
Hình 3.5: MySQL bổ trợ rất tốt cho PHP
MySQL được sử dụng cho việc bổ trợ PHP, Perl, và nhiều ngơn ngữ khác, nó làm nơi lưu trữ những thơng tin trên các trang web viết bằng PHP hay Perl,...
Một số đặc điểm của MySQL
MySQL là một phần mềm quản trị cơ sở dữ liệu dạng server-based (gần tương đương với SQL Server của Microsoft).
MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu, mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu.
MySQL có cơ chế phân quyền người sử dụng riêng, mỗi người dùng có thể được quản lý một hoặc nhiều cơ sở dữ liệu khác nhau, mỗi người dùng có một tên truy cập (username) và mật khẩu(password) tương ứng để truy xuất đến cơ sở dữ liệu.
Khi ta truy vấn tới CSDL MySQL, phải cung cấp tên truy cập và mật khẩu của tài khỏan có quyền sử dụng CSDL đó.
3.2. Cơng cụ phát triển
3.2.1. Microsoft Visual Studio 2010
Phần mềm Quản Lý Xe Khách được phát triển trên nền .NET Framework 4.0 và được xây dựng bằng công cụ phát triển của Microsoft đó là Visua Studio 2010.
3.2.2. Adobe Dreamweaver CS3
Hệ thống Website đặt vé được xây dựng trên nền PHP và cơng cụ lập trình Adobe Dreamweaver CS3.
3.2.3. Một số công cụ và Phần mềm phát triển khác
- Trình soạn thảo Notepad++ 5.8.7
4.2. Phần mềm Quản lý Xe khách
4.2.1. Tổng quan Phần mềm Quản lý
Hình 4.3: Màn hình hiển thị mặc định khi mở phần mềm
- Sau khi đăng nhập, Hệ thống sẽ mở màn hình mặc định là Tab THỐNG KÊ, bao gồm thông tin thống kê về Xe, Hãng xe, Loại xe, Lịch trình, Số lượng vé đặt, Thông tin Tài khoản đang đăng nhập, ...
- Phần mềm bao gồm nhiều Tab chức năng được sắp xếp hàng ngang ở trên cùng, mỗi Tab có chức năng quản lý riêng:
THỐNG KÊ: Thống kê chung nhất các lịch trình, vé đặt trong ngày, thơng tin tài khoản đăng nhập, phiên làm việc, ...
VÉ XE: Quản lý Vé xe đã đặt theo Lịch trình, tìm kiếm vé, Đặt vé, xem chi tiết Vé đã đặt, Cập nhật thông tin hoặc Hủy vé đã đặt, xuất vé và danh sách vé đã đặt.
LỊCH TRÌNH: Quản lý Lịch trình, thêm mới, cập nhật thơng tin, xóa lịch trình, xuất danh sách lịch trình.
XE KHÁCH: Quản lý xe khách, thêm, cập nhật thơng tin, xóa xe khách, thống kê Lịch trình gần nhất của xe khách, xuất danh sách xe khách. GIÁ VÉ: Quản lý giá vé, xuất danh sách Giá vé.
ĐẠI LÝ, ĐỊA ĐIỂM: Quản lý địa điểm và đại lý, thêm, xóa, cập nhật và xuất danh sách địa điểm hoặc đại lý.
NHÂN VIÊN: Quản lý Nhân viên.
- Ngồi ra, trong phần Menu chính khi nhấn vào nút File, sẽ hiện ra một danh sách các chức năng quản lý:
Tùy chọn kết nối.
Sao lưu và phục hồi dữ liệu.
Quản trị người dùng: Phân quyền, Thêm, Xóa, Cập nhật thơng tin Người dùng.
Danh mục quản lý: Loại xe, Hãng xe, Tuyến đường, Nhân viên, ... Trợ giúp.
Thông tin tài khoản: Chi tiết và Cập nhật thông tin tài khoản đang sử đụng trong Hệ thống.
4.2.2. Chức năng Đăng nhập
Chức năng đăng nhập Hệ thống
- Khi mở phần mềm, màn hình đăng nhập sẽ được hiển thị (Hình 4.2). Nhân viên Quản lý đăng nhập vào Hệ thống bằng Tài khoản đã được cấp sẵn: Nhập Tên đăng nhập và Mật khẩu, tùy chọn Nhớ mật khẩu cho các lần đăng nhập sau, và nhấn nút Đăng nhập.
- Trường hợp quên mật khẩu, ở phần Quên mật khẩu, có thể nhập địa chỉ Email của tài khoản đó để yêu cầu Hệ thống cấp lại mật khẩu mới.
Tùy chỉnh và kiểm tra Kết nối đến Máy chủ đặt CSDL
- Trong lần đầu tiên sử dụng, Hệ thống sẽ yêu cầu Tùy chỉnh kết nối đến Máy chủ, cần nhập đầy đủ các thơng tin(Hình 4.3).
- Sau khi nhập xong các thông số, nhấn Kiểm tra kết nối, nếu được chấp nhận, Hệ thống sẽ thông báo Kết nối thành cơng và Nhân viên có thể sử dụng phần mềm.
4.2.3. Chức năng Đặt vé xe
Hình 4.6 : Màn hình tìm kiếm lịch trình xe chạy
- Tại màn hình này (Hình 4.4), Nhân viên bán vé có thể tìm kiếm Lịch trình theo yêu cầu của khách hàng để chọn ra một Lịch trình phù hợp.
- Sau khi tìm được lịch trình thích hợp, Nhân viên bán vé nhấp đúp chuột vào lịch trình đã chọn, một màn hình đặt vé sẽ được hiển thị (Hình 4.5).
Hình 4.7 : Màn hình Đặt vé
- Chọn những ghế có tình trạng Trống thêm vào Thơng tin đặt vé, Hệ thống sẽ tự tạo Mã đặt vé và tự động tính tiền dựa trên bảng giá và số ghế đặt. Điền đầy đủ các thông tin Khách đi và nhấn nút Đặt vé.
- Nếu đặt thành cơng, Hệ thống sẽ thêm Vé và cập nhật Tình trạng các Ghế đặt thành Đã đặt, sau đó có thơng báo ra màn hình và đóng màn hình Đặt vé.
4.2.4. Chức năng Quản lý Vé
Hình 4.8 : Màn hình Quản lý Vé xe
- Ở màn hình Quản lý Vé xe (Tab VÉ XE) (Hình 4.6), bao gồm Danh sách lịch trình xe chạy, có chức năng tìm kiếm ở phía trên.
- Một Form TÌM KIẾM VÉ bên dưới góc trái và một DANH SÁCH VÉ có thể tùy chọn theo Lịch trình đã chọn ở phía trên hoặc theo thơng tin Tìm kiếm.
Hình 4.9: Tìm kiếm Vé xe đã đặt
Hình 4.10: Vé xe theo Lịch trình
- Xem vé của từng lịch trình, khi nhấp vào một Lịch trình trong DANH SÁCH LỊCH TRÌNH XE CHẠY, Vé đã đặt của Lịch trình vừa chọn sẽ được hiển thị ở phần DANH SÁCH VÉ ở bên dưới.
Hình 4.11: Xuất danh sách Vé đẵ đặt theo Lịch trình đã chọn
- Sau khi chọn Lịch trình để xem danh sách Vé đã đặt, Người dùng có thể xuất Danh sách Vé của Lịch trình đó khi nhấn vào nút Xuất danh sách vé (Hình 4.7).
Hình 4.12: Cập nhật Thơng tin vé, Hủy vé
- Để mở màn hình Chi tiết Vé đã đặt, Người dùng chọn đúp chuột vào Vé cần chọn trong DANH SÁCH VÉ (Hình 4.8), Thông tin chi tiết Vé và các chức năng Cập nhật và Hủy vé sẽ được hiển thị (Hình 4.10).
- Để cập nhật thông tin Vé đã đặt, Người dùng chỉ cần thay đổi thơng tin ngay trên Form THƠNG TIN VÉ VÀ KHÁCH ĐI, sau đó nhấn nút Cập nhật.
- Để Hủy Vé đang hiển thị, Nhấn nút Hủy vé, Hệ thống sẽ xác nhận xem có chắc chắn muốn hủy khơng, nếu có Vé sẽ được xóa ra khỏi hệ thống và trạng thái Ghế đã đặt của Vé đó sẽ được cập nhật thành Trống. Sau đó đóng Màn hình Chi tiết Vé đã đặt.
4.2.5. Chức năng Quản lý Hãng xe
Hình 4.13: Quản lý Hãng xe
- Từ Menu chính của Phần mềm, chọn Danh Mục Quản Lý =>Quản Lý Hãng, màn hình Quản lý Hãng xe sẽ hiển thị (Hình 4.11).
- Bao gồm Danh sách Hãng xe.
- Khi chọn một Hãng xe trong danh sách, thông tin chi tiết của Hãng xe đó sẽ được hiển thị ở Form bên cạnh, với các chức năng thêm, cập nhật, xóa Hãng xe.
Hình 4.14: Cập nhật thông tin Hãng xe
- Khi chọn Nút chức năng Cập nhật, Form Cập nhật thông tin Hãng xe sẽ được hiển thị, với thơng tin cả Hãng xe đã chọn (Hình 4.12). Người
dùng nhập thông tin cần cập nhật và nhấn nút Cập nhật. Hệ thống sẽ tự động cập nhật.
4.2.6. Chức năng Quản lý Tuyến đường
Hình 4.15: Quản lý Tuyến đường
- Từ Menu chính của Phần mềm, chọn Danh Mục Quản Lý =>Quản Lý Tuyến, màn hình Quản lý Tuyến xe sẽ hiển thị (Hình 4.13).
- Khi chọn một Tuyến trong danh sách, thơng tin chi tiết của Tuyến đó sẽ được hiển thị ở Form bên cạnh, với các chức năng thêm, cập nhật, xóa Tuyến.
4.2.7. Chức năng Quản lý Xe khách
Hình 4.17: Quản lý Xe khách
- Ở màn hình Quản lý Xe Khách (Tab XE KHÁCH) (Hình 4.15), bao gồm Danh sách Xe khách, có chức năng tìm kiếm ở phía trên.
- Khi chọn một xe trong danh sách, thông tin chi tiết của xe đó sẽ được hiển thị ở Form bên cạnh, với các chức năng cập nhật, xóa xe.
- Bên dưới là phần thống kê nhanh theo xe được chọn: về vị trí hiện tại và lịch trình gần nhất xe sắp chạy.
- Nút chức năng: Xuất danh sách xe khách theo danh sách hiển thị trên màn hình quản lý.
Hình 4.18: Tìm kiếm Xe khách
- Người dùng có thể lọc danh sách xe theo Hãng, hoặc tìm kiếm xe khách theo Biển số xe (Hình 4.16).
Hình 4.19: Thống kê nhanh theo xe được chọn
- Khi chọn một xe trong danh sách, ngồi việc hiển thị thơng tin xe khách đó, Hệ thống cịn hiển thị thêm phần Lịch trình gần nhất xe sắp chạy, và vị trí hiện tại của xe khách đó (Hình 4.17).
- Người dùng có thể nhấn nút Xuất danh sách Xe để xuất danh sách xe đang hiển thị trong danh sách.
Hình 4.21: Thêm mới Xe khách
- Khi nhấn nút Thêm ở màn hình Quản lý xe khách, màn hình THÊM MỚI XE KHÁCH sẽ được hiển thị (Hình 4.19), Người dùng điền đầy đủ thơng tin xe: Hãng xe, Tuyến đường, Loại xe, Biển số xe, ... rồi nhấn nút Thêm.
- Nếu thông tin xe không bị trùng, Hệ thống sẽ thêm Xe vào danh sách, hiển thị Thêm thành cơng và đóng màn hình THÊM MỚI XE KHÁCH.
4.2.8. Chức năng Quản lý Lịch trình
Hình 4.22: Quản lý Lịch trình
- Ở màn hình Quản lý Lịch trình (Tab LỊCH TRÌNH) (Hình 4.20), bao gồm Danh sách Lịch trình trong ngày, có chức năng tìm kiếm ở phía trên.
- Khi chọn một lịch trình trong danh sách, thơng tin chi tiết của Lịch trình đó sẽ được hiển thị ở Form bên cạnh, với các chức năng cập nhật, xóa Lịch trình. - Nút chức năng: Xuất danh sách Lịch trình theo danh sách hiển thị trên màn hình
Hình 4.24: Danh sách Lịch trình sau khi xuất
Hình 4.25: Thêm mới lịch trình
- Người dùng điền đầy đủ thơng tin vào màn hình THÊM MỚI LỊCH TRÌNH (Hình 4.23) rồi nhấn nút Thêm.
4.2.9. Chức năng Quản trị Người dùng
Hình 4.26: Quản trị người dùng
- Từ Menu chính của Phần mềm, chọn Quản trị Người dùng => Màn hình Quản trị sẽ hiển thị (Hình 4.24).
- Bao gồm Danh sách Tài khoản.
- Khi chọn một Tài khoản trong danh sách, thơng tin chi tiết của Tài khoản đó sẽ được hiển thị ở Form bên cạnh, với các chức năng cập nhật, xóa Tài khoản.
4.2.10.Chức năng Sao lưu và phục hồi dữ liệu
Hình 4.28: Sao lưu và Phục hồi dữ liệu Hệ thống
- Từ Menu chính của Phần mềm, chọn Tùy chọn => Sao lưu và Phục hồi Dữ liệu. Form SAO LƯU VÀ PHỤC HỒI DỮ LIỆU HỆ THỐNG sẽ được hiển thị (Hình 4.26).
- Người dùng có thể chọn chức năng Backup hoặc Restore. Chọn đường dẫn đến thư mục lưu (đối với Backup) hoặc đường dẫn đến thư mục chứa File (đối với Restore), sau đó nhấn nút Thực hiện.
- Hệ thống sẽ tự động sao lưu và phục hồi toàn bộ dữ liệu mà Hệ thống đang sử