diff --git a/android/app/build.gradle b/android/app/build.gradle
index 9640ea61..5d196986 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -27,7 +27,7 @@ apply plugin: 'com.google.gms.google-services'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
- compileSdkVersion 28
+ compileSdkVersion 30
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
@@ -41,19 +41,28 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.cloud.diplomaticquarterapp"
minSdkVersion 21
- targetSdkVersion 28
+ targetSdkVersion 30
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
multiDexEnabled true
-
+
}
buildTypes {
+ debug {}
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
+ staging {
+ // Specifies a sorted list of fallback build types that the
+ // plugin should try to use when a dependency does not include a
+ // "staging" build type. You may specify as many fallbacks as you
+ // like, and the plugin selects the first build type that's
+ // available in the dependency.
+ matchingFallbacks = ['debug', 'qa', 'release']
+ }
}
}
@@ -63,8 +72,15 @@ flutter {
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
- implementation "com.google.firebase:firebase-messaging:20.1.0"
- implementation 'pub.devrel:easypermissions:0.4.0'
-
-
+ implementation "com.google.firebase:firebase-messaging:20.3.0"
+ implementation 'pub.devrel:easypermissions:0.4.0'
+ implementation 'com.google.firebase:firebase-inappmessaging-display:17.2.0'
+ implementation 'com.google.guava:guava:27.0.1-android'
+ // Dependency on local binaries
+ implementation fileTree(dir: 'libs', include: ['*.jar'])
+
+ // Dependency on a remote binary
+// implementation 'com.example.android:app-magic:12.3'
+
+
}
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 884c7e09..d0751535 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -15,6 +15,10 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/images/AlHabibMedicalService/Wifi-AR.png b/assets/images/AlHabibMedicalService/Wifi-AR.png
new file mode 100644
index 00000000..a8e2d9af
Binary files /dev/null and b/assets/images/AlHabibMedicalService/Wifi-AR.png differ
diff --git a/ios/Podfile b/ios/Podfile
index 9712eaff..c2702b3e 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
-platform :ios, '9.0'
+# platform :ios, '11.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
@@ -10,6 +10,9 @@ project 'Runner', {
'Release' => :release,
}
+# pod 'FBSDKCoreKit'
+# pod 'FBSDKLoginKit'
+
def parse_KV_file(file, separator='=')
file_abs_path = File.expand_path(file)
if !File.exists? file_abs_path
@@ -85,3 +88,4 @@ post_install do |installer|
end
end
end
+
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
deleted file mode 100644
index 005fe83c..00000000
--- a/ios/Podfile.lock
+++ /dev/null
@@ -1,310 +0,0 @@
-PODS:
- - barcode_scan (0.0.1):
- - Flutter
- - MTBBarcodeScanner
- - SwiftProtobuf
- - connectivity (0.0.1):
- - Flutter
- - Reachability
- - connectivity_for_web (0.1.0):
- - Flutter
- - connectivity_macos (0.0.1):
- - Flutter
- - device_info (0.0.1):
- - Flutter
- - Firebase/Core (6.23.0):
- - Firebase/CoreOnly
- - FirebaseAnalytics (= 6.4.2)
- - Firebase/CoreOnly (6.23.0):
- - FirebaseCore (= 6.6.7)
- - Firebase/Messaging (6.23.0):
- - Firebase/CoreOnly
- - FirebaseMessaging (~> 4.3.1)
- - firebase_messaging (0.0.1):
- - Firebase/Core
- - Firebase/Messaging
- - Flutter
- - FirebaseAnalytics (6.4.2):
- - FirebaseCore (~> 6.6)
- - FirebaseInstallations (~> 1.2)
- - GoogleAppMeasurement (= 6.4.2)
- - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
- - GoogleUtilities/MethodSwizzler (~> 6.0)
- - GoogleUtilities/Network (~> 6.0)
- - "GoogleUtilities/NSData+zlib (~> 6.0)"
- - nanopb (= 0.3.9011)
- - FirebaseAnalyticsInterop (1.5.0)
- - FirebaseCore (6.6.7):
- - FirebaseCoreDiagnostics (~> 1.2)
- - FirebaseCoreDiagnosticsInterop (~> 1.2)
- - GoogleUtilities/Environment (~> 6.5)
- - GoogleUtilities/Logger (~> 6.5)
- - FirebaseCoreDiagnostics (1.2.4):
- - FirebaseCoreDiagnosticsInterop (~> 1.2)
- - GoogleDataTransportCCTSupport (~> 3.0)
- - GoogleUtilities/Environment (~> 6.5)
- - GoogleUtilities/Logger (~> 6.5)
- - nanopb (~> 0.3.901)
- - FirebaseCoreDiagnosticsInterop (1.2.0)
- - FirebaseInstallations (1.2.0):
- - FirebaseCore (~> 6.6)
- - GoogleUtilities/Environment (~> 6.6)
- - GoogleUtilities/UserDefaults (~> 6.6)
- - PromisesObjC (~> 1.2)
- - FirebaseInstanceID (4.3.4):
- - FirebaseCore (~> 6.6)
- - FirebaseInstallations (~> 1.0)
- - GoogleUtilities/Environment (~> 6.5)
- - GoogleUtilities/UserDefaults (~> 6.5)
- - FirebaseMessaging (4.3.1):
- - FirebaseAnalyticsInterop (~> 1.5)
- - FirebaseCore (~> 6.6)
- - FirebaseInstanceID (~> 4.3)
- - GoogleUtilities/AppDelegateSwizzler (~> 6.5)
- - GoogleUtilities/Environment (~> 6.5)
- - GoogleUtilities/Reachability (~> 6.5)
- - GoogleUtilities/UserDefaults (~> 6.5)
- - Protobuf (>= 3.9.2, ~> 3.9)
- - Flutter (1.0.0)
- - flutter_flexible_toast (0.0.1):
- - Flutter
- - flutter_inappwebview (0.0.1):
- - Flutter
- - flutter_local_notifications (0.0.1):
- - Flutter
- - flutter_plugin_android_lifecycle (0.0.1):
- - Flutter
- - GoogleAppMeasurement (6.4.2):
- - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
- - GoogleUtilities/MethodSwizzler (~> 6.0)
- - GoogleUtilities/Network (~> 6.0)
- - "GoogleUtilities/NSData+zlib (~> 6.0)"
- - nanopb (= 0.3.9011)
- - GoogleDataTransport (6.0.0)
- - GoogleDataTransportCCTSupport (3.0.0):
- - GoogleDataTransport (~> 6.0)
- - nanopb (~> 0.3.901)
- - GoogleUtilities/AppDelegateSwizzler (6.6.0):
- - GoogleUtilities/Environment
- - GoogleUtilities/Logger
- - GoogleUtilities/Network
- - GoogleUtilities/Environment (6.6.0):
- - PromisesObjC (~> 1.2)
- - GoogleUtilities/Logger (6.6.0):
- - GoogleUtilities/Environment
- - GoogleUtilities/MethodSwizzler (6.6.0):
- - GoogleUtilities/Logger
- - GoogleUtilities/Network (6.6.0):
- - GoogleUtilities/Logger
- - "GoogleUtilities/NSData+zlib"
- - GoogleUtilities/Reachability
- - "GoogleUtilities/NSData+zlib (6.6.0)"
- - GoogleUtilities/Reachability (6.6.0):
- - GoogleUtilities/Logger
- - GoogleUtilities/UserDefaults (6.6.0):
- - GoogleUtilities/Logger
- - hexcolor (0.0.1):
- - Flutter
- - image_cropper (0.0.2):
- - Flutter
- - TOCropViewController (~> 2.5.2)
- - image_picker (0.0.1):
- - Flutter
- - local_auth (0.0.1):
- - Flutter
- - manage_calendar_events (0.0.1):
- - Flutter
- - map_launcher (0.0.1):
- - Flutter
- - MTBBarcodeScanner (5.0.11)
- - nanopb (0.3.9011):
- - nanopb/decode (= 0.3.9011)
- - nanopb/encode (= 0.3.9011)
- - nanopb/decode (0.3.9011)
- - nanopb/encode (0.3.9011)
- - path_provider_linux (0.0.1):
- - Flutter
- - "permission_handler (5.0.1+1)":
- - Flutter
- - PromisesObjC (1.2.8)
- - Protobuf (3.11.4)
- - Reachability (3.2)
- - shared_preferences (0.0.1):
- - Flutter
- - shared_preferences_linux (0.0.1):
- - Flutter
- - shared_preferences_macos (0.0.1):
- - Flutter
- - shared_preferences_web (0.0.1):
- - Flutter
- - SwiftProtobuf (1.10.2)
- - TOCropViewController (2.5.4)
- - url_launcher (0.0.1):
- - Flutter
- - url_launcher_linux (0.0.1):
- - Flutter
- - url_launcher_macos (0.0.1):
- - Flutter
- - url_launcher_web (0.0.1):
- - Flutter
-
-DEPENDENCIES:
- - barcode_scan (from `.symlinks/plugins/barcode_scan/ios`)
- - connectivity (from `.symlinks/plugins/connectivity/ios`)
- - connectivity_for_web (from `.symlinks/plugins/connectivity_for_web/ios`)
- - connectivity_macos (from `.symlinks/plugins/connectivity_macos/ios`)
- - device_info (from `.symlinks/plugins/device_info/ios`)
- - firebase_messaging (from `.symlinks/plugins/firebase_messaging/ios`)
- - Flutter (from `Flutter`)
- - flutter_flexible_toast (from `.symlinks/plugins/flutter_flexible_toast/ios`)
- - flutter_inappwebview (from `.symlinks/plugins/flutter_inappwebview/ios`)
- - flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`)
- - flutter_plugin_android_lifecycle (from `.symlinks/plugins/flutter_plugin_android_lifecycle/ios`)
- - hexcolor (from `.symlinks/plugins/hexcolor/ios`)
- - image_cropper (from `.symlinks/plugins/image_cropper/ios`)
- - image_picker (from `.symlinks/plugins/image_picker/ios`)
- - local_auth (from `.symlinks/plugins/local_auth/ios`)
- - manage_calendar_events (from `.symlinks/plugins/manage_calendar_events/ios`)
- - map_launcher (from `.symlinks/plugins/map_launcher/ios`)
- - path_provider_linux (from `.symlinks/plugins/path_provider_linux/ios`)
- - permission_handler (from `.symlinks/plugins/permission_handler/ios`)
- - shared_preferences (from `.symlinks/plugins/shared_preferences/ios`)
- - shared_preferences_linux (from `.symlinks/plugins/shared_preferences_linux/ios`)
- - shared_preferences_macos (from `.symlinks/plugins/shared_preferences_macos/ios`)
- - shared_preferences_web (from `.symlinks/plugins/shared_preferences_web/ios`)
- - url_launcher (from `.symlinks/plugins/url_launcher/ios`)
- - url_launcher_linux (from `.symlinks/plugins/url_launcher_linux/ios`)
- - url_launcher_macos (from `.symlinks/plugins/url_launcher_macos/ios`)
- - url_launcher_web (from `.symlinks/plugins/url_launcher_web/ios`)
-
-SPEC REPOS:
- trunk:
- - Firebase
- - FirebaseAnalytics
- - FirebaseAnalyticsInterop
- - FirebaseCore
- - FirebaseCoreDiagnostics
- - FirebaseCoreDiagnosticsInterop
- - FirebaseInstallations
- - FirebaseInstanceID
- - FirebaseMessaging
- - GoogleAppMeasurement
- - GoogleDataTransport
- - GoogleDataTransportCCTSupport
- - GoogleUtilities
- - MTBBarcodeScanner
- - nanopb
- - PromisesObjC
- - Protobuf
- - Reachability
- - SwiftProtobuf
- - TOCropViewController
-
-EXTERNAL SOURCES:
- barcode_scan:
- :path: ".symlinks/plugins/barcode_scan/ios"
- connectivity:
- :path: ".symlinks/plugins/connectivity/ios"
- connectivity_for_web:
- :path: ".symlinks/plugins/connectivity_for_web/ios"
- connectivity_macos:
- :path: ".symlinks/plugins/connectivity_macos/ios"
- device_info:
- :path: ".symlinks/plugins/device_info/ios"
- firebase_messaging:
- :path: ".symlinks/plugins/firebase_messaging/ios"
- Flutter:
- :path: Flutter
- flutter_flexible_toast:
- :path: ".symlinks/plugins/flutter_flexible_toast/ios"
- flutter_inappwebview:
- :path: ".symlinks/plugins/flutter_inappwebview/ios"
- flutter_local_notifications:
- :path: ".symlinks/plugins/flutter_local_notifications/ios"
- flutter_plugin_android_lifecycle:
- :path: ".symlinks/plugins/flutter_plugin_android_lifecycle/ios"
- hexcolor:
- :path: ".symlinks/plugins/hexcolor/ios"
- image_cropper:
- :path: ".symlinks/plugins/image_cropper/ios"
- image_picker:
- :path: ".symlinks/plugins/image_picker/ios"
- local_auth:
- :path: ".symlinks/plugins/local_auth/ios"
- manage_calendar_events:
- :path: ".symlinks/plugins/manage_calendar_events/ios"
- map_launcher:
- :path: ".symlinks/plugins/map_launcher/ios"
- path_provider_linux:
- :path: ".symlinks/plugins/path_provider_linux/ios"
- permission_handler:
- :path: ".symlinks/plugins/permission_handler/ios"
- shared_preferences:
- :path: ".symlinks/plugins/shared_preferences/ios"
- shared_preferences_linux:
- :path: ".symlinks/plugins/shared_preferences_linux/ios"
- shared_preferences_macos:
- :path: ".symlinks/plugins/shared_preferences_macos/ios"
- shared_preferences_web:
- :path: ".symlinks/plugins/shared_preferences_web/ios"
- url_launcher:
- :path: ".symlinks/plugins/url_launcher/ios"
- url_launcher_linux:
- :path: ".symlinks/plugins/url_launcher_linux/ios"
- url_launcher_macos:
- :path: ".symlinks/plugins/url_launcher_macos/ios"
- url_launcher_web:
- :path: ".symlinks/plugins/url_launcher_web/ios"
-
-SPEC CHECKSUMS:
- barcode_scan: a5c27959edfafaa0c771905bad0b29d6d39e4479
- connectivity: c4130b2985d4ef6fd26f9702e886bd5260681467
- connectivity_for_web: 2b8584556930d4bd490d82b836bcf45067ce345b
- connectivity_macos: e2e9731b6b22dda39eb1b128f6969d574460e191
- device_info: d7d233b645a32c40dfdc212de5cf646ca482f175
- Firebase: 585ae467b3edda6a5444e788fda6888f024d8d6f
- firebase_messaging: 21344b3b3a7d9d325d63a70e3750c0c798fe1e03
- FirebaseAnalytics: 558f7a03d19de451093032c806f39d5f9dff096e
- FirebaseAnalyticsInterop: 3f86269c38ae41f47afeb43ebf32a001f58fcdae
- FirebaseCore: a2788a0d5f6c1dff17b8f79b4a73654a8d4bfdbd
- FirebaseCoreDiagnostics: b59c024493a409f8aecba02c99928d0d8431d159
- FirebaseCoreDiagnosticsInterop: 296e2c5f5314500a850ad0b83e9e7c10b011a850
- FirebaseInstallations: 2119fb3e46b0a88bfdbf12562f855ee3252462fa
- FirebaseInstanceID: cef67c4967c7cecb56ea65d8acbb4834825c587b
- FirebaseMessaging: 828e66eb357a893e3cebd9ee0f6bc1941447cc94
- Flutter: 0e3d915762c693b495b44d77113d4970485de6ec
- flutter_flexible_toast: 0547e740cae0c33bb7c51bcd931233f4584e1143
- flutter_inappwebview: 69dfbac46157b336ffbec19ca6dfd4638c7bf189
- flutter_local_notifications: 9e4738ce2471c5af910d961a6b7eadcf57c50186
- flutter_plugin_android_lifecycle: dc0b544e129eebb77a6bfb1239d4d1c673a60a35
- GoogleAppMeasurement: 2253e99c1f22638cf234c059144660c338ad76c3
- GoogleDataTransport: 061fe7d9b476710e3cd8ea51e8e07d8b67c2b420
- GoogleDataTransportCCTSupport: 0f39025e8cf51f168711bd3fb773938d7e62ddb5
- GoogleUtilities: 39530bc0ad980530298e9c4af8549e991fd033b1
- hexcolor: fdfb9c4258ad96e949c2dbcdf790a62194b8aa89
- image_cropper: 3c16d7651730ffe85897f5a1c4e2547e6b54989a
- image_picker: 9c3312491f862b28d21ecd8fdf0ee14e601b3f09
- local_auth: 25938960984c3a7f6e3253e3f8d962fdd16852bd
- manage_calendar_events: 0338d505ea26cdfd20cd883279bc28afa11eca34
- map_launcher: e325db1261d029ff33e08e03baccffe09593ffea
- MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb
- nanopb: 18003b5e52dab79db540fe93fe9579f399bd1ccd
- path_provider_linux: 4d630dc393e1f20364f3e3b4a2ff41d9674a84e4
- permission_handler: eac8e15b4a1a3fba55b761d19f3f4e6b005d15b6
- PromisesObjC: c119f3cd559f50b7ae681fa59dc1acd19173b7e6
- Protobuf: 176220c526ad8bd09ab1fb40a978eac3fef665f7
- Reachability: 33e18b67625424e47b6cde6d202dce689ad7af96
- shared_preferences: af6bfa751691cdc24be3045c43ec037377ada40d
- shared_preferences_linux: afefbfe8d921e207f01ede8b60373d9e3b566b78
- shared_preferences_macos: f3f29b71ccbb56bf40c9dd6396c9acf15e214087
- shared_preferences_web: 141cce0c3ed1a1c5bf2a0e44f52d31eeb66e5ea9
- SwiftProtobuf: bec1ae7d686ff73dd09d79866154f4970b891410
- TOCropViewController: 2a1ae1242600b1f2d996fd91a5268b2309a33b5c
- url_launcher: 6fef411d543ceb26efce54b05a0a40bfd74cbbef
- url_launcher_linux: ac237cb7a8058736e4aae38bdbcc748a4b394cc0
- url_launcher_macos: fd7894421cd39320dce5f292fc99ea9270b2a313
- url_launcher_web: e5527357f037c87560776e36436bf2b0288b965c
-
-PODFILE CHECKSUM: 2609452b760cd11039b14039a86564367a3d8ab9
-
-COCOAPODS: 1.9.1
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 00000000..1d526a16
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 00000000..18d98100
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 00000000..f9b0d7c5
--- /dev/null
+++ b/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ PreviewsEnabled
+
+
+
diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
new file mode 100644
index 00000000..a28140cf
--- /dev/null
+++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -0,0 +1,91 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 00000000..18d98100
--- /dev/null
+++ b/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 00000000..f9b0d7c5
--- /dev/null
+++ b/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ PreviewsEnabled
+
+
+
diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift
new file mode 100644
index 00000000..23dd69b8
--- /dev/null
+++ b/ios/Runner/AppDelegate.swift
@@ -0,0 +1,15 @@
+import UIKit
+import Flutter
+import GoogleMaps
+
+@UIApplicationMain
+@objc class AppDelegate: FlutterAppDelegate {
+ override func application(
+ _ application: UIApplication,
+ didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
+ ) -> Bool {
+ GMSServices.provideAPIKey("AIzaSyCiiJiHkocPbcziHt9O8rGWavDrxHRQys8")
+ GeneratedPluginRegistrant.register(with: self)
+ return super.application(application, didFinishLaunchingWithOptions: launchOptions)
+ }
+}
diff --git a/ios/Runner/Base.lproj/Main.storyboard b/ios/Runner/Base.lproj/Main.storyboard
index f3c28516..00abc512 100644
--- a/ios/Runner/Base.lproj/Main.storyboard
+++ b/ios/Runner/Base.lproj/Main.storyboard
@@ -1,8 +1,10 @@
-
-
+
+
+
-
+
+
@@ -14,13 +16,14 @@
-
+
-
+
+
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index 792eb95e..b807d9c6 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -22,12 +22,22 @@
$(FLUTTER_BUILD_NUMBER)
LSRequiresIPhoneOS
- NSCalendarsUsageDescription
- We Need to access the calender to add reminder for you
+ io.flutter.embedded_views_preview
+
UILaunchStoryboardName
LaunchScreen
UIMainStoryboardFile
Main
+ NSMicrophoneUsageDescription
+ Need microphone access for uploading videos
+ NSCameraUsageDescription
+ Need camera access for uploading images
+ NSLocationUsageDescription
+ Need location access for updating nearby friends
+ NSLocationWhenInUseUsageDescription
+ This app will use your location to show cool stuffs near you.
+ NSPhotoLibraryUsageDescription
+ Need photo library access for uploading images
UISupportedInterfaceOrientations
UIInterfaceOrientationPortrait
diff --git a/ios/Runner/Runner-Bridging-Header.h b/ios/Runner/Runner-Bridging-Header.h
new file mode 100644
index 00000000..308a2a56
--- /dev/null
+++ b/ios/Runner/Runner-Bridging-Header.h
@@ -0,0 +1 @@
+#import "GeneratedPluginRegistrant.h"
diff --git a/lib/config/config.dart b/lib/config/config.dart
index ea738d5b..ce9a7a54 100644
--- a/lib/config/config.dart
+++ b/lib/config/config.dart
@@ -60,6 +60,8 @@ const GET_NEAREST_HOSPITAL =
const GET_AMBULANCE_REQUEST = 'Services/Patients.svc/REST/PatientER_RRT_GetAllTransportationMethod';
const GET_PATIENT_ALL_PRES_ORDERS= 'Services/Patients.svc/REST/PatientER_GetPatientAllPresOrders';
const GET_PICK_UP_REQUEST_BY_PRES_ORDER_ID= 'Services/Patients.svc/REST/PatientER_RRT_GetPickUpRequestByPresOrderID';
+const UPDATE_PRESS_ORDER = 'Services/Patients.svc/REST/PatientER_UpdatePresOrder';
+const INSERT_ER_INERT_PRES_ORDER = 'Services/Patients.svc/REST/PatientER_InsertPresOrder';
///FindUs
const GET_FINDUS_REQUEST = 'Services/Lists.svc/REST/Get_HMG_Locations';
@@ -309,7 +311,6 @@ const H2O_GET_USER_PROGRESS =
"Services/H2ORemainder.svc/REST/H2O_GetUserProgress";
const H2O_INSERT_USER_ACTIVITY =
"Services/H2ORemainder.svc/REST/H2O_InsertUserActivity";
-
//E_Referral Services
const GET_ALL_RELATIONSHIP_TYPES =
@@ -323,8 +324,18 @@ const CREATE_E_REFERRAL = "Services/Patients.svc/REST/CreateEReferral";
const GET_E_REFERRALS = "Services/Patients.svc/REST/GetEReferrals";
+// Home Health Care
+const HHC_GET_ALL_SERVICES = "Services/Patients.svc/REST/PatientER_HHC_GetAllServices";
+const HHC_GET_ALL_CMC_SERVICES = "Services/Patients.svc/REST/PatientER_CMC_GetAllServices";
+const PATIENT_ER_UPDATE_PRES_ORDER ="Services/Patients.svc/REST/PatientER_UpdatePresOrder";
+const GET_ORDER_DETAIL_BY_ID ="Services/Patients.svc/REST/PatientER_HHC_GetTransactionsForOrder";
+const GET_CMC_ORDER_DETAIL_BY_ID ="Services/Patients.svc/REST/PatientER_CMC_GetTransactionsForOrder";
+const GET_CHECK_UP_ITEMS ="Services/Patients.svc/REST/GetCheckUpItems";
+
const TIMER_MIN = 10;
+const GOOGLE_API_KEY = "AIzaSyCmevVlr2Bh-c8W1VUzo8gt8JRY7n5PANw";
+
class AppGlobal {
static var context;
diff --git a/lib/config/localized_values.dart b/lib/config/localized_values.dart
index 81f8a3d4..a44ffec6 100644
--- a/lib/config/localized_values.dart
+++ b/lib/config/localized_values.dart
@@ -559,26 +559,57 @@ const Map> localizedValues = {
"VA":{"en":"Prism","ar":"المحاور"},
"LeftEye":{"en":"Left Eye","ar":"العين اليسرى"},
"Brand":{"en":"Brand","ar":"النوع"},
- "Power":{"en":"Power","ar":"القوة"},
- "Diameter":{"en":"Diameter","ar":"القطر"},
- "Remarks":{"en":"Remarks","ar":"ملاحضات"},
- "ActiveMedications":{"en":"Active Medications","ar":"ادويتي النشطة"},
- "ExpDate":{"en":"Active Exp Date :","VA":"تاريخ الإنتهاء"},
- "Route":{"en":"Route :","ar":"الطريقة"},
- "Frequency":{"en":"Frequency :","ar":"المعدل"},
- "DailyQuantity":{"en":"Daily Quantity :","ar":"جرعات يومية"},
- "AddReminder":{"en":"Add Reminder","ar":"إضافة تذكير"},
- "reminderDes":{"en":"Please select treatment start day and time to be notified when it\'s time to take the medicine","ar":" يرجى تحديد يوم بدء العلاج والوقت ليتم ارسال تنبيه عندما يحين الوقت لتناول الدواء"},
- "StartDay":{"en":"Start Day","ar":"يوم البداية"},
- "EndDay":{"en":"End Day","ar":"يوم الانتهاء"},
- "Days":{"en":"Days ","ar":"أيام"},
- "ScheduleTime":{"en":"Schedule time","ar":"الجدول الزمني"},
- "AskDoctor":{"en":"Ask Doctor","ar":"اسأل طبيبك"},
- "DoctorResponses":{"en":"Doctor Responses","ar":"ردود الأطباء"},
- "New":{"en":"New","ar":"جديد"},
- "All":{"en":"All","ar":"الكل"},
- "QuestionHere":{"en":"Enter the question here...","ar":"اضف الاستفسار هنا"},
- "ViewDoctorResponses":{"en":"View Doctor Responses","ar":"الاطلاع على ردود الأطباء"},
+ "Power": {"en": "Power", "ar": "القوة"},
+ "Diameter": {"en": "Diameter", "ar": "القطر"},
+ "Remarks": {"en": "Remarks", "ar": "ملاحضات"},
+ "ActiveMedications": {"en": "Active Medications", "ar": "ادويتي النشطة"},
+ "ExpDate": {"en": "Active Exp Date :", "VA": "تاريخ الإنتهاء"},
+ "Route": {"en": "Route :", "ar": "الطريقة"},
+ "Frequency": {"en": "Frequency :", "ar": "المعدل"},
+ "DailyQuantity": {"en": "Daily Quantity :", "ar": "جرعات يومية"},
+ "AddReminder": {"en": "Add Reminder", "ar": "إضافة تذكير"},
+ "reminderDes": {
+ "en":
+ "Please select treatment start day and time to be notified when it\'s time to take the medicine",
+ "ar":
+ " يرجى تحديد يوم بدء العلاج والوقت ليتم ارسال تنبيه عندما يحين الوقت لتناول الدواء"
+ },
+ "StartDay": {"en": "Start Day", "ar": "يوم البداية"},
+ "EndDay": {"en": "End Day", "ar": "يوم الانتهاء"},
+ "Days": {"en": "Days ", "ar": "أيام"},
+ "ScheduleTime": {"en": "Schedule time", "ar": "الجدول الزمني"},
+ "AskDoctor": {"en": "Ask Doctor", "ar": "اسأل طبيبك"},
+ "DoctorResponses": {"en": "Doctor Responses", "ar": "ردود الأطباء"},
+ "New": {"en": "New", "ar": "جديد"},
+ "All": {"en": "All", "ar": "الكل"},
+ "QuestionHere": {
+ "en": "Enter the question here...",
+ "ar": "اضف الاستفسار هنا"
+ },
+ "ViewDoctorResponses": {
+ "en": "View Doctor Responses",
+ "ar": "الاطلاع على ردود الأطباء"
+ },
+ "ServiceInformation": {"en": "Service Information", "ar": "معلومات الخدمة"},
+ "HomeHealthCare": {
+ "en": "Home Health Care",
+ "ar": " الرعاية الصحية المنزلية "
+ },
+ "HomeHealthCareText": {
+ "en":
+ "This service provides a set of home health care services, continuous and comprehensive follow-up in their places of residence for those who cannot access health facilities, such as (laboratory analyzes - radiology - vaccinations - physical therapy), etc.",
+ "ar":
+ "توفر هذه الخدمة مجموعه من خدمات الرعايه الصحيه المنزلية و متابعه مستمره وشامله للذين لا يستطيعون الوصول للمنشات الصحيه في اماكن اقامتهم (التحاليل المخبرية – الاشعة – التطعيمات – العلاج الطبيعي)... "
+ },
+ "LoginRegister": {
+ "en": "Login/Register",
+ "ar": "دخول / تسجيل"
+ },
+ "OrderLog": {
+ "en": "Order Log",
+ "ar": " سجل الطلبات"
+ },
+
"ServiceInformationButton":{"en":"LOGIN / REGISTER","ar":"دخول / تسجيل"},
"ServiceInformationTitle":{"en":"Service Information","ar":"معلومات الخدمة"},
"info-lab": {
diff --git a/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart
new file mode 100644
index 00000000..6880f9f5
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart
@@ -0,0 +1,68 @@
+class CMCGetItemsRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+ int checkupType;
+
+ CMCGetItemsRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType,
+ this.checkupType});
+
+ CMCGetItemsRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ checkupType = json['CheckupType'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ data['CheckupType'] = this.checkupType;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_response_model.dart b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_response_model.dart
new file mode 100644
index 00000000..6f362baa
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_response_model.dart
@@ -0,0 +1,18 @@
+class CMCGetItemsResponseModel {
+ String itemDescription;
+ String itemName;
+
+ CMCGetItemsResponseModel({this.itemDescription, this.itemName});
+
+ CMCGetItemsResponseModel.fromJson(Map json) {
+ itemDescription = json['ItemDescription'];
+ itemName = json['ItemName'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['ItemDescription'] = this.itemDescription;
+ data['ItemName'] = this.itemName;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_insert_pres_order_request_model.dart b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_insert_pres_order_request_model.dart
new file mode 100644
index 00000000..534988a7
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_insert_pres_order_request_model.dart
@@ -0,0 +1,135 @@
+class CMCInsertPresOrderRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+ double latitude;
+ double longitude;
+ int createdBy;
+ int orderServiceID;
+ List patientERCMCInsertServicesList;
+
+ CMCInsertPresOrderRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType,
+ this.latitude,
+ this.longitude,
+ this.createdBy,
+ this.orderServiceID,
+ this.patientERCMCInsertServicesList});
+
+ CMCInsertPresOrderRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ latitude = json['Latitude'];
+ longitude = json['Longitude'];
+ createdBy = json['CreatedBy'];
+ orderServiceID = json['OrderServiceID'];
+ if (json['PatientER_CMC_InsertServicesList'] != null) {
+ patientERCMCInsertServicesList =
+ new List();
+ json['PatientER_CMC_InsertServicesList'].forEach((v) {
+ patientERCMCInsertServicesList
+ .add(new PatientERCMCInsertServicesList.fromJson(v));
+ });
+ }
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ data['Latitude'] = this.latitude;
+ data['Longitude'] = this.longitude;
+ data['CreatedBy'] = this.createdBy;
+ data['OrderServiceID'] = this.orderServiceID;
+ if (this.patientERCMCInsertServicesList != null) {
+ data['PatientER_CMC_InsertServicesList'] =
+ this.patientERCMCInsertServicesList.map((v) => v.toJson()).toList();
+ }
+ return data;
+ }
+}
+
+class PatientERCMCInsertServicesList {
+ int recordID;
+ String serviceID;
+ String selectedServiceName;
+ String selectedServiceNameAR;
+ dynamic price;
+ dynamic vAT;
+ dynamic totalPrice;
+
+ PatientERCMCInsertServicesList(
+ {this.recordID,
+ this.serviceID,
+ this.selectedServiceName,
+ this.selectedServiceNameAR,
+ this.price,
+ this.vAT,
+ this.totalPrice});
+
+ PatientERCMCInsertServicesList.fromJson(Map json) {
+ recordID = json['RecordID'];
+ serviceID = json['ServiceID'];
+ selectedServiceName = json['selectedServiceName'];
+ selectedServiceNameAR = json['selectedServiceNameAR'];
+ price = json['Price'];
+ vAT = json['VAT'];
+ totalPrice = json['TotalPrice'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['RecordID'] = this.recordID;
+ data['ServiceID'] = this.serviceID;
+ data['selectedServiceName'] = this.selectedServiceName;
+ data['selectedServiceNameAR'] = this.selectedServiceNameAR;
+ data['Price'] = this.price;
+ data['VAT'] = this.vAT;
+ data['TotalPrice'] = this.totalPrice;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_request_model.dart b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_request_model.dart
new file mode 100644
index 00000000..e80b656d
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_request_model.dart
@@ -0,0 +1,72 @@
+class GetCMCServicesRequestModel {
+ int channel;
+ int deviceTypeID;
+ int genderID;
+ String generalid;
+ String identificationNo;
+ String iPAdress;
+ bool isDentalAllowedBackend;
+ int languageID;
+ int patientID;
+ int patientOutSA;
+ int patientType;
+ int patientTypeID;
+ String sessionID;
+ String tokenID;
+ double versionID;
+
+ GetCMCServicesRequestModel(
+ {this.channel,
+ this.deviceTypeID,
+ this.genderID,
+ this.generalid,
+ this.identificationNo,
+ this.iPAdress,
+ this.isDentalAllowedBackend,
+ this.languageID,
+ this.patientID,
+ this.patientOutSA,
+ this.patientType,
+ this.patientTypeID,
+ this.sessionID,
+ this.tokenID,
+ this.versionID});
+
+ GetCMCServicesRequestModel.fromJson(Map json) {
+ channel = json['Channel'];
+ deviceTypeID = json['DeviceTypeID'];
+ genderID = json['GenderID'];
+ generalid = json['generalid'];
+ identificationNo = json['IdentificationNo'];
+ iPAdress = json['IPAdress'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ languageID = json['LanguageID'];
+ patientID = json['PatientID'];
+ patientOutSA = json['PatientOutSA'];
+ patientType = json['PatientType'];
+ patientTypeID = json['PatientTypeID'];
+ sessionID = json['SessionID'];
+ tokenID = json['TokenID'];
+ versionID = json['VersionID'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['Channel'] = this.channel;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['GenderID'] = this.genderID;
+ data['generalid'] = this.generalid;
+ data['IdentificationNo'] = this.identificationNo;
+ data['IPAdress'] = this.iPAdress;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['LanguageID'] = this.languageID;
+ data['PatientID'] = this.patientID;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['PatientType'] = this.patientType;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['SessionID'] = this.sessionID;
+ data['TokenID'] = this.tokenID;
+ data['VersionID'] = this.versionID;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_response_model.dart b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_response_model.dart
new file mode 100644
index 00000000..5f356e2b
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_response_model.dart
@@ -0,0 +1,44 @@
+class GetCMCServicesResponseModel {
+ String description;
+ String descriptionN;
+ int iD;
+ bool isActive;
+ dynamic price;
+ int serviceID;
+ dynamic totalPrice;
+ dynamic vAT;
+
+ GetCMCServicesResponseModel(
+ {this.description,
+ this.descriptionN,
+ this.iD,
+ this.isActive,
+ this.price,
+ this.serviceID,
+ this.totalPrice,
+ this.vAT});
+
+ GetCMCServicesResponseModel.fromJson(Map json) {
+ description = json['Description'];
+ descriptionN = json['DescriptionN'];
+ iD = json['ID'];
+ isActive = json['IsActive'];
+ price = json['Price'];
+ serviceID = json['ServiceID'];
+ totalPrice = json['TotalPrice'];
+ vAT = json['VAT'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['Description'] = this.description;
+ data['DescriptionN'] = this.descriptionN;
+ data['ID'] = this.iD;
+ data['IsActive'] = this.isActive;
+ data['Price'] = this.price;
+ data['ServiceID'] = this.serviceID;
+ data['TotalPrice'] = this.totalPrice;
+ data['VAT'] = this.vAT;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart b/lib/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart
similarity index 100%
rename from lib/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart
rename to lib/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart
diff --git a/lib/core/model/AlHabibMedicalService/user_progress_for_month_data_model.dart b/lib/core/model/AlHabibMedicalService/H2O/user_progress_for_month_data_model.dart
similarity index 100%
rename from lib/core/model/AlHabibMedicalService/user_progress_for_month_data_model.dart
rename to lib/core/model/AlHabibMedicalService/H2O/user_progress_for_month_data_model.dart
diff --git a/lib/core/model/AlHabibMedicalService/user_progress_for_today_data_model.dart b/lib/core/model/AlHabibMedicalService/H2O/user_progress_for_today_data_model.dart
similarity index 100%
rename from lib/core/model/AlHabibMedicalService/user_progress_for_today_data_model.dart
rename to lib/core/model/AlHabibMedicalService/H2O/user_progress_for_today_data_model.dart
diff --git a/lib/core/model/AlHabibMedicalService/user_progress_for_week_data_model.dart b/lib/core/model/AlHabibMedicalService/H2O/user_progress_for_week_data_model.dart
similarity index 100%
rename from lib/core/model/AlHabibMedicalService/user_progress_for_week_data_model.dart
rename to lib/core/model/AlHabibMedicalService/H2O/user_progress_for_week_data_model.dart
diff --git a/lib/core/model/AlHabibMedicalService/user_progress_request_model.dart b/lib/core/model/AlHabibMedicalService/H2O/user_progress_request_model.dart
similarity index 100%
rename from lib/core/model/AlHabibMedicalService/user_progress_request_model.dart
rename to lib/core/model/AlHabibMedicalService/H2O/user_progress_request_model.dart
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_request_modle.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_request_modle.dart
new file mode 100644
index 00000000..7b24c149
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_request_modle.dart
@@ -0,0 +1,64 @@
+class HHCGetAllServicesRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+
+ HHCGetAllServicesRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType});
+
+ HHCGetAllServicesRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_response_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_response_model.dart
new file mode 100644
index 00000000..e2f39733
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_response_model.dart
@@ -0,0 +1,32 @@
+class HHCGetAllServicesResponseModel {
+ int iD;
+ int serviceID;
+ String description;
+ String descriptionN;
+ bool isActive;
+
+ HHCGetAllServicesResponseModel(
+ {this.iD,
+ this.serviceID,
+ this.description,
+ this.descriptionN,
+ this.isActive});
+
+ HHCGetAllServicesResponseModel.fromJson(Map json) {
+ iD = json['ID'];
+ serviceID = json['ServiceID'];
+ description = json['Description'];
+ descriptionN = json['DescriptionN'];
+ isActive = json['IsActive'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['ID'] = this.iD;
+ data['ServiceID'] = this.serviceID;
+ data['Description'] = this.description;
+ data['DescriptionN'] = this.descriptionN;
+ data['IsActive'] = this.isActive;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/PatientERHHCInsertServicesList.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/PatientERHHCInsertServicesList.dart
new file mode 100644
index 00000000..bc5a4ddf
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/PatientERHHCInsertServicesList.dart
@@ -0,0 +1,23 @@
+
+class PatientERHHCInsertServicesList {
+ int recordID;
+ int serviceID;
+ String serviceName;
+
+ PatientERHHCInsertServicesList(
+ {this.recordID, this.serviceID, this.serviceName});
+
+ PatientERHHCInsertServicesList.fromJson(Map json) {
+ recordID = json['RecordID'];
+ serviceID = json['ServiceID'];
+ serviceName = json['ServiceName'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['RecordID'] = this.recordID;
+ data['ServiceID'] = this.serviceID;
+ data['ServiceName'] = this.serviceName;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_request_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_request_model.dart
new file mode 100644
index 00000000..ed55b3a9
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_request_model.dart
@@ -0,0 +1,64 @@
+class GetHHCAllPresOrdersRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+
+ GetHHCAllPresOrdersRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType});
+
+ GetHHCAllPresOrdersRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart
new file mode 100644
index 00000000..5dedac1c
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart
@@ -0,0 +1,132 @@
+class GetHHCAllPresOrdersResponseModel {
+ int iD;
+ String patientID;
+ bool patientOutSA;
+ bool isOutPatient;
+ int projectID;
+ int nearestProjectID;
+ double longitude;
+ double latitude;
+ String appointmentNo;
+ String dischargeID;
+ int lineItemNo;
+ int status;
+ String description;
+ String descriptionN;
+ String createdOn;
+ int serviceID;
+ int createdBy;
+ String editedOn;
+ int editedBy;
+ int channel;
+ dynamic clientRequestID;
+ bool returnedToQueue;
+ dynamic pickupDateTime;
+ dynamic pickupLocationName;
+ dynamic dropoffLocationName;
+ int realRRTHaveTransactions;
+ String nearestProjectDescription;
+ String nearestProjectDescriptionN;
+ String projectDescription;
+ String projectDescriptionN;
+
+ GetHHCAllPresOrdersResponseModel(
+ {this.iD,
+ this.patientID,
+ this.patientOutSA,
+ this.isOutPatient,
+ this.projectID,
+ this.nearestProjectID,
+ this.longitude,
+ this.latitude,
+ this.appointmentNo,
+ this.dischargeID,
+ this.lineItemNo,
+ this.status,
+ this.description,
+ this.descriptionN,
+ this.createdOn,
+ this.serviceID,
+ this.createdBy,
+ this.editedOn,
+ this.editedBy,
+ this.channel,
+ this.clientRequestID,
+ this.returnedToQueue,
+ this.pickupDateTime,
+ this.pickupLocationName,
+ this.dropoffLocationName,
+ this.realRRTHaveTransactions,
+ this.nearestProjectDescription,
+ this.nearestProjectDescriptionN,
+ this.projectDescription,
+ this.projectDescriptionN});
+
+ GetHHCAllPresOrdersResponseModel.fromJson(Map json) {
+ iD = json['ID'];
+ patientID = json['PatientID'];
+ patientOutSA = json['PatientOutSA'];
+ isOutPatient = json['IsOutPatient'];
+ projectID = json['ProjectID'];
+ nearestProjectID = json['NearestProjectID'];
+ longitude = json['Longitude'];
+ latitude = json['Latitude'];
+ appointmentNo = json['AppointmentNo'];
+ dischargeID = json['DischargeID'];
+ lineItemNo = json['LineItemNo'];
+ status = json['Status'];
+ description = json['Description'];
+ descriptionN = json['DescriptionN'];
+ createdOn = json['CreatedOn'];
+ serviceID = json['ServiceID'];
+ createdBy = json['CreatedBy'];
+ editedOn = json['EditedOn'];
+ editedBy = json['EditedBy'];
+ channel = json['Channel'];
+ clientRequestID = json['ClientRequestID'];
+ returnedToQueue = json['ReturnedToQueue'];
+ pickupDateTime = json['PickupDateTime'];
+ pickupLocationName = json['PickupLocationName'];
+ dropoffLocationName = json['DropoffLocationName'];
+ realRRTHaveTransactions = json['RealRRT_HaveTransactions'];
+ nearestProjectDescription = json['NearestProjectDescription'];
+ nearestProjectDescriptionN = json['NearestProjectDescriptionN'];
+ projectDescription = json['ProjectDescription'];
+ projectDescriptionN = json['ProjectDescriptionN'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['ID'] = this.iD;
+ data['PatientID'] = this.patientID;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['IsOutPatient'] = this.isOutPatient;
+ data['ProjectID'] = this.projectID;
+ data['NearestProjectID'] = this.nearestProjectID;
+ data['Longitude'] = this.longitude;
+ data['Latitude'] = this.latitude;
+ data['AppointmentNo'] = this.appointmentNo;
+ data['DischargeID'] = this.dischargeID;
+ data['LineItemNo'] = this.lineItemNo;
+ data['Status'] = this.status;
+ data['Description'] = this.description;
+ data['DescriptionN'] = this.descriptionN;
+ data['CreatedOn'] = this.createdOn;
+ data['ServiceID'] = this.serviceID;
+ data['CreatedBy'] = this.createdBy;
+ data['EditedOn'] = this.editedOn;
+ data['EditedBy'] = this.editedBy;
+ data['Channel'] = this.channel;
+ data['ClientRequestID'] = this.clientRequestID;
+ data['ReturnedToQueue'] = this.returnedToQueue;
+ data['PickupDateTime'] = this.pickupDateTime;
+ data['PickupLocationName'] = this.pickupLocationName;
+ data['DropoffLocationName'] = this.dropoffLocationName;
+ data['RealRRT_HaveTransactions'] = this.realRRTHaveTransactions;
+ data['NearestProjectDescription'] = this.nearestProjectDescription;
+ data['NearestProjectDescriptionN'] = this.nearestProjectDescriptionN;
+ data['ProjectDescription'] = this.projectDescription;
+ data['ProjectDescriptionN'] = this.projectDescriptionN;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart
new file mode 100644
index 00000000..04b69b98
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart
@@ -0,0 +1,68 @@
+class GetOrderDetailByOrderIDRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+ int presOrderID;
+
+ GetOrderDetailByOrderIDRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType,
+ this.presOrderID});
+
+ GetOrderDetailByOrderIDRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ presOrderID = json['PresOrderID'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ data['PresOrderID'] = this.presOrderID;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart
new file mode 100644
index 00000000..6fc31ce8
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart
@@ -0,0 +1,52 @@
+class GetOrderDetailByOrderIDResponseModel {
+ int iD;
+ int presOrderID;
+ int hHCServiceID;
+ int createdBy;
+ String createdOn;
+ int editedBy;
+ String editedOn;
+ bool isActive;
+ String description;
+ String descriptionN;
+
+ GetOrderDetailByOrderIDResponseModel(
+ {this.iD,
+ this.presOrderID,
+ this.hHCServiceID,
+ this.createdBy,
+ this.createdOn,
+ this.editedBy,
+ this.editedOn,
+ this.isActive,
+ this.description,
+ this.descriptionN});
+
+ GetOrderDetailByOrderIDResponseModel.fromJson(Map json) {
+ iD = json['ID'];
+ presOrderID = json['PresOrderID'];
+ hHCServiceID = json['HHC_ServiceID'];
+ createdBy = json['CreatedBy'];
+ createdOn = json['CreatedOn'];
+ editedBy = json['EditedBy'];
+ editedOn = json['EditedOn'];
+ isActive = json['IsActive'];
+ description = json['Description'];
+ descriptionN = json['DescriptionN'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['ID'] = this.iD;
+ data['PresOrderID'] = this.presOrderID;
+ data['HHC_ServiceID'] = this.hHCServiceID;
+ data['CreatedBy'] = this.createdBy;
+ data['CreatedOn'] = this.createdOn;
+ data['EditedBy'] = this.editedBy;
+ data['EditedOn'] = this.editedOn;
+ data['IsActive'] = this.isActive;
+ data['Description'] = this.description;
+ data['DescriptionN'] = this.descriptionN;
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/patient_er_insert_pres_order_request_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/patient_er_insert_pres_order_request_model.dart
new file mode 100644
index 00000000..198ae285
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/patient_er_insert_pres_order_request_model.dart
@@ -0,0 +1,96 @@
+import 'PatientERHHCInsertServicesList.dart';
+
+class PatientERInsertPresOrderRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+ double latitude;
+ double longitude;
+ int createdBy;
+ int orderServiceID;
+ List patientERHHCInsertServicesList =List();
+
+ PatientERInsertPresOrderRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType,
+ this.latitude,
+ this.longitude,
+ this.createdBy,
+ this.orderServiceID,
+ });
+
+ PatientERInsertPresOrderRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ latitude = json['Latitude'];
+ longitude = json['Longitude'];
+ createdBy = json['CreatedBy'];
+ orderServiceID = json['OrderServiceID'];
+ if (json['PatientER_HHC_InsertServicesList'] != null) {
+ patientERHHCInsertServicesList =
+ new List();
+ json['PatientER_HHC_InsertServicesList'].forEach((v) {
+ patientERHHCInsertServicesList
+ .add(new PatientERHHCInsertServicesList.fromJson(v));
+ });
+ }
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ data['Latitude'] = this.latitude;
+ data['Longitude'] = this.longitude;
+ data['CreatedBy'] = this.createdBy;
+ data['OrderServiceID'] = this.orderServiceID;
+ if (this.patientERHHCInsertServicesList != null) {
+ data['PatientER_HHC_InsertServicesList'] =
+ this.patientERHHCInsertServicesList.map((v) => v.toJson()).toList();
+ }
+ return data;
+ }
+}
diff --git a/lib/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart b/lib/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart
new file mode 100644
index 00000000..3b0ef151
--- /dev/null
+++ b/lib/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart
@@ -0,0 +1,80 @@
+class UpdatePresOrderRequestModel {
+ double versionID;
+ int channel;
+ int languageID;
+ String iPAdress;
+ String generalid;
+ int patientOutSA;
+ String sessionID;
+ bool isDentalAllowedBackend;
+ int deviceTypeID;
+ int patientID;
+ String tokenID;
+ int patientTypeID;
+ int patientType;
+ int presOrderID;
+ int presOrderStatus;
+ int editedBy;
+ String rejectionReason;
+
+ UpdatePresOrderRequestModel(
+ {this.versionID,
+ this.channel,
+ this.languageID,
+ this.iPAdress,
+ this.generalid,
+ this.patientOutSA,
+ this.sessionID,
+ this.isDentalAllowedBackend,
+ this.deviceTypeID,
+ this.patientID,
+ this.tokenID,
+ this.patientTypeID,
+ this.patientType,
+ this.presOrderID,
+ this.presOrderStatus,
+ this.editedBy,
+ this.rejectionReason});
+
+ UpdatePresOrderRequestModel.fromJson(Map json) {
+ versionID = json['VersionID'];
+ channel = json['Channel'];
+ languageID = json['LanguageID'];
+ iPAdress = json['IPAdress'];
+ generalid = json['generalid'];
+ patientOutSA = json['PatientOutSA'];
+ sessionID = json['SessionID'];
+ isDentalAllowedBackend = json['isDentalAllowedBackend'];
+ deviceTypeID = json['DeviceTypeID'];
+ patientID = json['PatientID'];
+ tokenID = json['TokenID'];
+ patientTypeID = json['PatientTypeID'];
+ patientType = json['PatientType'];
+ presOrderID = json['PresOrderID'];
+ presOrderStatus = json['PresOrderStatus'];
+ editedBy = json['EditedBy'];
+ rejectionReason = json['RejectionReason'];
+ }
+
+ Map toJson() {
+ final Map data = new Map();
+ data['VersionID'] = this.versionID;
+ data['Channel'] = this.channel;
+ data['LanguageID'] = this.languageID;
+ data['IPAdress'] = this.iPAdress;
+ data['generalid'] = this.generalid;
+ data['PatientOutSA'] = this.patientOutSA;
+ data['SessionID'] = this.sessionID;
+ data['isDentalAllowedBackend'] = this.isDentalAllowedBackend;
+ data['DeviceTypeID'] = this.deviceTypeID;
+ data['PatientID'] = this.patientID;
+ data['TokenID'] = this.tokenID;
+ data['PatientTypeID'] = this.patientTypeID;
+ data['PatientType'] = this.patientType;
+ data['PresOrderID'] = this.presOrderID;
+ data['PresOrderStatus'] = this.presOrderStatus;
+ data['EditedBy'] = this.editedBy;
+ data['RejectionReason'] = this.rejectionReason;
+ return data;
+ }
+}
diff --git a/lib/core/model/er/PatientER.dart b/lib/core/model/er/PatientER.dart
index d0827311..f1694f9e 100644
--- a/lib/core/model/er/PatientER.dart
+++ b/lib/core/model/er/PatientER.dart
@@ -36,7 +36,7 @@ class PatientER {
int projectID;
int createdBy;
int lineItemNo;
- int cost;
+ double cost;
double vAT;
double totalPrice;
String pickupLocationLattitude;
diff --git a/lib/core/model/er/PickUpRequestPresOrder.dart b/lib/core/model/er/PickUpRequestPresOrder.dart
index 9ce3e678..376e30ae 100644
--- a/lib/core/model/er/PickUpRequestPresOrder.dart
+++ b/lib/core/model/er/PickUpRequestPresOrder.dart
@@ -18,7 +18,7 @@ class PickUpRequestPresOrder {
int pickupSpot;
dynamic dropoffLocationId;
int transportationMethodId;
- int cost;
+ double cost;
double vAT;
double totalPrice;
int amountCollected;
diff --git a/lib/core/service/AlHabibMedicalService/H2O_service.dart b/lib/core/service/AlHabibMedicalService/H2O_service.dart
index d44b50ef..c65221c5 100644
--- a/lib/core/service/AlHabibMedicalService/H2O_service.dart
+++ b/lib/core/service/AlHabibMedicalService/H2O_service.dart
@@ -1,9 +1,9 @@
import 'package:diplomaticquarterapp/config/config.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_month_data_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_today_data_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_week_data_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_month_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_today_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_week_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_request_model.dart';
import 'package:diplomaticquarterapp/core/service/base_service.dart';
class H2OService extends BaseService {
diff --git a/lib/core/service/AlHabibMedicalService/cmc_service.dart b/lib/core/service/AlHabibMedicalService/cmc_service.dart
new file mode 100644
index 00000000..b87f54fb
--- /dev/null
+++ b/lib/core/service/AlHabibMedicalService/cmc_service.dart
@@ -0,0 +1,102 @@
+import 'package:diplomaticquarterapp/config/config.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hHC_all_pres_orders_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+
+import '../base_service.dart';
+
+class CMCService extends BaseService {
+ List cmcAllServicesList = List();
+ List cmcAllPresOrdersList = List();
+
+ List cmcAllOrderDetail = List();
+ List checkupItemsList = List();
+
+ bool isOrderUpdated;
+
+ Future getCMCAllServices() async {
+
+
+ GetCMCServicesRequestModel getCMCServicesRequestModel= new GetCMCServicesRequestModel(genderID: user.gender, identificationNo: user.patientIdentificationNo);
+ hasError = false;
+ await baseAppClient.post(HHC_GET_ALL_CMC_SERVICES,
+ onSuccess: (dynamic response, int statusCode) {
+ cmcAllServicesList.clear();
+ response['PatientER_CMC_GetAllServicesList'].forEach((data) {
+ cmcAllServicesList.add(GetCMCServicesResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: getCMCServicesRequestModel.toJson());
+ }
+
+
+
+ Future getCmcAllPresOrders() async {
+
+ GetHHCAllPresOrdersRequestModel getHHCAllPresOrdersRequestModel= GetHHCAllPresOrdersRequestModel();
+ hasError = false;
+ await baseAppClient.post(GET_PATIENT_ALL_PRES_ORDERS,
+ onSuccess: (dynamic response, int statusCode) {
+ cmcAllPresOrdersList.clear();
+ response['PatientER_GetPatientAllPresOrdersList'].forEach((data) {
+ if (data['ServiceID'] == 3)
+ cmcAllPresOrdersList
+ .add(GetHHCAllPresOrdersResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: getHHCAllPresOrdersRequestModel.toJson());
+ }
+
+ Future getOrderDetailByOrderID(GetOrderDetailByOrderIDRequestModel getOrderDetailByOrderIDRequestModel) async {
+
+ hasError = false;
+ await baseAppClient.post(GET_CMC_ORDER_DETAIL_BY_ID,
+ onSuccess: (dynamic response, int statusCode) {
+ cmcAllOrderDetail.clear();
+ response['PatientER_CMC_GetTransactionsForOrderList'].forEach((data) {
+ cmcAllOrderDetail.add(GetOrderDetailByOrderIDResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: getOrderDetailByOrderIDRequestModel.toJson());
+ }
+
+
+ Future getCheckupItems(CMCGetItemsRequestModel cMCGetItemsRequestModel) async {
+
+ hasError = false;
+ await baseAppClient.post(GET_CHECK_UP_ITEMS,
+ onSuccess: (dynamic response, int statusCode) {
+ checkupItemsList.clear();
+ response['GetCheckUpItemsList'].forEach((data) {
+ checkupItemsList.add(CMCGetItemsResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: cMCGetItemsRequestModel.toJson());
+ }
+
+ Future updateCmcPresOrder(UpdatePresOrderRequestModel updatePresOrderRequestModel) async {
+
+ hasError = false;
+ await baseAppClient.post(PATIENT_ER_UPDATE_PRES_ORDER,
+ onSuccess: (dynamic response, int statusCode) {
+ isOrderUpdated = true;
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: updatePresOrderRequestModel.toJson());
+ }
+}
diff --git a/lib/core/service/AlHabibMedicalService/home_health_care_service.dart b/lib/core/service/AlHabibMedicalService/home_health_care_service.dart
new file mode 100644
index 00000000..45a871cd
--- /dev/null
+++ b/lib/core/service/AlHabibMedicalService/home_health_care_service.dart
@@ -0,0 +1,82 @@
+import 'package:diplomaticquarterapp/config/config.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_request_modle.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hHC_all_pres_orders_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+
+import '../base_service.dart';
+
+class HomeHealthCareService extends BaseService {
+ List hhcAllServicesList = List();
+ List hhcAllPresOrdersList = List();
+
+ List hhcAllOrderDetail = List();
+
+ bool isOrderUpdated;
+
+ Future getHHCAllServices(
+ HHCGetAllServicesRequestModel hHCGetAllServicesRequestModel) async {
+ hasError = false;
+ await baseAppClient.post(HHC_GET_ALL_SERVICES,
+ onSuccess: (dynamic response, int statusCode) {
+ hhcAllServicesList.clear();
+ response['PatientER_HHC_GetAllServicesList'].forEach((data) {
+ hhcAllServicesList.add(HHCGetAllServicesResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: hHCGetAllServicesRequestModel.toJson());
+ }
+
+ Future getHHCAllPresOrders() async {
+ GetHHCAllPresOrdersRequestModel getHHCAllPresOrdersRequestModel =
+ GetHHCAllPresOrdersRequestModel();
+ hasError = false;
+ await baseAppClient.post(GET_PATIENT_ALL_PRES_ORDERS,
+ onSuccess: (dynamic response, int statusCode) {
+ hhcAllPresOrdersList.clear();
+ response['PatientER_GetPatientAllPresOrdersList'].forEach((data) {
+ if (data['ServiceID'] == 2)
+ hhcAllPresOrdersList
+ .add(GetHHCAllPresOrdersResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: getHHCAllPresOrdersRequestModel.toJson());
+ }
+
+ Future getOrderDetailByOrderID(int presOrderID) async {
+ hasError = false;
+ Map body = Map();
+ body['PresOrderID'] = presOrderID;
+ body['isDentalAllowedBackend'] = false;
+ await baseAppClient.post(GET_ORDER_DETAIL_BY_ID,
+ onSuccess: (dynamic response, int statusCode) {
+ hhcAllOrderDetail.clear();
+ response['PatientER_HHC_GetTransactionsForOrderList'].forEach((data) {
+ hhcAllOrderDetail
+ .add(GetOrderDetailByOrderIDResponseModel.fromJson(data));
+ });
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: body);
+ }
+
+ Future updateHHCPresOrder(
+ UpdatePresOrderRequestModel updatePresOrderRequestModel) async {
+ hasError = false;
+ await baseAppClient.post(PATIENT_ER_UPDATE_PRES_ORDER,
+ onSuccess: (dynamic response, int statusCode) {
+ isOrderUpdated = true;
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: updatePresOrderRequestModel.toJson());
+ }
+}
diff --git a/lib/core/service/client/base_app_client.dart b/lib/core/service/client/base_app_client.dart
index 237245f8..d2bfa4fa 100644
--- a/lib/core/service/client/base_app_client.dart
+++ b/lib/core/service/client/base_app_client.dart
@@ -83,6 +83,7 @@ class BaseAppClient {
print("URL : $url");
print("Body : ${json.encode(body)}");
+ var ss = json.encode(body);
if (await Utils.checkConnection()) {
final response = await http.post(url.trim(),
diff --git a/lib/core/service/er/am_service.dart b/lib/core/service/er/am_service.dart
index b654e0eb..2e9460b8 100644
--- a/lib/core/service/er/am_service.dart
+++ b/lib/core/service/er/am_service.dart
@@ -2,8 +2,10 @@ import 'package:diplomaticquarterapp/config/config.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/enum/OrderService.dart';
import 'package:diplomaticquarterapp/core/model/er/PatientAllPresOrders.dart';
+import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
import 'package:diplomaticquarterapp/core/model/er/PickUpRequestPresOrder.dart';
import 'package:diplomaticquarterapp/core/model/er/get_all_transportation_method_list_model.dart';
+import 'package:flutter/cupertino.dart';
import '../base_service.dart';
class AmService extends BaseService {
@@ -35,6 +37,7 @@ class AmService extends BaseService {
Future getPatientAllPresOrdersList() async {
hasError = false;
hasPendingOrder = false;
+ pickUpRequestPresOrder = null;
await baseAppClient.post(GET_PATIENT_ALL_PRES_ORDERS,
onSuccess: (dynamic response, int statusCode) {
patientAllPresOrdersList.clear();
@@ -58,12 +61,11 @@ class AmService extends BaseService {
Future getOrderDetails() async {
hasError = false;
- hasPendingOrder = false;
Map body = Map();
body['PresOrderID'] = pendingOrderID;
+ body['isDentalAllowedBackend'] = false;
await baseAppClient.post(GET_PICK_UP_REQUEST_BY_PRES_ORDER_ID,
onSuccess: (dynamic response, int statusCode) {
- patientAllPresOrdersList.clear();
response['PatientER_RRT_GetPickUpRequestByPresOrderIDList']
.forEach((item) {
pickUpRequestPresOrder = PickUpRequestPresOrder.fromJson(item);
@@ -71,6 +73,35 @@ class AmService extends BaseService {
}, onFailure: (String error, int statusCode) {
hasError = true;
super.error = error;
- }, body: Map());
+ }, body: body);
+ }
+
+ Future updatePressOrder({@required int presOrderID}) async {
+ hasError = false;
+ Map body = Map();
+ body['PresOrderID'] = presOrderID;
+ body['EditedBy'] = 3;
+ body['RejectionReason'] = '';
+ body['PresOrderStatus'] = OrderService.AMBULANCE.getIdOrderService();
+ body['isDentalAllowedBackend'] = false;
+ await baseAppClient.post(UPDATE_PRESS_ORDER,
+ onSuccess: (dynamic response, int statusCode) {
+
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: body);
+ }
+
+ Future insertERPressOrder({@required PatientER patientER}) async {
+ hasError = false;
+
+ await baseAppClient.post(INSERT_ER_INERT_PRES_ORDER,
+ onSuccess: (dynamic response, int statusCode) {
+
+ }, onFailure: (String error, int statusCode) {
+ hasError = true;
+ super.error = error;
+ }, body: patientER.toJson());
}
}
diff --git a/lib/core/viewModels/AlHabibMedicalService/H2O_view_model.dart b/lib/core/viewModels/AlHabibMedicalService/H2O_view_model.dart
index 73a56d9b..15b00e37 100644
--- a/lib/core/viewModels/AlHabibMedicalService/H2O_view_model.dart
+++ b/lib/core/viewModels/AlHabibMedicalService/H2O_view_model.dart
@@ -1,8 +1,8 @@
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_month_data_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_today_data_model.dart';
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/user_progress_for_week_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_month_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_today_data_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/user_progress_for_week_data_model.dart';
import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/H2O_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart';
import 'package:charts_flutter/flutter.dart' as charts;
diff --git a/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart b/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart
new file mode 100644
index 00000000..b4c805b7
--- /dev/null
+++ b/lib/core/viewModels/AlHabibMedicalService/cmc_view_model.dart
@@ -0,0 +1,92 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/get_cmc_service_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/cmc_service.dart';
+import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart';
+
+import '../../../locator.dart';
+
+class CMCViewModel extends BaseViewModel {
+ CMCService _cMCService =
+ locator();
+
+ List get cmcAllServicesList =>
+
+ _cMCService.cmcAllServicesList;
+
+ List get cmcAllPresOrders =>
+ _cMCService.cmcAllPresOrdersList;
+
+ List get cmcAllOrderDetail =>
+ _cMCService.cmcAllOrderDetail;
+ List get checkupItems =>
+ _cMCService.checkupItemsList;
+
+ bool get isOrderUpdated => _cMCService.isOrderUpdated;
+
+ Future getCMCAllServices() async {
+ await _cMCService
+ .getCMCAllServices();
+ CMCGetItemsRequestModel cMCGetItemsRequestModel = new CMCGetItemsRequestModel(checkupType: cmcAllServicesList[0].iD);
+
+ await getCheckupItems(cMCGetItemsRequestModel);
+ if (_cMCService.hasError) {
+ error = _cMCService.error;
+ setState(ViewState.Error);
+ } else {
+ setState(ViewState.Idle);
+ }
+ }
+ Future getCheckupItems(CMCGetItemsRequestModel cMCGetItemsRequestModel) async {
+ await _cMCService
+ .getCheckupItems(cMCGetItemsRequestModel);
+ if (_cMCService.hasError) {
+ error = _cMCService.error;
+ setState(ViewState.Error);
+ }
+ }
+
+ Future getCmcAllPresOrders() async {
+ setState(ViewState.Busy);
+ await _cMCService.getCmcAllPresOrders();
+ if (_cMCService.hasError) {
+ error = _cMCService.error;
+ setState(ViewState.Error);
+ } else {
+ var pendingOrder = _cMCService.cmcAllPresOrdersList.firstWhere(
+ (element) => element.status == 1 || element.status == 2,
+ orElse: () => null);
+ if (pendingOrder != null) {
+ await getOrderDetailByOrderID(pendingOrder);
+ setState(ViewState.Idle);
+ } else {
+ getCMCAllServices();
+ }
+ }
+ }
+
+ Future updateCmcPresOrder(
+ UpdatePresOrderRequestModel updatePresOrderRequestModel) async {
+ setState(ViewState.BusyLocal);
+ await _cMCService.updateCmcPresOrder(
+ updatePresOrderRequestModel);
+ if (_cMCService.hasError) {
+ error = _cMCService.error;
+ setState(ViewState.ErrorLocal);
+ } else {
+ setState(ViewState.Idle);
+ }
+ }
+
+ Future getOrderDetailByOrderID(GetHHCAllPresOrdersResponseModel order) async {
+ GetOrderDetailByOrderIDRequestModel getOrderDetailByOrderIDRequestModel =
+ GetOrderDetailByOrderIDRequestModel(presOrderID: order.iD);
+ await _cMCService
+ .getOrderDetailByOrderID(getOrderDetailByOrderIDRequestModel);
+ }
+}
\ No newline at end of file
diff --git a/lib/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart b/lib/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart
new file mode 100644
index 00000000..8a4acd2b
--- /dev/null
+++ b/lib/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart
@@ -0,0 +1,83 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_request_modle.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/HHC_get_all_services_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/PatientERHHCInsertServicesList.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/home_health_care_service.dart';
+import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart';
+
+import '../../../locator.dart';
+
+class HomeHealthCareViewModel extends BaseViewModel {
+ HomeHealthCareService _homeHealthCareService =
+ locator();
+
+ List get hhcAllServicesList =>
+ _homeHealthCareService.hhcAllServicesList;
+
+ List get hhcAllPresOrders =>
+ _homeHealthCareService.hhcAllPresOrdersList;
+
+ List get hhcAllOrderDetail =>
+ _homeHealthCareService.hhcAllOrderDetail;
+
+ bool get isOrderUpdated => _homeHealthCareService.isOrderUpdated;
+
+ GetHHCAllPresOrdersResponseModel pendingOrder;
+
+ List patientERHHCInsertServicesList = List();
+
+ Future getHHCAllServices() async {
+ HHCGetAllServicesRequestModel hHCGetAllServicesRequestModel =
+ new HHCGetAllServicesRequestModel();
+ //setState(ViewState.Busy);
+ await _homeHealthCareService
+ .getHHCAllServices(hHCGetAllServicesRequestModel);
+ if (_homeHealthCareService.hasError) {
+ error = _homeHealthCareService.error;
+ setState(ViewState.Error);
+ } else {
+ setState(ViewState.Idle);
+ }
+ }
+
+ Future getHHCAllPresOrders() async {
+ pendingOrder = null;
+ setState(ViewState.Busy);
+ await _homeHealthCareService.getHHCAllPresOrders();
+ if (_homeHealthCareService.hasError) {
+ error = _homeHealthCareService.error;
+ setState(ViewState.Error);
+ } else {
+ pendingOrder = _homeHealthCareService.hhcAllPresOrdersList
+ .firstWhere((element) => element.status == 1 || element.status == 2,
+ orElse: () => null);
+ if (pendingOrder != null) {
+ await _homeHealthCareService.getOrderDetailByOrderID(pendingOrder.iD);
+ setState(ViewState.Idle);
+ } else {
+ getHHCAllServices();
+ }
+
+ }
+ }
+
+ Future updateHHCPresOrder(
+ UpdatePresOrderRequestModel updatePresOrderRequestModel) async {
+ setState(ViewState.Busy);
+ await _homeHealthCareService.updateHHCPresOrder(
+ updatePresOrderRequestModel);
+ if (_homeHealthCareService.hasError) {
+ error = _homeHealthCareService.error;
+ setState(ViewState.ErrorLocal);
+ } else {
+ setState(ViewState.Idle);
+ }
+ }
+
+
+
+}
\ No newline at end of file
diff --git a/lib/core/viewModels/er/am_request_view_model.dart b/lib/core/viewModels/er/am_request_view_model.dart
index fbd3d95d..2cf8e877 100644
--- a/lib/core/viewModels/er/am_request_view_model.dart
+++ b/lib/core/viewModels/er/am_request_view_model.dart
@@ -1,5 +1,7 @@
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/model/er/PatientAllPresOrders.dart';
+import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
+import 'package:diplomaticquarterapp/core/model/er/PickUpRequestPresOrder.dart';
import 'package:diplomaticquarterapp/core/model/er/get_all_transportation_method_list_model.dart';
import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart';
import 'package:diplomaticquarterapp/core/service/er/am_service.dart';
@@ -7,6 +9,7 @@ import 'package:diplomaticquarterapp/core/service/hospital_service.dart';
import 'package:diplomaticquarterapp/core/service/medical/medical_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/base_view_model.dart';
import 'package:diplomaticquarterapp/models/Appointments/AppoimentAllHistoryResultList.dart';
+import 'package:flutter/cupertino.dart';
import '../base_view_model.dart';
import '../../../locator.dart';
@@ -28,6 +31,8 @@ class AmRequestViewModel extends BaseViewModel {
bool get hasPendingOrder =>_amService.hasPendingOrder;
+ PickUpRequestPresOrder get pickUpRequestPresOrder =>_amService.pickUpRequestPresOrder;
+
Future getAppointmentHistory() async {
setState(ViewState.BusyLocal);
await _medicalService.getAppointmentHistory(isActiveAppointment: true);
@@ -73,10 +78,31 @@ class AmRequestViewModel extends BaseViewModel {
Future getOrderDetails() async {
setState(ViewState.Busy);
await _amService.getOrderDetails();
- if (_hospitalService.hasError) {
- error = _hospitalService.error;
+ if (_amService.hasError) {
+ error = _amService.error;
setState(ViewState.Error);
} else
setState(ViewState.Idle);
}
+
+ Future updatePressOrder({@required int presOrderID}) async {
+ setState(ViewState.Busy);
+ await _amService.updatePressOrder(presOrderID: presOrderID);
+ if (_amService.hasError) {
+ error = _amService.error;
+ setState(ViewState.Error);
+ } else
+ getPatientAllPresOrdersList();
+ }
+
+ Future insertERPressOrder({@required PatientER patientER}) async {
+ setState(ViewState.Busy);
+ await _amService.insertERPressOrder(patientER: patientER);
+ if (_amService.hasError) {
+ error = _amService.error;
+ setState(ViewState.ErrorLocal);
+ } else
+ getAmRequestOrders();
+
+ }
}
diff --git a/lib/core/viewModels/qr_view_model.dart b/lib/core/viewModels/qr_view_model.dart
index cc03d9ab..03c88462 100644
--- a/lib/core/viewModels/qr_view_model.dart
+++ b/lib/core/viewModels/qr_view_model.dart
@@ -1,6 +1,6 @@
import 'dart:convert';
-import 'package:barcode_scan/platform_wrapper.dart';
+// import 'package:barcode_scan/platform_wrapper.dart';
import 'package:diplomaticquarterapp/config/shared_pref_kay.dart';
import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
import 'package:diplomaticquarterapp/core/model/qr/qr_parking_model.dart';
@@ -14,25 +14,26 @@ class QrViewModel extends BaseViewModel {
QRParkingModel qrParkingModel;
readQr() async {
- var result = await BarcodeScanner.scan();
- var data = json.decode(result.rawContent);
- var qRParkingID = data['QRParkingID'];
- setState(ViewState.BusyLocal);
- await _qrService.getQRParkingByID(qRParkingID);
- if (_qrService.hasError) {
- error = _qrService.error;
- setState(ViewState.ErrorLocal);
- } else {
- if (_qrService.qRParkingList.length > 0) {
- qrParkingModel = _qrService.qRParkingList[0];
- await sharedPref.setObject(IS_GO_TO_PARKING, qrParkingModel);
- isSavePark = true;
- setState(ViewState.Idle);
- } else {
- error = "Invalid Qr Code";
- setState(ViewState.ErrorLocal);
- }
- }
+ //TODO fix the barcode scan
+ // var result = await BarcodeScanner.scan();
+ // var data = json.decode(result.rawContent);
+ // var qRParkingID = data['QRParkingID'];
+ // setState(ViewState.BusyLocal);
+ // await _qrService.getQRParkingByID(qRParkingID);
+ // if (_qrService.hasError) {
+ // error = _qrService.error;
+ // setState(ViewState.ErrorLocal);
+ // } else {
+ // if (_qrService.qRParkingList.length > 0) {
+ // qrParkingModel = _qrService.qRParkingList[0];
+ // await sharedPref.setObject(IS_GO_TO_PARKING, qrParkingModel);
+ // isSavePark = true;
+ // setState(ViewState.Idle);
+ // } else {
+ // error = "Invalid Qr Code";
+ // setState(ViewState.ErrorLocal);
+ // }
+ // }
}
getIsSaveParking() async {
diff --git a/lib/locator.dart b/lib/locator.dart
index e6140ce1..a71d7964 100644
--- a/lib/locator.dart
+++ b/lib/locator.dart
@@ -2,11 +2,14 @@ import 'package:diplomaticquarterapp/core/service/AlHabibMedicalService/H2O_serv
import 'package:diplomaticquarterapp/core/service/qr_service.dart';
import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/H2O_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/child_vaccines/user_information_view_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart';
import 'package:diplomaticquarterapp/uitl/navigation_service.dart';
import 'package:get_it/get_it.dart';
+import 'core/service/AlHabibMedicalService/cmc_service.dart';
import 'core/service/AlHabibMedicalService/e_referral_service.dart';
+import 'core/service/AlHabibMedicalService/home_health_care_service.dart';
import 'core/service/AuthenticatedUserObject.dart';
import 'core/service/appointment_rate_service.dart';
import 'core/service/blood/blood_details_servies.dart';
@@ -39,6 +42,7 @@ import 'core/service/medical/prescriptions_service.dart';
import 'core/service/medical/radiology_service.dart';
import 'core/service/medical/reports_monthly_service.dart';
import 'core/service/medical/vital_sign_service.dart';
+import 'core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
import 'core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
import 'core/viewModels/appointment_rate_view_model.dart';
import 'core/viewModels/blooddonation/blood_details_view_model.dart';
@@ -104,6 +108,8 @@ void setupLocator() {
locator.registerLazySingleton(() => ErService());
locator.registerLazySingleton(() => AmService());
locator.registerLazySingleton(() => EReferralService());
+ locator.registerLazySingleton(() => HomeHealthCareService());
+ locator.registerLazySingleton(() => CMCService());
locator.registerLazySingleton(() => PatientSickLeaveService());
@@ -165,7 +171,6 @@ void setupLocator() {
locator.registerFactory(() => AddNewChildViewModel());
locator.registerFactory(() => H2OViewModel());
-
locator.registerFactory(() => BloodSugarViewMode());
locator.registerFactory(() => BloodPressureViewMode());
locator.registerFactory(() => WeightPressureViewMode());
@@ -173,4 +178,7 @@ void setupLocator() {
locator.registerFactory(() => ActiveMedicationsViewModel());
locator.registerFactory(() => AskDoctorViewModel());
locator.registerFactory(() => AllergiesViewModel());
+ locator.registerFactory(() => HomeHealthCareViewModel());
+ locator.registerFactory(() => CMCViewModel());
+
}
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/Dialog/confirm_cancel_order_dialog.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/Dialog/confirm_cancel_order_dialog.dart
new file mode 100644
index 00000000..45bf01b7
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/Dialog/confirm_cancel_order_dialog.dart
@@ -0,0 +1,104 @@
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+// ignore: must_be_immutable
+class ConfirmCancelOrderDialog extends StatefulWidget {
+ final CMCViewModel model;
+ final Function onTap;
+
+
+ ConfirmCancelOrderDialog(
+ {Key key, this.model, this.onTap});
+
+ @override
+ _ConfirmCancelOrderDialogState createState() => _ConfirmCancelOrderDialogState();
+}
+
+class _ConfirmCancelOrderDialogState extends State {
+ @override
+ void initState() {
+ super.initState();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return SimpleDialog(
+ contentPadding: EdgeInsets.fromLTRB(28.0, 24.0, 28.0, 0.0),
+ title: Center(
+ child: Texts(
+ "Confirm",
+ color: Colors.black,
+ ),
+ ),
+ children: [
+ Column(
+ children: [
+ Divider(),
+ Center(
+ child: Texts(
+ "Are you sure!! want to cancel this order",
+ color: Colors.grey,
+ ),
+ ),
+ SizedBox(
+ height: 5.0,
+ ),
+ Row(
+ // mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ children: [
+ Expanded(
+ flex: 1,
+ child: InkWell(
+ onTap: () {
+ Navigator.pop(context);
+ },
+ child: Padding(
+ padding: const EdgeInsets.all(8.0),
+ child: Container(
+ child: Center(
+ child: Texts(
+ TranslationBase.of(context).cancel.toUpperCase(),
+ color: Colors.red,
+ ),
+ ),
+ ),
+ ),
+ ),
+ ),
+ Container(
+ width: 1,
+ height: 30,
+ color: Colors.grey[500],
+ ),
+ Expanded(
+ flex: 1,
+ child: InkWell(
+ onTap: () async{
+ widget.onTap();
+ Navigator.pop(context);
+ },
+ child: Padding(
+ padding: const EdgeInsets.all(8.0),
+ child: Center(
+ child: Texts(
+ TranslationBase.of(context).ok,
+ fontWeight: FontWeight.w400,
+ )),
+ ),
+ ),
+ ),
+ ],
+ )
+ ],
+ )
+ ],
+ );
+ }
+}
+
+
+
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart
new file mode 100644
index 00000000..494b0920
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_page.dart
@@ -0,0 +1,314 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_insert_pres_order_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
+import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/Dialog/confirm_cancel_order_dialog.dart';
+import 'package:diplomaticquarterapp/uitl/app_toast.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/utils.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:flutter/material.dart';
+
+import 'new_cmc_step_one_page.dart';
+
+class NewCMCPage extends StatefulWidget {
+ NewCMCPage({this.model});
+
+ final CMCViewModel model;
+
+ @override
+ _NewCMCPageState createState() =>
+ _NewCMCPageState();
+}
+
+class _NewCMCPageState extends State
+ with TickerProviderStateMixin {
+ PageController _controller;
+ int _currentIndex = 1;
+ int pageSelected = 2;
+
+ CMCInsertPresOrderRequestModel cMCInsertPresOrderRequestModel;
+
+ @override
+ void initState() {
+ super.initState();
+ PatientERCMCInsertServicesList patientERCMCInsertServicesList;
+ if (widget.model.cmcAllServicesList.length > 0) {
+ patientERCMCInsertServicesList = new PatientERCMCInsertServicesList(
+ price: widget.model.cmcAllServicesList[0].price,
+ serviceID: widget.model.cmcAllServicesList[0].serviceID.toString(),
+ selectedServiceName: widget.model.cmcAllServicesList[0].description,
+ selectedServiceNameAR: widget.model.cmcAllServicesList[0].description,
+ recordID: 1,
+ totalPrice: widget.model.cmcAllServicesList[0].totalPrice,
+ vAT: widget.model.cmcAllServicesList[0].vAT);
+ cMCInsertPresOrderRequestModel = new CMCInsertPresOrderRequestModel(
+ patientERCMCInsertServicesList: [patientERCMCInsertServicesList]);
+ }
+
+ cMCInsertPresOrderRequestModel = new CMCInsertPresOrderRequestModel(
+ patientERCMCInsertServicesList: patientERCMCInsertServicesList != null
+ ? [patientERCMCInsertServicesList]
+ : []);
+
+ _controller = new PageController();
+ }
+
+ @override
+ void dispose() {
+ super.dispose();
+ }
+
+ changePageViewIndex(pageIndex) {
+ _controller.jumpToPage(pageIndex);
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ void showConfirmMessage(
+ CMCViewModel model, GetOrderDetailByOrderIDResponseModel order) {
+ showDialog(
+ context: context,
+ child: ConfirmCancelOrderDialog(
+ model: model,
+ onTap: () async {
+ UpdatePresOrderRequestModel updatePresOrderRequestModel =
+ UpdatePresOrderRequestModel(
+ presOrderID: order.presOrderID,
+ rejectionReason: "",
+ presOrderStatus: 4, editedBy: 3);
+ await model.updateCmcPresOrder(updatePresOrderRequestModel);
+ if (model.state == ViewState.ErrorLocal) {
+ Utils.showErrorToast(model.error);
+ } else {
+ AppToast.showSuccessToast(message: "Done Successfully");
+ await model.getCmcAllPresOrders();
+ }
+ },
+ ));
+ }
+ return Scaffold(
+ body: SafeArea(
+ child: SingleChildScrollView(
+ child: Container(
+ height: MediaQuery.of(context).size.height * 0.8,
+ child: PageView(
+ physics: NeverScrollableScrollPhysics(),
+ controller: _controller,
+ onPageChanged: (index) {
+ setState(() {
+ _currentIndex = index;
+ });
+ },
+ scrollDirection: Axis.horizontal,
+ children: [
+ widget.model.cmcAllOrderDetail.length != 0
+ ? FractionallySizedBox(
+ heightFactor: 0.8,
+ widthFactor: 0.9,
+ child: Container(
+ width: double.infinity,
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border:
+ Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Request ID",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ widget.model.cmcAllOrderDetail[0].iD.toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Status",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ "Pending",
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Pickup Date",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ DateUtil.getDayMonthYearDateFormatted(
+ DateUtil.convertStringToDate(
+ widget.model.cmcAllOrderDetail[0]
+ .createdOn)),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Service Name",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ widget.model.cmcAllOrderDetail[0].description
+ .toString() ??
+ widget.model.cmcAllOrderDetail[0]
+ .descriptionN
+ .toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ Center(
+ child: Container(
+ width: MediaQuery
+ .of(context)
+ .size
+ .width *
+ 0.85,
+ child: SecondaryButton(
+ label: "Cancel".toUpperCase(),
+ onTap: () {
+ showConfirmMessage(widget.model,
+ widget.model.cmcAllOrderDetail[0]);
+ }
+ ,
+ color: Colors.red[800],
+ disabled: false,
+ textColor: Theme
+ .of(context)
+ .backgroundColor),
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ ],
+ ),
+ ),
+ )
+ : NewCMCStepOnePage(
+ changePageViewIndex: changePageViewIndex,
+ cMCInsertPresOrderRequestModel:
+ cMCInsertPresOrderRequestModel,
+ model: widget.model,
+ ),
+ // NewEReferralStepTowPage(
+ // changePageViewIndex: changePageViewIndex,
+ // patientERInsertPresOrderRequestModel: patientERInsertPresOrderRequestModel,
+ //
+ // ),
+ // NewEReferralStepThreePage(
+ // changePageViewIndex: changePageViewIndex,
+ // patientERInsertPresOrderRequestModel: patientERInsertPresOrderRequestModel,
+ //
+ // ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart
new file mode 100644
index 00000000..52a64a50
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/NewCMC/new_cmc_step_one_page.dart
@@ -0,0 +1,209 @@
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_get_items_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_insert_pres_order_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+class NewCMCStepOnePage extends StatefulWidget {
+ final CMCInsertPresOrderRequestModel cMCInsertPresOrderRequestModel;
+ final Function changePageViewIndex;
+ final CMCViewModel model;
+
+ const NewCMCStepOnePage(
+ {Key key,
+ this.cMCInsertPresOrderRequestModel,
+ this.model,
+ this.changePageViewIndex})
+ : super(key: key);
+
+ @override
+ _NewCMCStepOnePageState createState() =>
+ _NewCMCStepOnePageState();
+}
+
+class _NewCMCStepOnePageState
+ extends State {
+ @override
+ void initState() {
+ super.initState();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return AppScaffold(
+ isShowAppBar: false,
+ baseViewModel: widget.model,
+ body: SingleChildScrollView(
+ physics: ScrollPhysics(),
+ child: Container(
+ margin: EdgeInsets.all(12),
+ child: Center(
+ child: Column(
+ children: [
+ FractionallySizedBox(
+ widthFactor: 0.94,
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 20,
+ ),
+ Texts(
+// TranslationBase.of(context).advancePaymentLabel,
+ "Select Home Health Care Services",
+ textAlign: TextAlign.center,
+ ),
+ Column(
+ children: widget.model.cmcAllServicesList.map((
+ service) {
+ return Container(
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border:
+ Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ children: [
+ Row(
+ children: [
+ Radio(
+ value: service.serviceID,
+ activeColor: Colors.red[800],
+ onChanged: (newValue) async {
+ PatientERCMCInsertServicesList patientERCMCInsertServicesList =
+ new PatientERCMCInsertServicesList(
+ price: service.price,
+ serviceID: service.serviceID
+ .toString(),
+ selectedServiceName: service
+ .description,
+ selectedServiceNameAR:
+ service.description,
+ recordID: 1,
+ totalPrice: service.totalPrice,
+ vAT: service.vAT);
+ setState(() {
+ widget
+ .cMCInsertPresOrderRequestModel
+ .patientERCMCInsertServicesList =
+ [patientERCMCInsertServicesList];
+ });
+ CMCGetItemsRequestModel cMCGetItemsRequestModel = new CMCGetItemsRequestModel (checkupType:newValue );
+ await widget.model.getCheckupItems(cMCGetItemsRequestModel);
+ },
+ groupValue: widget
+ .cMCInsertPresOrderRequestModel
+ .patientERCMCInsertServicesList.length >0?int.parse(widget
+ .cMCInsertPresOrderRequestModel
+ .patientERCMCInsertServicesList[0]
+ .serviceID):1),
+ Expanded(
+ child: Padding(
+ padding: const EdgeInsets.all(20.0),
+ child: Texts(
+ service.description,
+ fontSize: 15,
+ ),
+ ),
+ ),
+ ],
+ ),
+ ],
+ ),
+ );
+ }).toList(),
+ ),
+ ],
+ ),
+ ),
+ SizedBox(height: 30,),
+ Container(
+ color: Colors.white,
+ width: double.infinity,
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: widget.model.checkupItems.map((item) {
+ return Center(
+ child: FractionallySizedBox(
+ widthFactor: 0.8,
+ child: Container(
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border:
+ Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 5, top: 5),
+ decoration: BoxDecoration(
+ // border: Border(
+ // bottom: BorderSide(
+ // color: Colors.grey,
+ // width: 1.0,
+ // ),
+ // ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ item.itemName,
+ fontSize: 15,
+ ),
+ ],
+ ),
+ ),
+
+ SizedBox(
+ height: 12,
+ ),
+ ],
+ ),
+ ),
+ ),
+ );
+ }).toList()),
+ )
+ ],
+ ),
+ ),
+ ),
+ ),
+ bottomSheet:Container(
+ height: MediaQuery.of(context).size.height * 0.10,
+ width: double.infinity,
+ child: Column(
+ children: [
+ Container(
+ width: MediaQuery
+ .of(context)
+ .size
+ .width * 0.9,
+ child: SecondaryButton(
+ label: "Next",
+ // disabled: this.widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList.length ==0,
+ textColor: Theme
+ .of(context)
+ .backgroundColor),
+ ),
+ ],
+ ),
+ ));
+ }
+
+
+}
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart
new file mode 100644
index 00000000..e8e9eccc
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart
@@ -0,0 +1,68 @@
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'package:hexcolor/hexcolor.dart';
+import 'cmc_page.dart';
+
+class CMCIndexPage extends StatelessWidget {
+ @override
+ Widget build(BuildContext context) {
+ return AppScaffold(
+ isShowAppBar: true,
+ appBarTitle: TranslationBase.of(context).serviceInformation,
+ body: SingleChildScrollView(
+ padding: EdgeInsets.all(12),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "CMC",
+ fontWeight: FontWeight.normal,
+ fontSize: 25,
+ color: Color(0xff60686b),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ Texts(
+ "This service is designed to help you to set drinking water goals and track the volume of water you are drinking on a daily basis. This service allows for schedule reminders and offers a basic statistical analysis of the amount of what you have consumed over the course of a day, week or month.",
+ fontWeight: FontWeight.normal,
+ fontSize: 17,
+ ),
+ SizedBox(
+ height: 22,
+ ),
+ Center(
+ child: Image.asset(
+ 'assets/images/AlHabibMedicalService/Wifi-AR.png')),
+ SizedBox(
+ height: 77,
+ ),
+ ],
+ )),
+ bottomSheet: Container(
+ height: MediaQuery.of(context).size.height * 0.10,
+ width: double.infinity,
+ child: Column(
+ children: [
+ Container(
+ width: MediaQuery.of(context).size.width * 0.9,
+ child: SecondaryButton(
+ onTap: () => Navigator.push(
+ context,
+ FadePage(
+ page: CMCPage(),
+ ),
+ ),
+ label: "CMC",
+ textColor: Theme.of(context).backgroundColor),
+ ),
+ ],
+ ),
+ ));
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_page.dart
new file mode 100644
index 00000000..385d0da3
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_page.dart
@@ -0,0 +1,130 @@
+import 'dart:ui';
+
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
+import 'package:diplomaticquarterapp/pages/base/base_view.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+import 'NewCMC/new_cmc_page.dart';
+import 'orders_log_details_page.dart';
+
+class CMCPage extends StatefulWidget {
+ @override
+ _CMCPageState createState() => _CMCPageState();
+}
+
+class _CMCPageState extends State
+ with SingleTickerProviderStateMixin {
+ TabController _tabController;
+
+ @override
+ void initState() {
+ super.initState();
+ _tabController = TabController(length: 2, vsync: this);
+ }
+
+ @override
+ void dispose() {
+ super.dispose();
+ _tabController.dispose();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return BaseView(
+ onModelReady: (model){
+ model.getCmcAllPresOrders();
+ },
+ builder: (_, model, widget) => AppScaffold(
+ isShowAppBar: true,
+ appBarTitle: TranslationBase.of(context).homeHealthCare,
+ body: Scaffold(
+ extendBodyBehindAppBar: true,
+ appBar: PreferredSize(
+ preferredSize: Size.fromHeight(65.0),
+ child: Stack(
+ children: [
+ Positioned(
+ bottom: 1,
+ left: 0,
+ right: 0,
+ child: BackdropFilter(
+ filter: ImageFilter.blur(sigmaX: 10, sigmaY: 10),
+ child: Container(
+ color: Theme.of(context)
+ .scaffoldBackgroundColor
+ .withOpacity(0.8),
+ height: 70.0,
+ ),
+ ),
+ ),
+ Center(
+ child: Container(
+ height: 60.0,
+ margin: EdgeInsets.only(top: 10.0),
+ width: MediaQuery.of(context).size.width * 0.9,
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Theme.of(context).dividerColor,
+ width: 0.7),
+ ),
+ color: Colors.white),
+ child: Center(
+ child: TabBar(
+ isScrollable: true,
+ controller: _tabController,
+ indicatorWeight: 5.0,
+ indicatorSize: TabBarIndicatorSize.label,
+ indicatorColor: Colors.red[800],
+ labelColor: Theme.of(context).primaryColor,
+ labelPadding:
+ EdgeInsets.only(top: 4.0, left: 18.0, right: 18.0),
+ unselectedLabelColor: Colors.grey[800],
+ tabs: [
+ Container(
+ width: MediaQuery.of(context).size.width * 0.37,
+ child: Center(
+ child: Texts("CMC Service"),
+ ),
+ ),
+ Container(
+ width: MediaQuery.of(context).size.width * 0.37,
+ child: Center(
+ child: Texts(TranslationBase.of(context).orderLog),
+ ),
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ ],
+ ),
+ ),
+ body: Column(
+ children: [
+ Expanded(
+ child: TabBarView(
+ physics: BouncingScrollPhysics(),
+ controller: _tabController,
+ children: [
+ NewCMCPage(
+ model: model,
+ ),
+ OrdersLogDetailsPage(
+ model: model,
+ )
+ ],
+ ),
+ )
+ ],
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart
new file mode 100644
index 00000000..6c915a4c
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/orders_log_details_page.dart
@@ -0,0 +1,250 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/cmc_view_model.dart';
+import 'package:diplomaticquarterapp/uitl/app_toast.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/utils.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/material.dart';
+
+import 'Dialog/confirm_cancel_order_dialog.dart';
+
+class OrdersLogDetailsPage extends StatelessWidget {
+ final CMCViewModel model;
+
+ const OrdersLogDetailsPage({Key key, this.model}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ void showConfirmMessage(
+ CMCViewModel model, GetHHCAllPresOrdersResponseModel order) {
+ showDialog(
+ context: context,
+ child: ConfirmCancelOrderDialog(
+ model: model,
+ onTap: () async {
+ UpdatePresOrderRequestModel updatePresOrderRequestModel =
+ UpdatePresOrderRequestModel(
+ presOrderID: order.iD,
+ rejectionReason: "",
+ presOrderStatus: 4, editedBy: 3);
+ await model.updateCmcPresOrder(updatePresOrderRequestModel);
+ if(model.state == ViewState.ErrorLocal) {
+ Utils.showErrorToast(model.error);
+ } else {
+ AppToast.showSuccessToast(message: "Done Successfully");
+ await model.getCmcAllPresOrders();
+ }
+ },
+ ));
+ }
+
+ return AppScaffold(
+ isShowAppBar: false,
+ baseViewModel: model,
+ body: SingleChildScrollView(
+ physics: ScrollPhysics(),
+ child: Container(
+ margin: EdgeInsets.all(12),
+ child: Center(
+ child: FractionallySizedBox(
+ widthFactor: 0.94,
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 50,
+ ),
+ Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: model.cmcAllPresOrders.map((order) {
+ return Container(
+ width: double.infinity,
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border:
+ Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Request ID",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.iD.toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Status",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.description,
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Pickup Date",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ DateUtil.getDayMonthYearDateFormatted(
+ DateUtil.convertStringToDate(
+ order.createdOn)),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Location",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.nearestProjectDescription
+ .toString() ??
+ order.nearestProjectDescriptionN
+ .toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ if (order.status == 1 ||order.status == 2 )
+ Center(
+ child: Container(
+ width: MediaQuery
+ .of(context)
+ .size
+ .width *
+ 0.85,
+ child: SecondaryButton(
+ label: "Cancel".toUpperCase(),
+ onTap: () {
+ showConfirmMessage(model, order);
+ }
+ ,
+ color: Colors.red[800],
+ disabled: false,
+ textColor: Theme
+ .of(context)
+ .backgroundColor),
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ ],
+ ),
+ );
+ }).toList())
+ ],
+ ),
+ ),
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/E-Referral/e_referral_index_page.dart b/lib/pages/AlHabibMedicalService/E-Referral/e_referral_index_page.dart
index ef0be383..c837bd2a 100644
--- a/lib/pages/AlHabibMedicalService/E-Referral/e_referral_index_page.dart
+++ b/lib/pages/AlHabibMedicalService/E-Referral/e_referral_index_page.dart
@@ -19,7 +19,7 @@ class EReferralIndexPage extends StatelessWidget {
Widget build(BuildContext context) {
return AppScaffold(
isShowAppBar: true,
- appBarTitle: "Service Information",
+ appBarTitle: TranslationBase.of(context).serviceInformation,
body: SingleChildScrollView(
padding: EdgeInsets.all(12),
child: Column(
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/Dialog/confirm_cancel_order_dialog.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/Dialog/confirm_cancel_order_dialog.dart
new file mode 100644
index 00000000..17be8edd
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/Dialog/confirm_cancel_order_dialog.dart
@@ -0,0 +1,103 @@
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+// ignore: must_be_immutable
+class ConfirmCancelOrderDialog extends StatefulWidget {
+ final HomeHealthCareViewModel model;
+ final Function onTap;
+
+
+ ConfirmCancelOrderDialog(
+ {Key key, this.model, this.onTap});
+
+ @override
+ _ConfirmCancelOrderDialogState createState() => _ConfirmCancelOrderDialogState();
+}
+
+class _ConfirmCancelOrderDialogState extends State {
+ @override
+ void initState() {
+ super.initState();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return SimpleDialog(
+ contentPadding: EdgeInsets.fromLTRB(28.0, 24.0, 28.0, 0.0),
+ title: Center(
+ child: Texts(
+ "Confirm",
+ color: Colors.black,
+ ),
+ ),
+ children: [
+ Column(
+ children: [
+ Divider(),
+ Center(
+ child: Texts(
+ "Are you sure!! want to cancel this order",
+ color: Colors.grey,
+ ),
+ ),
+ SizedBox(
+ height: 5.0,
+ ),
+ Row(
+ // mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ children: [
+ Expanded(
+ flex: 1,
+ child: InkWell(
+ onTap: () {
+ Navigator.pop(context);
+ },
+ child: Padding(
+ padding: const EdgeInsets.all(8.0),
+ child: Container(
+ child: Center(
+ child: Texts(
+ TranslationBase.of(context).cancel.toUpperCase(),
+ color: Colors.red,
+ ),
+ ),
+ ),
+ ),
+ ),
+ ),
+ Container(
+ width: 1,
+ height: 30,
+ color: Colors.grey[500],
+ ),
+ Expanded(
+ flex: 1,
+ child: InkWell(
+ onTap: () async{
+ widget.onTap();
+ Navigator.pop(context);
+ },
+ child: Padding(
+ padding: const EdgeInsets.all(8.0),
+ child: Center(
+ child: Texts(
+ TranslationBase.of(context).ok,
+ fontWeight: FontWeight.w400,
+ )),
+ ),
+ ),
+ ),
+ ],
+ )
+ ],
+ )
+ ],
+ );
+ }
+}
+
+
+
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_Home_health_care_step_one_page.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_Home_health_care_step_one_page.dart
new file mode 100644
index 00000000..2dd64605
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_Home_health_care_step_one_page.dart
@@ -0,0 +1,161 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/PatientERHHCInsertServicesList.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/patient_er_insert_pres_order_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/pages/base/base_view.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+class NewHomeHealthCareStepOnePage extends StatefulWidget {
+ final PatientERInsertPresOrderRequestModel
+ patientERInsertPresOrderRequestModel;
+ final Function changePageViewIndex;
+ final HomeHealthCareViewModel model;
+
+ const NewHomeHealthCareStepOnePage(
+ {Key key,
+ this.patientERInsertPresOrderRequestModel,
+ this.model,
+ this.changePageViewIndex})
+ : super(key: key);
+
+ @override
+ _NewHomeHealthCareStepOnePageState createState() =>
+ _NewHomeHealthCareStepOnePageState();
+}
+
+class _NewHomeHealthCareStepOnePageState
+ extends State {
+ @override
+ void initState() {
+ if(widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList==null)
+ widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList = [];
+
+
+ super.initState();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return AppScaffold(
+ isShowAppBar: false,
+ baseViewModel: widget.model,
+ body: SingleChildScrollView(
+ physics: ScrollPhysics(),
+ child: Container(
+ margin: EdgeInsets.only(
+ left: MediaQuery.of(context).size.width * 0.05,
+ right: MediaQuery.of(context).size.width * 0.05),
+ child: Center(
+ child: FractionallySizedBox(
+ widthFactor: 1,
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Texts(
+ "Select Home Health Care Services",
+ textAlign: TextAlign.center,
+ ),
+ Column(
+ children: widget.model.hhcAllServicesList.map((service) {
+ return Container(
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border: Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ children: [
+ Row(
+ children: [
+ Checkbox(
+ value: isServiceSelected(
+ service.serviceID),
+ activeColor: Colors.black38,
+ onChanged: (bool newValue) {
+ setState(() {
+ if(!isServiceSelected(service.serviceID))
+ widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList.add( PatientERHHCInsertServicesList(
+ recordID:widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList.length,
+ serviceID: service.serviceID,
+ serviceName: service.description));
+ else
+ removeSelected(service.serviceID);
+ // widget.patientERInsertPresOrderRequestModel
+ // isPatientInsured = newValue;
+ });
+ }),
+ Expanded(
+ child: Padding(
+ padding: const EdgeInsets.all(20.0),
+ child: Texts(
+ service.description,
+ fontSize: 15,
+ ),
+ ),
+ ),
+ ],
+ ),
+ ],
+ ),
+ );
+ }).toList(),
+ )
+ ],
+ ),
+ ),
+ ),
+ ),
+ ),
+ bottomSheet: Container(
+ height: MediaQuery.of(context).size.height * 0.10,
+ width: double.infinity,
+ child: Column(
+ children: [
+ Container(
+ width: MediaQuery.of(context).size.width * 0.9,
+ child: SecondaryButton(
+ label: "Next",
+ disabled: this
+ .widget
+ .patientERInsertPresOrderRequestModel
+ .patientERHHCInsertServicesList
+ .length ==
+ 0,
+ textColor: Theme.of(context).backgroundColor),
+ ),
+ ],
+ ),
+ ));
+ }
+
+ isServiceSelected(int serviceId) {
+ Iterable patientERHHCInsertServicesList = widget
+ .patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList
+ .where((element) => serviceId == element.serviceID);
+ if(patientERHHCInsertServicesList.length > 0) {
+ return true;
+ }
+ return false;
+ }
+
+ removeSelected(int serviceId){
+ Iterable patientERHHCInsertServicesList = widget
+ .patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList
+ .where((element) => serviceId == element.serviceID);
+
+ if(patientERHHCInsertServicesList.length > 0)
+ setState(() {
+ widget.patientERInsertPresOrderRequestModel.patientERHHCInsertServicesList.remove(patientERHHCInsertServicesList);
+ });
+
+
+
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_home_health_care_page.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_home_health_care_page.dart
new file mode 100644
index 00000000..40fb6125
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/NewHomeHealthCare/new_home_health_care_page.dart
@@ -0,0 +1,299 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_order_detail_by_order_iD_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/patient_er_insert_pres_order_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/Dialog/confirm_cancel_order_dialog.dart';
+import 'package:diplomaticquarterapp/uitl/app_toast.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/utils.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:flutter/material.dart';
+
+import '../StepsWidget.dart';
+import 'new_Home_health_care_step_one_page.dart';
+
+class NewHomeHealthCarePage extends StatefulWidget {
+ NewHomeHealthCarePage({this.model});
+
+ final HomeHealthCareViewModel model;
+
+ @override
+ _NewHomeHealthCarePageState createState() => _NewHomeHealthCarePageState();
+}
+
+class _NewHomeHealthCarePageState extends State
+ with TickerProviderStateMixin {
+ PageController _controller;
+ int _currentIndex = 1;
+ int pageSelected = 2;
+
+ PatientERInsertPresOrderRequestModel patientERInsertPresOrderRequestModel =
+ new PatientERInsertPresOrderRequestModel();
+
+ @override
+ void initState() {
+ super.initState();
+ _controller = new PageController();
+ }
+
+ @override
+ void dispose() {
+ super.dispose();
+ }
+
+ _changeCurrentTab(int tab) {
+ setState(() {
+ _currentIndex = tab;
+ });
+ _controller.animateToPage(tab,
+ duration: Duration(milliseconds: 800), curve: Curves.easeOutQuart);
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ void showConfirmMessage(HomeHealthCareViewModel model,
+ GetOrderDetailByOrderIDResponseModel order) {
+ showDialog(
+ context: context,
+ child: ConfirmCancelOrderDialog(
+ model: model,
+ onTap: () async {
+ UpdatePresOrderRequestModel updatePresOrderRequestModel =
+ UpdatePresOrderRequestModel(
+ presOrderID: order.presOrderID,
+ rejectionReason: "",
+ presOrderStatus: 4,
+ editedBy: 3);
+ await model.updateHHCPresOrder(updatePresOrderRequestModel);
+ if (model.state == ViewState.ErrorLocal) {
+ Utils.showErrorToast(model.error);
+ } else {
+ AppToast.showSuccessToast(message: "Done Successfully");
+ await model.getHHCAllPresOrders();
+ // await model.getHHCAllServices();
+ }
+ },
+ ));
+ }
+
+ return Scaffold(
+ body: SafeArea(
+ child: SingleChildScrollView(
+ child: Container(
+ height: MediaQuery.of(context).size.height * 0.8,
+ child: Column(
+ children: [
+
+ Container(
+ margin: EdgeInsets.only(left: MediaQuery.of(context).size.width*0.05, right: MediaQuery.of(context).size.width*0.05),
+ child: StepsWidget(
+ index: _currentIndex,
+ changeCurrentTab: _changeCurrentTab,
+ ),
+ ),
+ Expanded(
+ child: PageView(
+ physics: NeverScrollableScrollPhysics(),
+ controller: _controller,
+ onPageChanged: (index) {
+ setState(() {
+ _currentIndex = index;
+ });
+ },
+ scrollDirection: Axis.horizontal,
+ children: [
+ widget.model.pendingOrder != null
+ ? FractionallySizedBox(
+ widthFactor: 0.9,
+ child: SingleChildScrollView(
+ child: Container(
+ width: double.infinity,
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border: Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Request ID",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ widget.model.pendingOrder.iD.toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Status",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ widget.model.pendingOrder.description,
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Pickup Date",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ DateUtil.getDayMonthYearDateFormatted(
+ DateUtil.convertStringToDate(widget
+ .model.pendingOrder.createdOn)),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ ...List.generate(
+ widget.model.hhcAllOrderDetail.length,
+ (index) => Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Service Name",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ widget.model.hhcAllOrderDetail[index]
+ .description,
+ fontSize: 22,
+ bold: true,
+ ),
+ ],
+ ),
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ Center(
+ child: Container(
+ width:
+ MediaQuery.of(context).size.width * 0.85,
+ child: SecondaryButton(
+ label: "Cancel".toUpperCase(),
+ onTap: () {
+ showConfirmMessage(widget.model,
+ widget.model.hhcAllOrderDetail[0]);
+ },
+ color: Colors.red[800],
+ disabled: false,
+ textColor:
+ Theme.of(context).backgroundColor),
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ ],
+ ),
+ ),
+ ),
+ )
+ : NewHomeHealthCareStepOnePage(
+ changePageViewIndex: _changeCurrentTab,
+ patientERInsertPresOrderRequestModel: patientERInsertPresOrderRequestModel,
+ model: widget.model,
+ ),
+
+ ],
+ ),
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/StepsWidget.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/StepsWidget.dart
new file mode 100644
index 00000000..ec3020c5
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/StepsWidget.dart
@@ -0,0 +1,181 @@
+import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'package:provider/provider.dart';
+
+class StepsWidget extends StatelessWidget {
+ final int index;
+ final Function changeCurrentTab;
+
+ StepsWidget({Key key, this.index, this.changeCurrentTab});
+
+ @override
+ Widget build(BuildContext context) {
+ ProjectViewModel projectViewModel = Provider.of(context);
+ return projectViewModel.isArabic? Stack(
+ children: [
+ Container(
+ height: 50,
+ width: MediaQuery.of(context).size.width,
+ color: Colors.transparent,
+ child: Center(
+ child: Divider(
+ color: Colors.grey,
+ height: 0.75,
+ thickness: 0.75,
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ left: 0,
+ child: InkWell(
+ onTap: () => changeCurrentTab(0),
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ border: index > 0 ? null:Border.all(color: Colors.black,width: 0.75),
+ shape: BoxShape.circle,
+ color: index == 0 ? Colors.grey[800] : index > 0 ?Colors.green: Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '1',
+ color: index == 0 ? Colors.white : index > 0 ?Colors.white: Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ left: MediaQuery.of(context).size.width * 0.42,
+ child: InkWell(
+ onTap: () => index >= 2 ? changeCurrentTab(1) : null,
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ border: index > 1 ? null:Border.all(color: Colors.black,width: 0.75),
+ shape: BoxShape.circle,
+ color: index == 1 ? Colors.grey[800] : index > 1 ?Colors.green: Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '2',
+ color: index == 1? Colors.white : index > 1 ?Colors.white: Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ right: 0,
+ child: InkWell(
+ onTap: () => index == 2 ?changeCurrentTab(3) : null,
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ shape: BoxShape.circle,
+ border: Border.all(color: Colors.black,width: 0.75),
+ color: index == 2 ? Colors.grey[800] : Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '3',
+ color: index == 2 ? Colors.white : Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+
+ ],
+ ):Stack(
+ children: [
+ Container(
+ height: 50,
+ width: MediaQuery.of(context).size.width,
+ color: Colors.transparent,
+ child: Center(
+ child: Divider(
+ color: Colors.grey,
+ height: 0.75,
+ thickness: 0.75,
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ right: 0,
+ child: InkWell(
+ onTap: () => changeCurrentTab(0),
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ border: index > 0 ? null:Border.all(color: Colors.black,width: 0.75),
+ shape: BoxShape.circle,
+ color: index == 0 ? Colors.grey[800] : index > 0 ?Colors.green: Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '1',
+ color: index == 0 ? Colors.white : index > 0 ?Colors.white: Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ left: MediaQuery.of(context).size.width * 0.42,
+ child: InkWell(
+ onTap: () => index >= 2 ? changeCurrentTab(1) : null,
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ border: index > 1 ? null:Border.all(color: Colors.black,width: 0.75),
+ shape: BoxShape.circle,
+ color: index == 1 ? Colors.grey[800] : index > 1 ?Colors.green: Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '2',
+ color: index == 1? Colors.white : index > 1 ?Colors.white: Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+ Positioned(
+ top: 10,
+ left: 0,
+ child: InkWell(
+ onTap: () => index == 2 ?changeCurrentTab(3) : null,
+ child: Container(
+ width: 35,
+ height: 35,
+ decoration: BoxDecoration(
+ shape: BoxShape.circle,
+ border: Border.all(color: Colors.black,width: 0.75),
+ color: index == 2 ? Colors.grey[800] : Colors.white,
+ ),
+ child: Center(
+ child: Texts(
+ '3',
+ color: index == 2 ? Colors.white : Colors.grey[800],
+ ),
+ ),
+ ),
+ ),
+ ),
+ ],
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart
new file mode 100644
index 00000000..fa0799f9
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart
@@ -0,0 +1,69 @@
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'package:hexcolor/hexcolor.dart';
+
+import 'home_health_care_page.dart';
+
+class HomeHealthCareIndexPage extends StatelessWidget {
+ @override
+ Widget build(BuildContext context) {
+ return AppScaffold(
+ isShowAppBar: true,
+ appBarTitle: TranslationBase.of(context).serviceInformation,
+ body: SingleChildScrollView(
+ padding: EdgeInsets.all(12),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ Texts(
+ TranslationBase.of(context).homeHealthCare,
+ fontWeight: FontWeight.normal,
+ fontSize: 25,
+ color: Color(0xff60686b),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ Texts(
+ TranslationBase.of(context).homeHealthCareText,
+ fontWeight: FontWeight.normal,
+ fontSize: 17,
+ ),
+ SizedBox(
+ height: 22,
+ ),
+ Center(
+ child: Image.asset(
+ 'assets/images/AlHabibMedicalService/Wifi-AR.png')),
+ SizedBox(
+ height: 77,
+ ),
+ ],
+ )),
+ bottomSheet: Container(
+ height: MediaQuery.of(context).size.height * 0.10,
+ width: double.infinity,
+ child: Column(
+ children: [
+ Container(
+ width: MediaQuery.of(context).size.width * 0.9,
+ child: SecondaryButton(
+ onTap: () => Navigator.push(
+ context,
+ FadePage(
+ page: HomeHealthCarePage(),
+ ),
+ ),
+ label: TranslationBase.of(context).loginRegister,
+ textColor: Theme.of(context).backgroundColor),
+ ),
+ ],
+ ),
+ ));
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_page.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_page.dart
new file mode 100644
index 00000000..8f4821f6
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_page.dart
@@ -0,0 +1,132 @@
+import 'dart:ui';
+
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/all_habib_medical_services/e_referral_view_model.dart';
+import 'package:diplomaticquarterapp/pages/base/base_view.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+
+import 'NewHomeHealthCare/new_home_health_care_page.dart';
+import 'orders_log_details_page.dart';
+
+class HomeHealthCarePage extends StatefulWidget {
+ @override
+ _HomeHealthCarePageState createState() => _HomeHealthCarePageState();
+}
+
+class _HomeHealthCarePageState extends State
+ with SingleTickerProviderStateMixin {
+ TabController _tabController;
+
+ @override
+ void initState() {
+ super.initState();
+ _tabController = TabController(length: 2, vsync: this);
+ }
+
+ @override
+ void dispose() {
+ super.dispose();
+ _tabController.dispose();
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return BaseView(
+ onModelReady: (model){
+ // model.getHHCAllServices();
+ model.getHHCAllPresOrders();
+ },
+ builder: (_, model, widget) => AppScaffold(
+ isShowAppBar: true,
+ appBarTitle: TranslationBase.of(context).homeHealthCare,
+ body: Scaffold(
+ extendBodyBehindAppBar: true,
+ appBar: PreferredSize(
+ preferredSize: Size.fromHeight(65.0),
+ child: Stack(
+ children: [
+ Positioned(
+ bottom: 1,
+ left: 0,
+ right: 0,
+ child: BackdropFilter(
+ filter: ImageFilter.blur(sigmaX: 10, sigmaY: 10),
+ child: Container(
+ color: Theme.of(context)
+ .scaffoldBackgroundColor
+ .withOpacity(0.8),
+ height: 70.0,
+ ),
+ ),
+ ),
+ Center(
+ child: Container(
+ height: 60.0,
+ margin: EdgeInsets.only(top: 10.0),
+ width: MediaQuery.of(context).size.width * 0.9,
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Theme.of(context).dividerColor,
+ width: 0.7),
+ ),
+ color: Colors.white),
+ child: Center(
+ child: TabBar(
+ isScrollable: true,
+ controller: _tabController,
+ indicatorWeight: 5.0,
+ indicatorSize: TabBarIndicatorSize.label,
+ indicatorColor: Colors.red[800],
+ labelColor: Theme.of(context).primaryColor,
+ labelPadding:
+ EdgeInsets.only(top: 4.0, left: 18.0, right: 18.0),
+ unselectedLabelColor: Colors.grey[800],
+ tabs: [
+ Container(
+ width: MediaQuery.of(context).size.width * 0.37,
+ child: Center(
+ child: Texts(TranslationBase.of(context).homeHealthCare),
+ ),
+ ),
+ Container(
+ width: MediaQuery.of(context).size.width * 0.37,
+ child: Center(
+ child: Texts(TranslationBase.of(context).orderLog),
+ ),
+ ),
+ ],
+ ),
+ ),
+ ),
+ ),
+ ],
+ ),
+ ),
+ body: Column(
+ children: [
+ Expanded(
+ child: TabBarView(
+ physics: BouncingScrollPhysics(),
+ controller: _tabController,
+ children: [
+ NewHomeHealthCarePage(
+ model: model,
+ ),
+ OrdersLogDetailsPage(
+ model: model,
+ )
+ ],
+ ),
+ )
+ ],
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/HomeHealthCare/orders_log_details_page.dart b/lib/pages/AlHabibMedicalService/HomeHealthCare/orders_log_details_page.dart
new file mode 100644
index 00000000..0cfedb41
--- /dev/null
+++ b/lib/pages/AlHabibMedicalService/HomeHealthCare/orders_log_details_page.dart
@@ -0,0 +1,251 @@
+import 'package:diplomaticquarterapp/core/enum/viewstate.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/get_hhc_all_pres_orders_response_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/HomeHealthCare/update_pres_oreder_request_model.dart';
+import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/home_health_care_view_model.dart';
+import 'package:diplomaticquarterapp/uitl/app_toast.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/utils.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
+import 'package:flutter/material.dart';
+
+import 'Dialog/confirm_cancel_order_dialog.dart';
+
+class OrdersLogDetailsPage extends StatelessWidget {
+ final HomeHealthCareViewModel model;
+
+ const OrdersLogDetailsPage({Key key, this.model}) : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ void showConfirmMessage(
+ HomeHealthCareViewModel model, GetHHCAllPresOrdersResponseModel order) {
+ showDialog(
+ context: context,
+ child: ConfirmCancelOrderDialog(
+ model: model,
+ onTap: () async {
+ UpdatePresOrderRequestModel updatePresOrderRequestModel =
+ UpdatePresOrderRequestModel(
+ presOrderID: order.iD,
+ rejectionReason: "",
+ presOrderStatus: 4, editedBy: 3);
+ await model.updateHHCPresOrder(updatePresOrderRequestModel);
+ if(model.state == ViewState.ErrorLocal) {
+ Utils.showErrorToast(model.error);
+ } else {
+ AppToast.showSuccessToast(message: "Done Successfully");
+ await model.getHHCAllPresOrders();
+ // await model.getHHCAllServices();
+ }
+ },
+ ));
+ }
+
+ return AppScaffold(
+ isShowAppBar: false,
+ baseViewModel: model,
+ body: SingleChildScrollView(
+ physics: ScrollPhysics(),
+ child: Container(
+ margin: EdgeInsets.all(12),
+ child: Center(
+ child: FractionallySizedBox(
+ widthFactor: 0.94,
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 50,
+ ),
+ Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: model.hhcAllPresOrders.map((order) {
+ return Container(
+ width: double.infinity,
+ margin: EdgeInsets.only(top: 15),
+ decoration: BoxDecoration(
+ border:
+ Border.all(color: Colors.grey, width: 1),
+ borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ SizedBox(
+ height: 12,
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Request ID",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.iD.toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Status",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.description,
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Pickup Date",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ DateUtil.getDayMonthYearDateFormatted(
+ DateUtil.convertStringToDate(
+ order.createdOn)),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ Container(
+ width: double.infinity,
+ padding: EdgeInsets.only(
+ left: 15, bottom: 15, top: 15),
+ decoration: BoxDecoration(
+ border: Border(
+ bottom: BorderSide(
+ color: Colors.grey,
+ width: 1.0,
+ ),
+ ),
+ // borderRadius: BorderRadius.circular(12),
+ color: Colors.white),
+ child: Column(
+ crossAxisAlignment:
+ CrossAxisAlignment.start,
+ children: [
+ Texts(
+ "Location",
+ bold: false,
+ fontSize: 13,
+ ),
+ SizedBox(
+ height: 4,
+ ),
+ Texts(
+ order.nearestProjectDescription
+ .toString() ??
+ order.nearestProjectDescriptionN
+ .toString(),
+ fontSize: 22,
+ ),
+ ],
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ if (order.status == 1 ||order.status == 2 )
+ Center(
+ child: Container(
+ width: MediaQuery
+ .of(context)
+ .size
+ .width *
+ 0.85,
+ child: SecondaryButton(
+ label: "Cancel".toUpperCase(),
+ onTap: () {
+ showConfirmMessage(model, order);
+ }
+ ,
+ color: Colors.red[800],
+ disabled: false,
+ textColor: Theme
+ .of(context)
+ .backgroundColor),
+ ),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ ],
+ ),
+ );
+ }).toList())
+ ],
+ ),
+ ),
+ ),
+ ),
+ ),
+ );
+ }
+}
diff --git a/lib/pages/AlHabibMedicalService/h2o/Dialog/confirm_add_amount_dialog.dart b/lib/pages/AlHabibMedicalService/h2o/Dialog/confirm_add_amount_dialog.dart
index 2b2873e4..90386827 100644
--- a/lib/pages/AlHabibMedicalService/h2o/Dialog/confirm_add_amount_dialog.dart
+++ b/lib/pages/AlHabibMedicalService/h2o/Dialog/confirm_add_amount_dialog.dart
@@ -1,4 +1,4 @@
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart';
import 'package:diplomaticquarterapp/core/model/hospitals/hospitals_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/H2O_view_model.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
diff --git a/lib/pages/AlHabibMedicalService/h2o/h2o_index_page.dart b/lib/pages/AlHabibMedicalService/h2o/h2o_index_page.dart
index 68ce1936..e6e05ee6 100644
--- a/lib/pages/AlHabibMedicalService/h2o/h2o_index_page.dart
+++ b/lib/pages/AlHabibMedicalService/h2o/h2o_index_page.dart
@@ -1,6 +1,6 @@
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/h2o/h2o_page.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
-import 'package:diplomaticquarterapp/widgets/data_display/CarouselSlider.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
@@ -13,61 +13,57 @@ class H2OPageIndexPage extends StatelessWidget {
Widget build(BuildContext context) {
return AppScaffold(
isShowAppBar: true,
- appBarTitle: "Service Information",
+ appBarTitle: TranslationBase.of(context).serviceInformation,
body: SingleChildScrollView(
padding: EdgeInsets.all(12),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Texts(
- "Water Tracker:",
- fontWeight: FontWeight.normal,
- fontSize: 25,
- color: HexColor("#60686b"),
- ),
- SizedBox(
- height: 12,
- ),
- Texts(
- "This service is designed to help you to set drinking water goals and track the volume of water you are drinking on a daily basis. This service allows for schedule reminders and offers a basic statistical analysis of the amount of what you have consumed over the course of a day, week or month.",
- fontWeight: FontWeight.normal,
- fontSize: 17,
- ),
- SizedBox(
- height: 22,
- ),
- Center(
- child: SizedBox(
- height: MediaQuery.of(context).size.height * 0.55,
- width: MediaQuery.of(context).size.width * 0.50,
- child: CarouselSlider(
- imagesUrlList: [
- "https://hmgwebservices.com/Images/MobileApp/images-info-home/referal/en/0.png",
- "https://hmgwebservices.com/Images/MobileApp/images-info-home/referal/en/1.png"
- ],
- ),
- ),
- ),
- SizedBox(
- height: 77,
- ),
- ],
- )),
+ children: [
+ Texts(
+ "Water Tracker:",
+ fontWeight: FontWeight.normal,
+ fontSize: 25,
+ color: HexColor("#60686b"),
+ ),
+ SizedBox(
+ height: 12,
+ ),
+ Texts(
+ "This service is designed to help you to set drinking water goals and track the volume of water you are drinking on a daily basis. This service allows for schedule reminders and offers a basic statistical analysis of the amount of what you have consumed over the course of a day, week or month.",
+ fontWeight: FontWeight.normal,
+ fontSize: 17,
+ ),
+ SizedBox(
+ height: 22,
+ ),
+ Center(
+ child: Image.asset(
+ 'assets/images/AlHabibMedicalService/Wifi-AR.png')),
+ SizedBox(
+ height: 77,
+ ),
+ ],
+ )),
bottomSheet: Container(
height: MediaQuery.of(context).size.height * 0.10,
width: double.infinity,
child: Column(
children: [
Container(
- width: MediaQuery.of(context).size.width * 0.9,
+ width: MediaQuery
+ .of(context)
+ .size
+ .width * 0.9,
child: SecondaryButton(
onTap: () =>
Navigator.push(context, FadePage(page: H2OPage())),
label: "Water Tracker",
- textColor: Theme.of(context).backgroundColor),
+ textColor: Theme
+ .of(context)
+ .backgroundColor),
),
],
),
- ));
+ ),);
}
}
diff --git a/lib/pages/AlHabibMedicalService/h2o/widgets/h20_floating_action_button.dart b/lib/pages/AlHabibMedicalService/h2o/widgets/h20_floating_action_button.dart
index a2fa1adf..7eaed1a8 100644
--- a/lib/pages/AlHabibMedicalService/h2o/widgets/h20_floating_action_button.dart
+++ b/lib/pages/AlHabibMedicalService/h2o/widgets/h20_floating_action_button.dart
@@ -1,6 +1,6 @@
import 'dart:math' as math;
-import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/insert_user_activity_request_model.dart';
+import 'package:diplomaticquarterapp/core/model/AlHabibMedicalService/H2O/insert_user_activity_request_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/AlHabibMedicalService/H2O_view_model.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/h2o/Dialog/confirm_add_amount_dialog.dart';
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
diff --git a/lib/pages/BookAppointment/components/DocAvailableAppointments.dart b/lib/pages/BookAppointment/components/DocAvailableAppointments.dart
index 88116cd9..74cba568 100644
--- a/lib/pages/BookAppointment/components/DocAvailableAppointments.dart
+++ b/lib/pages/BookAppointment/components/DocAvailableAppointments.dart
@@ -235,7 +235,7 @@ class _DocAvailableAppointmentsState extends State
return children;
},
),
- onDaySelected: (date, events) {
+ onDaySelected: (date, events,holidays) {
_onDaySelected(date, events);
_animationController.forward(from: 0.0);
},
diff --git a/lib/pages/Covid-DriveThru/Covid-TimeSlots.dart b/lib/pages/Covid-DriveThru/Covid-TimeSlots.dart
index 060a8132..264f828a 100644
--- a/lib/pages/Covid-DriveThru/Covid-TimeSlots.dart
+++ b/lib/pages/Covid-DriveThru/Covid-TimeSlots.dart
@@ -348,7 +348,7 @@ class _CovidTimeSlotsState extends State
return children;
},
),
- onDaySelected: (date, events) {
+ onDaySelected: (date, events,holidays) {
_onDaySelected(date, events);
_animationController.forward(from: 0.0);
},
diff --git a/lib/pages/ErService/AmbulanceReq.dart b/lib/pages/ErService/AmbulanceReq.dart
index ec96f482..413d80e6 100644
--- a/lib/pages/ErService/AmbulanceReq.dart
+++ b/lib/pages/ErService/AmbulanceReq.dart
@@ -3,6 +3,9 @@ import 'package:diplomaticquarterapp/core/viewModels/medical/prescriptions_view_
import 'package:diplomaticquarterapp/pages/base/base_view.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_history_page.dart';
import 'package:diplomaticquarterapp/pages/medical/prescriptions/prescriptions_page.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/others/OrderLogItem.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'dart:ui';
@@ -66,7 +69,7 @@ class _AmbulanceReqState extends State
child: Container(
height: 60.0,
margin: EdgeInsets.only(top: 10.0),
- width: MediaQuery.of(context).size.width * 0.9,
+ width: MediaQuery.of(context).size.width * 0.93,
decoration: BoxDecoration(
border: Border(
bottom: BorderSide(
@@ -114,9 +117,7 @@ class _AmbulanceReqState extends State
physics: BouncingScrollPhysics(),
controller: _tabController,
children: [
- model.hasPendingOrder
- ? Container()
- : AmbulanceRequestIndexPage(
+ AmbulanceRequestIndexPage(
amRequestViewModel: model,
),
OrderLogPage(
diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart
index 55e75e22..5f303846 100644
--- a/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart
+++ b/lib/pages/ErService/AmbulanceRequestIndexPages/AmbulanceRequestIndex.dart
@@ -1,8 +1,13 @@
import 'package:diplomaticquarterapp/core/model/er/PatientER.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/pages/ErService/widgets/StepsWidget.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/others/OrderLogItem.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
import 'BillAmount.dart';
import 'PickupLocation.dart';
@@ -15,7 +20,8 @@ class AmbulanceRequestIndexPage extends StatefulWidget {
AmbulanceRequestIndexPage({Key key, this.amRequestViewModel});
@override
- _AmbulanceRequestIndexPageState createState() => _AmbulanceRequestIndexPageState();
+ _AmbulanceRequestIndexPageState createState() =>
+ _AmbulanceRequestIndexPageState();
}
class _AmbulanceRequestIndexPageState extends State {
@@ -40,48 +46,124 @@ class _AmbulanceRequestIndexPageState extends State {
@override
Widget build(BuildContext context) {
return AppScaffold(
- body: Column(
- children: [
- SizedBox(
- height: 80,
- ),
- Container(
- margin: EdgeInsets.only(left: 12, right: 12),
- child: StepsWidget(
- index: currentIndex,
- changeCurrentTab: _changeCurrentTab,
- )),
- Expanded(
- child: PageView(
- physics: NeverScrollableScrollPhysics(),
- controller: pageController,
- children: [
- //Container(),
- SelectTransportationMethod(
- changeCurrentTab: _changeCurrentTab,
- patientER: _patientER,
- amRequestViewModel: widget.amRequestViewModel,
+ body: widget.amRequestViewModel.pickUpRequestPresOrder != null
+ ? Column(
+ children: [
+ SizedBox(
+ height: 80,
),
- PickupLocation(
- changeCurrentTab: _changeCurrentTab,
- patientER: _patientER,
- amRequestViewModel: widget.amRequestViewModel,
+ Container(
+ margin: EdgeInsets.only(left: 18, right: 18),
+ decoration: BoxDecoration(
+ color: Colors.white,
+ borderRadius: BorderRadius.circular(2),
+ ),
+ child: Column(
+ crossAxisAlignment: CrossAxisAlignment.start,
+ children: [
+ OrderLogItem(
+ title: 'Request ID',
+ value: widget.amRequestViewModel.pickUpRequestPresOrder
+ .presOrderID
+ .toString(),
+ ),
+ OrderLogItem(
+ title: 'Status',
+ value: widget.amRequestViewModel.pickUpRequestPresOrder
+ .ambulateDescription,
+ ),
+ OrderLogItem(
+ title: 'Last edit time',
+ value: DateUtil.getDayMonthYearDateFormatted(
+ DateUtil.convertStringToDate(widget
+ .amRequestViewModel
+ .pickUpRequestPresOrder
+ .lastEditDate)),
+ ),
+ OrderLogItem(
+ title: 'Pickup Location',
+ value: widget.amRequestViewModel.pickUpRequestPresOrder
+ .pickupLocationName,
+ ),
+ OrderLogItem(
+ title: 'Drop off Location',
+ value: widget.amRequestViewModel.pickUpRequestPresOrder
+ .dropoffLocationName,
+ ),
+ OrderLogItem(
+ title: 'Trasfaer way',
+ value: widget
+ .amRequestViewModel.pickUpRequestPresOrder.title,
+ ),
+ Container(
+ padding: EdgeInsets.all(10),
+ width: double.maxFinite,
+ margin: EdgeInsets.only(bottom: 4, left: 4, right: 4),
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.only(
+ bottomRight: Radius.circular(12),
+ bottomLeft: Radius.circular(12),
+ ),
+ color: Colors.white),
+ child: SecondaryButton(
+ color: Colors.red[900],
+ textColor: Colors.white,
+ label: TranslationBase.of(context).cancel,
+ onTap: () {
+ widget.amRequestViewModel.updatePressOrder(
+ presOrderID: widget.amRequestViewModel
+ .pickUpRequestPresOrder.presOrderID);
+ },
+ ),
+ )
+ ],
+ ),
),
- BillAmount(
- changeCurrentTab: _changeCurrentTab,
- patientER: _patientER,
- amRequestViewModel: widget.amRequestViewModel,
+ ],
+ )
+ : Column(
+ children: [
+ SizedBox(
+ height: 80,
+ ),
+ Container(
+ margin: EdgeInsets.only(left: 12, right: 12),
+ child: StepsWidget(
+ index: currentIndex,
+ changeCurrentTab: _changeCurrentTab,
+ ),
),
- Summary(
- changeCurrentTab: _changeCurrentTab,
- patientER: _patientER,
- amRequestViewModel: widget.amRequestViewModel,
+ Expanded(
+ child: PageView(
+ physics: NeverScrollableScrollPhysics(),
+ controller: pageController,
+ children: [
+ //Container(),
+ SelectTransportationMethod(
+ changeCurrentTab: _changeCurrentTab,
+ patientER: _patientER,
+ amRequestViewModel: widget.amRequestViewModel,
+ ),
+ PickupLocation(
+ changeCurrentTab: _changeCurrentTab,
+ patientER: _patientER,
+ amRequestViewModel: widget.amRequestViewModel,
+ ),
+ BillAmount(
+ changeCurrentTab: _changeCurrentTab,
+ patientER: _patientER,
+ amRequestViewModel: widget.amRequestViewModel,
+ ),
+ Summary(
+ changeCurrentTab: _changeCurrentTab,
+ patientER: _patientER,
+ amRequestViewModel: widget.amRequestViewModel,
+ ),
+ ],
+ ),
),
],
),
- ),
- ],
- ),
);
}
}
diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart
index 795f4dcc..ee7ed8fa 100644
--- a/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart
+++ b/lib/pages/ErService/AmbulanceRequestIndexPages/PickupLocation.dart
@@ -8,8 +8,10 @@ import 'package:diplomaticquarterapp/pages/ErService/widgets/AppointmentCard.dar
import 'package:diplomaticquarterapp/pages/landing/home_page.dart';
import 'package:diplomaticquarterapp/uitl/ProgressDialog.dart';
import 'package:diplomaticquarterapp/uitl/app_toast.dart';
+import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
+import 'package:diplomaticquarterapp/widgets/pickupLocation/PickupLocationFromMap.dart';
import 'package:diplomaticquarterapp/widgets/transitions/fade_page.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
@@ -81,24 +83,42 @@ class _PickupLocationState extends State {
SizedBox(
height: 15,
),
- Container(
- padding: EdgeInsets.all(12),
- decoration: BoxDecoration(
- shape: BoxShape.rectangle,
- borderRadius: BorderRadius.circular(8),
- border: Border.all(color: Colors.grey, width: 0.5),
- color: Colors.white,
- ),
- child: Row(
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
- children: [
- Texts('Select From Map'),
- Icon(
- FontAwesomeIcons.mapMarkerAlt,
- size: 24,
- color: Colors.black,
- )
- ],
+ InkWell(
+ onTap: (){
+ Navigator.push(
+ context,
+ MaterialPageRoute(
+ builder: (context) => PickupLocationFromMap(
+ latitude: _latitude,
+ longitude: _longitude,
+ onPick: (value) {
+ setState(() {
+ _result = value;
+ });
+ },
+ ),
+ ),
+ );
+ },
+ child: Container(
+ padding: EdgeInsets.all(12),
+ decoration: BoxDecoration(
+ shape: BoxShape.rectangle,
+ borderRadius: BorderRadius.circular(8),
+ border: Border.all(color: Colors.grey, width: 0.5),
+ color: Colors.white,
+ ),
+ child: Row(
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ children: [
+ Texts(getSelectFromMapName()),
+ Icon(
+ FontAwesomeIcons.mapMarkerAlt,
+ size: 24,
+ color: Colors.black,
+ )
+ ],
+ ),
),
),
SizedBox(
@@ -263,7 +283,7 @@ class _PickupLocationState extends State {
),
],
),
- if (widget.patientER.direction == 1)
+ if (widget.patientER.direction == 0)
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
@@ -309,18 +329,14 @@ class _PickupLocationState extends State {
Navigator.push(
context,
MaterialPageRoute(
- builder: (context) => PlacePicker(
- apiKey: 'AIzaSyCiD4YqVqLNYbt8-htvFy4Wp8XSph9E3wM',
- // Put YOUR OWN KEY here.
- onPlacePicked: (PickResult result) {
- print(result.adrAddress);
+ builder: (context) => PickupLocationFromMap(
+ latitude: _latitude,
+ longitude: _longitude,
+ onPick: (value) {
setState(() {
- _result = result;
+ _result = value;
});
- Navigator.of(context).pop();
},
- initialPosition: LatLng(_latitude, _longitude),
- useCurrentLocation: true,
),
),
);
@@ -336,7 +352,7 @@ class _PickupLocationState extends State {
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
- Texts('Select From Map'),
+ Texts(getSelectFromMapName()),
Icon(
FontAwesomeIcons.mapMarkerAlt,
size: 24,
@@ -361,44 +377,57 @@ class _PickupLocationState extends State {
color: Colors.grey[800],
textColor: Colors.white,
onTap: () {
- if(_result==null || _selectedHospital == null)
- AppToast.showErrorToast(message: 'please select all fields');
+ if (_result == null || _selectedHospital == null)
+ AppToast.showErrorToast(
+ message: 'please select all fields');
else
- setState(() {
- widget.patientER.pickupSpot = _isInsideHome ? 1 : 0;
- if (widget.patientER.direction == 0) {
- widget.patientER.pickupLocationLattitude = _result.geometry.location.lat.toString();
- widget.patientER.pickupLocationLongitude = _result.geometry.location.lng.toString();
- widget.patientER.dropoffLocationLattitude = _selectedHospital.latitude;
- widget.patientER.dropoffLocationLongitude = _selectedHospital.longitude;
-
- } else {
- widget.patientER.pickupLocationLattitude = _selectedHospital.latitude;
- widget.patientER.pickupLocationLongitude = _selectedHospital.longitude;
- widget.patientER.dropoffLocationLattitude = _result.geometry.location.lat.toString();
- widget.patientER.dropoffLocationLongitude = _result.geometry.location.lng.toString();
- }
+ setState(() {
+ widget.patientER.pickupSpot = _isInsideHome ? 1 : 0;
+ if (widget.patientER.direction == 0) {
+ widget.patientER.pickupLocationLattitude = _result.geometry.location.lat.toString();
+ widget.patientER.pickupLocationLongitude = _result.geometry.location.lng.toString();
+ widget.patientER.dropoffLocationLattitude = _selectedHospital.latitude;
+ widget.patientER.dropoffLocationLongitude = _selectedHospital.longitude;
+ } else {
+ widget.patientER.pickupLocationLattitude = _selectedHospital.latitude;
+ widget.patientER.pickupLocationLongitude = _selectedHospital.longitude;
+ widget.patientER.dropoffLocationLattitude = _result.geometry.location.lat.toString();
+ widget.patientER.dropoffLocationLongitude = _result.geometry.location.lng.toString();
+ }
- widget.patientER.latitude = widget.patientER.pickupLocationLattitude;
- widget.patientER.longitude = widget.patientER.pickupLocationLongitude;
+ widget.patientER.latitude = widget.patientER.pickupLocationLattitude;
+ widget.patientER.longitude = widget.patientER.pickupLocationLongitude;
+ widget.patientER.dropoffLocationName = _selectedHospital.name;
+ widget.patientER.createdBy = widget.amRequestViewModel.user.patientID;
+ widget.patientER.isOutPatient = widget.amRequestViewModel.user.outSA;
+ widget.patientER.patientIdentificationID = widget.amRequestViewModel.user.patientIdentificationNo;
+ widget.patientER.pickupDateTime = DateUtil.convertDateToStringLocation(DateTime.now());
+ widget.patientER.pickupLocationName = _result.formattedAddress;
+ widget.patientER.projectID = widget.amRequestViewModel.user.projectID;
+ widget.patientER.requesterFileNo = widget.amRequestViewModel.user.patientID;
+ widget.patientER.requesterIsOutSA = false;
+ widget.patientER.lineItemNo =0;
+ widget.patientER.requesterMobileNo = widget.amRequestViewModel.user.mobileNumber;
- if(_haveAppointment == HaveAppointment.YES){
- widget.patientER.appointmentNo = myAppointment.appointmentNo.toString();
- widget.patientER.appointmentClinicName = myAppointment.clinicName;
- widget.patientER.appointmentDoctorName = myAppointment.doctorNameObj;
- widget.patientER.appointmentBranch = myAppointment.projectName;
- widget.patientER.appointmentTime = myAppointment.appointmentDate;
- }else{
- widget.patientER.appointmentNo ="0";
- widget.patientER.appointmentClinicName = null;
- widget.patientER.appointmentDoctorName = null;
- widget.patientER.appointmentBranch = null;
- widget.patientER.appointmentTime = null;
- }
+ if (_haveAppointment == HaveAppointment.YES) {
+ widget.patientER.appointmentNo = myAppointment.appointmentNo.toString();
+ widget.patientER.appointmentClinicName = myAppointment.clinicName;
+ widget.patientER.appointmentDoctorName = myAppointment.doctorNameObj;
+ widget.patientER.appointmentBranch = myAppointment.projectName;
+ widget.patientER.appointmentTime = myAppointment.appointmentDate;
+ widget.patientER.haveAppointment = true;
+ } else {
+ widget.patientER.appointmentNo = "0";
+ widget.patientER.appointmentClinicName = null;
+ widget.patientER.appointmentDoctorName = null;
+ widget.patientER.appointmentBranch = null;
+ widget.patientER.appointmentTime = null;
+ widget.patientER.haveAppointment = false;
+ }
- widget.patientER.pickupSpot = _isInsideHome ? 1 : 0;
- widget.changeCurrentTab(2);
- });
+ widget.patientER.pickupSpot = _isInsideHome ? 1 : 0;
+ widget.changeCurrentTab(2);
+ });
},
label: 'Next',
),
@@ -428,6 +457,10 @@ class _PickupLocationState extends State {
return _selectedHospital == null ? title : _selectedHospital.name;
}
+ String getSelectFromMapName() {
+ return _result != null ? _result.formattedAddress : 'Select From Map';
+ }
+
getAppointment() {
ProgressDialogUtil.showProgressDialog(context);
widget.amRequestViewModel.getAppointmentHistory().then((value) {
diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart
index 59c3b85c..01683b55 100644
--- a/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart
+++ b/lib/pages/ErService/AmbulanceRequestIndexPages/SelectTransportationMethod.dart
@@ -284,8 +284,9 @@ class _SelectTransportationMethodState
textColor: Colors.white,
onTap: () {
setState(() {
- widget.patientER.direction = _direction == Direction.ToHospital ? 0 : 1;
- widget.patientER.tripType = _way == Way.TwoWays ? 2 : 1;
+ widget.patientER.transportationMethodId =(widget.amRequestViewModel.amRequestModeList.indexOf(_erTransportationMethod) + 1);
+ widget.patientER.direction = _direction == Direction.ToHospital ? 1 : 0;
+ widget.patientER.tripType = _way == Way.TwoWays ? 0 : 1;
widget.patientER.selectedAmbulate = (widget.amRequestViewModel.amRequestModeList.indexOf(_erTransportationMethod) + 1);
widget.patientER.patientERTransportationMethod = _erTransportationMethod;
widget.patientER.orderServiceID = _orderService.getIdOrderService();
@@ -294,7 +295,6 @@ class _SelectTransportationMethodState
widget.patientER.cost = _erTransportationMethod.price;
widget.patientER.vAT = _erTransportationMethod.vAT ?? 0;
widget.patientER.totalPrice = _erTransportationMethod.totalPrice;
-
widget.changeCurrentTab(1);
});
},
diff --git a/lib/pages/ErService/AmbulanceRequestIndexPages/Summary.dart b/lib/pages/ErService/AmbulanceRequestIndexPages/Summary.dart
index 4c189707..7696dd09 100644
--- a/lib/pages/ErService/AmbulanceRequestIndexPages/Summary.dart
+++ b/lib/pages/ErService/AmbulanceRequestIndexPages/Summary.dart
@@ -17,6 +17,7 @@ class Summary extends StatefulWidget {
_SummaryState createState() => _SummaryState();
}
+//TODO it should be dynamic
class _SummaryState extends State {
@override
Widget build(BuildContext context) {
@@ -30,7 +31,6 @@ class _SummaryState extends State {
SizedBox(height: 5,),
Container(
width: double.infinity,
-
padding: EdgeInsets.all(10),
decoration: BoxDecoration(
color: Colors.white,
@@ -92,9 +92,11 @@ class _SummaryState extends State {
child:SecondaryButton(
color: Colors.grey[800],
textColor: Colors.white,
- label: 'Next',
+ label: 'Send',
+ onTap: () async {
+ await widget.amRequestViewModel.insertERPressOrder(patientER: widget.patientER);
- // onTap: ()=> widget.changeCurrentTab(2),
+ }
),
)
],
diff --git a/lib/pages/ErService/OrderLogPage.dart b/lib/pages/ErService/OrderLogPage.dart
index cbb508e5..6929cd0b 100644
--- a/lib/pages/ErService/OrderLogPage.dart
+++ b/lib/pages/ErService/OrderLogPage.dart
@@ -1,6 +1,8 @@
import 'package:diplomaticquarterapp/core/model/er/PatientAllPresOrders.dart';
import 'package:diplomaticquarterapp/core/viewModels/er/am_request_view_model.dart';
import 'package:diplomaticquarterapp/uitl/date_uitl.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/others/OrderLogItem.dart';
import 'package:flutter/cupertino.dart';
@@ -53,6 +55,28 @@ class OrderLogPage extends StatelessWidget {
value: amRequestViewModel
.patientAllPresOrdersList[index].dropoffLocationName,
),
+ if(amRequestViewModel.patientAllPresOrdersList[index].status==1)
+ Container(
+ padding: EdgeInsets.all(10),
+ width: double.maxFinite,
+ margin: EdgeInsets.only(bottom: 4,left: 4,right: 4),
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.only(
+ bottomRight: Radius.circular(12),
+ bottomLeft: Radius.circular(12),
+ ),
+ color: Colors.white
+ ),
+ child: SecondaryButton(
+ color: Colors.red[900],
+ textColor: Colors.white,
+ label: TranslationBase.of(context).cancel,
+ onTap: () {
+ amRequestViewModel.updatePressOrder(presOrderID:amRequestViewModel.pickUpRequestPresOrder.presOrderID );
+
+ },
+ ),
+ )
],
),
),
diff --git a/lib/pages/landing/home_page.dart b/lib/pages/landing/home_page.dart
index ebb0305a..06ac1577 100644
--- a/lib/pages/landing/home_page.dart
+++ b/lib/pages/landing/home_page.dart
@@ -1,6 +1,8 @@
import 'package:diplomaticquarterapp/config/size_config.dart';
import 'package:diplomaticquarterapp/core/viewModels/dashboard_view_model.dart';
import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
+import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/ComprehensiveMedicalCheckup/cmc_index_page.dart';
+import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/HomeHealthCare/home_health_care_index_page.dart';
import 'package:diplomaticquarterapp/pages/AlHabibMedicalService/all_habib_medical_service_page.dart';
import 'package:diplomaticquarterapp/pages/ContactUs/contact_us_page.dart';
import 'package:diplomaticquarterapp/pages/Covid-DriveThru/covid-drivethru-location.dart';
@@ -96,10 +98,10 @@ class _HomePageState extends State {
Container(
margin: EdgeInsets.only(
top: 15.0, left: 3.5, right: 3.5),
- child: SvgPicture.asset(
- 'assets/images/new-design/covid-19-car.svg',
- width: 45.0,
- height: 45.0),
+ // child: SvgPicture.asset(
+ // 'assets/images/new-design/covid-19-car.svg',
+ // width: 45.0,
+ // height: 45.0),
),
Container(
margin: EdgeInsets.only(
@@ -173,11 +175,11 @@ class _HomePageState extends State {
.withOpacity(0.3),
borderRadius: BorderRadius.all(
Radius.circular(5))),
- child: SvgPicture.asset(
- projectViewModel.isArabic
- ? 'assets/images/new-design/livecare_arabic_logo.svg'
- : 'assets/images/new-design/liveCare_white_logo.svg',
- ),
+ // child: SvgPicture.asset(
+ // projectViewModel.isArabic
+ // ? 'assets/images/new-design/livecare_arabic_logo.svg'
+ // : 'assets/images/new-design/liveCare_white_logo.svg',
+ // ),
),
),
),
@@ -438,6 +440,14 @@ class _HomePageState extends State {
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
DashboardItem(
+ onTap: () {
+ Navigator.push(
+ context,
+ FadePage(
+ page: HomeHealthCareIndexPage(),
+ ),
+ );
+ },
child: Center(
child: Padding(
padding: const EdgeInsets.all(15.0),
@@ -496,6 +506,14 @@ class _HomePageState extends State {
imageName: 'al-habib_onlne_pharmacy_bg.png',
),
DashboardItem(
+ onTap: (){
+ Navigator.push(
+ context,
+ FadePage(
+ page: CMCIndexPage(),
+ ),
+ );
+ },
child: Center(
child: Padding(
padding: const EdgeInsets.all(15.0),
@@ -686,7 +704,7 @@ class _HomePageState extends State {
),
),
height: 100,
- imageName: 'hmg_services_bg.png',
+ imageName: 'contact_us_bg.png',
opacity: 0.5,
color: Colors.grey[700],
width: MediaQuery.of(context).size.width * 0.45,
diff --git a/lib/pages/landing/landing_page.dart b/lib/pages/landing/landing_page.dart
index dcfa3ba8..ff21d73e 100644
--- a/lib/pages/landing/landing_page.dart
+++ b/lib/pages/landing/landing_page.dart
@@ -346,14 +346,14 @@ class _LandingPageState extends State with WidgetsBindingObserver {
},
),
actions: [
- IconButton(
- iconSize: 70,
- icon: SvgPicture.asset('assets/images/svg/robort_svg.svg',
- height: 100, width: 100, fit: BoxFit.cover),
- onPressed: () {
- triggerRobot();
- } //do something,
- )
+ // IconButton(
+ // iconSize: 70,
+ // icon: SvgPicture.asset('assets/images/svg/robort_svg.svg',
+ // height: 100, width: 100, fit: BoxFit.cover),
+ // onPressed: () {
+ // triggerRobot();
+ // } //do something,
+ // )
],
centerTitle: true,
),
diff --git a/lib/uitl/date_uitl.dart b/lib/uitl/date_uitl.dart
index 0155ff10..b35bbcf4 100644
--- a/lib/uitl/date_uitl.dart
+++ b/lib/uitl/date_uitl.dart
@@ -27,6 +27,14 @@ class DateUtil {
return start + "$milliseconds" + end;
}
+ static String convertDateToStringLocation(DateTime date) {
+ const start = "/Date(";
+ const end = ")/";
+ int milliseconds = date.millisecondsSinceEpoch;
+
+ return start + "$milliseconds" + end;
+ }
+
static String yearMonthDay(DateTime dateTime) {
String dateFormat = '${dateTime.year}-${dateTime.month}-${dateTime.day}';
return dateFormat;
diff --git a/lib/uitl/translations_delegate_base.dart b/lib/uitl/translations_delegate_base.dart
index 63f56674..e1559bd4 100644
--- a/lib/uitl/translations_delegate_base.dart
+++ b/lib/uitl/translations_delegate_base.dart
@@ -674,10 +674,14 @@ class TranslationBase {
localizedValues['DoctorResponses'][locale.languageCode];
String get newDes => localizedValues['New'][locale.languageCode];
String get all => localizedValues['All'][locale.languageCode];
- String get questionHere =>
- localizedValues['QuestionHere'][locale.languageCode];
- String get viewDoctorResponses =>
- localizedValues['ViewDoctorResponses'][locale.languageCode];String get serviceInformationButton => localizedValues['ServiceInformationButton'][locale.languageCode];
+ String get questionHere => localizedValues['QuestionHere'][locale.languageCode];
+ String get viewDoctorResponses => localizedValues['ViewDoctorResponses'][locale.languageCode];
+ String get serviceInformation => localizedValues['ServiceInformation'][locale.languageCode];
+ String get homeHealthCare => localizedValues['HomeHealthCare'][locale.languageCode];
+ String get homeHealthCareText => localizedValues['HomeHealthCareText'][locale.languageCode];
+ String get loginRegister => localizedValues['LoginRegister'][locale.languageCode];
+ String get orderLog => localizedValues['OrderLog'][locale.languageCode];
+ String get serviceInformationButton => localizedValues['ServiceInformationButton'][locale.languageCode];
String get serviceInformationTitle => localizedValues['ServiceInformationTitle'][locale.languageCode];
String get infoLab => localizedValues['info-lab'][locale.languageCode];
String get infoRadiology => localizedValues['info-radiology'][locale.languageCode];
diff --git a/lib/widgets/others/close_back.dart b/lib/widgets/others/close_back.dart
index 78fe0c86..75fe05e8 100644
--- a/lib/widgets/others/close_back.dart
+++ b/lib/widgets/others/close_back.dart
@@ -16,7 +16,7 @@ class CloseBack extends StatelessWidget{
onTap: Feedback.wrapForTap(() {
onTap!=null ? onTap() : Navigator.pop(context);
}, context),
- child: Icon(EvaIcons.close, color: Color.fromRGBO(78, 62, 253, 1.0)),
+ child: Icon(EvaIcons.close, color: Colors.white),
);
}
}
\ No newline at end of file
diff --git a/lib/widgets/pickupLocation/PickupLocationFromMap.dart b/lib/widgets/pickupLocation/PickupLocationFromMap.dart
new file mode 100644
index 00000000..2e34ad3e
--- /dev/null
+++ b/lib/widgets/pickupLocation/PickupLocationFromMap.dart
@@ -0,0 +1,77 @@
+import 'package:diplomaticquarterapp/config/config.dart';
+import 'package:diplomaticquarterapp/core/viewModels/project_view_model.dart';
+import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
+import 'package:diplomaticquarterapp/widgets/buttons/secondary_button.dart';
+import 'package:diplomaticquarterapp/widgets/others/close_back.dart';
+import 'package:flutter/cupertino.dart';
+import 'package:flutter/material.dart';
+import 'package:google_maps_place_picker/google_maps_place_picker.dart';
+import 'package:google_maps_flutter/google_maps_flutter.dart';
+import 'package:provider/provider.dart';
+
+class PickupLocationFromMap extends StatelessWidget {
+ final Function(PickResult) onPick;
+ final double latitude;
+ final double longitude;
+
+ const PickupLocationFromMap({Key key, this.onPick, this.latitude, this.longitude})
+ : super(key: key);
+
+ @override
+ Widget build(BuildContext context) {
+ ProjectViewModel projectViewModel = Provider.of(context);
+ return Scaffold(
+ appBar: AppBar(
+ elevation: 0,
+ textTheme: TextTheme(
+ headline6:
+ TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
+ ),
+ title: Text('Location'),
+ leading: CloseBack(),
+ centerTitle: true,
+ ),
+ body: PlacePicker(
+ apiKey: GOOGLE_API_KEY,
+ enableMyLocationButton: true,
+
+ autocompleteLanguage: projectViewModel.currentLanguage,
+ enableMapTypeButton: true,
+ onPlacePicked: (PickResult result) {
+ print(result.adrAddress);
+ onPick(result);
+ Navigator.of(context).pop();
+ },
+ selectedPlaceWidgetBuilder:
+ (_, selectedPlace, state, isSearchBarFocused) {
+ print("state: $state, isSearchBarFocused: $isSearchBarFocused");
+ return isSearchBarFocused
+ ? Container()
+ : FloatingCard(
+ bottomPosition: 0.0,
+ leftPosition: 0.0,
+ rightPosition: 0.0,
+ width: 500,
+ borderRadius: BorderRadius.circular(12.0),
+ child: state == SearchingState.Searching
+ ? Center(child: CircularProgressIndicator())
+ : Container(
+ margin: EdgeInsets.all(12),
+ child: SecondaryButton(
+ color: Colors.grey[800],
+ textColor: Colors.white,
+ onTap: () {
+ onPick(selectedPlace);
+ Navigator.of(context).pop();
+ },
+ label: TranslationBase.of(context).next,
+ ),
+ ),
+ );
+ },
+ initialPosition: LatLng(latitude, longitude),
+ useCurrentLocation: true,
+ ),
+ );
+ }
+}
diff --git a/pubspec.yaml b/pubspec.yaml
index 2505bccc..2c6001de 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -75,8 +75,8 @@ dependencies:
# charts
charts_flutter: ^0.9.0
- # Qr code Scanner
- barcode_scan: ^3.0.1
+ # Qr code Scanner TODO fix it
+ #barcode_scan: ^3.0.1
# Rating Stars
rating_bar: ^0.2.0
@@ -136,7 +136,7 @@ dependencies:
#google maps places
- google_maps_place_picker: ^0.10.0
+ google_maps_place_picker: ^1.0.0
#Dependencies for video call implementation
native_device_orientation: ^0.3.0
@@ -170,6 +170,7 @@ flutter:
- assets/sounds/
- assets/images/svg/
- assets/tracker/
+ - assets/images/AlHabibMedicalService/
fonts: