Xây Dựng Ứng Dụng Quản Lý Đặt Nước Uống Tại Quán Sahami Ở Thành Phố Đà Nẵng

Xây dựng ứng dụng quản lý đặt nước uống tại quán sahami ở Đà Nẵng giúp tối ưu hóa quy trình phục vụ và nâng cao trải nghiệm khách hàng.

Trường đại học

Đại học Đà Nẵng

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2023

60
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI NÓI ĐẦU

LỜI CAM ĐOAN

1. CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

1.1. Tổng quan về ngôn ngữ lập trình Dart

1.2. Dịch vụ cơ sở dữ liệu Firebase

1.3. Framework và thư viện hỗ trợ

1.4. Công cụ hỗ trợ xây dựng hệ thống

2. CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG

2.1. Đặc tả yêu cầu nghiệp vụ

2.1.1. Khách vãng lai

2.1.2. Khách hàng

2.1.3. Quản trị viên

2.2. Đặc tả yêu cầu phần mềm

2.2.1. Khách vãng lai

2.2.2. Khách hàng

2.2.3. Quản trị viên

2.3. Kịch bản cho Use case

2.3.1. Khách vãng lai

2.3.1.1. Xem trang chủ
2.3.1.2. Xem chi tiết sản phẩm
2.3.1.3. Tìm kiếm sản phẩm
2.3.1.4. Cập nhật giỏ hàng

2.3.2. Khách hàng

2.3.2.1. Theo dõi tình trạng đơn hàng
2.3.2.2. Nhận xét và đánh giá
2.3.2.3. Xem lịch sử đơn hàng
2.3.2.4. Cập nhật khách hàng
2.3.2.5. Cập nhật nước uống
2.3.2.6. Cập nhật thông tin cá nhân
2.3.2.7. Xem thống kê tình trạng đơn hàng
2.3.2.8. Xem lịch sử đơn hàng

2.4. Bảng cơ sở dữ liệu

2.4.1. Bảng phân quyền

2.4.2. Bảng khách hàng

2.4.3. Bảng nhân viên

2.4.4. Bảng danh mục

2.4.5. Bảng nước uống

2.4.6. Bảng đánh giá

2.4.7. Bảng chi tiết đơn hàng

2.4.8. Bảng thanh toán

3. CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH

3.1. Giao diện người dùng (Khách vãng lai và Khách hàng)

3.1.1. Giao diện trang chủ

3.1.2. Giao diện sản phẩm chi tiết

3.1.3. Giao diện thanh toán

3.1.4. Giao diện đơn hàng đang chờ thanh toán

3.1.5. Giao diện lịch sử đơn hàng

3.1.6. Giao diện profile

3.1.7. Giao diện tìm kiếm

3.2. Giao diện admin

3.2.1. Giao diện trang chủ

3.2.2. Giao diện cập nhật khách hàng

3.2.3. Giao diện tạo mới khách hàng

3.2.4. Giao diện cập nhật sản phẩm

3.2.5. Giao diện thêm sản phẩm

3.2.6. Giao diện quản lý đơn hàng

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về ứng dụng quản lý đặt nước uống tại quán Sahami Đà Nẵng

Ứng dụng quản lý đặt nước uống tại quán Sahami Đà Nẵng được thiết kế nhằm cải thiện trải nghiệm khách hàng và tối ưu hóa quy trình đặt hàng. Ứng dụng này cho phép khách hàng đặt nước uống trực tuyến, theo dõi đơn hàng và quản lý thông tin cá nhân một cách dễ dàng. Việc áp dụng công nghệ vào quản lý giúp quán nâng cao hiệu quả phục vụ và tăng cường mối quan hệ với khách hàng.

1.1. Lợi ích của ứng dụng quản lý đặt nước uống

Ứng dụng mang lại nhiều lợi ích cho cả khách hàng và quán, bao gồm tiết kiệm thời gian, giảm thiểu sai sót trong đơn hàng và nâng cao sự hài lòng của khách hàng.

1.2. Tính năng nổi bật của ứng dụng

Ứng dụng cung cấp nhiều tính năng như xem danh sách nước uống, thêm vào giỏ hàng, thanh toán trực tuyến và theo dõi đơn hàng, giúp khách hàng dễ dàng sử dụng.

II. Vấn đề và thách thức trong quản lý đặt nước uống

Quản lý đặt nước uống tại quán Sahami gặp phải nhiều thách thức như việc xử lý đơn hàng thủ công, khó khăn trong việc theo dõi tình trạng đơn hàng và thiếu thông tin phản hồi từ khách hàng. Những vấn đề này có thể dẫn đến sự không hài lòng của khách hàng và giảm hiệu quả kinh doanh.

2.1. Khó khăn trong việc xử lý đơn hàng

Việc xử lý đơn hàng thủ công dễ dẫn đến sai sót và mất thời gian, ảnh hưởng đến trải nghiệm của khách hàng.

2.2. Thiếu thông tin phản hồi từ khách hàng

Thiếu thông tin phản hồi làm khó khăn trong việc cải thiện dịch vụ và sản phẩm, dẫn đến sự không hài lòng của khách hàng.

III. Phương pháp giải quyết vấn đề quản lý đặt nước uống

Để giải quyết các vấn đề trong quản lý đặt nước uống, quán Sahami đã áp dụng ứng dụng công nghệ thông tin. Ứng dụng này không chỉ giúp quản lý đơn hàng hiệu quả mà còn cung cấp thông tin phản hồi từ khách hàng một cách nhanh chóng.

3.1. Ứng dụng công nghệ thông tin vào quản lý

Việc áp dụng công nghệ thông tin giúp quán quản lý đơn hàng một cách tự động, giảm thiểu sai sót và tiết kiệm thời gian.

3.2. Tăng cường tương tác với khách hàng

Ứng dụng cho phép khách hàng gửi phản hồi và đánh giá, từ đó giúp quán cải thiện dịch vụ và sản phẩm.

IV. Ứng dụng thực tiễn và kết quả nghiên cứu

Kết quả nghiên cứu cho thấy ứng dụng quản lý đặt nước uống đã mang lại nhiều lợi ích cho quán Sahami. Khách hàng hài lòng hơn với dịch vụ và quán cũng có thể quản lý đơn hàng hiệu quả hơn.

4.1. Tăng cường sự hài lòng của khách hàng

Khách hàng có thể đặt hàng nhanh chóng và dễ dàng, từ đó nâng cao sự hài lòng và trung thành với quán.

4.2. Nâng cao hiệu quả kinh doanh

Quán có thể theo dõi và phân tích dữ liệu đơn hàng, từ đó đưa ra các quyết định kinh doanh hợp lý hơn.

V. Kết luận và tương lai của ứng dụng quản lý đặt nước uống

Ứng dụng quản lý đặt nước uống tại quán Sahami không chỉ giúp cải thiện quy trình đặt hàng mà còn tạo ra một trải nghiệm tốt hơn cho khách hàng. Trong tương lai, quán sẽ tiếp tục phát triển và nâng cấp ứng dụng để đáp ứng nhu cầu ngày càng cao của khách hàng.

5.1. Hướng phát triển ứng dụng trong tương lai

Quán sẽ nghiên cứu và phát triển thêm các tính năng mới để nâng cao trải nghiệm người dùng và cải thiện dịch vụ.

5.2. Tầm quan trọng của công nghệ trong kinh doanh

Công nghệ sẽ tiếp tục đóng vai trò quan trọng trong việc tối ưu hóa quy trình kinh doanh và nâng cao sự hài lòng của khách hàng.

10/07/2025
Xây dựng ứng dụng quản lý đặt nước uống tại quán sahami ở thành phố đà nẵng

Trích đoạn nội dung tài liệu

CHƯƠNG 1. Tổng quan về ngôn ngữ lập trình Dart Dart là ngôn ngữ lập trình cho Flutter - bộ công cụ giao diện người dùng của Google để xây dựng các ứng dụng Mobile, Web và Desktop app đẹp, được biên dịch nguyên bản từ một cơ sở mã code duy nhất. Cú pháp Dart rõ ràng và súc tích, công cụ của nó đơn giản nhưng mạnh mẽ. Type- safe giúp bạn xác định sớm các lỗi tinh tế.

Dart có các thư viện cốt lõi và một hệ sinh thái gồm hàng ngàn package. Dart cung cấp tối ưu hóa việc biên dịch trước thời hạn để có được dự đoán hiệu suất cao và khởi động nhanh trên các thiết bị di động và web. Dart biên dịch thành mã ARM và x86, để các ứng dụng di động của Dart có thể chạy tự nhiên trên iOS, Android và hơn thế nữa. Đối với các ứng dụng web, chuyển mã từ Dart sang JavaScript.

