From 7cdcea93ba7ba357f4664859113bd1395ed9d661 Mon Sep 17 00:00:00 2001 From: Fatimah Alshammari Date: Sun, 11 Dec 2022 16:33:32 +0300 Subject: [PATCH 1/5] fix issues --- lib/ui/leave_balance/add_leave_balance_screen.dart | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/ui/leave_balance/add_leave_balance_screen.dart b/lib/ui/leave_balance/add_leave_balance_screen.dart index 4df7233..03ffe36 100644 --- a/lib/ui/leave_balance/add_leave_balance_screen.dart +++ b/lib/ui/leave_balance/add_leave_balance_screen.dart @@ -96,7 +96,7 @@ class _AddLeaveBalanceScreenState extends State { } void validateAbsenceTransaction(selectedID) async { - //try { + try { Utils.showLoading(context); Map dffDataMap = {}; for (int i = 1; i <= 20; i++) { @@ -145,10 +145,10 @@ class _AddLeaveBalanceScreenState extends State { } await LeaveBalanceApiClient().cancelHrTransaction(submit.pTRANSACTIONID!); Utils.hideLoading(context); - // } catch (ex) { - // Utils.hideLoading(context); - // Utils.handleException(ex, context, null); - // } + } catch (ex) { + Utils.hideLoading(context); + Utils.handleException(ex, context, null); + } } @override From b4fc3dd5fd4fa760e1ef27e056ee8ee69d580a8e Mon Sep 17 00:00:00 2001 From: haroon amjad Date: Mon, 26 Dec 2022 15:16:11 +0300 Subject: [PATCH 2/5] version fixes --- android/app/google-services.json | 2 +- pubspec.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/android/app/google-services.json b/android/app/google-services.json index 5befc36..62fbaea 100644 --- a/android/app/google-services.json +++ b/android/app/google-services.json @@ -10,7 +10,7 @@ "client_info": { "mobilesdk_app_id": "1:679409052782:android:dba155ac0859d7fea78a7f", "android_client_info": { - "package_name": "com.cloudSolutions.mohemmtest" + "package_name": "hmg.cloudSolutions.mohem" } }, "oauth_client": [ diff --git a/pubspec.yaml b/pubspec.yaml index 2f3fffa..f6e6797 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev # In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. # Read more about iOS versioning at # https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html -version: 1.0.0+1 +version: 3.1.5+300015 environment: sdk: ">=2.16.0 <3.0.0" From e5310eff4ea349a1082a9a298ca3c757f7402b95 Mon Sep 17 00:00:00 2001 From: Faiz Hashmi Date: Mon, 26 Dec 2022 17:04:10 +0300 Subject: [PATCH 3/5] Removed Unnecessary API call --- lib/api/marathon/marathon_api_client.dart | 1 + lib/ui/marathon/marathon_provider.dart | 27 ++++++++++------------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/lib/api/marathon/marathon_api_client.dart b/lib/api/marathon/marathon_api_client.dart index 5b1dfc8..28fad0f 100644 --- a/lib/api/marathon/marathon_api_client.dart +++ b/lib/api/marathon/marathon_api_client.dart @@ -29,6 +29,7 @@ class MarathonApiClient { (json) { MarathonGenericModel marathonModel = MarathonGenericModel.fromJson(json); AppState().setMarathonToken = marathonModel.data["token"] ?? ""; + print("marathonToken: ${"AppState(): ${AppState().getMarathonToken}"}"); return marathonModel.data["token"] ?? ""; }, ApiConsts.marathonParticipantLoginUrl, diff --git a/lib/ui/marathon/marathon_provider.dart b/lib/ui/marathon/marathon_provider.dart index 21c5915..1b825e8 100644 --- a/lib/ui/marathon/marathon_provider.dart +++ b/lib/ui/marathon/marathon_provider.dart @@ -435,7 +435,6 @@ class MarathonProvider extends ChangeNotifier { } bool checkIfPrivilegedForMarathon() { - return true; for (PrivilegeListModel element in AppState().privilegeListModel!) { if (element.serviceName == "Marathon") { if (element.previlege != null) { @@ -451,20 +450,18 @@ class MarathonProvider extends ChangeNotifier { notifyListeners(); isPrivilegedWithMarathon = checkIfPrivilegedForMarathon(); if (isPrivilegedWithMarathon) { - await MarathonApiClient().getMarathonToken().whenComplete(() async { - marathonDetailModel = await MarathonApiClient().getMarathonDetails(); - updateTotalSecondsToWaitForMarathon = marathonDetailModel.marathonBufferTime ?? 30; - if (marathonDetailModel.id == null) { - isUpComingMarathon = false; - isLoading = false; - notifyListeners(); - return; - } - if (DateTime.parse(marathonDetailModel.startTime!).isAfter(DateTime.now())) { - itsMarathonTime = false; - } - populateQuestionStatusesList(); - }); + marathonDetailModel = await MarathonApiClient().getMarathonDetails(); + updateTotalSecondsToWaitForMarathon = marathonDetailModel.marathonBufferTime ?? 30; + if (marathonDetailModel.id == null) { + isUpComingMarathon = false; + isLoading = false; + notifyListeners(); + return; + } + if (DateTime.parse(marathonDetailModel.startTime!).isAfter(DateTime.now())) { + itsMarathonTime = false; + } + populateQuestionStatusesList(); } isLoading = false; notifyListeners(); From 2ab39e0d7b0334fff442bcd068836cf80b6964d5 Mon Sep 17 00:00:00 2001 From: haroon amjad Date: Tue, 27 Dec 2022 14:22:57 +0300 Subject: [PATCH 4/5] updates --- lib/provider/chat_provider_model.dart | 15 +++++----- lib/ui/chat/chat_bubble.dart | 13 ++++---- lib/ui/chat/my_team_screen.dart | 43 +++++++++++++-------------- 3 files changed, 34 insertions(+), 37 deletions(-) diff --git a/lib/provider/chat_provider_model.dart b/lib/provider/chat_provider_model.dart index 24c4532..57abd3a 100644 --- a/lib/provider/chat_provider_model.dart +++ b/lib/provider/chat_provider_model.dart @@ -82,7 +82,6 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { } Future buildHubConnection() async { - chatHubConnection = await getHubConnection(); await chatHubConnection.start(); if (kDebugMode) { @@ -1265,7 +1264,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { await Directory(dirPath).create(); await File('$dirPath/.nomedia').create(); } - File file = File("$dirPath/${data.currentUserId}-${data.targetUserId}-${DateTime.now().microsecondsSinceEpoch}." + ext); + File file = File("$dirPath/${data.currentUserId}-${data.targetUserId}-${DateTime.now().microsecondsSinceEpoch}" + ext); await file.writeAsBytes(bytes); return file.path; } @@ -1297,7 +1296,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { ChatUser( id: int.parse(element.eMPLOYEENUMBER!), email: element.eMPLOYEEEMAILADDRESS, - userName: element.eMPLOYEEDISPLAYNAME, + userName: element.eMPLOYEENAME, phone: element.eMPLOYEEMOBILENUMBER, userStatus: 0, unreadMessageCount: 0, @@ -1305,8 +1304,8 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { isTyping: false, isImageLoading: false, image: element.eMPLOYEEIMAGE ?? "", - isImageLoaded: true, - userLocalDownlaodedImage: await downloadImageLocal(element.eMPLOYEEIMAGE ?? "", element.eMPLOYEENUMBER!), + isImageLoaded: element.eMPLOYEEIMAGE == null ? false : true, + userLocalDownlaodedImage:element.eMPLOYEEIMAGE == null ? null : await downloadImageLocal(element.eMPLOYEEIMAGE ?? "", element.eMPLOYEENUMBER!), ), ); } @@ -1319,7 +1318,7 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { ChatUser( id: int.parse(element.eMPLOYEENUMBER!), email: element.eMPLOYEEEMAILADDRESS, - userName: element.eMPLOYEEDISPLAYNAME, + userName: element.eMPLOYEENAME, phone: element.eMPLOYEEMOBILENUMBER, userStatus: 0, unreadMessageCount: 0, @@ -1327,8 +1326,8 @@ class ChatProviderModel with ChangeNotifier, DiagnosticableTreeMixin { isTyping: false, isImageLoading: false, image: element.eMPLOYEEIMAGE ?? "", - isImageLoaded: true, - userLocalDownlaodedImage: await downloadImageLocal(element.eMPLOYEEIMAGE ?? "", element.eMPLOYEENUMBER!), + isImageLoaded: element.eMPLOYEEIMAGE == null ? false : true, + userLocalDownlaodedImage: element.eMPLOYEEIMAGE == null ? null : await downloadImageLocal(element.eMPLOYEEIMAGE ?? "", element.eMPLOYEENUMBER!), ), ); } diff --git a/lib/ui/chat/chat_bubble.dart b/lib/ui/chat/chat_bubble.dart index 824ab48..93fea00 100644 --- a/lib/ui/chat/chat_bubble.dart +++ b/lib/ui/chat/chat_bubble.dart @@ -1,10 +1,10 @@ -import 'dart:convert'; import 'dart:io'; import 'dart:typed_data'; -import 'package:flutter/services.dart'; -import 'package:audio_waveforms/audio_waveforms.dart' as awf; + import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:flutter_svg/flutter_svg.dart'; +import 'package:just_audio/just_audio.dart'; import 'package:mohem_flutter_app/api/chat/chat_api_client.dart'; import 'package:mohem_flutter_app/app_state/app_state.dart'; import 'package:mohem_flutter_app/classes/colors.dart'; @@ -16,9 +16,9 @@ import 'package:mohem_flutter_app/models/chat/get_single_user_chat_list_model.da import 'package:mohem_flutter_app/provider/chat_provider_model.dart'; import 'package:mohem_flutter_app/ui/chat/chat_full_image_preview.dart'; import 'package:mohem_flutter_app/ui/chat/common.dart'; +import 'package:path_provider/path_provider.dart'; import 'package:provider/provider.dart'; import 'package:rxdart/rxdart.dart'; -import 'package:just_audio/just_audio.dart'; class ChatBubble extends StatelessWidget { ChatBubble({Key? key, required this.dateTime, required this.cItem}) : super(key: key); @@ -82,7 +82,8 @@ class ChatBubble extends StatelessWidget { Utils.hideLoading(context); await data.voiceController!.play(); } catch (e) { - Utils.showToast("Cannot open file."); + Utils.hideLoading(context); + Utils.showToast(e.toString()); } } } @@ -438,5 +439,3 @@ class ChatBubble extends StatelessWidget { ); } } - - diff --git a/lib/ui/chat/my_team_screen.dart b/lib/ui/chat/my_team_screen.dart index 6b68a58..1752295 100644 --- a/lib/ui/chat/my_team_screen.dart +++ b/lib/ui/chat/my_team_screen.dart @@ -84,24 +84,24 @@ class _MyTeamScreenState extends State { ), ), ), - Positioned( - right: 5, - bottom: 1, - child: Container( - width: 10, - height: 10, - decoration: BoxDecoration( - color: m.teamMembersList![index].userStatus == 1 ? MyColors.green2DColor : Colors.red, - ), - ).circle(10), - ) + // Positioned( + // right: 5, + // bottom: 1, + // child: Container( + // width: 10, + // height: 10, + // decoration: BoxDecoration( + // color: m.teamMembersList![index].userStatus == 1 ? MyColors.green2DColor : Colors.red, + // ), + // ).circle(10), + // ) ], ), Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, children: [ - (m.teamMembersList![index].userName!.replaceFirst(".", " ").capitalizeFirstofEach ?? "").toText14(color: MyColors.darkTextColor).paddingOnly(left: 11, top: 13), + (m.teamMembersList![index].userName! ?? "").toText14(color: MyColors.darkTextColor).paddingOnly(left: 11, top: 13), ], ).expanded, // SizedBox( @@ -128,16 +128,15 @@ class _MyTeamScreenState extends State { ], ), ).onPress(() { - print(jsonEncode(m.teamMembersList[index])); - // Navigator.pushNamed( - // context, - // AppRoutes.chatDetailed, - // arguments: ChatDetailedScreenParams(m.teamMembersList![index], true), - // ).then( - // (Object? value) { - // m.clearSelections(); - // }, - // ); + Navigator.pushNamed( + context, + AppRoutes.chatDetailed, + arguments: ChatDetailedScreenParams(m.teamMembersList![index], true), + ).then( + (Object? value) { + m.clearSelections(); + }, + ); }); }, separatorBuilder: (BuildContext context, int index) => const Divider(color: MyColors.lightGreyE5Color).paddingOnly(left: 70), From b34225501ceeb127dec1ffc4ec7bf6d04b0af51a Mon Sep 17 00:00:00 2001 From: Fatimah Alshammari Date: Tue, 27 Dec 2022 14:37:07 +0300 Subject: [PATCH 5/5] fix family member --- lib/ui/profile/add_update_family_member.dart | 91 +++++++++----------- lib/ui/profile/family_members.dart | 7 +- 2 files changed, 45 insertions(+), 53 deletions(-) diff --git a/lib/ui/profile/add_update_family_member.dart b/lib/ui/profile/add_update_family_member.dart index 36a8394..47a2e57 100644 --- a/lib/ui/profile/add_update_family_member.dart +++ b/lib/ui/profile/add_update_family_member.dart @@ -23,6 +23,14 @@ import 'package:mohem_flutter_app/widgets/button/default_button.dart'; import 'package:mohem_flutter_app/widgets/dynamic_forms/dynamic_textfield_widget.dart'; import 'package:easy_localization/src/public_ext.dart'; +class FamilyMemberScreenParams { + String? actionType; + int relationID; + int? flag; + + FamilyMemberScreenParams(this.relationID, {this.actionType, this.flag}); +} + class AddUpdateFamilyMember extends StatefulWidget { const AddUpdateFamilyMember({Key? key}) : super(key: key); @@ -36,10 +44,11 @@ class _AddUpdateFamilyMemberState extends State { List getContactDffStructureList = []; List getContactDetailsList = []; SubmitContactTransactionList? submitContactTransactionList; - dynamic args; + //dynamic args; + FamilyMemberScreenParams? params; String? date = "MM/DD/YYYY"; - var dateTime = DateTime.now().timeZoneOffset; - var dateTime1 = DateTime.now().timeZoneName; + Duration dateTime = DateTime.now().timeZoneOffset; + String dateTime1 = DateTime.now().timeZoneName; GetApprovesList? getApprovesList; @@ -52,9 +61,9 @@ class _AddUpdateFamilyMemberState extends State { try { Utils.showLoading(context); getBasicDetDffStructureList = await ProfileApiClient().getBasicDetDffStructure(); - getContactColsStructureList = await ProfileApiClient().getContactColsStructureList(args['actionType']); + getContactColsStructureList = await ProfileApiClient().getContactColsStructureList(params!.actionType.toString()); getContactDffStructureList = await ProfileApiClient().getContactDffStructureList(); - if (args['actionType'] == "ADD") { + if (params!.actionType == "ADD") { getBasicDetDffStructureList?.forEach((element) { element?.getContactDetailsList = new GetContactDetailsList(); }); @@ -64,8 +73,8 @@ class _AddUpdateFamilyMemberState extends State { getContactDffStructureList?.forEach((element) { element?.getContactDetailsList = new GetContactDetailsList(); }); - } else if (args['actionType'] == "UPDATE") { - getContactDetailsList = await ProfileApiClient().getContactDetailsList(args['relationID']); + } else if (params!.actionType == "UPDATE") { + getContactDetailsList = await ProfileApiClient().getContactDetailsList(params!.relationID); getBasicDetDffStructureList?.forEach((element) { element?.getContactDetailsList = getContactDetailsList?.singleWhere((userDetail) => userDetail?.aPPLICATIONCOLUMNNAME == element?.aPPLICATIONCOLUMNNAME); @@ -88,8 +97,8 @@ class _AddUpdateFamilyMemberState extends State { @override Widget build(BuildContext context) { - if (args == null) { - args = ModalRoute.of(context)!.settings.arguments; + if (params == null) { + params = ModalRoute.of(context)!.settings.arguments as FamilyMemberScreenParams; callAddAndUpdateFamilyMember(); } return Scaffold( @@ -98,7 +107,7 @@ class _AddUpdateFamilyMemberState extends State { title: LocaleKeys.profile_familyDetails.tr(), ), backgroundColor: MyColors.backgroundColor, - body: args['flag'] == 1 + body: params!.flag == 1 ? Column( children: [ ListView(physics: const BouncingScrollPhysics(), padding: const EdgeInsets.all(21), children: [ @@ -108,7 +117,7 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeCols(getContactColsStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getContactColsStructureList!.length), 12.height, ListView.separated( @@ -117,7 +126,7 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeBasicDetDff(getBasicDetDffStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getBasicDetDffStructureList!.length), ListView.separated( physics: const NeverScrollableScrollPhysics(), @@ -125,18 +134,17 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeContactDff(getContactDffStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getContactDffStructureList!.length), - ]).expanded, + ],).expanded, DefaultButton(LocaleKeys.next.tr(), () async { submitUpdateForm(); }).insideContainer, ], ) - : args['flag'] == 2 + : params!.flag == 2 ? Column( children: [ - // getContactDetailsList!.isEmpty ListView(physics: const BouncingScrollPhysics(), padding: const EdgeInsets.all(21), children: [ ListView.separated( physics: const NeverScrollableScrollPhysics(), @@ -144,7 +152,7 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeCols(getContactColsStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getContactColsStructureList!.length), 12.height, ListView.separated( @@ -153,7 +161,7 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeBasicDetDff(getBasicDetDffStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getBasicDetDffStructureList!.length), ListView.separated( physics: const NeverScrollableScrollPhysics(), @@ -161,7 +169,7 @@ class _AddUpdateFamilyMemberState extends State { itemBuilder: (BuildContext cxt, int parentIndex) { return parseDynamicFormatTypeContactDff(getContactDffStructureList![parentIndex], parentIndex); }, - separatorBuilder: (cxt, index) => 0.height, + separatorBuilder: (BuildContext cxt, int index) => 0.height, itemCount: getContactDffStructureList!.length), ]).expanded, DefaultButton(LocaleKeys.next.tr(), () async { @@ -195,13 +203,12 @@ class _AddUpdateFamilyMemberState extends State { model.getContactDetailsList!.sEGMENTVALUEDSP = getContactColsStructureList[index]!.objectValuesList![popupIndex].mEANING.toString(); model.getContactDetailsList!.vARCHAR2VALUE = getContactColsStructureList[index]!.objectValuesList![popupIndex].cODE.toString(); setState(() {}); - }); + },); } else { return DynamicTextFieldWidget( (model!.sEGMENTPROMPT ?? "") + (model!.rEQUIREDFLAG == "Y" ? "*" : ""), (model!.getContactDetailsList!.sEGMENTVALUEDSP ?? ""), - //isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model!.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -211,7 +218,7 @@ class _AddUpdateFamilyMemberState extends State { (model!.sEGMENTPROMPT ?? "") + (model!.rEQUIREDFLAG == "Y" ? "*" : ""), (model!.getContactDetailsList!.sEGMENTVALUEDSP ?? ""), isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model!.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -223,13 +230,8 @@ class _AddUpdateFamilyMemberState extends State { isEnable: false, onTap: () async { DateTime dateValue = await _selectDate(context); - //date = DateFormat('yyyy/MM/dd').format(dateValue); - //date = "2022-10-23T09:17:38.653+03:00"; date = (DateFormat('yyyy-MM-dd').format(dateValue)); model!.getContactDetailsList!.sEGMENTVALUEDSP = date; - print(dateTime); - print(dateTime1); - print(date); setState(() {}); }, ).paddingOnly(bottom: 12); @@ -260,13 +262,12 @@ class _AddUpdateFamilyMemberState extends State { model.getContactDetailsList!.vARCHAR2VALUE = getBasicDetDffStructureList[index]!.eSERVICESVS![popupIndex].iDCOLUMNNAME.toString(); setState(() {}); - }); + },); } else { return DynamicTextFieldWidget( (model.sEGMENTPROMPT ?? "") + (model.rEQUIREDFLAG == "Y" ? "*" : ""), model.getContactDetailsList!.sEGMENTVALUEDSP ?? "", - // isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -276,7 +277,7 @@ class _AddUpdateFamilyMemberState extends State { (model.sEGMENTPROMPT ?? "") + (model.rEQUIREDFLAG == "Y" ? "*" : ""), model.getContactDetailsList!.sEGMENTVALUEDSP ?? "", isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -289,8 +290,6 @@ class _AddUpdateFamilyMemberState extends State { onTap: () async { DateTime dateValue = await _selectDate(context); date = (DateFormat('yyyy-MM-dd').format(dateValue)); - // date = (DateFormat('yyyy-MM-dd').format(dateValue) +"T"+ dateTime.toString() + dateTime1.toString()); - // date = DateFormat('yyyy/MM/dd').format(dateValue); model!.getContactDetailsList!.sEGMENTVALUEDSP = date; setState(() {}); }, @@ -321,13 +320,12 @@ class _AddUpdateFamilyMemberState extends State { model.getContactDetailsList!.sEGMENTVALUEDSP = getContactDffStructureList[index]!.eSERVICESVS![popupIndex].vALUECOLUMNNAME.toString(); model.getContactDetailsList!.vARCHAR2VALUE = getContactDffStructureList[index]!.eSERVICESVS![popupIndex].iDCOLUMNNAME.toString(); setState(() {}); - }); + },); } else { return DynamicTextFieldWidget( (model.sEGMENTPROMPT ?? "") + (model.rEQUIREDFLAG == "Y" ? "*" : ""), model.getContactDetailsList!.sEGMENTVALUEDSP ?? "", - // isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -337,7 +335,7 @@ class _AddUpdateFamilyMemberState extends State { (model.sEGMENTPROMPT ?? "") + (model.rEQUIREDFLAG == "Y" ? "*" : ""), model.getContactDetailsList!.sEGMENTVALUEDSP ?? "", isInputTypeNum: true, - onChange: (text) { + onChange: (String text) { model.getContactDetailsList!.sEGMENTVALUEDSP = text; }, ).paddingOnly(bottom: 12); @@ -349,9 +347,7 @@ class _AddUpdateFamilyMemberState extends State { isEnable: false, onTap: () async { DateTime dateValue = await _selectDate(context); - // date = "2022-10-23T09:17:38.653+03:00"; date = (DateFormat('yyyy-MM-dd').format(dateValue)); - // date = DateFormat('yyyy/MM/dd').format(dateValue); model!.getContactDetailsList!.sEGMENTVALUEDSP = date; setState(() {}); }, @@ -367,13 +363,13 @@ class _AddUpdateFamilyMemberState extends State { if (!Platform.isIOS) { await showCupertinoModalPopup( context: context, - builder: (cxt) => Container( + builder: (BuildContext cxt) => Container( height: 250, color: Colors.white, child: CupertinoDatePicker( backgroundColor: Colors.white, mode: CupertinoDatePickerMode.date, - onDateTimeChanged: (value) { + onDateTimeChanged: (DateTime value) { if (value != null && value != selectedDate) { time = value; } @@ -392,7 +388,6 @@ class _AddUpdateFamilyMemberState extends State { } void submitUpdateForm() async { - print("submit"); try { List> values1 = getBasicDetDffStructureList!.map((e) { String? dateVal = ''; @@ -441,12 +436,9 @@ class _AddUpdateFamilyMemberState extends State { return ValidateEitTransactionModel(dATEVALUE: dateVal, nAME: e.aPPLICATIONCOLUMNNAME, nUMBERVALUE: numberVal, tRANSACTIONNUMBER: 1, vARCHAR2VALUE: varChar).toJson(); }).toList(); List> values3 = getContactColsStructureList!.map((e) { - // String tempVar = e!.getContactDetailsList!.sEGMENTVALUEDSP ?? ""; String? dateVal = ''; dynamic? varChar1 = ''; int? numberVal; - - print("e.dATATYPE:${e?.dATATYPE}"); if (e!.dATATYPE == 'VARCHAR2') { dateVal = null; numberVal = null; @@ -468,15 +460,14 @@ class _AddUpdateFamilyMemberState extends State { }).toList(); List> valuesFinal = [...values1, ...values2, ...values3]; Utils.showLoading(context); - submitContactTransactionList = await ProfileApiClient().submitContactTransactionAddAndUpdate(args['actionType'], args['relationID'] ?? null, valuesFinal); - var transactionId = submitContactTransactionList!.pTRANSACTIONID; - var itemKey = submitContactTransactionList!.pITEMKEY; + submitContactTransactionList = await ProfileApiClient().submitContactTransactionAddAndUpdate(params!.actionType.toString(), params!.relationID, valuesFinal); + int? transactionId = submitContactTransactionList!.pTRANSACTIONID; + String? itemKey = submitContactTransactionList!.pITEMKEY; Utils.hideLoading(context); Navigator.pushNamed(context, AppRoutes.requestSubmitScreen, arguments: RequestSubmitScreenParams(LocaleKeys.profile_familyDetails.tr(), transactionId!.toInt(), itemKey.toString(), 'family_member')); setState(() {}); } catch (ex) { - print(ex); Utils.hideLoading(context); Utils.handleException(ex, context, null); } diff --git a/lib/ui/profile/family_members.dart b/lib/ui/profile/family_members.dart index 6c564e3..ffded0b 100644 --- a/lib/ui/profile/family_members.dart +++ b/lib/ui/profile/family_members.dart @@ -12,6 +12,7 @@ import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart'; import 'package:mohem_flutter_app/models/get_employee_contacts.model.dart'; import 'package:mohem_flutter_app/provider/dashboard_provider_model.dart'; +import 'package:mohem_flutter_app/ui/profile/add_update_family_member.dart'; import 'package:mohem_flutter_app/ui/profile/profile_screen.dart'; import 'package:mohem_flutter_app/widgets/app_bar_widget.dart'; import 'package:mohem_flutter_app/widgets/button/default_button.dart'; @@ -140,7 +141,7 @@ class _FamilyMembersState extends State { LocaleKeys.addNewFamilyMember.tr(), menuEntries.updateButton == 'Y' ? () async { - Navigator.pushNamed(context, AppRoutes.addUpdateFamilyMember, arguments: {"relationID": relationId, "flag": 1, "actionType": "ADD"}); + Navigator.pushNamed(context, AppRoutes.addUpdateFamilyMember, arguments: FamilyMemberScreenParams( relationId, flag: 1, actionType: "ADD")); // ProfileScreen(); } : null) @@ -166,7 +167,7 @@ class _FamilyMembersState extends State { Navigator.pushNamed( context, AppRoutes.addUpdateFamilyMember, - arguments: {"relationID": relationId, "flag": 2, "actionType": "UPDATE"}, + arguments:FamilyMemberScreenParams(relationId, flag: 2, actionType: "UPDATE"), ); }, ); @@ -202,7 +203,7 @@ class _FamilyMembersState extends State { LocaleKeys.ok.tr(), ), onPressed: () { - Navigator.pushNamed(context, AppRoutes.deleteFamilyMember, arguments: relationId); + Navigator.pushNamed(context, AppRoutes.deleteFamilyMember, arguments: FamilyMemberScreenParams(relationId)); // continueDynamicForms(); }, );