diff --git a/lib/data/api/api_client.dart b/lib/data/api/api_client.dart index 21fda9a3..71192923 100644 --- a/lib/data/api/api_client.dart +++ b/lib/data/api/api_client.dart @@ -4,7 +4,6 @@ import 'package:http/http.dart' as http; import 'package:test_sa/core/enums.dart'; class ApiClient { - final String baseUrl, endPoint; final RequestMethod requestMethod; @@ -15,7 +14,6 @@ class ApiClient { }); Future> execute({ - String? token, Map? headers, Map? queryParameters, Object? body, diff --git a/old_lib/controllers/http_status_manger/http_status_manger.dart b/old_lib/controllers/http_status_manger/http_status_manger.dart index 012a9a23..e5eb40ad 100644 --- a/old_lib/controllers/http_status_manger/http_status_manger.dart +++ b/old_lib/controllers/http_status_manger/http_status_manger.dart @@ -1,40 +1,38 @@ -import 'package:test_sa/models/subtitle.dart'; -import 'package:meta/meta.dart'; +import '../../models/subtitle.dart'; -class HttpStatusManger{ +class HttpStatusManger { static String getStatusMessage({ - @required int status, - @required Subtitle subtitle, - String messageFor400, - String messageFor200, - }){ - if(status == null) - // no status code - code error no need for subtitle + required int? status, + required Subtitle subtitle, + String? messageFor400, + String? messageFor200, + }) { + if (status == null) { return "careful null status"; - if(status == -1) - // client's request in process + } + if (status == -1) { return subtitle.currentlyServiceNotAvailable; - if(status == -2){ + } + if (status == -2) { // client's request in process return subtitle.waitUntilYourRequestComplete; - }else if(status >= 200 && status < 300){ + } else if (status >= 200 && status < 300) { // client's request was successfully received return messageFor200 ?? subtitle.requestCompleteSuccessfully; - } else if(status >= 400 && status < 500){ + } else if (status >= 400 && status < 500) { // client's request have error - switch(status){ + switch (status) { case 400: return messageFor400 ?? subtitle.failedToCompleteRequest; default: return subtitle.failedToCompleteRequest; } - } else if(status >= 500){ + } else if (status >= 500) { // server error return subtitle.currentlyServiceNotAvailable; } else { // no error match so return default error return subtitle.failedToCompleteRequest; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/localization/localization.dart b/old_lib/controllers/localization/localization.dart index a6e7fe82..fa866174 100644 --- a/old_lib/controllers/localization/localization.dart +++ b/old_lib/controllers/localization/localization.dart @@ -2,29 +2,31 @@ import 'dart:convert'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:test_sa/models/subtitle.dart'; +import '../../models/subtitle.dart'; class AppLocalization { AppLocalization(this.locale); final Locale locale; - static AppLocalization of(BuildContext context) { + + static AppLocalization? of(BuildContext context) { return Localizations.of(context, AppLocalization); } - Subtitle _subtitle; - Subtitle get subtitle => _subtitle; + Subtitle? _subtitle; + + Subtitle? get subtitle => _subtitle; Future load() async { - String jsonStringValues = - await rootBundle.loadString('assets/subtitles/${locale.languageCode}_subtitle.json'); + String jsonStringValues = await rootBundle + .loadString('assets/subtitles/${locale.languageCode}_subtitle.json'); _subtitle = Subtitle.fromJson(json.decode(jsonStringValues)); } // static member to have simple access to the delegate from Material App static const LocalizationsDelegate delegate = - _DemoLocalizationsDelegate(); + _DemoLocalizationsDelegate(); } class _DemoLocalizationsDelegate @@ -33,16 +35,16 @@ class _DemoLocalizationsDelegate @override bool isSupported(Locale locale) { - return ['en','ar'].contains(locale.languageCode); + return ['en', 'ar'].contains(locale.languageCode); } @override Future load(Locale locale) async { - AppLocalization localization = new AppLocalization(locale); + AppLocalization localization = AppLocalization(locale); await localization.load(); return localization; } @override bool shouldReload(LocalizationsDelegate old) => false; -} \ No newline at end of file +} diff --git a/old_lib/controllers/notification/firebase_notification_manger.dart b/old_lib/controllers/notification/firebase_notification_manger.dart index 153d28fa..f92e68e7 100644 --- a/old_lib/controllers/notification/firebase_notification_manger.dart +++ b/old_lib/controllers/notification/firebase_notification_manger.dart @@ -3,16 +3,15 @@ import 'dart:convert'; import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_messaging/firebase_messaging.dart'; import 'package:flutter/material.dart'; -import 'package:test_sa/models/app_notification.dart'; +import '../../models/app_notification.dart'; import 'notification_manger.dart'; -class FirebaseNotificationManger{ - +class FirebaseNotificationManger { static FirebaseMessaging messaging = FirebaseMessaging.instance; - static String token; + static String? token; - static Future getToken() async { + static Future getToken() async { NotificationSettings settings = await messaging.requestPermission( alert: true, announcement: false, @@ -23,7 +22,7 @@ class FirebaseNotificationManger{ sound: true, ); - if(settings.authorizationStatus == AuthorizationStatus.authorized){ + if (settings.authorizationStatus == AuthorizationStatus.authorized) { token = await messaging.getToken(); } return token; @@ -32,7 +31,7 @@ class FirebaseNotificationManger{ static initialized(BuildContext context) async { await Firebase.initializeApp(); NotificationSettings settings; - try{ + try { settings = await messaging.requestPermission( alert: true, announcement: false, @@ -42,11 +41,11 @@ class FirebaseNotificationManger{ provisional: false, sound: true, ); - }catch(error){ + } catch (error) { return; } - if(settings.authorizationStatus != AuthorizationStatus.authorized){ + if (settings.authorizationStatus != AuthorizationStatus.authorized) { return; } @@ -56,28 +55,24 @@ class FirebaseNotificationManger{ FirebaseMessaging.onMessageOpenedApp.listen((RemoteMessage message) { AppNotification notification = AppNotification.fromJson(message.data); - if(notification.path == null - || notification.path.isEmpty) - return; Navigator.pushNamed( - context, - notification.path, - arguments: notification.requestId + context, + notification.path, + arguments: notification.requestId, ); }); FirebaseMessaging.onMessage.listen((RemoteMessage message) { AppNotification notification = AppNotification.fromJson(message.data); NotificationManger.showNotification( - title: message.notification.title, - subtext: message.notification.body, - hashcode: int.tryParse(notification.requestId ?? "") ?? 1, - payload: json.encode(message.data) + title: message.notification?.title, + subtext: message.notification?.body, + hashcode: int.tryParse(notification.requestId) ?? 1, + payload: json.encode(message.data), ); return; }); } } -Future firebaseMessagingBackgroundHandler(RemoteMessage message) async { -} \ No newline at end of file +Future firebaseMessagingBackgroundHandler(RemoteMessage message) async {} diff --git a/old_lib/controllers/notification/notification_manger.dart b/old_lib/controllers/notification/notification_manger.dart index a568d5d3..8892f17c 100644 --- a/old_lib/controllers/notification/notification_manger.dart +++ b/old_lib/controllers/notification/notification_manger.dart @@ -1,54 +1,54 @@ -import 'package:flutter/foundation.dart'; import 'package:flutter_local_notifications/flutter_local_notifications.dart'; -import 'package:test_sa/views/app_style/colors.dart'; -class NotificationManger{ +import '../../views/app_style/colors.dart'; + +class NotificationManger { // private constructor to avoid create object NotificationManger._(); - static FlutterLocalNotificationsPlugin localNotificationsPlugin = FlutterLocalNotificationsPlugin(); + static FlutterLocalNotificationsPlugin localNotificationsPlugin = + FlutterLocalNotificationsPlugin(); /// initialisation setting for all platform /// onNotificationPressed action when notification pressed to open tap /// onIOSNotificationPressed action when notification pressed /// to open tap in iOS versions older than 10 - static initialisation( - Function(NotificationResponse) onNotificationPressed, - DidReceiveLocalNotificationCallback onIOSNotificationPressed - ) async { + static initialisation(Function(NotificationResponse) onNotificationPressed, + DidReceiveLocalNotificationCallback onIOSNotificationPressed) async { FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = - FlutterLocalNotificationsPlugin(); + FlutterLocalNotificationsPlugin(); // initialise the plugin. app_icon needs to be a added as a drawable resource to the Android head project const AndroidInitializationSettings initializationSettingsAndroid = - AndroidInitializationSettings('app_icon',); + AndroidInitializationSettings( + 'app_icon', + ); final DarwinInitializationSettings initializationSettingsDarwin = - DarwinInitializationSettings( - onDidReceiveLocalNotification: onIOSNotificationPressed); + DarwinInitializationSettings( + onDidReceiveLocalNotification: onIOSNotificationPressed); - final InitializationSettings initializationSettings = InitializationSettings( - android: initializationSettingsAndroid, - iOS: initializationSettingsDarwin, - macOS: initializationSettingsDarwin); + final InitializationSettings initializationSettings = + InitializationSettings( + android: initializationSettingsAndroid, + iOS: initializationSettingsDarwin, + macOS: initializationSettingsDarwin); - await flutterLocalNotificationsPlugin.initialize( - initializationSettings, + await flutterLocalNotificationsPlugin.initialize(initializationSettings, onDidReceiveNotificationResponse: onNotificationPressed); } // push new notification - static Future showNotification( - { - @required String title, - @required String subtext, - @required int hashcode, - String payload - }) async { - - const AndroidNotificationDetails androidChannel = AndroidNotificationDetails( + static Future showNotification({ + required String? title, + required String? subtext, + required int hashcode, + String? payload, + }) async { + const AndroidNotificationDetails androidChannel = + AndroidNotificationDetails( 'com.newtrack.testsa', 'Test SA', - channelDescription:'Push notification service for Test SA', + channelDescription: 'Push notification service for Test SA', importance: Importance.max, priority: Priority.max, playSound: true, @@ -63,7 +63,7 @@ class NotificationManger{ ); const DarwinNotificationDetails iosNotificationDetails = - DarwinNotificationDetails( + DarwinNotificationDetails( categoryIdentifier: "testSA", ); @@ -81,5 +81,4 @@ class NotificationManger{ payload: payload, ); } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/departments_provider.dart b/old_lib/controllers/providers/api/departments_provider.dart index 0bcd0f02..ed29c683 100644 --- a/old_lib/controllers/providers/api/departments_provider.dart +++ b/old_lib/controllers/providers/api/departments_provider.dart @@ -2,13 +2,13 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/department.dart'; -class DepartmentsProvider extends ChangeNotifier{ +import '../../../models/department.dart'; +import '../../api_routes/urls.dart'; +class DepartmentsProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { departments = null; stateCode = null; } @@ -16,52 +16,51 @@ class DepartmentsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; - + int? stateCode; // contain user data // when user not login or register _user = null - List departments; + List? departments; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; - + bool? isLoading; /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getDepartment (String host) async { - if(isLoading == true) + Future getDepartment(String host) async { + if (isLoading == true) { return -2; + } isLoading = true; notifyListeners(); Response response; - try{ + try { response = await get( - Uri.parse(host + URLs.getDepartments), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse(host + URLs.getDepartments), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received - List listJson = json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); - departments = listJson.map((department) => Department.fromJson(department)).toList(); + List listJson = + json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); + departments = listJson + .map((department) => Department.fromJson(department)) + .toList(); } isLoading = false; notifyListeners(); return response.statusCode; } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/device_transfer_provider.dart b/old_lib/controllers/providers/api/device_transfer_provider.dart index 1d433c11..f76fde18 100644 --- a/old_lib/controllers/providers/api/device_transfer_provider.dart +++ b/old_lib/controllers/providers/api/device_transfer_provider.dart @@ -2,18 +2,18 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/device/device_transfer.dart'; -import 'package:test_sa/models/device/device_transfer_info.dart'; -import 'package:test_sa/models/user.dart'; -class DeviceTransferProvider extends ChangeNotifier{ +import '../../../models/device/device_transfer.dart'; +import '../../../models/device/device_transfer_info.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class DeviceTransferProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { items = null; nextPage = true; stateCode = null; @@ -22,30 +22,31 @@ class DeviceTransferProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not - bool nextPage = true; + bool? nextPage = true; // list of user requests - List items; + List? items; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; + bool? isLoading; /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getRequests ({ - @required String host, - @required User user, + Future getRequests({ + required String host, + required User user, }) async { - if(isLoading == true) + if (isLoading == true) { return -2; + } isLoading = true; // isLoading = false; @@ -63,108 +64,97 @@ class DeviceTransferProvider extends ChangeNotifier{ // notifyListeners(); // return 200; Response response; - try{ + try { response = await get( - Uri.parse( - "$host${URLs.getDeviceTransfer}?uid=${user.id}" - "&token=${user.token}&page=${(items?.length ?? 0) ~/pageItemNumber}" - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } - ); + Uri.parse("$host${URLs.getDeviceTransfer}?uid=${user.id}" + "&token=${user.token}&page=${(items?.length ?? 0) ~/ pageItemNumber}"), + headers: {"Content-Type": "application/json; charset=utf-8"}); stateCode = response.statusCode; - if(stateCode >= 200 && stateCode < 300) { + if (stateCode != null && stateCode! >= 200 && stateCode! < 300) { // client's request was successfully received - List listJson = json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); - List itemsPage = listJson.map( - (request) => DeviceTransfer.fromJson(request)).toList(); + List listJson = + json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); + List itemsPage = listJson + .map((request) => DeviceTransfer.fromJson(request)) + .toList(); items ??= []; - items.addAll(itemsPage); - if(itemsPage.length == pageItemNumber){ + items?.addAll(itemsPage); + if (itemsPage.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } } isLoading = false; notifyListeners(); return response.statusCode; - - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } - } - Future createRequest ({ - @required String host, - @required User user, - @required DeviceTransfer model, + Future createRequest({ + required String host, + required User user, + required DeviceTransfer model, }) async { - Map body = { + Map body = { "uid": user.id.toString(), "token": user.token ?? "", - "serial_id": model.device.id ?? "", - "destination_client": model.receiver.client.id ?? "", - "destination_department": model.receiver.department.id ?? "", + "serial_id": model.device?.id ?? "", + "destination_client": model.receiver?.client?.id ?? "", + "destination_department": model.receiver?.department?.id ?? "", }; - Response response; - try{ + try { response = await post( - Uri.parse( - host+URLs.requestDeviceTransfer), - body: body, + Uri.parse(host + URLs.requestDeviceTransfer), + body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { - if(items != null) { + if (response.statusCode >= 200 && response.statusCode < 300) { + final items = this.items; + if (items != null) { items.insert( 0, DeviceTransfer.fromJson( - json.decode(utf8.decode(response.bodyBytes))[0] - ) - ); + json.decode(utf8.decode(response.bodyBytes))[0])); notifyListeners(); } } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } - Future updateRequest ({ - @required String host, - @required User user, - @required bool isSender, - @required String requestId, - @required DeviceTransfer oldModel, - @required DeviceTransferInfo newModel, + Future updateRequest({ + required String host, + required User user, + required bool isSender, + required String requestId, + required DeviceTransfer oldModel, + required DeviceTransferInfo newModel, }) async { - - Map body = { + Map body = { "uid": user.id.toString(), "token": user.token ?? "", "current_user": user.id ?? "", }; - + body.addAll(newModel.toJson(isSender)); Response response; - try{ + try { response = await post( Uri.parse("$host${URLs.updateDeviceTransfer}/$requestId"), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { reset(); // oldModel.fromDeviceTransfer( // DeviceTransfer.fromJson( @@ -174,10 +164,8 @@ class DeviceTransferProvider extends ChangeNotifier{ notifyListeners(); } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/devices_provider.dart b/old_lib/controllers/providers/api/devices_provider.dart index b55d1733..150acfdc 100644 --- a/old_lib/controllers/providers/api/devices_provider.dart +++ b/old_lib/controllers/providers/api/devices_provider.dart @@ -2,14 +2,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/device/device.dart'; -import 'package:test_sa/models/user.dart'; -class DevicesProvider extends ChangeNotifier{ +import '../../../models/device/device.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class DevicesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _devices = null; _stateCode = null; } @@ -17,18 +17,22 @@ class DevicesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; - List _devices; - List get devices => _devices; + int? get stateCode => _stateCode; + + List? _devices; + + List? get devices => _devices; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -38,34 +42,33 @@ class DevicesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getEquipment ({ - @required String host, - @required User user, - @required String hospitalId - }) async { - if(_loading == true) + Future getEquipment( + {required String host, + required User user, + required String hospitalId}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ + try { response = await get( - Uri.parse(host + URLs.getEquipment+"?client=$hospitalId"), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse("${host + URLs.getEquipment}?client=$hospitalId"), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List equipmentListJson = json.decode(utf8.decode(response.bodyBytes)); - _devices = equipmentListJson.map((device) => Device.fromJson(device)).toList(); + _devices = + equipmentListJson.map((device) => Device.fromJson(device)).toList(); } _loading = false; notifyListeners(); @@ -77,32 +80,32 @@ class DevicesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future> getDevicesList ({ - @required String host, - @required User user, - @required String hospitalId, - String serialNumber, - String number, + Future> getDevicesList({ + required String host, + required User user, + required String hospitalId, + String? serialNumber, + String? number, }) async { Response response; - try{ + try { response = await get( - Uri.parse("$host${URLs.getEquipment}?client=$hospitalId" - "${serialNumber?.isEmpty == false ? "&name=$serialNumber" :""}" - "${number?.isEmpty == false ? "&number=$number" : ""}" - ), + Uri.parse("$host${URLs.getEquipment}?client=$hospitalId" + "${serialNumber?.isEmpty == false ? "&name=$serialNumber" : ""}" + "${number?.isEmpty == false ? "&number=$number" : ""}"), ); - List page = []; - if(response.statusCode >= 200 && response.statusCode < 300) { + List page = []; + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - page = categoriesListJson.map((device) => Device.fromJson(device)).toList(); + page = categoriesListJson + .map((device) => Device.fromJson(device)) + .toList(); } return page; - } catch(error) { + } catch (error) { return []; } - } /// return -2 if request in progress @@ -110,33 +113,34 @@ class DevicesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future> getDevicesListBySN ({ - @required String host, - @required User user, - @required String hospitalId, - @required String sn + Future> getDevicesListBySN({ + required String host, + required User user, + required String hospitalId, + required String sn, }) async { Response response; - try{ + try { response = await get( - Uri.parse(host + URLs.getEquipment+"?client=$hospitalId" - + ( sn == null || sn.isEmpty ? "" : "&serial_qr=$sn" )), + Uri.parse( + "$host${URLs.getEquipment}?client=$hospitalId${sn.isEmpty ? "" : "&serial_qr=$sn"}"), ); _stateCode = response.statusCode; - List _page = []; - if(response.statusCode >= 200 && response.statusCode < 300) { + List page = []; + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _page = categoriesListJson.map((device) => Device.fromJson(device)).toList(); + page = categoriesListJson + .map((device) => Device.fromJson(device)) + .toList(); } - return _page; - } catch(error) { + return page; + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return []; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/gas_refill_provider.dart b/old_lib/controllers/providers/api/gas_refill_provider.dart index 7dba6a8c..532819a7 100644 --- a/old_lib/controllers/providers/api/gas_refill_provider.dart +++ b/old_lib/controllers/providers/api/gas_refill_provider.dart @@ -2,17 +2,17 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/gas_refill/gas_refill_model.dart'; -import 'package:test_sa/models/user.dart'; -class GasRefillProvider extends ChangeNotifier{ +import '../../../models/gas_refill/gas_refill_model.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class GasRefillProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { items = null; nextPage = true; stateCode = null; @@ -21,152 +21,145 @@ class GasRefillProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not bool nextPage = true; // list of user requests - List items; + List? items; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; + bool? isLoading; /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getRequests ({ - @required String host, - @required User user, + Future getRequests({ + required String host, + required User user, }) async { - if(isLoading == true) + if (isLoading == true) { return -2; + } isLoading = true; Response response; - try{ + try { response = await get( - Uri.parse( - "$host${URLs.getGasRefill}?uid=${user.id}" - "&token=${user.token}&page=${(items?.length ?? 0) ~/pageItemNumber}" - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } - ); + Uri.parse("$host${URLs.getGasRefill}?uid=${user.id}" + "&token=${user.token}&page=${(items?.length ?? 0) ~/ pageItemNumber}"), + headers: {"Content-Type": "application/json; charset=utf-8"}); stateCode = response.statusCode; - if(stateCode >= 200 && stateCode < 300) { + if (stateCode != null && stateCode! >= 200 && stateCode! < 300) { // client's request was successfully received List requestsListJson = json.decode(utf8.decode(response.bodyBytes)); - List itemsPage = requestsListJson.map( - (request) => GasRefillModel.fromJson(request)).toList(); + List itemsPage = requestsListJson + .map((request) => GasRefillModel.fromJson(request)) + .toList(); items ??= []; - items.addAll(itemsPage); - if(itemsPage.length == pageItemNumber){ + items?.addAll(itemsPage); + if (itemsPage.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } } isLoading = false; notifyListeners(); return response.statusCode; - - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } - } - Future createModel ({ - @required String host, - @required User user, - @required GasRefillModel model, + Future createModel({ + required String host, + required User user, + required GasRefillModel model, }) async { - Map body = { + Map body = { "uid": user.id.toString(), "token": user.token ?? "", "title": model.title ?? "", - "status": "0",//model.status.value.toString(), + "status": "0", //model.status.value.toString(), }; - body["details"] = jsonEncode(model.details.map((model) => { - "type": model.type.id?.toString(), - "size": model.cylinderSize?.id.toString(), - "requsted_qty": model.requestedQuantity.toString(), - }).toList()); + body["details"] = jsonEncode(model.details + ?.map((model) => { + "type": model.type?.id.toString(), + "size": model.cylinderSize?.id.toString(), + "requsted_qty": model.requestedQuantity.toString(), + }) + .toList()); Response response; - try{ + try { response = await post( - Uri.parse( - host+URLs.requestGasRefill), - body: body, + Uri.parse(host + URLs.requestGasRefill), + body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { - if(items != null) { + if (response.statusCode >= 200 && response.statusCode < 300) { + final items = this.items; + if (items != null) { items.insert( 0, GasRefillModel.fromJson( - json.decode(utf8.decode(response.bodyBytes))[0] - ) - ); + json.decode(utf8.decode(response.bodyBytes))[0])); notifyListeners(); } } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } - Future updateModel ({ - @required String host, - @required User user, - @required GasRefillModel oldModel, - @required GasRefillModel newModel, + Future updateModel({ + required String host, + required User user, + required GasRefillModel oldModel, + required GasRefillModel newModel, }) async { - Map body = { + Map body = { "uid": user.id.toString(), - "token": user.token ?? "", + "token": user.token, "title": newModel.title ?? "", - "status": newModel.status.id.toString(), + "status": newModel.status?.id.toString(), }; - body["details"] = jsonEncode(newModel.details.map((model) => { - "type": model.type.id.toString(), - "size": model.cylinderSize.id.toString(), - "requsted_qty": model.requestedQuantity.toString(), - "deliverd_qty": model.deliveredQuantity.toString(), - }).toList()); + body["details"] = jsonEncode(newModel.details + ?.map((model) => { + "type": model.type?.id.toString(), + "size": model.cylinderSize?.id.toString(), + "requsted_qty": model.requestedQuantity.toString(), + "deliverd_qty": model.deliveredQuantity.toString(), + }) + .toList()); Response response; - try{ + try { response = await post( Uri.parse("$host${URLs.updateGasRefill}/${newModel.id}"), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { oldModel.fromGasRefillModel(newModel); notifyListeners(); } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/hospitals_provider.dart b/old_lib/controllers/providers/api/hospitals_provider.dart index df70994f..54c687b4 100644 --- a/old_lib/controllers/providers/api/hospitals_provider.dart +++ b/old_lib/controllers/providers/api/hospitals_provider.dart @@ -3,17 +3,17 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/hospital.dart'; -import 'package:test_sa/models/user.dart'; -class HospitalsProvider extends ChangeNotifier{ +import '../../../models/hospital.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class HospitalsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { _hospitals = null; _stateCode = null; } @@ -21,24 +21,29 @@ class HospitalsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // true if there is next page in product list and false if not bool _nextPage = true; + bool get nextPage => _nextPage; // contain user data // when user not login or register _user = null - List _hospitals; - List get hospitals => _hospitals; + List? _hospitals; + + List? get hospitals => _hospitals; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -48,77 +53,80 @@ class HospitalsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getHospitals ({String host,User user,String title}) async { - if(_loading == true) + Future getHospitals({ + required String host, + required User user, + required String? title, + }) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getHospitals - + "?page=${(_hospitals?.length ?? 0) ~/pageItemNumber}" - + ( title == null || title.isEmpty ? "" : "&name=$title" ) - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + try { + response = await get( + Uri.parse( + "${host + URLs.getHospitals}?page=${(_hospitals?.length ?? 0) ~/ pageItemNumber}${title == null || title.isEmpty ? "" : "&name=$title"}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - List _page = categoriesListJson.map((category) => Hospital.fromJson(category)).toList(); - if(hospitals == null) - _hospitals = []; + List page = categoriesListJson + .map((category) => Hospital.fromJson(category)) + .toList(); + if (hospitals == null) _hospitals = []; - _hospitals.addAll(_page); - if(_page.length >= pageItemNumber){ + _hospitals?.addAll(page); + if (page.length >= pageItemNumber) { _nextPage = true; - }else{ + } else { _nextPage = false; } } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - Future> getHospitalsList ({String host,User user,String title}) async { + Future> getHospitalsList({ + required String host, + required User user, + required String title, + }) async { Response response; - try{ - + try { response = await get( - Uri.parse(host + URLs.getHospitals - + ( title == null || title.isEmpty ? "" : "?name=$title" )), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse( + host + URLs.getHospitals + (title.isEmpty ? "" : "?name=$title"), + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); _stateCode = response.statusCode; - List _page = []; - if(response.statusCode >= 200 && response.statusCode < 300) { + List page = []; + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _page = categoriesListJson.map((category) => Hospital.fromJson(category)).toList(); + page = categoriesListJson + .map((category) => Hospital.fromJson(category)) + .toList(); } - return _page; - } catch(error) { + return page; + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return []; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/notifications_provider.dart b/old_lib/controllers/providers/api/notifications_provider.dart index d21ec77b..15c8bf64 100644 --- a/old_lib/controllers/providers/api/notifications_provider.dart +++ b/old_lib/controllers/providers/api/notifications_provider.dart @@ -2,17 +2,17 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/app_notification.dart'; -import 'package:test_sa/models/user.dart'; -class NotificationsProvider extends ChangeNotifier{ +import '../../../models/app_notification.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class NotificationsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 20; //reset provider data - void reset(){ + void reset() { notifications = null; nextPage = true; stateCode = null; @@ -21,71 +21,66 @@ class NotificationsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not - bool nextPage = true; + bool? nextPage = true; // list of user requests - List notifications; + List? notifications; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; - + bool? isLoading; /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getNotifications ({ - @required String host, - @required User user, - @required String hospitalId, + Future getNotifications({ + required String host, + required User user, + required String hospitalId, }) async { - if(isLoading == true) + if (isLoading == true) { return -2; + } isLoading = true; notifyListeners(); Response response; - // userId = 397.toString(); // testing id to view data - try{ + // userId = 397.toString(); // testing id to view data + try { response = await get( - Uri.parse(host+URLs.getNotifications - +"?uid=${user.id}" - "&token=${user.token}" - "&page=${(notifications?.length ?? 0) ~/pageItemNumber}"), - headers: { - "Content-Type":"application/json; charset=utf-8" - } - ); + Uri.parse( + "${host + URLs.getNotifications}?uid=${user.id}&token=${user.token}&page=${(notifications?.length ?? 0) ~/ pageItemNumber}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List requestsListJson = json.decode(utf8.decode(response.bodyBytes)); - List _serviceRequestsPage = requestsListJson.map( - (request) => AppNotification.fromJson(request)).toList(); - if(notifications == null) - notifications = []; - notifications.addAll(_serviceRequestsPage); - if(_serviceRequestsPage.length == pageItemNumber){ + List serviceRequestsPage = requestsListJson + .map((request) => AppNotification.fromJson(request)) + .toList(); + notifications ??= []; + notifications?.addAll(serviceRequestsPage); + if (serviceRequestsPage.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } } isLoading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } - } /// return -2 if request in progress @@ -93,35 +88,31 @@ class NotificationsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future> getRecentNotifications ({ - @required String host, - @required User user, + Future?> getRecentNotifications({ + required String host, + required User user, }) async { Response response; //userId = 397.toString(); // testing id to view data - try{ + try { response = await get( - Uri.parse(host+URLs.getNotifications - +"?uid=${user.id}&token=${user.token}"), - headers: { - "Content-Type":"application/json; charset=utf-8" - } - ); + Uri.parse( + "$host${URLs.getNotifications}?uid=${user.id}&token=${user.token}"), + headers: {"Content-Type": "application/json; charset=utf-8"}); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List requestsListJson = json.decode(utf8.decode(response.bodyBytes)); - List _recentNotifications = requestsListJson.map( - (request) => AppNotification.fromJson(request)).toList(); - return _recentNotifications; + List recentNotifications = requestsListJson + .map((request) => AppNotification.fromJson(request)) + .toList(); + return recentNotifications; } return null; - - } catch(error) { + } catch (error) { return null; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/parts_provider.dart b/old_lib/controllers/providers/api/parts_provider.dart index 6f763f77..a2d16fde 100644 --- a/old_lib/controllers/providers/api/parts_provider.dart +++ b/old_lib/controllers/providers/api/parts_provider.dart @@ -1,19 +1,19 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/part.dart'; -import 'package:test_sa/models/user.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -class PartsProvider extends ChangeNotifier{ +import '../../../models/part.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class PartsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { _parts = null; _stateCode = null; } @@ -21,24 +21,29 @@ class PartsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // true if there is next page in product list and false if not bool _nextPage = true; + bool get nextPage => _nextPage; // contain user data // when user not login or register _user = null - List _parts; - List get parts => _parts; + List? _parts; + + List? get parts => _parts; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -48,48 +53,46 @@ class PartsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getParts ({String host,User user,String title}) async { - if(_loading == true) - return -2; + Future getParts({ + required String host, + required User user, + required String? title, + }) async { + if (_loading == true) return -2; _loading = true; notifyListeners(); Response response; - try{ + try { response = await get( - Uri.parse( - host + URLs.getPartNumber - + "?page=${(_parts?.length ?? 0) ~/pageItemNumber}" - + ( title == null || title.isEmpty ? "" : "&name=$title" ) - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse( + "$host${URLs.getPartNumber}?page=${(_parts?.length ?? 0) ~/ pageItemNumber}${title == null || title.isEmpty ? "" : "&name=$title"}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - List _page = categoriesListJson.map((part) => Part.fromJson(part)).toList(); - if(parts == null) - _parts = []; + List page = + categoriesListJson.map((part) => Part.fromJson(part)).toList(); + if (parts == null) _parts = []; - _parts.addAll(_page); - if(_page.length >= pageItemNumber){ + _parts?.addAll(page); + if (page.length >= pageItemNumber) { _nextPage = true; - }else{ + } else { _nextPage = false; } } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } /// return -2 if request in progress @@ -97,30 +100,27 @@ class PartsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future> getPartsList ({String host,User user,String title}) async { + Future> getPartsList({ + required String host, + required User user, + required String? title, + }) async { Response response; - try{ - + try { response = await get( - Uri.parse( - host + URLs.getPartNumber - + ( title == null || title.isEmpty ? "" : "?name=$title" ) - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } - ); - List _page = []; - if(response.statusCode >= 200 && response.statusCode < 300) { + Uri.parse(host + + URLs.getPartNumber + + (title == null || title.isEmpty ? "" : "?name=$title")), + headers: {"Content-Type": "application/json; charset=utf-8"}); + List page = []; + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _page = categoriesListJson.map((part) => Part.fromJson(part)).toList(); + page = categoriesListJson.map((part) => Part.fromJson(part)).toList(); } - return _page; - } catch(error) { + return page; + } catch (error) { return []; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/preventive_maintenance_visits_provider.dart b/old_lib/controllers/providers/api/preventive_maintenance_visits_provider.dart index 14103fd6..f5a1de31 100644 --- a/old_lib/controllers/providers/api/preventive_maintenance_visits_provider.dart +++ b/old_lib/controllers/providers/api/preventive_maintenance_visits_provider.dart @@ -1,20 +1,20 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/user.dart'; -import 'package:test_sa/models/visits/visit.dart'; -import 'package:test_sa/models/visits/visits_group.dart'; -import 'package:test_sa/models/visits/visits_search.dart'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{ +import '../../../models/user.dart'; +import '../../../models/visits/visit.dart'; +import '../../../models/visits/visits_group.dart'; +import '../../../models/visits/visits_search.dart'; +import '../../api_routes/urls.dart'; +class PreventiveMaintenanceVisitsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { visits = null; nextPage = true; stateCode = null; @@ -23,67 +23,58 @@ class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not - bool nextPage = true; + bool? nextPage = true; // list of user requests - List visits; + List? visits; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; + bool? isLoading; - VisitsSearch visitsSearch = VisitsSearch(); + VisitsSearch? visitsSearch = VisitsSearch(); /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getVisits ({ - @required String host, - @required User user, - // VisitsSearch visitsSearch, + Future getVisits({ + required String host, + required User user, + // VisitsSearch visitsSearch, }) async { - if(isLoading == true) - return -2; + if (isLoading == true) return -2; isLoading = true; Response response; //userId = 397.toString(); // testing id to view data - try{ + try { response = await get( - Uri.parse( - host + URLs.getPreventiveMaintenanceVisits - +"?uid=${user.id}" - "&token=${user.token}" - "&page=${(visits?.length ?? 0) ~/pageItemNumber}" - +visitsSearch?.toSearchString() ?? "" - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse( + "${host + URLs.getPreventiveMaintenanceVisits}?uid=${user.id}&token=${user.token}&page=${(visits?.length ?? 0) ~/ pageItemNumber}${visitsSearch?.toSearchString()}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List requestsListJson = json.decode(utf8.decode(response.bodyBytes)); - List _visits = requestsListJson.map( - (request) => Visit.fromJson(request)).toList(); - if(visits == null) - visits = []; - visits.addAll(_visits); - if(_visits.length == pageItemNumber){ + List visits = + requestsListJson.map((request) => Visit.fromJson(request)).toList(); + visits.addAll(visits); + if (visits.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } } @@ -97,41 +88,39 @@ class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future updateGroupOfVisits ({ - @required String host, - @required User user, - VisitsGroup group, + Future updateGroupOfVisits({ + required String host, + required User user, + required VisitsGroup group, }) async { Response response; - Map body = group.toJson(); - body["token"] = user.token ?? ""; + Map body = group.toJson(); + body["token"] = user.token; body["uid"] = user.id; //userId = 397.toString(); // testing id to view data - try{ + try { response = await post( - Uri.parse( - host+URLs.updatePreventiveMaintenanceVisits - ), + Uri.parse(host + URLs.updatePreventiveMaintenanceVisits), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received - group.visits.forEach((visit) { + for (var visit in group.visits) { visit.status = group.status; visit.actualDate = group.date.toString().split(" ").first; - }); + } group.visits.clear(); notifyListeners(); } return response.statusCode; - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/regular_visits_provider.dart b/old_lib/controllers/providers/api/regular_visits_provider.dart index 03737f73..06489ffd 100644 --- a/old_lib/controllers/providers/api/regular_visits_provider.dart +++ b/old_lib/controllers/providers/api/regular_visits_provider.dart @@ -1,21 +1,21 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/pantry/pentry.dart'; -import 'package:test_sa/models/user.dart'; -import 'package:test_sa/models/visits/visit.dart'; -import 'package:test_sa/models/visits/visits_group.dart'; -import 'package:test_sa/models/visits/visits_search.dart'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -class RegularVisitsProvider extends ChangeNotifier{ +import '../../../models/pantry/pentry.dart'; +import '../../../models/user.dart'; +import '../../../models/visits/visit.dart'; +import '../../../models/visits/visits_group.dart'; +import '../../../models/visits/visits_search.dart'; +import '../../api_routes/urls.dart'; +class RegularVisitsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { visits = null; nextPage = true; stateCode = null; @@ -24,78 +24,70 @@ class RegularVisitsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not bool nextPage = true; // list of user requests - List visits; + List? visits; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; + bool? isLoading; - VisitsSearch visitsSearch = VisitsSearch(); + VisitsSearch? visitsSearch = VisitsSearch(); /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getVisits ({ - @required String host, - @required User user, - // VisitsSearch visitsSearch, + Future getVisits({ + required String host, + required User user, + // VisitsSearch visitsSearch, }) async { - if(isLoading == true) + if (isLoading == true) { return -2; + } isLoading = true; Response response; //userId = 397.toString(); // testing id to view data - try{ + try { response = await get( - Uri.parse( - host+URLs.getRegularVisits - +"?uid=${user.id}" - "&token=${user.token}" - "&page=${(visits?.length ?? 0) ~/pageItemNumber}" - +visitsSearch?.toSearchString() ?? "" - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse( + "$host${URLs.getRegularVisits}?uid=${user.id}&token=${user.token}&page=${(visits?.length ?? 0) ~/ pageItemNumber}${visitsSearch?.toSearchString()}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received - try{ - List requestsListJson = json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); - List _visits = requestsListJson.map( - (request) => Visit.fromJson(request) - ).toList(); - if(visits == null) - visits = []; - visits.addAll(_visits); - if(_visits.length == pageItemNumber){ + try { + List requestsListJson = + json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); + List visits = + requestsListJson.map((request) => Visit.fromJson(request)).toList(); + visits.addAll(visits); + if (visits.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } - }catch(error){ + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } - } isLoading = false; notifyListeners(); @@ -107,30 +99,30 @@ class RegularVisitsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future updateGroupOfVisits ({ - @required String host, - @required User user, - VisitsGroup group, + Future updateGroupOfVisits({ + required String host, + required User user, + required VisitsGroup group, }) async { Response response; - Map body = group.toJson(); + Map body = group.toJson(); body["token"] = user.token ?? ""; body["uid"] = user.id; //userId = 397.toString(); // testing id to view data - try{ + try { response = await post( - Uri.parse(host+URLs.updateRegularVisits), - body: body, + Uri.parse(host + URLs.updateRegularVisits), + body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received reset(); notifyListeners(); } return response.statusCode; - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); @@ -138,46 +130,46 @@ class RegularVisitsProvider extends ChangeNotifier{ } } - Future getPently({String host,User user,String id}) async { + Future getPently({ + required String host, + required User user, + required String id, + }) async { Response response; response = await get( - Uri.parse("$host${URLs.getPentry}/$id"), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse("$host${URLs.getPentry}/$id"), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); - Pentry pantry; - if(response.statusCode >= 200 && response.statusCode < 300) { + Pentry? pantry; + if (response.statusCode >= 200 && response.statusCode < 300) { pantry = Pentry.fromMap(json.decode(utf8.decode(response.bodyBytes))); } return pantry; } - Future updatePentry ({ - @required String host, - @required User user, - @required Pentry pentry, - @required Visit visit, + Future updatePentry({ + required String host, + required User user, + required Pentry pentry, + required Visit visit, }) async { - try{ + try { Response response; - Map body = pentry.toMap(); + Map body = pentry.toMap(); body["uid"] = user.id; body["token"] = user.token; response = await post( - Uri.parse(host+URLs.updatePentry + "/${visit.id}"), + Uri.parse("$host${URLs.updatePentry}/${visit.id}"), body: body, ); - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { visit.status = pentry.ppmVisitStatus; notifyListeners(); } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/service_requests_provider.dart b/old_lib/controllers/providers/api/service_requests_provider.dart index 040ed855..a0c20e45 100644 --- a/old_lib/controllers/providers/api/service_requests_provider.dart +++ b/old_lib/controllers/providers/api/service_requests_provider.dart @@ -2,24 +2,24 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/controllers/http_status_manger/http_status_manger.dart'; -import 'package:test_sa/models/issue.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/service_report.dart'; -import 'package:test_sa/models/service_request/service_request.dart'; -import 'package:test_sa/models/service_request/service_request_search.dart'; -import 'package:test_sa/models/subtitle.dart'; -import 'package:test_sa/models/timer_model.dart'; -import 'package:test_sa/models/user.dart'; - -class ServiceRequestsProvider extends ChangeNotifier{ +import '../../../models/issue.dart'; +import '../../../models/lookup.dart'; +import '../../../models/service_report.dart'; +import '../../../models/service_request/service_request.dart'; +import '../../../models/service_request/service_request_search.dart'; +import '../../../models/subtitle.dart'; +import '../../../models/timer_model.dart'; +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +import '../../http_status_manger/http_status_manger.dart'; + +class ServiceRequestsProvider extends ChangeNotifier { // number of items call in each request final pageItemNumber = 50; //reset provider data - void reset(){ + void reset() { serviceRequests = null; nextPage = true; stateCode = null; @@ -28,121 +28,108 @@ class ServiceRequestsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int stateCode; + int? stateCode; // true if there is next page in product list and false if not - bool nextPage = true; + bool? nextPage = true; // list of user requests - List serviceRequests; + List? serviceRequests; // when requests in-process _loading = true // done _loading = true // failed _loading = false - bool isLoading; + bool? isLoading; - ServiceRequestSearch search = ServiceRequestSearch(); + ServiceRequestSearch? search = ServiceRequestSearch(); /// return -2 if request in progress /// return -1 if error happen when sending request /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getRequests ({ - @required String host, - @required User user, - @required String hospitalId, + Future getRequests({ + required String host, + required User user, + required String? hospitalId, }) async { - if(isLoading == true) + if (isLoading == true) { return -2; + } isLoading = true; Response response; - try{ + try { response = await get( - Uri.parse( - host+URLs.getServiceRequests - +"?uid=${user.id}" - +(hospitalId == null? "" :"&client_nid=$hospitalId") - +"&token=${user.token}" - "&page=${(serviceRequests?.length ?? 0) ~/pageItemNumber}" - +search?.toSearchString() ?? "" - ), - headers: { - "Content-Type":"application/json; charset=utf-8" - } + Uri.parse( + "$host${URLs.getServiceRequests}?uid=${user.id}${hospitalId == null ? "" : "&client_nid=$hospitalId"}&token=${user.token}&page=${(serviceRequests?.length ?? 0) ~/ pageItemNumber}${search?.toSearchString()}", + ), + headers: {"Content-Type": "application/json; charset=utf-8"}, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received - List requestsListJson = json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); - List _serviceRequestsPage = requestsListJson.map( - (request) => ServiceRequest.fromJson(request)).toList(); - if(serviceRequests == null) - serviceRequests = []; - serviceRequests.addAll(_serviceRequestsPage); - if(_serviceRequestsPage.length == pageItemNumber){ + List requestsListJson = + json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); + List _serviceRequestsPage = requestsListJson + .map((request) => ServiceRequest.fromJson(request)) + .toList(); + serviceRequests ??= []; + serviceRequests?.addAll(_serviceRequestsPage); + if (_serviceRequestsPage.length == pageItemNumber) { nextPage = true; - }else{ + } else { nextPage = false; } } isLoading = false; notifyListeners(); return response.statusCode; - - } catch(error) { + } catch (error) { isLoading = false; stateCode = -1; notifyListeners(); return -1; } - } Future getSingleServiceRequest({ - @required String requestId, - @required String host, - @required User user, - @required Subtitle subtitle, + required String requestId, + required String host, + required User user, + required Subtitle subtitle, }) async { String userData = ''; - if(user != null){ - userData += "&uid="+user.id; - userData += "&token="+user.token; - } + userData += "&uid=${user.id}"; + userData += "&token=${user.token}"; Response response; - try{ - response = await get( - Uri.parse( - host+URLs.getSingleServiceRequest - +'?call_nid=$requestId' - '$userData',) - ); - }catch(error){ - throw(HttpStatusManger.getStatusMessage( - status: -1, subtitle: subtitle)); + try { + response = await get(Uri.parse( + '$host${URLs.getSingleServiceRequest}?call_nid=$requestId$userData', + )); + } catch (error) { + throw (HttpStatusManger.getStatusMessage(status: -1, subtitle: subtitle)); } // If the call to the server was successful, parse the JSON. - if (response.statusCode >= 200 && response.statusCode < 300){ + if (response.statusCode >= 200 && response.statusCode < 300) { // If the call to the server was successful, parse the JSON. - List jsonList = json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); - List _requests = jsonList.map((i) => ServiceRequest.fromJson(i)).toList(); - return _requests[0]; - }else{ - throw(HttpStatusManger.getStatusMessage( + List jsonList = + json.decode(utf8.decode(response.bodyBytes).replaceAll("\\", "")); + List requests = + jsonList.map((i) => ServiceRequest.fromJson(i)).toList(); + return requests[0]; + } else { + throw (HttpStatusManger.getStatusMessage( status: response.statusCode, subtitle: subtitle)); } - } - Future createRequest ({ - @required String host, - @required User user, - @required ServiceRequest serviceRequest, + Future createRequest({ + required String host, + required User user, + required ServiceRequest serviceRequest, }) async { - var body = { "uid": user.id, "token": user.token ?? "", @@ -154,269 +141,233 @@ class ServiceRequestsProvider extends ChangeNotifier{ "priority": (serviceRequest.priority?.id).toString(), "defect_types": (serviceRequest.defectType?.id).toString(), }; - if(serviceRequest.audio != null){ - body["audio"] = serviceRequest.audio; - } + body["audio"] = serviceRequest.audio; Response response; - try{ + try { response = await post( - Uri.parse( - host+URLs.createRequest), - body: body, + Uri.parse(host + URLs.createRequest), + body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { - if(serviceRequests != null) + if (response.statusCode >= 200 && response.statusCode < 300) { + final serviceRequests = this.serviceRequests; + if (serviceRequests != null) { serviceRequests.insert( - 0, - ServiceRequest.fromJson( - json.decode(utf8.decode(response.bodyBytes))[0] - ) + 0, + ServiceRequest.fromJson( + json.decode(utf8.decode(response.bodyBytes))[0], + ), ); + } notifyListeners(); } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } - Future createIssueReport ({ - @required String host, - @required User user, - @required Issue issue, + Future createIssueReport({ + required String host, + required User user, + required Issue issue, }) async { Response response; - Map body = issue.toMap(); + Map body = issue.toMap(); body["uid"] = user.id; body["token"] = user.token; - try{ + try { response = await post( - Uri.parse(host+URLs.createReport), + Uri.parse(host + URLs.createReport), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { - - } + if (response.statusCode >= 200 && response.statusCode < 300) {} return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } - Future updateDate ({ - @required String host, - @required User user, - @required String newDate, - @required Lookup employee, - @required ServiceRequest request, + Future updateDate({ + required String host, + required User user, + required String newDate, + required Lookup employee, + required ServiceRequest request, }) async { Response response; - Map body = {}; + Map body = {}; body["uid"] = user.id; body["token"] = user.token; - body["nid"] = request.id; - if(newDate != null) body["date"] = newDate; - if(employee != null) body["ass_emp"] = employee.id.toString(); - try{ + body["nid"] = request.id ?? ''; + body["date"] = newDate; + body["ass_emp"] = employee.id.toString(); + try { response = await post( - Uri.parse( - host+URLs.updateRequestDate), + Uri.parse(host + URLs.updateRequestDate), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { request.engineerName = employee.label; notifyListeners(); } return response.statusCode; - - } catch(error) { + } catch (error) { return -1; } - } - Future createServiceReport ({ - @required String host, - @required User user, - @required ServiceReport report, - @required ServiceRequest request, + Future createServiceReport({ + required String host, + required User user, + required ServiceReport report, + required ServiceRequest request, }) async { Response response; - Map body = report.toMap(); + Map body = report.toMap(); body["uid"] = user.id; body["token"] = user.token; - body["job_id"] = request.id; - try{ + body["job_id"] = request.id ?? ''; + try { response = await post( - Uri.parse( - host+URLs.createServiceReport), + Uri.parse(host + URLs.createServiceReport), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { reset(); notifyListeners(); } return response.statusCode; - - } catch(error) { - + } catch (error) { return -1; } - } - Future createDuplicatedReport ({ - @required String host, - @required User user, - @required ServiceRequest request, + Future createDuplicatedReport({ + required String host, + required User user, + required ServiceRequest request, }) async { Response response; String userData = ''; - if(user != null){ - userData += "&uid="+user.id; - userData += "&token="+user.token; - } + userData += "&uid=${user.id}"; + userData += "&token=${user.token}"; - try{ + try { response = await get( Uri.parse( - host+URLs.createDuplicatedReport - +"?nid=${request.id}" - +userData), + "$host${URLs.createDuplicatedReport}?nid=${request.id}$userData", + ), ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { reset(); notifyListeners(); } return response.statusCode; - - } catch(error) { - + } catch (error) { return -1; } - } - Future updateServiceReport ({ - @required String host, - @required User user, - @required ServiceReport report, - @required ServiceRequest request, + Future updateServiceReport({ + required String host, + required User user, + required ServiceReport report, + required ServiceRequest request, }) async { Response response; - Map body = report.toMap(); + Map body = report.toMap(); body["uid"] = user.id; body["token"] = user.token; - body["job_id"] = request.id; - body["report_id"] = request.reportID; - try{ + body["job_id"] = request.id ?? ''; + body["report_id"] = request.reportID ?? ''; + try { response = await post( - Uri.parse( - host+URLs.updateServiceReport), + Uri.parse(host + URLs.updateServiceReport), body: body, ); stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { reset(); notifyListeners(); } return response.statusCode; - - } catch(error) { - + } catch (error) { return -1; } - } - Future updateServiceReportTimer ({ - @required String host, - @required User user, - @required TimerModel timer, - @required ServiceRequest request, + Future updateServiceReportTimer({ + required String host, + required User user, + required TimerModel timer, + required ServiceRequest request, }) async { Response response; - Map body = {}; + Map body = {}; body["uid"] = user.id; body["token"] = user.token; - body["job_id"] = request.id; - body["start_time"] = (timer.startAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); - body["end_time"] = (timer.endAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); - body["working_hours"] = (timer.durationInSecond / 60 / 60).toStringAsFixed(5); - body["report_id"] = request.reportID; - try{ + body["job_id"] = request.id ?? ''; + body["start_time"] = + (timer.startAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); + body["end_time"] = + (timer.endAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); + body["working_hours"] = + (timer.durationInSecond / 60 / 60).toStringAsFixed(5); + body["report_id"] = request.reportID ?? ''; + try { response = await post( - Uri.parse( - host+URLs.updateServiceReport), + Uri.parse(host + URLs.updateServiceReport), body: body, ); //stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // reset(); // notifyListeners(); } return response.statusCode; - - } catch(error) { - + } catch (error) { return -1; } - } Future getSingleServiceReport({ - @required String reportId, - @required String host, - @required User user, - @required Subtitle subtitle, + required String reportId, + required String host, + required User user, + required Subtitle subtitle, }) async { String userData = ''; - if(user != null){ - userData += "&uid="+user.id; - userData += "&token="+user.token; - } + userData += "&uid=${user.id}"; + userData += "&token=${user.token}"; Response response; - try{ - - response = await get( - Uri.parse( - host+URLs.getServiceReport - +'?report_id=$reportId' - '$userData',) - ); - - }catch(error){ - throw(HttpStatusManger.getStatusMessage( - status: -1, subtitle: subtitle)); + try { + response = await get(Uri.parse( + '$host${URLs.getServiceReport}?report_id=$reportId$userData', + )); + } catch (error) { + throw (HttpStatusManger.getStatusMessage(status: -1, subtitle: subtitle)); } // If the call to the server was successful, parse the JSON. - if (response.statusCode >= 200 && response.statusCode < 300){ + if (response.statusCode >= 200 && response.statusCode < 300) { // If the call to the server was successful, parse the JSON. return ServiceReport.fromJson( - json.decode(utf8.decode(response.bodyBytes)),reportId); - }else{ - throw(HttpStatusManger.getStatusMessage( + json.decode(utf8.decode(response.bodyBytes)), reportId); + } else { + throw (HttpStatusManger.getStatusMessage( status: response.statusCode, subtitle: subtitle)); } - } - - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/employee/employee_provider.dart b/old_lib/controllers/providers/api/status_drop_down/employee/employee_provider.dart index 04f6d5b6..d92cee28 100644 --- a/old_lib/controllers/providers/api/status_drop_down/employee/employee_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/employee/employee_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class EmployeesProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class EmployeesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class EmployeesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,34 +45,30 @@ class EmployeesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) - return -2; + Future getData({required String host, required User user}) async { + if (_loading == true) return -2; _loading = true; notifyListeners(); Response response; - try{ + try { response = await get( - Uri.parse( - host + URLs.getEmployees), + Uri.parse(host + URLs.getEmployees), ); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _items = categoriesListJson.map((type) => Lookup.fromJson(type)).toList(); + _items = + categoriesListJson.map((type) => Lookup.fromJson(type)).toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { - + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_cylinder_size_provider.dart b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_cylinder_size_provider.dart index b4112034..54022842 100644 --- a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_cylinder_size_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_cylinder_size_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class GasCylinderSizesProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class GasCylinderSizesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _loading = null; _stateCode = null; @@ -19,20 +19,24 @@ class GasCylinderSizesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -42,32 +46,35 @@ class GasCylinderSizesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user,}) async { - if(_loading == true) + Future getData({ + required String host, + required User user, + }) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ + try { response = await get( Uri.parse(host + URLs.getGasCylinderSize), ); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _items = categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); + _items = + categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_status_provider.dart b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_status_provider.dart index 24b4e018..006aeef1 100644 --- a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_status_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_status_provider.dart @@ -1,16 +1,16 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -class GasStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class GasStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _loading = null; _stateCode = null; @@ -19,20 +19,24 @@ class GasStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -42,31 +46,28 @@ class GasStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user,}) async { - if(_loading == true) return -2; + Future getData({required String host, required User user}) async { + if (_loading == true) return -2; _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse(host + URLs.getGasStatus), - ); + try { + response = await get(Uri.parse(host + URLs.getGasStatus)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _items = categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); + _items = + categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_types_provider.dart b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_types_provider.dart index f444c233..5817bd49 100644 --- a/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_types_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/gas_refill/gas_types_provider.dart @@ -1,16 +1,16 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -class GasTypesProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class GasTypesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _loading = null; _stateCode = null; @@ -19,20 +19,24 @@ class GasTypesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -42,31 +46,28 @@ class GasTypesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user,}) async { - if(_loading == true) return -2; + Future getData({required String host, required User user}) async { + if (_loading == true) return -2; _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse(host + URLs.getGasTypes), - ); + try { + response = await get(Uri.parse(host + URLs.getGasTypes)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _items = categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); + _items = + categoriesListJson.map((item) => Lookup.fromJson(item)).toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_status_provider.dart b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_status_provider.dart index 8e3168d9..c02c51b3 100644 --- a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_status_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_status_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class PentryStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class PentryStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class PentryStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,20 +45,18 @@ class PentryStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) + Future getData({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getPentryStatus), - ); + try { + response = await get(Uri.parse(host + URLs.getPentryStatus)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List listJson = json.decode(utf8.decode(response.bodyBytes)); _items = listJson.map((type) => Lookup.fromIntIdJson(type)).toList(); @@ -62,14 +64,11 @@ class PentryStatusProvider extends ChangeNotifier{ _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { - + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_task_status_provider.dart b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_task_status_provider.dart index 03370135..cde95482 100644 --- a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_task_status_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_task_status_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class PentryTaskStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class PentryTaskStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class PentryTaskStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,35 +45,32 @@ class PentryTaskStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) + Future getData({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getPentryTaskStatus), - ); + try { + response = await get(Uri.parse(host + URLs.getPentryTaskStatus)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _items = categoriesListJson.map((type) => Lookup.fromIntIdJson(type)).toList(); + _items = categoriesListJson + .map((type) => Lookup.fromIntIdJson(type)) + .toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { - + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_visit_status_provider.dart b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_visit_status_provider.dart index 09b52cbb..6176218f 100644 --- a/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_visit_status_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/pentry/pentry_visit_status_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class PentryVisitStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class PentryVisitStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class PentryVisitStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,20 +45,18 @@ class PentryVisitStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) + Future getData({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getPentryVisitStatus), - ); + try { + response = await get(Uri.parse(host + URLs.getPentryVisitStatus)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List listJson = json.decode(utf8.decode(response.bodyBytes)); _items = listJson.map((type) => Lookup.fromIntIdJson(type)).toList(); @@ -62,13 +64,11 @@ class PentryVisitStatusProvider extends ChangeNotifier{ _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_defect_types_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_defect_types_provider.dart index 50efd414..6c1c6569 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_defect_types_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_defect_types_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceRequestDefectTypesProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceRequestDefectTypesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceRequestDefectTypesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,20 +45,18 @@ class ServiceRequestDefectTypesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) + Future getData({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getServiceReportDefectTypes), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceReportDefectTypes)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List listJson = json.decode(utf8.decode(response.bodyBytes)); _items = listJson.map((type) => Lookup.fromIntIdJson(type)).toList(); @@ -62,14 +64,11 @@ class ServiceRequestDefectTypesProvider extends ChangeNotifier{ _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { - + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart index 50de291f..e228702e 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_last_calls_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceReportLastCallsProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceReportLastCallsProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _calls = null; _loading = null; _stateCode = null; @@ -19,20 +19,24 @@ class ServiceReportLastCallsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _calls; - List get calls => _calls; + List? _calls; + + List? get calls => _calls; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -42,35 +46,39 @@ class ServiceReportLastCallsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getCalls ({String host,User user,String serviceStatus}) async { - if(_loading == true) - return -2; + Future getCalls({ + required String host, + required User user, + String? serviceStatus, + }) async { + if (_loading == true) return -2; _loading = true; notifyListeners(); Response response; - try{ + try { response = await get( - Uri.parse( - host + URLs.getServiceReportLastCalls - +(serviceStatus == null ? "" : "?service_status=$serviceStatus") - ), + Uri.parse( + host + + URLs.getServiceReportLastCalls + + (serviceStatus == null ? "" : "?service_status=$serviceStatus"), + ), ); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _calls = categoriesListJson.map((type) => Lookup.fromIntIdJson(type)).toList(); + _calls = categoriesListJson + .map((type) => Lookup.fromIntIdJson(type)) + .toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_priority_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_priority_provider.dart index 58fc2d98..b966ccf5 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_priority_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_priority_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceRequestPriorityProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceRequestPriorityProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _items = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceRequestPriorityProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _items; - List get items => _items; + List? _items; + + List? get items => _items; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,20 +45,18 @@ class ServiceRequestPriorityProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getData ({String host,User user}) async { - if(_loading == true) + Future getData({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getServiceReportPriority), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceReportPriority)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List listJson = json.decode(utf8.decode(response.bodyBytes)); _items = listJson.map((type) => Lookup.fromIntIdJson(type)).toList(); @@ -62,13 +64,11 @@ class ServiceRequestPriorityProvider extends ChangeNotifier{ _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_reasons_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_reasons_provider.dart index bac49f9f..0d3f8564 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_reasons_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_reasons_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceReportReasonsProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceReportReasonsProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _reasons = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceReportReasonsProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _reasons; - List get reasons => _reasons; + List? _reasons; + + List? get reasons => _reasons; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,33 +45,31 @@ class ServiceReportReasonsProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getTypes ({String host,User user}) async { - if(_loading == true) + Future getTypes({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getServiceReportReasons), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceReportReasons)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _reasons = categoriesListJson.map((type) => Lookup.fromIntIdJson(type)).toList(); + _reasons = categoriesListJson + .map((type) => Lookup.fromIntIdJson(type)) + .toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_status_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_status_provider.dart index 89cb100f..8dd8cb03 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_status_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_status_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceReportStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceReportStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _status = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceReportStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _status; - List get statuses => _status; + List? _status; + + List? get statuses => _status; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,34 +45,31 @@ class ServiceReportStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getTypes ({String host,User user}) async { - if(_loading == true) + Future getTypes({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await get( - Uri.parse( - host + URLs.getServiceReportStatus), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceReportStatus)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _status = categoriesListJson.map((type) => Lookup.fromIntIdJson(type)).toList(); + _status = categoriesListJson + .map((type) => Lookup.fromIntIdJson(type)) + .toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { - + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_report_types_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_report_types_provider.dart index a8b07c08..ead74013 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_report_types_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_report_types_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceReportTypesProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceReportTypesProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _types = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceReportTypesProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _types; - List get types => _types; + List? _types; + + List? get types => _types; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,34 +45,31 @@ class ServiceReportTypesProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getTypes ({String host,User user}) async { - if(_loading == true) + Future getTypes({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - - response = await get( - Uri.parse( - host + URLs.getServiceReportTypes), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceReportTypes)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _types = categoriesListJson.map((type) => Lookup.fromIntIdJson(type)).toList(); + _types = categoriesListJson + .map((type) => Lookup.fromIntIdJson(type)) + .toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/status_drop_down/report/service_types_provider.dart b/old_lib/controllers/providers/api/status_drop_down/report/service_types_provider.dart index a5bcb0a5..a3113e92 100644 --- a/old_lib/controllers/providers/api/status_drop_down/report/service_types_provider.dart +++ b/old_lib/controllers/providers/api/status_drop_down/report/service_types_provider.dart @@ -3,14 +3,14 @@ import 'dart:convert'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/user.dart'; -class ServiceStatusProvider extends ChangeNotifier{ +import '../../../../../models/lookup.dart'; +import '../../../../../models/user.dart'; +import '../../../../api_routes/urls.dart'; +class ServiceStatusProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _statuses = null; _stateCode = null; } @@ -18,20 +18,24 @@ class ServiceStatusProvider extends ChangeNotifier{ // state code of current request to defied error message // like 400 customer request failed // 500 service not available - int _stateCode; - int get stateCode => _stateCode; + int? _stateCode; + + int? get stateCode => _stateCode; // contain user data // when user not login or register _user = null - List _statuses; - List get statuses => _statuses; + List? _statuses; + + List? get statuses => _statuses; // when categories in-process _loading = true // done _loading = true // failed _loading = false - bool _loading; - bool get isLoading => _loading; - set isLoading(bool isLoading){ + bool? _loading; + + bool? get isLoading => _loading; + + set isLoading(bool? isLoading) { _loading = isLoading; notifyListeners(); } @@ -41,35 +45,30 @@ class ServiceStatusProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future getTypes ({String host,User user}) async { - if(_loading == true) + Future getTypes({required String host, required User user}) async { + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - - response = await get( - Uri.parse( - host + URLs.getServiceTypes), - ); + try { + response = await get(Uri.parse(host + URLs.getServiceTypes)); _stateCode = response.statusCode; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received List categoriesListJson = json.decode(utf8.decode(response.bodyBytes)); - _statuses = categoriesListJson.map((e) => Lookup.fromIntIdJson(e)).toList(); - + _statuses = + categoriesListJson.map((e) => Lookup.fromIntIdJson(e)).toList(); } _loading = false; notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; _stateCode = -1; notifyListeners(); return -1; } - } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/api/user_provider.dart b/old_lib/controllers/providers/api/user_provider.dart index 843746c9..bf8c9cc2 100644 --- a/old_lib/controllers/providers/api/user_provider.dart +++ b/old_lib/controllers/providers/api/user_provider.dart @@ -1,32 +1,35 @@ import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/user.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart'; -class UserProvider extends ChangeNotifier{ +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +class UserProvider extends ChangeNotifier { //reset provider data - void reset(){ + void reset() { _user = null; _loading = false; } // contain user data // when user not login or register _user = null - User _user; - User get user => _user; - set user(User user) { + User? _user; + + User? get user => _user; + + set user(User? user) { _user = user; notifyListeners(); } - // when login or register in-process _login = true // when login or register is done or not start = false bool _loading = false; + bool get isLoading => _loading; + set isLoading(bool isLoading) { _loading = isLoading; notifyListeners(); @@ -38,32 +41,31 @@ class UserProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future login ({ - @required String host, - @required User user, + Future login({ + required String host, + required User user, }) async { - if(_loading == true) + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ + try { response = await post( - Uri.parse( - host+URLs.login), + Uri.parse(host + URLs.login), body: await user.toLoginJson(), ); _loading = false; - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received _user = User.fromJson(jsonDecode(utf8.decode(response.bodyBytes))[0]); - return response.statusCode; } notifyListeners(); return response.statusCode; - } catch(error) { + } catch (error) { _loading = false; notifyListeners(); return -1; @@ -76,32 +78,30 @@ class UserProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details about state codes check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future register ({ - @required String host, - @required User user, + Future register({ + required String host, + required User user, }) async { - if(_loading == true) + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - try{ - response = await post( - Uri.parse( - host+URLs.register), - body: await user.toRegisterJson() - ); - } catch(error) { + try { + response = await post(Uri.parse(host + URLs.register), + body: await user.toRegisterJson()); + } catch (error) { _loading = false; notifyListeners(); return -1; } _loading = false; notifyListeners(); - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received _user = User.fromJson(jsonDecode(utf8.decode(response.bodyBytes))[0]); - _user.hospital = user.hospital; + _user?.hospital = user.hospital; notifyListeners(); return response.statusCode; } @@ -114,32 +114,33 @@ class UserProvider extends ChangeNotifier{ /// return state code if request complete may be 200, 404 or 403 /// for more details about state codes check http state manager /// lib\controllers\http_status_manger\http_status_manger.dart - Future updateProfile ({ - @required String host, - @required User user, + Future updateProfile({ + required String host, + required User user, }) async { - if(_loading == true) + if (_loading == true) { return -2; + } _loading = true; notifyListeners(); Response response; - Map jsonObject ={}; + Map jsonObject = {}; jsonObject["uid"] = user.id; jsonObject["token"] = user.token; - if(user.department.id != _user.department.id) + if (user.department.id != _user?.department.id) { jsonObject["department"] = user.department.id; - if(user.whatsApp != _user.whatsApp) + } + if (user.whatsApp != _user?.whatsApp) { jsonObject["whatsapp"] = user.whatsApp; - if(user.phoneNumber != _user.phoneNumber) + } + if (user.phoneNumber != _user?.phoneNumber) { jsonObject["phone"] = user.phoneNumber; - try{ - response = await post( - Uri.parse( - host+URLs.updateProfile), - body: jsonObject - ); - } catch(error) { + } + try { + response = + await post(Uri.parse(host + URLs.updateProfile), body: jsonObject); + } catch (error) { _loading = false; notifyListeners(); return -1; @@ -148,15 +149,14 @@ class UserProvider extends ChangeNotifier{ _loading = false; notifyListeners(); - if(response.statusCode >= 200 && response.statusCode < 300) { + if (response.statusCode >= 200 && response.statusCode < 300) { // client's request was successfully received _user = User.fromJson(jsonDecode(utf8.decode(response.bodyBytes))[0]); - _user.hospital = user.hospital; - _user.department = user.department; + _user?.hospital = user.hospital; + _user?.department = user.department; notifyListeners(); return response.statusCode; } return response.statusCode; } - -} \ No newline at end of file +} diff --git a/old_lib/controllers/providers/settings/setting_provider.dart b/old_lib/controllers/providers/settings/setting_provider.dart index e5df1ca3..13d90030 100644 --- a/old_lib/controllers/providers/settings/setting_provider.dart +++ b/old_lib/controllers/providers/settings/setting_provider.dart @@ -1,15 +1,14 @@ import 'dart:async'; import 'dart:convert'; -import 'package:test_sa/controllers/api_routes/urls.dart'; -import 'package:test_sa/models/user.dart'; import 'package:flutter/foundation.dart'; import 'package:shared_preferences/shared_preferences.dart'; -import 'app_settings.dart'; - -class SettingProvider extends ChangeNotifier{ +import '../../../models/user.dart'; +import '../../api_routes/urls.dart'; +import 'app_settings.dart'; +class SettingProvider extends ChangeNotifier { resetSettings() async { SharedPreferences prefs = await SharedPreferences.getInstance(); user = null; @@ -21,7 +20,7 @@ class SettingProvider extends ChangeNotifier{ bool isLoaded = false; // contain saved user data - User user; + User? user; Future setUser(User user) async { SharedPreferences prefs = await SharedPreferences.getInstance(); @@ -30,8 +29,10 @@ class SettingProvider extends ChangeNotifier{ notifyListeners(); } - String _host; - String get host => _host; + String? _host; + + String? get host => _host; + Future setHost(String host) async { SharedPreferences prefs = await SharedPreferences.getInstance(); prefs.setString(ASettings.host, host); @@ -39,8 +40,10 @@ class SettingProvider extends ChangeNotifier{ notifyListeners(); } - String _language; - String get language => _language; + String? _language; + + String? get language => _language; + Future setLanguage(String currentLanguage) async { SharedPreferences prefs = await SharedPreferences.getInstance(); prefs.setString(ASettings.language, currentLanguage); @@ -48,8 +51,10 @@ class SettingProvider extends ChangeNotifier{ notifyListeners(); } - String _speechToText; - String get speechToText => _speechToText; + String? _speechToText; + + String? get speechToText => _speechToText; + Future setSpeechToText(String currentLanguage) async { SharedPreferences prefs = await SharedPreferences.getInstance(); prefs.setString(ASettings.speechToText, currentLanguage); @@ -58,40 +63,38 @@ class SettingProvider extends ChangeNotifier{ } // call loadSharedPreferences when provider initialise - SettingProvider(){ + SettingProvider() { loadSharedPreferences(); } // get app setting Future loadSharedPreferences() async { - SharedPreferences prefs = await SharedPreferences.getInstance(); - if(prefs.containsKey(ASettings.language)){ + if (prefs.containsKey(ASettings.language)) { _language = prefs.getString(ASettings.language); - }else{ - _language = 'en'; + } else { + _language = 'en'; } - if(prefs.containsKey(ASettings.speechToText)){ + if (prefs.containsKey(ASettings.speechToText)) { _speechToText = prefs.getString(ASettings.speechToText); - }else{ - _speechToText = 'ar'; + } else { + _speechToText = 'ar'; } - if(prefs.containsKey(ASettings.user)){ - String userJson = prefs.getString(ASettings.user); - user = User.fromJson(json.decode(userJson)); + if (prefs.containsKey(ASettings.user)) { + String? userJson = prefs.getString(ASettings.user); + user = User.fromJson(json.decode(userJson ?? '')); } - if(prefs.containsKey(ASettings.host)){ + if (prefs.containsKey(ASettings.host)) { _host = prefs.getString(ASettings.host); - } else{ + } else { _host = URLs.host1; } isLoaded = true; notifyListeners(); } - -} \ No newline at end of file +} diff --git a/old_lib/extensions/int_extensions.dart b/old_lib/extensions/int_extensions.dart index 5f1e672e..b913a064 100644 --- a/old_lib/extensions/int_extensions.dart +++ b/old_lib/extensions/int_extensions.dart @@ -1,13 +1,14 @@ -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:test_sa/views/app_style/colors.dart'; + +import '../views/app_style/colors.dart'; extension IntExtensions on int { Widget get height => SizedBox(height: toDouble()); Widget get width => SizedBox(width: toDouble()); - Widget get divider => Divider(height: toDouble(), thickness: toDouble(), color: AColors.greyEF); + Widget get divider => + Divider(height: toDouble(), thickness: toDouble(), color: AColors.greyEF); Widget get makeItSquare => SizedBox(width: toDouble(), height: toDouble()); } diff --git a/old_lib/models/device/device.dart b/old_lib/models/device/device.dart index b84b8715..b5d1f486 100644 --- a/old_lib/models/device/device.dart +++ b/old_lib/models/device/device.dart @@ -1,15 +1,15 @@ -class Device{ - String id; - String serialNumber; - String number; - String brand; - String model; - DateTime productionDate; - DateTime supplyDate; - DateTime installDate; - DateTime receivingDate; - DateTime operationDate; - DateTime warrantyDate; +class Device { + String? id; + String? serialNumber; + String? number; + String? brand; + String? model; + DateTime? productionDate; + DateTime? supplyDate; + DateTime? installDate; + DateTime? receivingDate; + DateTime? operationDate; + DateTime? warrantyDate; Device({ this.id, @@ -25,7 +25,7 @@ class Device{ this.warrantyDate, }); - factory Device.fromJson(Map parsedJson){ + factory Device.fromJson(Map parsedJson) { return Device( id: parsedJson["nid"] ?? parsedJson["id"], serialNumber: parsedJson["sn"] ?? parsedJson["value"], @@ -41,7 +41,7 @@ class Device{ ); } - factory Device.fromDevice(Device device){ + factory Device.fromDevice(Device device) { return Device( id: device.id, serialNumber: device.serialNumber, @@ -58,9 +58,9 @@ class Device{ } } -DateTime getDateFromString(String unixDate){ - if(unixDate == null) +DateTime? getDateFromString(String? unixDate) { + if (unixDate == null) { return null; - return DateTime.fromMillisecondsSinceEpoch( - int.parse(unixDate)); -} \ No newline at end of file + } + return DateTime.fromMillisecondsSinceEpoch(int.parse(unixDate)); +} diff --git a/old_lib/models/device/device_transfer.dart b/old_lib/models/device/device_transfer.dart index d62913ab..bb6d6d21 100644 --- a/old_lib/models/device/device_transfer.dart +++ b/old_lib/models/device/device_transfer.dart @@ -1,13 +1,13 @@ -import 'package:test_sa/models/device/device.dart'; -import 'package:test_sa/models/device/device_transfer_info.dart'; +import 'device.dart'; +import 'device_transfer_info.dart'; -class DeviceTransfer{ - String id; - String userId; - String title; - Device device; - DeviceTransferInfo sender; - DeviceTransferInfo receiver; +class DeviceTransfer { + String? id; + String? userId; + String? title; + Device? device; + DeviceTransferInfo? sender; + DeviceTransferInfo? receiver; DeviceTransfer({ this.id, @@ -18,33 +18,36 @@ class DeviceTransfer{ this.receiver, }); - bool validate(){ - if(device == null) return false; - return receiver.validate(); + bool validate() { + if (device == null) return false; + return receiver?.validate() ?? false; } - fromDeviceTransfer(DeviceTransfer old){ + fromDeviceTransfer(DeviceTransfer old) { id = old.id; title = old.title; userId = old.userId; - device = Device.fromDevice(old.device); + device = old.device != null ? Device.fromDevice(old.device!) : null; final sender = DeviceTransferInfo(); - sender.fromDetails(old.sender); + if (old.sender != null) { + sender.fromDetails(old.sender!); + } this.sender = sender; final receiver = DeviceTransferInfo(); - receiver.fromDetails(old.receiver); + if (old.receiver != null) { + receiver.fromDetails(old.receiver!); + } this.receiver = receiver; } - factory DeviceTransfer.fromJson(Map parsedJson){ + factory DeviceTransfer.fromJson(Map parsedJson) { return DeviceTransfer( id: parsedJson["id"], title: parsedJson["title"], userId: parsedJson["uid"], device: Device.fromJson(parsedJson["eq_sn"]), - sender: DeviceTransferInfo.fromJson(parsedJson,"sender_"), - receiver: DeviceTransferInfo.fromJson(parsedJson,"receiver_"), + sender: DeviceTransferInfo.fromJson(parsedJson, "sender_"), + receiver: DeviceTransferInfo.fromJson(parsedJson, "receiver_"), ); } } - diff --git a/old_lib/models/device/device_transfer_info.dart b/old_lib/models/device/device_transfer_info.dart index d3645b9d..3df2f3d2 100644 --- a/old_lib/models/device/device_transfer_info.dart +++ b/old_lib/models/device/device_transfer_info.dart @@ -1,17 +1,17 @@ -import 'package:test_sa/models/department.dart'; -import 'package:test_sa/models/hospital.dart'; -import 'package:test_sa/models/lookup.dart'; +import '../department.dart'; +import '../hospital.dart'; +import '../lookup.dart'; -class DeviceTransferInfo{ - String userId; - String comment; - Hospital client; - Department department; - String workingHours; - String travelingHours; - String name; - String signature; - Lookup status; +class DeviceTransferInfo { + String? userId; + String? comment; + Hospital? client; + Department? department; + String? workingHours; + String? travelingHours; + String? name; + String? signature; + Lookup? status; DeviceTransferInfo({ this.userId, @@ -25,37 +25,44 @@ class DeviceTransferInfo{ this.status, }); - MaptoJson(bool isSender){ - Map body = {}; + Map toJson(bool isSender) { + Map body = {}; final baseKey = isSender ? "sender_" : "receiver_"; - if(comment != null && comment.isNotEmpty) body["${baseKey}comment"] = comment; - if(workingHours != null && workingHours.isNotEmpty) body["${baseKey}working_hours"] = workingHours; - if(travelingHours != null && travelingHours.isNotEmpty) body["${baseKey}travel_hours"] = comment; - if(status != null) body["${baseKey}status"] = status.id.toString(); - if(signature != null && signature.isNotEmpty) body["${baseKey}image"] = signature; + if (comment?.isNotEmpty ?? false) body["${baseKey}comment"] = comment!; + if (workingHours?.isNotEmpty ?? false) { + body["${baseKey}working_hours"] = workingHours!; + } + if (travelingHours?.isNotEmpty ?? false) { + body["${baseKey}travel_hours"] = comment!; + } + final status = this.status; + if (status != null) body["${baseKey}status"] = status.id.toString(); + if (signature?.isNotEmpty ?? false) body["${baseKey}image"] = signature!; return body; } - bool validate(){ - if(client == null) return false; - if(department == null) return false; + bool validate() { + if (client == null) return false; + if (department == null) return false; return true; } - fromDetails(DeviceTransferInfo old,{bool withSignature = true}){ + fromDetails(DeviceTransferInfo old, {bool withSignature = true}) { userId = old.userId; name = old.name; - client = Hospital.fromHospital(old.client); - department = Department.fromDepartment(old.department); + client = old.client != null ? Hospital.fromHospital(old.client!) : null; + department = + department != null ? Department.fromDepartment(old.department!) : null; workingHours = old.workingHours; travelingHours = old.travelingHours; comment = old.comment; - if(withSignature) signature = old.signature; + if (withSignature) signature = old.signature; status = old.status; } - factory DeviceTransferInfo.fromJson(Map parsedJson,String key){ + factory DeviceTransferInfo.fromJson( + Map parsedJson, String key) { return DeviceTransferInfo( workingHours: parsedJson["${key}working_hours"], travelingHours: parsedJson["${key}travel_hours"], @@ -69,4 +76,3 @@ class DeviceTransferInfo{ ); } } - diff --git a/old_lib/models/gas_refill/gas_refill_details.dart b/old_lib/models/gas_refill/gas_refill_details.dart index f150e150..a89c218d 100644 --- a/old_lib/models/gas_refill/gas_refill_details.dart +++ b/old_lib/models/gas_refill/gas_refill_details.dart @@ -1,10 +1,10 @@ -import 'package:test_sa/models/lookup.dart'; +import '../lookup.dart'; -class GasRefillDetails{ - Lookup type; - Lookup cylinderSize; - int requestedQuantity; - int deliveredQuantity; +class GasRefillDetails { + Lookup? type; + Lookup? cylinderSize; + int? requestedQuantity; + int? deliveredQuantity; GasRefillDetails({ this.type, @@ -13,31 +13,34 @@ class GasRefillDetails{ this.deliveredQuantity, }); - bool validate(){ + bool validate() { //if(cylinderSize == null) return false; - if(type == null) return false; - if(requestedQuantity == null) return false; + if (type == null) return false; + if (requestedQuantity == null) return false; return true; } - factory GasRefillDetails.fromJson(Map parsedJson){ + + factory GasRefillDetails.fromJson(Map parsedJson) { return GasRefillDetails( type: Lookup.fromJson(parsedJson["type"]), - cylinderSize: Lookup.fromJson(parsedJson["size"]), requestedQuantity: parsedJson["requsted_qty"] == null - ? 0 : int.tryParse(parsedJson["requsted_qty"].toString()) ?? 0, + ? 0 + : int.tryParse(parsedJson["requsted_qty"].toString()) ?? 0, deliveredQuantity: parsedJson["deliverd_qty"] == null - ? 0 : int.tryParse(parsedJson["deliverd_qty"].toString()) ?? 0, + ? 0 + : int.tryParse(parsedJson["deliverd_qty"].toString()) ?? 0, ); } - factory GasRefillDetails.fromDetails(GasRefillDetails details){ + factory GasRefillDetails.fromDetails(GasRefillDetails details) { return GasRefillDetails( - type: Lookup.fromStatus(details.type), - cylinderSize:Lookup.fromStatus(details.cylinderSize), + type: details.type != null ? Lookup.fromStatus(details.type!) : null, + cylinderSize: details.cylinderSize != null + ? Lookup.fromStatus(details.cylinderSize!) + : null, requestedQuantity: details.requestedQuantity, deliveredQuantity: details.deliveredQuantity, ); } } - diff --git a/old_lib/models/gas_refill/gas_refill_model.dart b/old_lib/models/gas_refill/gas_refill_model.dart index 28773fac..09a8f517 100644 --- a/old_lib/models/gas_refill/gas_refill_model.dart +++ b/old_lib/models/gas_refill/gas_refill_model.dart @@ -1,13 +1,13 @@ -import 'package:test_sa/models/gas_refill/gas_refill_details.dart'; -import 'package:test_sa/models/lookup.dart'; +import '../lookup.dart'; +import 'gas_refill_details.dart'; -class GasRefillModel{ - String id; - String userId; - String clientName; - String title; - Lookup status; - List details; +class GasRefillModel { + String? id; + String? userId; + String? clientName; + String? title; + Lookup? status; + List? details; GasRefillModel({ this.id, @@ -18,25 +18,27 @@ class GasRefillModel{ this.details, }); - bool validate(){ - if(title == null) return false; - if(status == null) return false; - if(details == null && details.isEmpty) return false; + bool validate() { + if (title == null) return false; + if (status == null) return false; + if (details == null && (details?.isEmpty ?? true)) return false; return true; } - fromGasRefillModel(GasRefillModel model){ + fromGasRefillModel(GasRefillModel model) { id = model.id; userId = model.userId; clientName = model.clientName; title = model.title; - status = Lookup.fromStatus(model.status); - details = model.details.map((e) => GasRefillDetails.fromDetails(e)).toList(); + status = model.status != null ? Lookup.fromStatus(model.status!) : null; + details = model.details + ?.map((e) => GasRefillDetails.fromDetails(e)) + .toList(); } - factory GasRefillModel.fromJson(Map parsedJson){ + factory GasRefillModel.fromJson(Map parsedJson) { List details = []; - if(parsedJson["details"] != null){ + if (parsedJson["details"] != null) { List list = parsedJson["details"]; details = list.map((e) => GasRefillDetails.fromJson(e)).toList(); } @@ -50,4 +52,3 @@ class GasRefillModel{ ); } } - diff --git a/old_lib/models/pantry/calibration_tools.dart b/old_lib/models/pantry/calibration_tools.dart index 2c70c6d2..5a258c6e 100644 --- a/old_lib/models/pantry/calibration_tools.dart +++ b/old_lib/models/pantry/calibration_tools.dart @@ -1,8 +1,8 @@ -import 'package:test_sa/models/lookup.dart'; +import '../lookup.dart'; -class CalibrationTool{ - Lookup assetsNumber; - DateTime dataOfTesting; +class CalibrationTool { + Lookup? assetsNumber; + DateTime? dataOfTesting; CalibrationTool({ this.assetsNumber, @@ -11,16 +11,21 @@ class CalibrationTool{ Map toMap() { return { - if(assetsNumber != null) 'assetsSN': (assetsNumber?.id).toString(), - if(dataOfTesting != null) 'dataOfTesting': (dataOfTesting.millisecondsSinceEpoch ~/ 1000).toString(), + if (assetsNumber != null) 'assetsSN': (assetsNumber?.id).toString(), + if (dataOfTesting != null) + 'dataOfTesting': + ((dataOfTesting?.millisecondsSinceEpoch ?? 0) ~/ 1000).toString(), }; } factory CalibrationTool.fromMap(Map map) { return CalibrationTool( assetsNumber: Lookup.fromJson(map['assetsSN']), - dataOfTesting: map['dataOfTesting'] == null || map['dataOfTesting'] == "" ? null : - DateTime.fromMillisecondsSinceEpoch(int.tryParse(map['dataOfTesting']) * 1000), + dataOfTesting: map['dataOfTesting'] == null || map['dataOfTesting'] == "" + ? null + : DateTime.fromMillisecondsSinceEpoch( + (int.tryParse(map['dataOfTesting']) ?? 0) * 1000, + ), ); } -} \ No newline at end of file +} diff --git a/old_lib/models/pantry/contact.dart b/old_lib/models/pantry/contact.dart index 50748bea..bda3e4a7 100644 --- a/old_lib/models/pantry/contact.dart +++ b/old_lib/models/pantry/contact.dart @@ -1,30 +1,29 @@ -import 'package:test_sa/models/lookup.dart'; +import '../lookup.dart'; -class Contact{ - Lookup title; - Lookup contactPerson; - String job; - String email; - String telephone; - String landLine; +class Contact { + Lookup? title; + Lookup? contactPerson; + String? job; + String? email; + String? telephone; + String? landLine; - Contact({ - this.title, - this.contactPerson, - this.job, - this.email, - this.telephone, - this.landLine - }); + Contact( + {this.title, + this.contactPerson, + this.job, + this.email, + this.telephone, + this.landLine}); Map toMap() { return { - if (title != null) 'title': title.id.toString(), - if (contactPerson != null) 'contactPerson': contactPerson.id.toString(), - if (job != null) 'job': job, - if (email != null) 'email': email, - if (telephone != null) 'telephone': telephone, - if (landLine != null) 'landLine': landLine, + if (title != null) 'title': title!.id.toString(), + if (contactPerson != null) 'contactPerson': contactPerson!.id.toString(), + if (job != null) 'job': job!, + if (email != null) 'email': email!, + if (telephone != null) 'telephone': telephone!, + if (landLine != null) 'landLine': landLine!, }; } @@ -38,4 +37,4 @@ class Contact{ landLine: map['landLine'] as String, ); } -} \ No newline at end of file +} diff --git a/old_lib/models/pantry/lookups/contact_person.dart b/old_lib/models/pantry/lookups/contact_person.dart index 5231712c..f89c17cf 100644 --- a/old_lib/models/pantry/lookups/contact_person.dart +++ b/old_lib/models/pantry/lookups/contact_person.dart @@ -1,9 +1,10 @@ -import 'package:test_sa/models/lookup.dart'; + +import '../../lookup.dart'; class ContactTitle extends Lookup { ContactTitle({ - int id, - String label + required int id, + required String label }):super(id: id,label: label); factory ContactTitle.fromMap(Map parsedJson){ diff --git a/old_lib/models/pantry/lookups/contact_title.dart b/old_lib/models/pantry/lookups/contact_title.dart index 5231712c..f4edb581 100644 --- a/old_lib/models/pantry/lookups/contact_title.dart +++ b/old_lib/models/pantry/lookups/contact_title.dart @@ -1,15 +1,13 @@ -import 'package:test_sa/models/lookup.dart'; +import '../../lookup.dart'; class ContactTitle extends Lookup { - ContactTitle({ - int id, - String label - }):super(id: id,label: label); + ContactTitle({required int id, required String label}) + : super(id: id, label: label); - factory ContactTitle.fromMap(Map parsedJson){ + factory ContactTitle.fromMap(Map parsedJson) { return ContactTitle( label: parsedJson["value"], id: parsedJson["id"], ); } -} \ No newline at end of file +} diff --git a/old_lib/models/pantry/pentry.dart b/old_lib/models/pantry/pentry.dart index ebd855dc..967b8bdc 100644 --- a/old_lib/models/pantry/pentry.dart +++ b/old_lib/models/pantry/pentry.dart @@ -1,24 +1,23 @@ import 'dart:convert'; import 'dart:io'; -import 'package:test_sa/models/lookup.dart'; -import 'package:test_sa/models/pantry/calibration_tools.dart'; -import 'package:test_sa/models/pantry/pm_kit.dart'; -import 'package:test_sa/models/pantry/ppm_check_list.dart'; -import 'package:test_sa/models/timer_model.dart'; +import '../lookup.dart'; +import '../timer_model.dart'; +import 'calibration_tools.dart'; +import 'pm_kit.dart'; +import 'ppm_check_list.dart'; -class Pentry{ - Lookup ppmVisitStatus; - Lookup status; - TimerModel timer; - DateTime actualVisitDate; - String travelingHours; - String image; - File imageFile; - // List contacts; - List ppmCheckLists; - List calibrationTools; - List pmKits; +class Pentry { + Lookup? ppmVisitStatus; + Lookup? status; + TimerModel? timer; + DateTime? actualVisitDate; + String? travelingHours; + String? image; + File? imageFile; + List? ppmCheckLists; + List? calibrationTools; + List? pmKits; Pentry({ this.travelingHours, @@ -34,10 +33,10 @@ class Pentry{ this.pmKits, }); - bool validate(){ - if(actualVisitDate == null) return false; - if(timer == null && timer.endAt != null) return false; - if(ppmVisitStatus == null) return false; + bool validate() { + if (actualVisitDate == null) return false; + if (timer == null && timer?.endAt != null) return false; + if (ppmVisitStatus == null) return false; //if(status == null) return false; return true; @@ -45,15 +44,21 @@ class Pentry{ Map toMap() { Map map = {}; - map["visit_status"] = ppmVisitStatus?.id.toString(); - if(status != null) map["pentry_status"] = status?.id.toString(); - if(travelingHours != null) map["traveling_hours"] = travelingHours; - if(imageFile != null) map["file_attachement"] = base64Encode(imageFile.readAsBytesSync()); - map["actual_date"] = (actualVisitDate.millisecondsSinceEpoch / 1000).toStringAsFixed(0); - if(timer != null){ - map["start_date"] = (timer.startAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); - map["end_date"] = ((timer.endAt ?? DateTime.now()).millisecondsSinceEpoch / 1000).toStringAsFixed(0); - map["working_hours"] = (timer.durationInSecond / 60 / 60).toStringAsFixed(5); + if (ppmVisitStatus != null) + map["visit_status"] = ppmVisitStatus!.id.toString(); + if (status != null) map["pentry_status"] = status!.id.toString(); + if (travelingHours != null) map["traveling_hours"] = travelingHours!; + if (imageFile != null) + map["file_attachement"] = base64Encode(imageFile!.readAsBytesSync()); + map["actual_date"] = ((actualVisitDate?.millisecondsSinceEpoch ?? 0) / 1000) + .toStringAsFixed(0); + if (timer != null) { + map["start_date"] = + (timer!.startAt.millisecondsSinceEpoch / 1000).toStringAsFixed(0); + map["end_date"] = + ((timer!.endAt).millisecondsSinceEpoch / 1000).toStringAsFixed(0); + map["working_hours"] = + (timer!.durationInSecond / 60 / 60).toStringAsFixed(5); } // if(contacts?.isNotEmpty == true) { // for(int i = 0;i e.toMap()).toList()); - map["calibrationTools"] = jsonEncode(calibrationTools.map((e) => e.toMap()).toList()); - map["pmKits"] = jsonEncode(pmKits.map((e) => e.toMap()).toList()); + map["ppmCheckLists"] = + jsonEncode(ppmCheckLists?.map((e) => e.toMap()).toList()); + map["calibrationTools"] = + jsonEncode(calibrationTools?.map((e) => e.toMap()).toList()); + map["pmKits"] = jsonEncode(pmKits?.map((e) => e.toMap()).toList()); return map; } @@ -77,22 +84,22 @@ class Pentry{ // } List pmKits = []; - if(map['pmKits'] != null){ - pmKits =(map['pmKits'] as List) + if (map['pmKits'] != null) { + pmKits = (map['pmKits'] as List) .map((e) => PMKit.fromMap(e as Map)) .toList(); } List ppmCheckLists = []; - if(map['ppmCheckLists'] != null){ - ppmCheckLists =(map['ppmCheckLists'] as List) + if (map['ppmCheckLists'] != null) { + ppmCheckLists = (map['ppmCheckLists'] as List) .map((e) => PPMCheckList.fromMap(e as Map)) .toList(); } List calibrationTools = []; - if(map['calibrationTools'] != null){ - calibrationTools =(map['calibrationTools'] as List) + if (map['calibrationTools'] != null) { + calibrationTools = (map['calibrationTools'] as List) .map((e) => CalibrationTool.fromMap(e as Map)) .toList(); } @@ -102,10 +109,10 @@ class Pentry{ actualVisitDate: getDate(map["actual_date"]), travelingHours: map["traveling_hours"], timer: TimerModel( - startAt: getDate(map["start_date"]), - endAt: getDate(map["end_date"]), - durationInSecond: (int.tryParse(map["working_hours"] ?? "") ?? 0) * 60 *60 - ), + startAt: getDate(map["start_date"]), + endAt: getDate(map["end_date"]), + durationInSecond: + (int.tryParse(map["working_hours"] ?? "") ?? 0) * 60 * 60), // contacts: contacts, ppmCheckLists: ppmCheckLists, calibrationTools: calibrationTools, @@ -113,8 +120,9 @@ class Pentry{ ); } - static getDate(String date){ - return date == null || date.isEmpty - ? null : DateTime.fromMillisecondsSinceEpoch(int.tryParse(date) * 1000); + static getDate(String date) { + return date.isEmpty + ? null + : DateTime.fromMillisecondsSinceEpoch((int.tryParse(date) ?? 0) * 1000); } -} \ No newline at end of file +} diff --git a/old_lib/models/pantry/pm_kit.dart b/old_lib/models/pantry/pm_kit.dart index 0a008e5f..09c9b78e 100644 --- a/old_lib/models/pantry/pm_kit.dart +++ b/old_lib/models/pantry/pm_kit.dart @@ -1,13 +1,14 @@ -import 'package:test_sa/models/lookup.dart'; + +import '../lookup.dart'; class PMKit{ - Lookup itemCode; - String itemName; - String preparationTimeFrame; - String kitFrequencyDemand; - String availability; - String quantityNeeded; - String quantityReserved; + Lookup? itemCode; + String? itemName; + String? preparationTimeFrame; + String? kitFrequencyDemand; + String? availability; + String? quantityNeeded; + String? quantityReserved; PMKit({ this.itemCode, @@ -22,12 +23,12 @@ class PMKit{ Map toMap() { return { if(itemCode != null) 'itemCode': (itemCode?.id).toString(), - if(itemName != null) 'itemName': itemName, - if(preparationTimeFrame != null) 'preparationTimeFrame': preparationTimeFrame, - if(kitFrequencyDemand != null) 'kitFrequencyDemand': kitFrequencyDemand, - if(availability != null) 'availability': availability, - if(quantityNeeded != null) 'quantityNeeded': quantityNeeded, - if(quantityReserved != null) 'quantityReserved': quantityReserved, + if(itemName != null) 'itemName': itemName!, + if(preparationTimeFrame != null) 'preparationTimeFrame': preparationTimeFrame!, + if(kitFrequencyDemand != null) 'kitFrequencyDemand': kitFrequencyDemand!, + if(availability != null) 'availability': availability!, + if(quantityNeeded != null) 'quantityNeeded': quantityNeeded!, + if(quantityReserved != null) 'quantityReserved': quantityReserved!, }; } diff --git a/old_lib/models/pantry/ppm_check_list.dart b/old_lib/models/pantry/ppm_check_list.dart index 8f1a14d7..444a1086 100644 --- a/old_lib/models/pantry/ppm_check_list.dart +++ b/old_lib/models/pantry/ppm_check_list.dart @@ -1,10 +1,11 @@ -import 'package:test_sa/models/lookup.dart'; + +import '../lookup.dart'; class PPMCheckList{ - Lookup status; - String title; - String comment; - String measuredValue; + Lookup? status; + String? title; + String? comment; + String? measuredValue; PPMCheckList({ this.title, @@ -15,10 +16,10 @@ class PPMCheckList{ Map toMap() { return { - if(status != null) 'status': status?.id.toString(), - if(title != null) 'title': title, - if(comment != null) 'comment': comment, - if(measuredValue != null) 'measuredValue': measuredValue, + if(status != null) 'status': status!.id.toString(), + if(title != null) 'title': title!, + if(comment != null) 'comment': comment!, + if(measuredValue != null) 'measuredValue': measuredValue!, }; } diff --git a/old_lib/models/service_request/service_request.dart b/old_lib/models/service_request/service_request.dart index edf66852..8cc04bd0 100644 --- a/old_lib/models/service_request/service_request.dart +++ b/old_lib/models/service_request/service_request.dart @@ -1,35 +1,35 @@ -import 'package:test_sa/models/lookup.dart'; +import '../lookup.dart'; -class ServiceRequest{ - String id; - String requestCode; - String deviceSerialNumber; - String deviceId; - String deviceArName; - String deviceEnName; - List devicePhotos; - String maintenanceIssue; - String hospitalName; - String hospitalId; - String departmentName; - String engineerName; - String date; - String audio; - int statusValue; - String statusLabel; +class ServiceRequest { + String? id; + String? requestCode; + String? deviceSerialNumber; + String? deviceId; + String? deviceArName; + String? deviceEnName; + List? devicePhotos; + String? maintenanceIssue; + String? hospitalName; + String? hospitalId; + String? departmentName; + String? engineerName; + String? date; + String? audio; + int? statusValue; + String? statusLabel; - bool viewReport; - String engineerMobile; - String deviceModel; - String faultDescription; - String workPerformed; - String visitDate; - DateTime nextVisitDate; - String jobSheetNumber; - String reportID; - String deviceNumber; - Lookup priority; - Lookup defectType; + bool? viewReport; + String? engineerMobile; + String? deviceModel; + String? faultDescription; + String? workPerformed; + String? visitDate; + DateTime? nextVisitDate; + String? jobSheetNumber; + String? reportID; + String? deviceNumber; + Lookup? priority; + Lookup? defectType; ServiceRequest({ this.id, @@ -48,7 +48,6 @@ class ServiceRequest{ this.deviceId, this.audio, this.engineerName, - this.viewReport = false, this.deviceModel, this.engineerMobile, @@ -61,42 +60,46 @@ class ServiceRequest{ this.defectType, this.priority, this.deviceNumber, - }); - factory ServiceRequest.fromJson(Map parsedJson){ + factory ServiceRequest.fromJson(Map parsedJson) { return ServiceRequest( id: parsedJson["nid"], - requestCode: parsedJson["call_id"] ?? parsedJson["jobcode"] , + requestCode: parsedJson["call_id"] ?? parsedJson["jobcode"], hospitalName: parsedJson["call_client"], deviceNumber: parsedJson["device_no"], deviceId: parsedJson["deviceid"], audio: parsedJson["audio"] ?? "", deviceArName: parsedJson["equipment_arabic_name"] == false - ? "No Name found" : parsedJson["equipment_arabic_name"], + ? "No Name found" + : parsedJson["equipment_arabic_name"], deviceEnName: parsedJson["equipment_english_name"] == false - ? "No Name found" : parsedJson["equipment_english_name"], + ? "No Name found" + : parsedJson["equipment_english_name"], devicePhotos: List.from(parsedJson["image"]), deviceSerialNumber: parsedJson["call_sn"], date: parsedJson["call_data"], maintenanceIssue: parsedJson["call_complaint"] ?? parsedJson["complaint"], statusLabel: parsedJson["status_value"], - statusValue: int.tryParse(parsedJson["status"]??"-1"), + statusValue: int.tryParse(parsedJson["status"] ?? "-1"), departmentName: parsedJson["department_name"], engineerName: parsedJson["employee_name"], hospitalId: parsedJson["client"], reportID: parsedJson["service_report_nid"] is String ? parsedJson["service_report_nid"] - : null , + : null, viewReport: parsedJson["service_report_nid"] is bool ? false : true, deviceModel: parsedJson["device_model"], engineerMobile: parsedJson["engineer_mobile"], faultDescription: parsedJson["fault_desc"], jobSheetNumber: parsedJson["job_sheet_number"], visitDate: parsedJson["visit_date"], - nextVisitDate:parsedJson["next_visit_date"] == null - ? null : DateTime.fromMillisecondsSinceEpoch(int.tryParse(parsedJson["next_visit_date"]) * 1000), + nextVisitDate: parsedJson["next_visit_date"] == null + ? null + : DateTime.fromMillisecondsSinceEpoch( + (int.tryParse(parsedJson["next_visit_date"]) ?? 0) * 1000, + ), workPerformed: parsedJson["work_performed"], ); } -} \ No newline at end of file +} diff --git a/old_lib/models/service_request/service_request_search.dart b/old_lib/models/service_request/service_request_search.dart index 257f25f5..51516636 100644 --- a/old_lib/models/service_request/service_request_search.dart +++ b/old_lib/models/service_request/service_request_search.dart @@ -1,10 +1,9 @@ -class ServiceRequestSearch{ - String deviceSerialNumber; - String deviceName; - String hospital; - String model; - int statusValue; - +class ServiceRequestSearch { + String? deviceSerialNumber; + String? deviceName; + String? hospital; + String? model; + int? statusValue; ServiceRequestSearch({ this.deviceSerialNumber, @@ -14,33 +13,34 @@ class ServiceRequestSearch{ this.hospital, }); - fromSearch(ServiceRequestSearch newSearch){ + fromSearch(ServiceRequestSearch newSearch) { deviceSerialNumber = newSearch.deviceSerialNumber; statusValue = newSearch.statusValue; hospital = newSearch.hospital; model = newSearch.model; } - String toSearchString(){ - String _search = ""; - if(deviceSerialNumber != null && deviceSerialNumber.isNotEmpty){ - _search += "&sn_id=$deviceSerialNumber"; + String toSearchString() { + String search = ""; + if (deviceSerialNumber != null && + (deviceSerialNumber?.isNotEmpty ?? false)) { + search += "&sn_id=$deviceSerialNumber"; } - if(statusValue != null){ - _search += "&status=$statusValue"; + if (statusValue != null) { + search += "&status=$statusValue"; } - if(deviceName != null && deviceName.isNotEmpty){ - _search += "&equipment_en_name=$deviceName"; + if (deviceName != null && (deviceName?.isNotEmpty ?? false)) { + search += "&equipment_en_name=$deviceName"; } - if(hospital != null && hospital.isNotEmpty){ - _search += "&client=$hospital"; + if (hospital != null && (hospital?.isNotEmpty ?? false)) { + search += "&client=$hospital"; } - if(model != null && model.isNotEmpty){ - _search += "&model=$model"; + if (model != null && (model?.isNotEmpty ?? false)) { + search += "&model=$model"; } - return _search; + return search; } -} \ No newline at end of file +}