Dart quen thuộc với nhiều nhà phát triển hiện có, nhờ vào cú pháp và định hướng đối tượng không gây ngạc nhiên của nó. Nếu bạn đã biết C ++, C # hoặc Java, bạn có thể làm việc hiệu quả với Dart chỉ sau vài ngày. Dart rất phù hợp với lập trình Reactive, với sự hỗ trợ để quản lý các đối tượng tồn tại trong thời gian ngắn, chẳng hạn như các widget UI, thông qua phân bổ đối tượng nhanh và GC. Dart hỗ trợ lập trình không đồng bộ thông qua các tính năng ngôn ngữ và API sử dụng các đối tượng Future và Stream.

Dịch vụ cơ sở dữ liệu Firebase Firebase là dịch vụ cơ sở dữ liệu hoạt động trên nền tảng đám mây – cloud, kèm theo đó là hệ thống máy chủ cực kỳ mạnh mẽ của Google. Chức năng chính là giúp người dùng lập trình ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu. SVTH: Lê Thị Trúc Vy Trang 4 Xây dựng ứng dụng quản lý đặt nước uống tại quán Sahami ở thành phố Đà Nẵng Cụ thể là những giao diện lập trình ứng dụng API đơn giản. Mục đích nhằm tăng số lượng người dùng và thu lại nhiều lợi nhuận hơn.

Khi đăng ký một tài khoản trên Firebase để tạo ứng dụng, bạn đã có một cơ sở dữ liệu thời gian thực. Dữ liệu bạn nhận được dưới dạng JSON. Đồng thời nó cũng luôn được đồng bộ thời gian thực đến mọi kết nối client. Đối với các ứng dụng đa nền tảng, tất cả các client đều sử dụng cùng một cơ sở dữ liệu.

Nó được tự động cập nhật dữ liệu mới nhất bất cứ khi nào các lập trình viên phát triển ứng dụng. Cuối cùng, tất cả các dữ liệu này được truyền qua kết nối an toàn SSL có bảo mật với chứng nhận 2048 bit. Trong trường hợp bị mất mạng, dữ liệu được lưu lại ở local. Vì thế khi có mọi sự thay đổi nào đều được tự động cập nhật lên Server của Firebase.

Bên cạnh đó, đối với các dữ liệu ở local cũ hơn với Server thì cũng tự động cập nhật để được dữ liệu mới nhất. Framework và thư viện hỗ trợ Giới thiệu Flutter Framework Flutter là UI Framework mã nguồn mở dành cho di động, miễn phí được tạo bởi Google và phát hành vào tháng 5 năm 2017. Nó được sử dụng để phát triển các ứng dụng đa nền tảng cho Android, iOS, Linux, macOS, Windows, Google Fuchsia và web từ một codebase duy nhất. Icon Flutter SVTH: Lê Thị Trúc Vy Trang 5 Xây dựng ứng dụng quản lý đặt nước uống tại quán Sahami ở thành phố Đà Nẵng Ưu điểm của Flutter: - Ít phải viết các config khi tạo project mới theo cách thủ công, ngược lại với React Native.

- Chỉ cần tải về Flutter từ git, chạy “flutter doctor”, và nó sẽ cho bạn biết những loại vấn đề bạn có thể có trong hệ thống. Sau đó, tạo một project từ Android Studio hoặc bất kỳ IDE nào sau khi cài đặt Flutter Plug-in sơ bộ và start project. Ngoài ra nó còn có Hot-reload giống như trong React-Native. - Hỗ trợ tuyệt vời cho IDE (Android Studio, IDE IntelliJ, VSCode) - Trình điều hướng tích hợp sẵn.

Sau khi tạo ra một ứng dụng trên Flutter, có thể thấy nó có Navigator được xây dựng sẵn. Có thể tạo một route mới mà không cần kết nối bất kỳ thứ gì (không giống như trong React-Native, kết nối bất kỳ package điều hướng gốc nào, …) - Giải pháp quản lý dữ liệu được tạo sẵn, ví dụ trong Flutter này là "Mọi thứ đều có một Widget" cho nó. Có một StatefulWidget đặc biệt, với sự giúp đỡ của nó mà chúng ta có thể quản lý trạng thái widget và thay đổi nó một cách năng động. Công cụ hỗ trợ xây dựng hệ thống 1.

