From db16a822fc59be242ac7bc5b19adce69dd36979b Mon Sep 17 00:00:00 2001 From: Sultan khan Date: Sun, 17 Aug 2025 09:49:58 +0300 Subject: [PATCH] updates --- lib/api/api_client.dart | 2 +- lib/api/api_mapper_class.dart | 13 +++++++++++-- lib/api/login_api_client.dart | 15 ++++++++------- lib/models/chane_forgot_password_model.dart | 21 +++++++++++++++++++++ 4 files changed, 41 insertions(+), 10 deletions(-) create mode 100644 lib/models/chane_forgot_password_model.dart diff --git a/lib/api/api_client.dart b/lib/api/api_client.dart index 3aa9e94..9ec9a8a 100644 --- a/lib/api/api_client.dart +++ b/lib/api/api_client.dart @@ -406,7 +406,7 @@ class ApiResponse { "ErrorEndUserMessage": errorEndUserMessage, }; - bool get isSuccess => messageStatus == 1 && errorMessage == null; + bool get isSuccess => messageStatus == 1 && (errorMessage==null || errorMessage!.isEmpty ); } APIException _throwAPIException(Response response) { diff --git a/lib/api/api_mapper_class.dart b/lib/api/api_mapper_class.dart index 23a60cd..60a7525 100644 --- a/lib/api/api_mapper_class.dart +++ b/lib/api/api_mapper_class.dart @@ -5,12 +5,14 @@ import 'package:mohem_flutter_app/api/api_client.dart'; import 'package:mohem_flutter_app/app_state/app_state.dart'; import 'package:mohem_flutter_app/main.dart'; import 'package:mohem_flutter_app/models/basic_member_information_model.dart'; +import 'package:mohem_flutter_app/models/chane_forgot_password_model.dart'; import 'package:mohem_flutter_app/models/check_activation_code_model.dart'; import 'package:mohem_flutter_app/models/check_mobile_app_version_model.dart'; import 'package:mohem_flutter_app/models/dashboard/get_accrual_balances_list_model.dart'; import 'package:mohem_flutter_app/models/dashboard/get_attendance_tracking_list_model.dart'; import 'package:mohem_flutter_app/models/dashboard/get_open_missing_swipe.dart'; import 'package:mohem_flutter_app/models/dashboard/itg_forms_model.dart'; +import 'package:mohem_flutter_app/models/dashboard/list_menu.dart'; import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart'; import 'package:mohem_flutter_app/models/eit/get_eit_transaction_model.dart'; import 'package:mohem_flutter_app/models/generic_mapper_model.dart'; @@ -67,11 +69,18 @@ class ApiClassMapper { case 'CheckPublicActivationCode': return; case 'ChangePassword_Forget': - return; + return ChangePasswordForgetModel.fromRawJson(jsonData); case 'CheckMobileAppVersion': return CheckMobileAppVersionModel.fromRawJson(jsonData); case 'GET_MENU': - return CheckMobileAppVersionModel.fromRawJson(jsonData); + { + List data_ =[]; + json.decode(jsonData).map((item) { + data_.add(ListMenu.fromRawJson(json.encode(item))); + }); + return data_; + + } // COCWS endpoints case 'Mohemm_ITG_GetCategories': return; diff --git a/lib/api/login_api_client.dart b/lib/api/login_api_client.dart index e149ef1..db811a9 100644 --- a/lib/api/login_api_client.dart +++ b/lib/api/login_api_client.dart @@ -6,6 +6,7 @@ import 'package:mohem_flutter_app/api/api_mapper_class.dart'; import 'package:mohem_flutter_app/app_state/app_state.dart'; import 'package:mohem_flutter_app/classes/consts.dart'; import 'package:mohem_flutter_app/models/basic_member_information_model.dart'; +import 'package:mohem_flutter_app/models/chane_forgot_password_model.dart'; import 'package:mohem_flutter_app/models/check_activation_code_model.dart'; import 'package:mohem_flutter_app/models/check_mobile_app_version_model.dart'; import 'package:mohem_flutter_app/models/generic_mapper_model.dart'; @@ -90,6 +91,7 @@ class LoginApiClient { ApiResponse res = ApiResponse.fromJson(response); MemberLoginListModel ress = await ApiClassMapper().handleApiEndpoint(endpoint: "MemberLogin", jsonData: res.data); AppState().postParamsObject?.setLogInTokenID = ress.logInTokenId; + print("getLogInTokenID: ${AppState().postParamsObject?.getLogInTokenID}"); return ress; } @@ -135,6 +137,7 @@ class LoginApiClient { ApiResponse res = ApiResponse.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json); AppState().postParamsObject?.setLogInTokenID = res.data['logInTokenID'] ?? AppState().postParamsObject?.getLogInTokenID; + AppState().postParamsObject?.setTokenID = res.data['logInTokenID']; return responseData; }, url, postParams); } @@ -151,15 +154,13 @@ class LoginApiClient { }, url, postParams); } - Future changePasswordForget(String forgetPasswordTokenID, String pNewPassword, String pConfirmNewPassword, String? pUserName) async { - String url = "${ApiConsts.erpRest}ChangePassword_Forget"; // todo @zahoor, not found in swagger + Future changePasswordForget(String forgetPasswordTokenID, String pNewPassword, String pConfirmNewPassword, String? pUserName) async { + String url = "${ApiConsts.authRest}ChangePassword_Forget"; // todo @zahoor, not found in swagger Map postParams = {"P_USER_NAME": pUserName, "ForgetPasswordTokenID": forgetPasswordTokenID, "P_Confirm_NEW_PASSWORD": pConfirmNewPassword, "P_NEW_PASSWORD": pNewPassword}; postParams.addAll(AppState().postParamsJson); - return await ApiClient().postJsonForObject((json) { - GenericResponseModel responseData = GenericResponseModel.fromJson(json); - - return responseData; - }, url, postParams); + dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams); + ApiResponse res = ApiResponse.fromJson(response); + return await ApiClassMapper().handleApiEndpoint(endpoint: "ChangePassword_Forget", jsonData: res.data); } Future changePasswordFromActiveSession(String pOldPassword, String pNewPassword, String pConfirmNewPassword) async { diff --git a/lib/models/chane_forgot_password_model.dart b/lib/models/chane_forgot_password_model.dart new file mode 100644 index 0000000..9c5c01a --- /dev/null +++ b/lib/models/chane_forgot_password_model.dart @@ -0,0 +1,21 @@ +import 'dart:convert'; + +class ChangePasswordForgetModel { + String? logInTokenId; + + ChangePasswordForgetModel({ + this.logInTokenId, + }); + + factory ChangePasswordForgetModel.fromRawJson(String str) => ChangePasswordForgetModel.fromJson(json.decode(str)); + + String toRawJson() => json.encode(toJson()); + + factory ChangePasswordForgetModel.fromJson(Map json) => ChangePasswordForgetModel( + logInTokenId: json["logInTokenID"], + ); + + Map toJson() => { + "logInTokenID": logInTokenId, + }; +}