Lê VũSinh viên thực hiện: Lê Việt LongMã sinh viên: 1811505310124Lớp: 18T1 Trang 2 TÓM TẮT Tên đề tài: Xây dựng ứng dụng quản lý bãi đỗ xe thông minhSinh viên thực hiện: - Họ và tên: Lê
TỔNG QUAN
Lý do chọn đề tài
Xã hội ngày càng phát triển, chất lượng cuộc sống ngày càng được nâng cao, cơ sở hạ tầng phát triển hơn so với 30 năm về trước, công nghệ số hóa được nâng cao, máy móc dần thay thế sức lao động cho con người Nhiều hàng hóa có tính kỹ thuật cao ra đời, xe cộ nhiều hơn, đòi hỏi công tác quản lý của con người sắp xếp sao cho trật tự, hợp lý Internet ra đời đánh dấu một bước ngoặt to lớn của nhân loại cung cấp thông tin, xã hội hóa hàng hóa, mọi phương thức giao lưu buôn bán được đơn giản hóa bằng các phần mềm, ứng dụng, bạn chỉ cần nhập dữ liệu, mọi thao tác còn lại đã có phần mềm, ứng dụng Việc quản lý xe cộ là một bài toán với những nhà quản lý, Ứng dụng quản lý bãi đỗ xe thông minh với quy mô vừa và nhỏ, Ứng Dụng Quản Lý Xe Ra Vào là một trong những giải pháp hiệu quả trong việc quản lý xe.
Trong thực tế những bước trở ngại lớn trong công việc giữ xe mà tôi đã làm nhiều năm qua là việc kiểm soát xe ra vào của khách hàng còn nhiều hạn chế, ví dụ như xe tới chỉ việc đẩy vào và xếp xe ngay ngắn rồi ngồi trông xe, cũng chẳng biết cụ thể là xe nào là của vị khách nào Tiếp đó là dễ xảy ra tình trạng kẻ xấu lẳn vào có thể là bẻ khóa và chạy đi, bạn có thể trông xe kĩ hoặc làm một gì đó tốt hơn nữa nhưng sơ sút một chút là phải trả một cái giá thật đắt chính vì những vấn đề đó tôi đã chọn đề tài này “xây dựng ứng dụng quản lý bãi đỗ xe thông minh” để làm một đề tài nghiên cứu cho mình.
Mục đích đề tài
- Sau khi đề tài được đưa vào ứng dụng trong thực tế sẽ giải quyết được các vấn đề về quản lý xe ra vào ở các bãi đỗ xe một cách tiến bộ hơn về việc: o Đảm bảo an toàn tài sản cho bãi gửi xe o Tiết kiệm thời gian gửi, lấy xe, thuận tiện, tránh ùn tắc o Hệ thống quản lí linh hoạt tùy vào số lượng xe ra vào của khách hàng o Tính tự động hóa cao: thay cho việc ghi vé bằng tay người vận hành chỉ cần quét mã QR code có sẳn, giao thẻ cho khách khi vào và lấy lại thẻ của khách khi ra chỉ mất vài giây. o Tính chuyên nghiệp cao: Việc sử dụng hệ thống bãi đỗ xe thông minh sẽ tăng tính chuyên nghiệp cho bãi xe, tạo môi trường văn minh, hiện đại, góp phần tăng thêm sự tin tưởng của khách hàng khi gửi xe qua hệ thống của bạn.
- Việc nghiên cứu tập trung vào những vấn đề như sau: o Kiểm soát xe ra vào bằng mã QRcode o Tự động nhận dạng mã QRcode khi đưa vào camera o Chụp ảnh khách hàng so sánh với đầu ra o Lưu lại thời gian vào, hình ảnh chủ xe, biển số, khu vực để o Nhân viên xem danh sách xe còn trong bãi o tìm kiếm xe trong bãi và có thể cho xe ra nếu khách hàng đã mất mã QRcode
- Nghiên cứu và dựa theo qui trình tạo một ứng dụng hoàn chỉnh dựa trên mô hình MVC.
- Phân tích và tìm kiếm những thông tin phải phù hợp với thực tế, gần gủi với người sử dụng một cách tối ưu nhất.
Phạm vi đề tài
Các Ứng Dụng quản lý bãi đỗ xe thông minh
1.3.2 Phạm vi nghiên cứu Áp dụng mô hình này ở những bãi xe vừa và nhỏ (VD: kí túc xá, bãi xe Đại Học Đà Nẵng, các bãi xe ở nhà hàng, các quán đồ uống, …)
CƠ SỞ LÝ THUYẾT
Hệ điều hành android
Android là một hệ điều hành dựa trên nền tảng Linux được thiết kế dành cho các thiết bị di động có màn hình cảm ứng như điện thoại thông minh và máy tính bảng Ban đầu, Android được phát triển bởi Android, Inc Với sự hỗ trợ tài chính từ Google và sau này được chính Google mua lại vào năm 2005.
Android ra mắt vào năm 2007 cùng với tuyên bố thành lập Liên minh thiết bị cầm tay mở: một hiệp hội gồm các công ty phần cứng, phần mềm, và viễn thông với mục tiêu đẩy mạnh các tiêu chuẩn mở cho các thiết bị di động Chiếc điện thoại đầu tiên chạy Android được bán vào năm 2008.
Từ tháng 10 năm 2003 đến tháng 12 năm 2020, hệ điều hành Android được phát triển qua nhiều phiên bản Trong đó có các phiên bản nổi bật như sau:
Tháng 10 năm 2003, Android, Inc được thành lập tại Palo Alto, California.
Ngày 17 tháng 8 năm 2005, Google mua lại Android
Từ năm 2008, Android đã trải qua nhiều lần cập nhật để dần dần cải tiến hệ điều hành, bổ sung các tính năng mới và sửa các lỗi trong những lần phát hành trước Tính tới ngày 9 tháng 9 năm 2020 phiên bản Android 11 là phiên bản mới nhất.
Một ứng dụng trên Android được cấu thành từ bốn thành phần cơ bản sau:
Một Activity được xem như một điểm tiếp xúc với người dùng Nó là một màn hình đơn với giao diện trên đó Ví dụ, khi cài và chạy lên ứng dụng này thì màn hình chạy lên các bạn sẽ thấy giao diện hiện thị cho chúng ta xem, đó là mộtActivity Activty giúp người dùng tương tác với hệ thống, thực hiện các chức năng cần thiết trên đó, chuyển đổi qua lại giữa các màn hình giao diện/ chức năng Mỗi hoạt động có một cửa sổ để vẽ lên Thông thường cửa sổ này phủ đầy màn hình, ngoài ra nó cũng có thể có thêm các cửa sổ con khác như là hộp thoại Nội dung của cửa sổ của hoạt động được cung cấp bởi một hệ thống cấp bậc các View (là đối tượng của lớp Views) b) Services
Service có chức năng giúp ứng dụng vẫn chạy được, nhưng không cần hiện thị trên giao diện (gọi là chạy ngầm bên dưới). c) Broadcast Receivers
Broadcast receiver được sử dụng trong nhiều trường hợp, ví dụ: để chuyển dữliệu từ service lên activity (ngoài sử dụng binding) chúng ta có thể sử dụng broadcast để gửi dữ liệu Hoặc trong các ứng dụng như hẹn giờ, khi đến giờ hẹn, ứng dụng sẽ sử dụng broadcast báo thức, tạo ra notification trên màn hình để báo cho người dùng biết. d) Content Provider
Content provider quản lý các cách để ứng dụng có thể lưu trữ dữ liệu trên hệ thống Chúng ta sẽ biết cụ thể về thành phần này khi xây dựng các ứng dụng cần lưu trữ vào SQLite.
Ví dụ trong các ứng dụng từ điển, dữ liệu, từ vựng được lưu trữ trong SQlite và Content provider gọi để lấy ra cho người dùng xem Ngoài ra thành phần này còn thực hiện các chức năng, thêm, sửa, xóa dữ liệu…
Ngôn ngữ java
Java là ngôn ngữ chính thức để phát triển Android Đây là ngôn ngữ có sự hỗ trợ nhiều nhất từ Google Nó cũng là ngôn ngữ mà hầu hết các ứng dụng trên PlayStore được xây dựng Nó cũng là ngôn ngữ chính thức của Android Hệ điều hànhAndroid của Google sử dụng Java như là cơ sở cho tất cả các ứng dụng Android.Java được thiết kế để tương thích với nhiều môi trường phát triển nên nó được xem là linh hoạt hơn ngôn ngữ lập trình hướng đối tượng C++ và ngôn ngữ lập trình C Ngoài ra Java còn có hiệu suất cao nhờ vào trình thu gom rác Nó giải phóng bộ nhớ với các đối tượng không được dùng đến.
Java hỗ trợ tối đa cho hệ điều hành Android Vì thế ngôn ngữ lập trình này được áp dụng rất nhiều vào các ứng dụng dành cho Android Số người sử dụng Android chiếm hơn một nửa thị phần vì vậy có thể thấy, nhu cầu sử dụng các ứng dụng là rất lớn.
Nếu trong tay bạn đang cầm một chiếc điện thoại chạy trên hệ điều hành Android thì đừng bất ngờ, bất cứ một ứng dụng nào trên đó cũng đều được hình thành và phát triển trên nền tảng Java
Java cũng là một ngôn ngữ lập trình Trong việc phát triển ứng dụng di động cho hệ điều hành Android, Java là ngôn ngữ lựa chọn số 1 trước khi Kotlin được phát triển rộng rãi.
Java được nhiều người sử dụng bởi vì:
✓ Cú pháp dễ hiểu, lập trình được nhiều thứ-Web, mobile, …
✓ Code Android từ Java tương thích rất tốt, rất ít lỗi
✓ Có cộng đồng lớn, nhiều hướng dẫn và thư viện
✓ Có nhiều công ty tuyển dụng
Tuy có nhiều ưu điểm như thế, nhưng Java cũng có những nhược điểm chí mạng như:
✓ Các dòng code dài dòng
✓ Lỗi NullPointerException, lỗi này xảy ra khi bạn gọi object hay phương thức bị null
✓ Dấu “;” (dấu chấm phẩy cuối một câu lệnh).
Vì Kotlin sinh sau đẻ muộn cho nên nó được cải tiến khá nhiều và khắc phục được nhiều bất cập còn tồn động trong Java.
XML trong android
Không giống như lập trình java thông thường, lập trình android ngoài các lớp được viết trong *.java còn sử dụng XML để thiết kế giao diện cho ứng dụng Tất nhiên bạn hoàn toàn có thể thiết kế 1 giao diện như ý muốn mà không cần tới bất cứ 1 dòng XML nào, nhưng sd XML sẽ đơn giản công việc đi rất nhiều Đồng thời sd
XML sẽ giúp việc chỉnh sửa ứng dụng sau này trở nên dễ dàng.
Về nguyên tắc, khi lập trình ứng dụng ta thiết kế giao diện bằng XML và cài đặt các xử lý khi tương tác với giao diện trong code.
1 số thành phần cơ bản trong Android:
Các Layout được dùng để quản lý các thành phần giao diện khác theo 1 trật tự nhất định.
- FrameLayout: Layout đơn giản nhất, thêm các thành phần con vào góc trên bêntrái của màn hình
- LinearLayout: thêm các thành phần con theo 1 chiều nhất định (ngang hoặc dọc). Đây là layout được sử dụng nhiều nhất.
- RelativeLayout: thêm các thành phần con dựa trên mối quan hệ với các thành phần khác hoặc với biên của layout.
- TableLayout: thêm các thành phần con dựa trên 1 lưới các ô ngang và dọc.
- AbsoluteLayout: thêm các thành phần con dựa theo tọa độ x, y.
Layout được sử dụng nhằm mục đích thiết kế giao diện cho nhiều độ phân giải.
Thường khi lập trình nên kết hợp nhiều layout với nhau để tạo ra giao diện bạn mong muốn.
Firebase của google
Firebase là một nền tảng để phát triển ứng dụng di động và web, bao gồm các API đơn giản đến mạnh mẽ mà không cần backend hay server.
Firebase là một dịch vụ hệ thống backend được Google cung cấp sẵn cho ứng dụng Dịch vụ này giúp bạn phát triển, triển khai và mở rộng quy mô của ứng dụng Mobile nhanh hơn Dù bạn sử dụng Android hay IOS, Firebase vẫn có thể hỗ trợ tốt
Firebase là tiền thân của Firebase evolved do James Tamplin and Andrew Lee một dự án khởi nghiệp trong năm 2011 Nó cung cấp cho lập trình viên một API cho phép tích hợp chức năng trò chuyện trực tuyến vào trang web của họ Hơn thế nữa, nó còn được sử dụng để truyền và đồng bộ dữ liệu theo thời gian thực cho các trò chơi trực tuyến
Những người sáng lập Firebase evolved đã tách biệt hai mảng trò chuyện và động bộ dữ liệu theo thời gian thực để phát triển Vào tháng 09 năm 2011, họ thành lập Firebase như là một công ty riêng biệt và đến tháng 4 năm 2012 ra mắt công chúng.
Trong năm 2014, Firebase tung ra hai vụ mới là Firebase Hosting, Firebase Authentication Đến tháng 10 năm 2014, Firebase đã bị mua lại bởi Google và phát triển nhanh chóng thành một mảng lưới cung cấp nhiều dịch vụ tiện ích.
Thực chất các mảng dịch của Firebase được chia làm 3 mảng nhỏ Các mảng dịch này tuy rằng nó tách biệt về mặt hình thức lẫn nội dung, nhưng mỗi dịch vụ dường như có sự gắn kết với nhau giúp ứng dụng của lập trình viên hoạt động trơn tru, tăng cường tính bảo mật và tăng cường trải nghiệm người dùng
✓ Xây dựng cho ứng dụng
✓ Các dịch vụ giúp tăng tương tác cho ứng dụng
✓ Các dịch vụ kiểm tra và đánh giá chất lượng ứng dụng
Trong đề tài này tôi sẽ trình bày các dịch vụ xây dựng cho ứng dụng gồm có các dịch vụ sau:
Firebase Authentication (Firebase Auth) là một dịch vụ cung cấp tính năng xác thực người dùng Firebase Auth dễ sử dụng và với các thư viên UI có sẵn giúp giảm thời gian xây dựng Nó hỗ trợ đăng nhập qua nhiều kênh nổi tiếng như: Facebook, Twitter, Số điện thoại.
Firebase Realtime Database là một trong những dịch vụ ra đời sớm nhất và đạt được rất nhiều thành công Nó là một cơ sở dữ liệu NoQuery lưu dưới dạng chuỗi JSON Khi có một trường dữ liệu được thay đổi (thêm, xóa, sửa) lập tức các máy khách đều được đồng bộ.
Nếu thiết bị của máy khách đang trong tình trạng ngoại tuyến – không có kết nối mạng thì Firebase Realtime Database sử dụng bộ đệm cục bộ trên thiết bị để phục vụ và lưu trữ các thay đổi của máy khách Khi máy khách trở lại trạng thái trực tuyến, dữ liệu được lưu trong bộ đệm sẽ được tự động đồng bộ.
Firebase Storage là một giải pháp giúp người dùng có thể tải lên các nội dung như hình ảnh và video từ các thiết bị Android, IOS, Web. Ưu điểm
Triển khai ứng dụng nhanh chóng: Firebase tiết kiệm rất nhiều thời gian quản lý và đồng bộ tất cả dữ liệu cho người dùng Đó là nhờ người dùng không phải áp lực, quan tâm đến phần backed cùng các API tốt, hỗ trợ đa nền tảng.
Bảo mật: Bạn có thể hoàn toàn yên tâm về độ bảo mật của Firebase nhờ nền tảng cloud, kết nối thông qua SSL, dùng JavaScript phần quyền người dùng cơ sở dữ liệu, …
Sự ổn định: Được viết dựa trên nền tảng cloud cung cấp bởi Google, các công cụ luôn đảm bảo độ ổn định tối đa Bên cạnh đó, quá trình nâng cấp hay bảo trì Server cũng diễn ra nhanh và đơn giản hơn.
Cơ sở dữ liệu của Firebase được tổ chức theo kiểu trees, parent-children. Trong khi đó, người dùng SQL lại quen thuộc với kiểu Table truyền thống Khi sử dụng Firebase, có lẽ, người dùng sẽ mất thời gian để làm quen trước khi sử dụng thành thạo.
Tóm lại, Firebase là một nền tảng di động giúp bạn:
Nhanh chóng phát triển các ứng dụng chất lượng cao
Phát triển ứng dụng cho người dùng lớn
Thu được nhiều doanh thu hơn.
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
Tác nhân và chức năng
Gồm có hai tác nhân chính: một là người quản lý và khách hàng.
3.1.2 Đặc tả các chức năng của từng tác nhân của hệ thống
3.1.2.1 Tác nhân người quản lý
Xe vào chọn theo vé: dùng mã QRcode có sẳn để quét và cho xe vào, hệ thống sẽ lưu thông tin Maxe và thời gian vào.
Xe ra chọn theo vé: khách hàng cung cấp mã QRcode, người quản lý quét mã nếu hợp lệ hệ thống sẽ hiển thị thông tin Maxe, thời gian vào, thời gian ra, cước phí.
Xe vào: người quản lý cần lấy thông tin của khách hàng như: chụp ảnh người gửi, khu vực để, biển số sau đó tạo mã QRcode và cho xe vào Hệ thống sẽ tự động lưu thời gian vào
Xe ra: quản lý quét quét mã QRcode nếu mã hợp lệ thì hệ thống trả về thông tin: hình ảnh, khu vực, biển số, thời gian vào, thời gian ra, cước phí
Danh sách xe trong bãi: người quản lý có thể xem danh sách xe, tìm kiếm xe, và có thể cho xe ra nếu khách hàng đã làm mất mã QRcode
Cài đặt: cập nhật cước phí và xóa dữ liệu về trạng thái ban đầu
Khách hàng tương tác với người quản lý cung cấp thông tin như nhận và đưa thẻ khi ra vào, cung cấp biển số chính xác.
Phân tích bài toán
3.2.1 Sơ đồ hoạt động của quản lý bãi xe
Có 2 cách để quản lý:
Trường hợp 1: khi xe vào có thể kiểm soát dùng theo cách thủ công để đảm bảo mức an toàn tốt nhất
Hình 3.1 sơ đồ mô tả quá trình xe vào ở trường hợp 1
Trường hợp 2: khi xe vào quá đông cùng một lúc không thể dùng theo trường hợp 1 thì ta dùng mã QRcode đã có sẳn: cách này có thể quét mã liên tục chỉ cần click vào vùng xanh để tạo mới dữ liệu
Hình 3.2 sơ đồ mô tả quá trình xe ra ở trường hợp 2
3.2.2 Biểu đồ usecase, đặc tả usecase
Hình 3.3 sơ đồ use case tổng quát
⁂ Đặc tả một số use case quan trọng:
Hình 3.4 mô tả use case của cập nhật thông tin xe vào
Đối tượng sử dụng là người quản lý
Use case này mô tả các bước hoạt động khi xe vào bãi đỗ o Khi xe vào người quản lý vào mục “xe vào” trên ứng dụng hiện ra: tiến hành chụp ảnh người gửi, nhập khu vực và biển số để tiến hành tạo mã
QR code sau đó đưa cho khách hàng chụp mã code bằng smarphone và lưu thông tin xe vào o Cách khác nếu một lúc quá nhiều xe vào thì có thể sử dụng mã QRcode đã in sẳn và tiến hành quét vào mục xe vào chọn theo vé, có thể quét liên tục thì click vào vùng xanh để tiếp tục thực hiện.
Hình 3.5 mô tả use case của cập nhật thông tin xe ra
Use case này mô tả các bước hoạt động khi xe ra bãi đỗ o Khách hàng tiến hành đưa mã QR cho quản lý để check thông tin ở mục
“xe ra” nếu thông tin khớp thì ứng dụng sẽ trả về kết quả thông tin xe, thời gian vào, ra và cước phí để thanh toán.
Biểu đồ hoạt động của người quản lý (Activity Diagram)
Sơ đồ hoạt động xe vào chọn theo vé
Hình 3.6 mô tả biểu đồ hoạt động xe vào chọn theo vé
Sơ đồ hoạt động xe ra chọn theo vé
Hình 3.7 mô tả biểu đồ hoạt động xe ra chọn theo vé
Sơ đồ hoạt động xe vào
Hình 3.8 mô tả biểu đồ hoạt động xe vào
Sơ đồ hoạt động xe ra
Hình 3.9 mô tả biểu đồ hoạt động xe ra
Sơ đồ hoạt động danh sách xe còn trong bãi
Hình 3.10 biểu đồ hoạt động danh sách xe trong bãi
Sơ đồ hoạt động của cài đặt
Hình 3.11 biểu đồ hoạt động cài đặt
Biểu đồ tuần tự (Sequence Diagram)
sơ đồ tuần tự xe vào chọn theo vé.
Hình 3.12 sơ đồ tuần tự xe vào chọn theo vé
sơ đồ tuần tự xe ra chọn theo vé
Hình 3.13 sơ đồ tuần tự xe ra chọn theo vé
sơ đồ tuần tự xe vào
Hình 3.14 sơ đồ tuần tự xe vào
sơ đồ tuần tự xe ra
Hình 3.15 sơ đồ tuần tự xe ra
sơ đồ tuần tự danh sách xe còn trong bãi
Hình 3.16 sơ đồ tuần tự danh sách xe còn trong bãi
Sơ đồ tuần tự cài đặt thay đổi cước phí
Hình 3.17 sơ đồ tuần tự thay đổi cước phí
Sơ đồ tuần tự cài đặt xóa dữ liệu về trạng thái ban đầu
Hình 3.18 sơ đồ tuần tự cài đặt xóa dữ liệu
Xây dựng cơ sở dữ liệu
3.5.1 Các thực thể và thuộc tính
Hình 3.19 mô tả thực thể của hệ thống
Thực thể Thuộc tính Kiểu dữ liệu Diễn giải
Chọn theo vé id String Id chọn theo vé mave String Mã vé thoigianvao long Thời gian vào thoigianra long Thời gian ra
Cước phí phitheongay String Phí theo ngày
Xe vào id String Id xe vào image Url Link ảnh khuvuc String Khu vực
Bienso String Biển số maqrcode String Mã QRcode thoigianvao long Thời gian vào thoigianra long Thời gian ra cuocphi String Cước phí
Các thuộc tính của thực thể
KẾT QUẢ TRIỂN KHAI ỨNG DỤNG
Đăng nhập hệ thống
Đây là màn hình để người dùng (Người quản lý) truy cập vào hệ thống, nếu tài khoản đăng kí lần đầu tiên đăng nhập vào thì hệ thống cần xác nhận thông tin gửi đến email người dùng cần xác nhận.
Hình 4.22 màn hình đăng nhập hệ thống
Đăng kí tài khoản người dùng(Quản lý)
Hình 4.23 màn hình đăng kí tài khoản người dùng
Giao diện xử lý quên mật khẩu
Hình 4.24 màn hình xử lý giao diện quên mật khẩu
Khi người dùng nhập email, hệ thống sẽ gửi một đường link trong hòm thư:
Hình 4.25 Email hệ thống- thiết lập mật khẩu mới
Khi người dùng nhấn vào link sẽ được chuyển sang giao diện đổi mật khẩu
Hình 4.26 giao diện đổi mật khẩu mới
Tiến hành thay đổi mật khẩu mới sau đó lưu lại
Màn hình chính: giao diện xe vào chọn theo vé
Khi người dùng đăng nhập thành công, hệ thống sẽ hiển thị giao diện như sau:
Hình 4.27 giao diện xe vào chọn theo vé
Hình 4.28 giao diện sau khi quét mã QRcode có sẳn thành công
Có thể click vào màn hình để làm mới, thực hiện liên tiếp xe vào theo mã QR code
Nếu người dùng muốn chuyển qua giao diện khác cần phải vào mục menu
Giao diện xe ra chọn theo vé
Hình 4.30 màn hình giao diện xe ra chọn theo vé
Giao diện này cũng giống như xe vào chọn theo vé
Giao diện xe ra theo vé sau khi check mã QRcode thành công dữ liệu sẽ hiện thông tin mã xe, thời gian vào, thời gian ra, cước phí, có thể thực hiện liên tục xe ra theo vé thì click vào màn hình để tạo mới.
Hình 4.31 giao diện sau khi check mã QR code thành công
Giao diện xe vào
Đây là giao diện xe vào theo cách thủ công là nhập tay, ở phần này người quản lý có thể nhập đầy đủ thông tin dễ kiểm soát quản lý xe ra vào Sau khi chụp ảnh người gửi, khu vực để cần nhập đúng biển số và tạo QRcode sau đó đưa cho khách hàng dùng smarphone lưu lại mã QRcode sau đó lưu dữ liệu
Hình 4.32 màn hình giao diện xe vào
Hình 4.33 giao diện sau khi nhập đầy đủ thông tin
Giao diện xe ra
Hình 4.34 màn hình giao diện xe ra
Người quản lý cần click vào “mời quét QR code” màn hình scanner xuất hiện,nếu mã quét hợp lý thì thông tin sẽ hiển thị ở mục giao diện xe ra
Hình 4.35 màn hình giao diện quét mã QRcode xe ra
Tiến hành lấy mã QRcode của khách hàng đưa vào vùng camera để quét Nếu mã hợp lệ hệ thống sẽ hiển thị thông tin lên màn hình
Hình 4.36 giao diện sau khi check mã QRcode thành công
Giao diện hiển thị danh sách xe
ở mục này chỉ hiển thị danh sách xe vào theo mục không theo mã có sẳn, hiển thị những thông tin đầy đủ, có thể tìm kiếm theo biển số xe và cho xe ra
Hình 4.37 màn hình hiển thị danh sách xe ở danh sách xe này chúng ta có thể tìm kiếm xe theo biển số hoặc có thể xem chi tiết xe vào Đây là giao diện tìm kiếm xe theo biển số cũng có thể lick vào để xem chi tiết
Hình 4.38 màn hình tìm kiếm xe
Giao diện sau khi click vào xem chi tiết
Dưới đây là giao diện cho xe ra ở mục danh sách xe khi click vào “cho xe ra” thông tin xe đó sẽ hiển thị đầy đủ như ảnh, khu vực, biển số, thời gian vào, ra, cước phí
Hình 4.40 giao diện sau khi cho xe ra
Khi click vào “xong” màn hình sẽ quay về màn hình chính “chọn xe ra theo vé”
Giao diện thống kê
Giao diện thống kê này thống kê tổng số xe có trong bãi như: xe chọn theo vé và xe nhập theo thủ công.
Tính được tổng số xe đã ra khỏi bãi và giá tiền
Hình 4.41 màn hình thống kê
Giao diện hướng dẫn sử dụng
Hình 4.42 màn hình hướng dẫn sử dụng app
Giao diện cài đặt
ở phần cài đặt chúng ta có thể cài đặt giá tiền xe ra vào, giá tiền sau khi tài khoản tạo thành công giá tiền ban đầu là 2000đ người dùng có thể thay đổi lại cước gửi
Hình 4.43 màn hình giao diện cài đặt
Giao diện sau khi click vào phí gửi xe, sau đó người dùng có thể nhập cước phí muốn thay đổi
Hình 4.44 màn hình giao diện thay đổi cước phí xe
Phần cài đặt lại là xóa tất cả dữ liệu đã sử dụng về trạng thái như mới tạo tài khoản nhằm giải phóng dung lượng
Hình 4.45 màn hình reset dữ liệu làm mới như mới tạo tài khoản
Kết luận
Ứng dụng đã hoàn tất các vấn đề đặt ra
Chương trình cũng tương đối đầy đủ các tính năng của một ứng dụng quản lý xe như lưu dữ liệu xe vào, xe ra
Sử dụng được 2 tính năng xe vào chọn theo vé và xe vào tự tạo mã QRcode
Chương trình có giao diện dễ sử dụng không quá cầu kì
Thời gian quá ngắn để có thể hoàn tất đề tài
Việc tìm kiếm tài liệu tham khảo còn nhiều hạn chế
Cá nhân code còn yếu kém chưa học hỏi được nhiều
Chưa có kinh nghiệm trong thiết kế giao diện, cách phối màu
Chưa lưu được ảnh quét nhiều lần ở mục xe vào theo cách nhập thủ công (tự tạo mã QRcode)
Chưa làm được thống kê theo tháng, năm, …
Hướng phát triển
Tối ưu hóa quá trình truyền tải và hiển thị, giảm thời gian tải dữ liệu từ máy chủ Firebase về hệ thống.
Tiếp tục chuyển sang hệ điều hành IOS
Nâng cấp giao diện giúp đơn giản cho người dùng thuận tiện hơn.