Android Studio Android Studio cung cấp môi trường phát triển tích hợp (IDE) cho Flutter, với đầy đủ tính năng và công cụ hỗ trợ cho việc phát triển ứng dụng di động Flutter. Nó cung cấp giao diện đồ họa và trình soạn thảo mã nguồn mạnh mẽ, cùng với các tính năng như tìm kiếm và sửa lỗi, tự động hoàn thành mã, và tích hợp công cụ quản lý phiên bản. Android Studio không chỉ hỗ trợ phát triển ứng dụng di động Android mà còn hỗ trợ việc phát triển ứng dụng di động iOS thông qua công cụ Flutter. Điều này cho phép chúng tôi xây dựng ứng dụng đa nền tảng cho cả hai hệ điều hành Android và iOS từ một mã nguồn duy nhất.

Android Studio tích hợp sẵn Git và các công cụ quản lý phiên bản khác, cho phép quản lý mã nguồn và tiến trình phát triển một cách thuận tiện. Hỗ trợ các plugin chính thức của Flutter, cho phép cài đặt và sử dụng các công cụ Flutter một cách dễ dàng. Các plugin này bao gồm Flutter SDK, Flutter Inspector, Flutter DevTools, và nhiều công cụ khác giúp phát triển, kiểm tra và gỡ lỗi ứng dụng Flutter một cách hiệu quả. Flutter Inspector - Gỡ lỗi giao diện người dùng (UI): Flutter Inspector cho phép kiểm tra và gỡ lỗi giao diện người dùng trong ứng dụng Flutter.

Có thể xem các thành phần UI, SVTH: Lê Thị Trúc Vy Trang 6 Xây dựng ứng dụng quản lý đặt nước uống tại quán Sahami ở thành phố Đà Nẵng cây Widget, và thuộc tính của chúng, từ đó dễ dàng phát hiện và khắc phục các vấn đề về giao diện. - Kiểm tra và tối ưu hiệu suất: Flutter Inspector cung cấp thông tin chi tiết về hiệu suất ứng dụng, giúp xác định và sửa lỗi các vấn đề về tốc độ và tài nguyên. Có thể xem thông tin về thời gian xử lý, kích thước Widget, số lượng Widget render, và các thông số quan trọng khác để tối ưu hóa hiệu suất ứng dụng. - Tương tác với Widget và trạng thái ứng dụng: Flutter Inspector cho phép tương tác trực tiếp với các Widget trong ứng dụng, thay đổi trạng thái và các thuộc tính của chúng.

Điều này giúp thử nghiệm và kiểm tra sự phản ứng của ứng dụng trong nhiều trạng thái khác nhau mà không cần phải khởi chạy lại ứng dụng. - Hỗ trợ quản lý và chỉnh sửa layout: Flutter Inspector cung cấp các công cụ để quản lý và chỉnh sửa layout của ứng dụng. Có thể di chuyển, thay đổi kích thước, và sắp xếp các Widget trong cây Widget một cách thuận tiện và trực quan. Ảnh minh họa Adroid Studio 1.

