From 1a666a6bbfc2802c7e3920e7226e1a1d45eca95e Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Mon, 11 Aug 2025 09:22:56 +0300 Subject: [PATCH] added README.md --- README.md | 117 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 69 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index a2219fe..fac9da0 100644 --- a/README.md +++ b/README.md @@ -1,53 +1,74 @@ -# hmg_qline +# HMG_QLine -A new Flutter project. +HMG_QLine is a Flutter-based application designed for efficient patient management and queue handling in healthcare environments. It features multiple screens for patient display, robust logging, and background service integration to ensure reliability and uptime. -## Getting Started - -This project is a starting point for a Flutter application. - -A few resources to get you started if this is your first Flutter project: - -- [Lab: Write your first Flutter app](https://docs.flutter.dev/get-started/codelab) -- [Cookbook: Useful Flutter samples](https://docs.flutter.dev/cookbook) - -For help getting started with Flutter development, view the -[online documentation](https://docs.flutter.dev/), which offers tutorials, -samples, guidance on mobile development, and a full API reference. - -for ticket generation: LAB_PatientCallNo_Get - -{ -"projectID": 15, -"patientID": 123456905, -"isVip": false, -"orderNo":"123" -"isVidaPlus": false, -"createdBy": 101, -"apiKey": "EE17D21C7943485D9780223CCE55DCE5" -} +## Features +- Patient queue management across 10 screens +- Foreground service to monitor app state and auto-reopen if terminated or backgrounded +- SignalR integration for real-time updates +- Persistent logging with automatic log file rotation +- Dynamic app versioning +- Modular architecture with ViewModels and Services -for signalR call: LAB_CallRequest_Update - -{ -"projectID": 15, -"roomNo": 11, -"isVidaPlus": false, -"editedBy": 101, -"apiKey": "EE17D21C7943485D9780223CCE55DCE5" -} - -TicketCall: - -{qType: 2, screenType: 1, connectionID: 10.20.10.30, data: {id: 85, patientID: 123456901, -laB_QGroupID: 1, queueNo: LAB-54, counterBatchNo: 1, calledBy: 11, calledOn: 2024-12-19T11:58: -36.573, servedOn: null, patientName: Kholoud Khaled Bawaz, mobileNo: 0596117128, patientEmail: -Test@unknown.com, preferredLang: 1, patientGender: 2, roomNo: null, isActive: true, createdBy: 101, -createdOn: 2024-12-19T11:58:13.74, editedBy: 101, editedOn: 2024-12-19T11:58:36.573}} - -ConfigCall: - -adb url: +## Getting Started -C:\Users\Hashmi.Rahman\AppData\Local\Android\Sdk\platform-tools +### Prerequisites +- Flutter SDK (>=3.0.0) +- Dart (>=2.17.0) +- Android Studio or Xcode for platform-specific builds + +### Installation +1. Clone the repository: + ```bash + git clone https://github.com/your-org/HMG_QLine.git + cd HMG_QLine + ``` +2. Install dependencies: + ```bash + flutter pub get + ``` +3. Run the app: + ```bash + flutter run + ``` + +## Project Structure +- `lib/` - Main source code + - `api/` - API integration + - `config/` - Configuration files + - `constants/` - App-wide constants + - `models/` - Data models + - `repositories/` - Data repositories + - `services/` - Business logic and background services + - `utilities/` - Utility functions + - `view_models/` - State management + - `views/` - UI screens +- `assets/` - Fonts, images, icons, and tones +- `android/`, `ios/`, `macos/`, `linux/`, `windows/` - Platform-specific code + +## Logging +- Logs are saved in the device's external storage under `/logs/` +- Log files are rotated every 48 hours +- Each log entry includes a timestamp, source, and type + +## Foreground Service +- Monitors app lifecycle +- Automatically reopens or restarts the app if terminated or sent to background +- Checks app status every minute + +## SignalR Integration +- Reconnects automatically after disconnection +- Ensures real-time updates for patient queues + +## Debugging +- Debuggable builds can be enabled in `android/app/build.gradle` for troubleshooting + +## Contributing +Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. + +## License +This project is licensed under the MIT License. + +## Contact +For support or inquiries, please contact [your-email@domain.com].