Postman Postman là một công cụ để test API của cty Postdot Technologies, cho phép làm việc với các API, nhất là REST, giúp ích rất nhiều cho việc testing. Hỗ trợ tất cả các phương thức HTTP (GET, POST, PUT, DELETE, OPTIONS, HEAD. Ưu điểm: - Dễ sử dụng, hỗ trợ cả chạy bằng UI và non-UI. SVTH: Lê Thị Trúc Vy Trang 7 Xây dựng ứng dụng quản lý đặt nước uống tại quán Sahami ở thành phố Đà Nẵng - Hỗ trợ viết code cho assert tự động bằng Javascript.

- Hỗ trợ cả RESTful services và SOAP services. - Có chức năng tạo API document. Ảnh minh họa Postman 1. Lý thuyết xây dựng ứng dụng Bên dưới tất cả ứng dụng là một tập các dịch vụ và các hệ thống bao gồm: Một tập hợp các View có thể được mở rộng, được sử dụng để xây dựng các ứng dụng bao gồm các List, Grid, Text Box, Button, … Content Provider: cho phép ứng dụng truy xuất dữ liệu từ ứng dụng khác (Contacts chẳng hạn), hoặc chia sẻ dữ liệu của nó cho các ứng dụng khác.

Resource Manager: cho phép truy cập đến các tài nguyên non-code như là các tập tin layout, hình ảnh, dữ liệu dạng chuỗi được định vị … Notification Manager: cho phép tất cả các ứng dụng hiển thị một thông báo nào đó trên thanh trạng thái. Activity Manager: quản lý vòng đời của ứng dụng và quản lý điều hướng backstack của các Activity trong ứng dụng. Ứng dụng Flutter sử dụng mô hình MVVM (Model - View - ViewModel) Mô hình này khá giống với MVC (Model - View - Controller), sự khác biệt duy nhất là nẳm ở cách xây dựng nên C (Controller) của MVC và VM (ViewModel) của MVVM. Đầu tiên là xây dựng Model trước, sau đó là Repository, ViewModel và cuối cùng là View.

Để lấy dữ liệu của model chúng ta cần một Repository. Các phương thức của Repository trả về một đối tượng Future. Future là một class của Dart, được sử dụng để SVTH: Lê Thị Trúc Vy Trang 8 Xây dựng ứng dụng quản lý đặt nước uống tại quán Sahami ở thành phố Đà Nẵng phục vụ lập trình đa luồng, ví dụ phương thức get trong Repository có thể phải đợi rất lâu mới lấy được dữ liệu, sử dụng Future giống như một dạng callback, nó sẽ trả về dữ liệu khi dữ liệu lấy được thành công. Repository sẽ được sử dụng trong ViewModel và dùng để thao tác với các cơ sở dữ liệu (từ database hoặc api).

Để thao tác dữ liệu trong database, sử dụng thư viện sqflite được cung cấp thông qua Dartlang Package. Với các ứng dụng Android Native, ViewModel sẽ giao tiếp với View thông qua Databinding và LiveData, tuy nhiên Flutter chưa support Databinding hay LiveData, do đó sẽ sử dụng một plugin có tên Scoped Model. Plugin này hỗ trợ việc truyền model từ Widget cha đến các Widget con, khi model cập nhật trạng thái, các Widget con sẽ tự động được build lại, cũng giống với khả năng của LiveData tuy nhiên chúng ta phải tự thông báo trạng thái đến View thay vì để model tự cập nhật chúng. Các function đánh dấu async sẽ thực hiện bất đồng bộ so với luồng chính để đảm bảo UI không bị block, việc lập trình bất đồng bộ theo async await pattern rất dễ dàng do đã được Dart support sẵn, không cần tạo thêm luồng mới, quản lý luồng.

Tiếp theo là xây dựng tầng View. Sử dụng Widget ScopedModel để hỗ trợ việc cập nhật dữ liệu giữa View và ViewModel), ScopedModel này lắng nghe dữ liệu từ ViewModel.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Ứng Dụng Quản Lý Đặt Nước Uống Tại Quán Sahami Đà Nẵng" cung cấp cái nhìn sâu sắc về cách thức quản lý và tối ưu hóa quy trình đặt nước uống tại quán. Nó nêu bật những lợi ích của việc áp dụng công nghệ vào quản lý, giúp nâng cao trải nghiệm khách hàng và tăng hiệu quả kinh doanh. Đặc biệt, tài liệu này không chỉ giúp các chủ quán hiểu rõ hơn về nhu cầu của khách hàng mà còn cung cấp các giải pháp thực tiễn để cải thiện dịch vụ.

Để mở rộng kiến thức của bạn về các khía cạnh liên quan đến quản lý dịch vụ và khách hàng, bạn có thể tham khảo thêm tài liệu Luận văn tốt nghiệp giải pháp phát triển các dịch vụ sau bán của website quancafe vn, nơi cung cấp các giải pháp phát triển dịch vụ hỗ trợ khách hàng. Ngoài ra, tài liệu Luận văn thạc sĩ quản trị quan hệ khách hàng tại bưu điện đà nẵng sẽ giúp bạn hiểu rõ hơn về quản lý quan hệ khách hàng trong bối cảnh địa phương. Cuối cùng, tài liệu Luận văn thạc sĩ hoàn thiện công tác quản trị quan hệ khách hàng tại công ty đào tạo và phát triển nguồn nhân lực impac sẽ cung cấp thêm thông tin về cách cải thiện quản lý quan hệ khách hàng trong các tổ chức. Những tài liệu này sẽ giúp bạn có cái nhìn toàn diện hơn về lĩnh vực này.