logins apis

master-Api2.0_update3.29
Aamir Muhammad 5 months ago
parent a336789aeb
commit d97180e5b9

@ -266,6 +266,7 @@ import 'package:http/http.dart';
import 'package:http/io_client.dart'; import 'package:http/io_client.dart';
import 'package:mohem_flutter_app/exceptions/api_exception.dart'; import 'package:mohem_flutter_app/exceptions/api_exception.dart';
import 'package:mohem_flutter_app/main.dart'; import 'package:mohem_flutter_app/main.dart';
import 'package:mohem_flutter_app/models/generic_mapper_model.dart';
// ignore_for_file: avoid_annotating_with_dynamic // ignore_for_file: avoid_annotating_with_dynamic
typedef FactoryConstructor<U> = U Function(dynamic); typedef FactoryConstructor<U> = U Function(dynamic);
@ -286,6 +287,96 @@ class APIError {
} }
} }
// class ApiResponse {
// dynamic totalItemsCount;
// List<dynamic>? data;
// int? messageStatus;
// dynamic errorMessage;
// dynamic errorEndUserMessage;
//
// ApiResponse({
// this.totalItemsCount,
// this.data,
// this.messageStatus,
// this.errorMessage,
// this.errorEndUserMessage,
// });
//
// factory ApiResponse.fromRawJson(String str) => ApiResponse.fromJson(json.decode(str));
//
// String toRawJson() => json.encode(toJson());
//
// factory ApiResponse.fromJson(Map<String, dynamic> json) => ApiResponse(
// totalItemsCount: json["TotalItemsCount"],
// data: json["Data"] == null ? [] : List<dynamic>.from(json["Data"]!.map((x) => x)),
// messageStatus: json["MessageStatus"],
// errorMessage: json["ErrorMessage"],
// errorEndUserMessage: json["ErrorEndUserMessage"],
// );
//
// Map<String, dynamic> toJson() => {
// "TotalItemsCount": totalItemsCount,
// "Data": data == null ? [] : List<dynamic>.from(data!.map((x) => x)),
// "MessageStatus": messageStatus,
// "ErrorMessage": errorMessage,
// "ErrorEndUserMessage": errorEndUserMessage,
// };
//
// bool get isSuccess => messageStatus == 1 && errorMessage == null;
// }
// class ApiResponse<T> {
// final int? totalItemsCount;
// final T data;
// final int? messageStatus;
// final String? errorMessage;
// final String? errorEndUserMessage;
//
// final T Function(dynamic)? fromJsonT;
// final String Function(T)? toJsonT;
//
// ApiResponse({
// required this.totalItemsCount,
// required this.data,
// required this.messageStatus,
// this.errorMessage,
// this.errorEndUserMessage,
// this.fromJsonT,
// this.toJsonT,
// });
//
// factory ApiResponse.fromJson(
// Map<String, dynamic> json,
// ) {
// return ApiResponse<T>(
// totalItemsCount: json['totalItemsCount'], data: json['data'], messageStatus: json['messageStatus'], errorMessage: json['errorMessage'], errorEndUserMessage: json['errorEndUserMessage']);
// }
//
// factory ApiResponse.fromRawJson(String str) => ApiResponse.fromJson(json.decode(str));
//
// String toRawJson() {
// if (toJsonT == null) {
// throw Exception("toJsonT function is not provided for serialization.");
// }
// return json.encode(toJson());
// }
//
// Map<String, dynamic> toJson() {
// if (toJsonT == null) {
// throw Exception("toJsonT function is not provided for serialization.");
// }
// return {
// "TotalItemsCount": totalItemsCount,
// "Data": toJsonT!(data),
// "MessageStatus": messageStatus,
// "ErrorMessage": errorMessage,
// "ErrorEndUserMessage": errorEndUserMessage,
// };
// }
//
// bool get isSuccess => messageStatus == 1 && errorMessage == null;
// }
class ApiResponse<T> { class ApiResponse<T> {
final int? totalItemsCount; final int? totalItemsCount;
final T data; final T data;
@ -293,23 +384,27 @@ class ApiResponse<T> {
final String? errorMessage; final String? errorMessage;
final String? errorEndUserMessage; final String? errorEndUserMessage;
ApiResponse({ ApiResponse({required this.totalItemsCount, required this.data, required this.messageStatus, this.errorMessage, this.errorEndUserMessage});
required this.totalItemsCount,
required this.data, factory ApiResponse.fromRawJson(String str) => ApiResponse.fromJson(json.decode(str));
required this.messageStatus,
this.errorMessage, String toRawJson() => json.encode(toJson());
this.errorEndUserMessage,
}); factory ApiResponse.fromJson(Map<String, dynamic> json) => ApiResponse(
totalItemsCount: json["TotalItemsCount"],
factory ApiResponse.fromJson(Map<String, dynamic> json, T Function(dynamic) fromJsonT) { data: json["Data"],
return ApiResponse<T>( messageStatus: json["MessageStatus"],
totalItemsCount: json['totalItemsCount'], errorMessage: json["ErrorMessage"],
data: fromJsonT(json['data']), errorEndUserMessage: json["ErrorEndUserMessage"],
messageStatus: json['messageStatus'], );
errorMessage: json['errorMessage'],
errorEndUserMessage: json['errorEndUserMessage'], Map<String, dynamic> toJson() => {
); "TotalItemsCount": totalItemsCount,
} "Data": data,
"MessageStatus": messageStatus,
"ErrorMessage": errorMessage,
"ErrorEndUserMessage": errorEndUserMessage,
};
bool get isSuccess => messageStatus == 1 && errorMessage == null; bool get isSuccess => messageStatus == 1 && errorMessage == null;
} }
@ -364,40 +459,25 @@ class ApiClient {
factory ApiClient() => _instance; factory ApiClient() => _instance;
Future<U> postJsonForObject<T, U>( Future<U> postJsonForObject<T, U>(FactoryConstructor<U> factoryConstructor, String url, T jsonObject,
FactoryConstructor<U> factoryConstructor, {String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0, bool isFormData = false, bool returnJsonData = true}) async {
String url,
T jsonObject, {
String? token,
Map<String, dynamic>? queryParameters,
Map<String, String>? headers,
int retryTimes = 0,
bool isFormData = false,
bool returnJsonData = true,
}) async {
var _headers = {'Accept': 'application/json'}; var _headers = {'Accept': 'application/json'};
if (headers != null && headers.isNotEmpty) { if (token != null && token.isNotEmpty) {
_headers.addAll(headers); _headers.addAll({'Bearer': '$token'});
} }
// logger.d(_headers);
if (!kReleaseMode) { if (!kReleaseMode) {
print("Url:$url"); print("Url:$url");
var bodyJson = json.encode(jsonObject); var bodyJson = json.encode(jsonObject);
print("body:$bodyJson"); print("body:$bodyJson");
} }
var response = await postJsonForResponse( var response = await postJsonForResponse(url, jsonObject, token: token, queryParameters: queryParameters, headers: _headers, retryTimes: retryTimes, isFormData: isFormData);
url,
jsonObject,
token: token,
queryParameters: queryParameters,
headers: _headers,
retryTimes: retryTimes,
isFormData: isFormData,
);
if (!kReleaseMode) { if (!kReleaseMode) {
logger.i("res: " + response.body); logger.i("res: ${response.body}");
} }
var jsonData = jsonDecode(response.body); var jsonData = jsonDecode(response.body);
@ -409,10 +489,10 @@ class ApiClient {
} }
// Create ApiResponse from the json // Create ApiResponse from the json
var apiResponse = ApiResponse.fromJson(jsonData, (res) => returnJsonData ? res : jsonData); var apiResponse = ApiResponse.fromJson(jsonData);
if (apiResponse.isSuccess) { if (apiResponse.isSuccess) {
return factoryConstructor(apiResponse); return factoryConstructor(jsonData);
} else { } else {
throw APIException( throw APIException(
APIException.BAD_REQUEST, APIException.BAD_REQUEST,
@ -454,14 +534,7 @@ class ApiClient {
); );
} }
return await _postForResponse( return await _postForResponse(url, isFormData ? stringObj : requestBody, token: token, queryParameters: queryParameters, headers: headers, retryTimes: retryTimes);
url,
isFormData ? stringObj : requestBody,
token: token,
queryParameters: queryParameters,
headers: headers,
retryTimes: retryTimes,
);
} }
Future<Response> _postForResponse( Future<Response> _postForResponse(
@ -574,7 +647,7 @@ class ApiClient {
); );
} }
Future<ApiResponse<U>> getJsonForObject<T, U>( Future<ApiResponse> getJsonForObject<T, U>(
FactoryConstructor<U> factoryConstructor, FactoryConstructor<U> factoryConstructor,
String url, { String url, {
String? token, String? token,
@ -600,28 +673,19 @@ class ApiClient {
// AppState().setIsAuthenticated = jsonData["IsAuthenticated"]; // AppState().setIsAuthenticated = jsonData["IsAuthenticated"];
} }
var apiResponse = ApiResponse.fromJson( var apiResponse = ApiResponse.fromJson(jsonData);
jsonData,
(data) => returnJsonData ? data : jsonData,
);
if (apiResponse.isSuccess) { if (apiResponse.isSuccess) {
return ApiResponse<U>( return ApiResponse(
totalItemsCount: apiResponse.totalItemsCount, totalItemsCount: apiResponse.totalItemsCount,
data: factoryConstructor(apiResponse.data), data: apiResponse.data,
messageStatus: apiResponse.messageStatus, messageStatus: apiResponse.messageStatus,
errorMessage: apiResponse.errorMessage, errorMessage: apiResponse.errorMessage,
errorEndUserMessage: apiResponse.errorEndUserMessage, errorEndUserMessage: apiResponse.errorEndUserMessage);
);
} else { } else {
throw APIException( throw APIException(
APIException.BAD_REQUEST, APIException.BAD_REQUEST,
error: APIError( error: APIError(null, apiResponse.errorEndUserMessage ?? apiResponse.errorMessage, null, response.statusCode),
null,
apiResponse.errorEndUserMessage ?? apiResponse.errorMessage,
null,
response.statusCode,
),
); );
} }
} }

@ -1,9 +1,11 @@
import 'dart:convert'; import 'dart:convert';
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart'; import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/main.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/basic_member_information_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/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_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_attendance_tracking_list_model.dart';
@ -16,23 +18,40 @@ import 'package:mohem_flutter_app/models/itg/itg_response_model.dart';
import 'package:mohem_flutter_app/models/member_login_list_model.dart'; import 'package:mohem_flutter_app/models/member_login_list_model.dart';
class ApiClassMapper { class ApiClassMapper {
Future<dynamic> handleApiEndpoint({required String endpoint, required var jsonData}) async { Future<dynamic> handleApiEndpoint({required String endpoint, required var jsonData, String? errorMessage}) async {
switch (endpoint) { switch (endpoint) {
case 'MemberLogin': case 'MemberLogin':
return MemberLoginListModel.fromRawJson(json.encode(jsonData.data)); return MemberLoginListModel.fromRawJson(jsonEncode(jsonData));
case 'Mohemm_SendActivationCodebyOTPNotificationType': case 'Mohemm_SendActivationCodebyOTPNotificationType':
logger.d("Mohemm_SendActivationCodebyOTPNotificationType"); BasicMemberInformationModel response = BasicMemberInformationModel.fromRawJson(jsonEncode(jsonData));
BasicMemberInformationModel response = BasicMemberInformationModel.fromRawJson(json.encode(jsonData.data));
AppState().postParamsObject?.setLogInTokenID = response.logInTokenId; AppState().postParamsObject?.setLogInTokenID = response.logInTokenId;
return response; return response;
case 'CheckActivationCode': case 'CheckActivationCode':
CheckActivationCodeModel responseData = CheckActivationCodeModel.fromRawJson(jsonEncode(jsonData));
return; AppState().postParamsObject?.setTokenID = responseData.authenticationTokenId;
AppState().postParamsObject?.mobileNumber = responseData.basicMemberInformation!.pMobileNumber;
AppState().postParamsObject?.userName = AppState().getUserName;
AppState().postParamsObject?.pEmailAddress = responseData.basicMemberInformation!.pEmailAddress;
AppState().postParamsObject?.pSessionId = responseData.pSessionId;
AppState().postParamsObject?.pUserName = AppState().getUserName;
AppState().postParamsObject?.pSelectedEmployeeNumber = AppState().getUserName;
AppState().postParamsObject?.setPLegislationCode = responseData.basicMemberInformation!.pLegislationCode;
AppState().postParamsObject?.setPayrollCodeStr = responseData.memberInformationList!.first.pAYROLLCODE;
AppState().setBusinessCardPrivilege = responseData.memberInformationList!.first.businessCardPrivilege ?? false;
// AppState().postParamsObject!.logInTokenID = responseData.authenticationTokenId;
responseData.errorMessage = errorMessage;
return responseData;
case 'RefreshToken': case 'RefreshToken':
return; return;
case 'Logout': case 'Logout':
return; return;
case 'Mohemm_Insert_MobileDeviceInfo': case 'Mohemm_Insert_MobileDeviceInfo':
if (jsonData is Map && jsonData['Data'] == true) {
return true;
} else {
return false;
}
return; return;
case 'Mohemm_GetMobileLoginInfo_NEW': case 'Mohemm_GetMobileLoginInfo_NEW':
return; return;
@ -47,8 +66,7 @@ class ApiClassMapper {
case 'ChangePassword_Forget': case 'ChangePassword_Forget':
return; return;
case 'CheckMobileAppVersion': case 'CheckMobileAppVersion':
GenericMapperModel response = GenericMapperModel.fromRawJson(json.encode(jsonData.data)); return CheckMobileAppVersionModel.fromRawJson(jsonData);
return CheckMobileAppVersionModel.fromRawJson(json.encode(response));
// COCWS endpoints // COCWS endpoints
case 'Mohemm_ITG_GetCategories': case 'Mohemm_ITG_GetCategories':
return; return;

@ -27,7 +27,7 @@ class DashboardApiClient {
Map<String, dynamic> postParams = {}; Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData.getAttendanceTrackingList; return responseData.getAttendanceTrackingList;
}, url, postParams); }, url, postParams);
} }
@ -37,7 +37,7 @@ class DashboardApiClient {
Map<String, dynamic> postParams = {}; Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData; return responseData;
}, url, postParams); }, url, postParams);
} }
@ -68,7 +68,7 @@ class DashboardApiClient {
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
if (empID != null) postParams["P_SELECTED_EMPLOYEE_NUMBER"] = empID; if (empID != null) postParams["P_SELECTED_EMPLOYEE_NUMBER"] = empID;
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData.getAccrualBalancesList ?? []; return responseData.getAccrualBalancesList ?? [];
}, url, postParams); }, url, postParams);
} }
@ -78,18 +78,18 @@ class DashboardApiClient {
Map<String, dynamic> postParams = {}; Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData; return responseData;
}, url, postParams); }, url, postParams);
} }
//Menus List //Menus List
Future<List<ListMenu>> getListMenu() async { Future<List<ListMenu>> getListMenu() async {
String url = "${ApiConsts.erpRest}GET_MENU"; String url = "${ApiConsts.erpRest}GET_Menu_Entries";
Map<String, dynamic> postParams = {}; Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData.listMenu ?? []; return responseData.listMenu ?? [];
}, url, postParams); }, url, postParams);
} }
@ -147,7 +147,7 @@ class DashboardApiClient {
}; };
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData; return responseData;
}, url, postParams); }, url, postParams);
} }
@ -163,7 +163,7 @@ class DashboardApiClient {
}; };
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json); GenericResponseModel responseData = GenericResponseModel.fromJson(json["Data"]);
MohemmItgResponseItem res = MohemmItgResponseItem.fromJson(jsonDecode(responseData.mohemmITGResponseItem ?? "")); MohemmItgResponseItem res = MohemmItgResponseItem.fromJson(jsonDecode(responseData.mohemmITGResponseItem ?? ""));
// var jsonDecodedData = jsonDecode(jsonDecode(responseData.mohemmITGResponseItem!)['result']['data']); // var jsonDecodedData = jsonDecode(jsonDecode(responseData.mohemmITGResponseItem!)['result']['data']);
return res; return res;

@ -5,6 +5,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/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.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/basic_member_information_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/check_mobile_app_version_model.dart';
import 'package:mohem_flutter_app/models/generic_mapper_model.dart'; import 'package:mohem_flutter_app/models/generic_mapper_model.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart'; import 'package:mohem_flutter_app/models/generic_response_model.dart';
@ -29,9 +30,10 @@ class LoginApiClient {
}, url, postParams); }, url, postParams);
} }
Future<GenericResponseModel?> insertMobileLoginInfoNEW( Future<bool?> insertMobileLoginInfoNEW(
String email, int sessionId, String employeeName, int loginType, String mobileNumber, String userName, String deviceToken, String deviceType) async { String email, int sessionId, String employeeName, int loginType, String mobileNumber, String userName, String deviceToken, String deviceType) async {
String url = "${ApiConsts.authRest}Mohemm_InsertMobileLoginInfo"; String url = "${ApiConsts.authRest}Mohemm_Insert_MobileDeviceInfo";
// String url = "${ApiConsts.authRest}Mohemm_InsertMobileLoginInfo";
Map<String, dynamic> postParams = { Map<String, dynamic> postParams = {
"MobileNumber": mobileNumber, "MobileNumber": mobileNumber,
"P_USER_NAME": userName, "P_USER_NAME": userName,
@ -46,11 +48,14 @@ class LoginApiClient {
postParams["DeviceToken"] = deviceToken; postParams["DeviceToken"] = deviceToken;
postParams["DeviceType"] = deviceType; postParams["DeviceType"] = deviceType;
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams, token: AppState().postParamsObject!.tokenID);
GenericResponseModel? responseData = GenericResponseModel.fromJson(json); ApiResponse res = ApiResponse.fromJson(response);
dynamic ress = await ApiClassMapper().handleApiEndpoint(endpoint: "Mohemm_Insert_MobileDeviceInfo", jsonData: res);
if(ress == true){
AppState().setLogged = true; AppState().setLogged = true;
return responseData; }
}, url, postParams); return ress;
} }
Future<CheckMobileAppVersionModel?> checkMobileAppVersion() async { Future<CheckMobileAppVersionModel?> checkMobileAppVersion() async {
@ -58,8 +63,14 @@ class LoginApiClient {
Map<String, dynamic> postParams = {}; Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams, returnJsonData: false); dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams, returnJsonData: false);
CheckMobileAppVersionModel res = await ApiClassMapper().handleApiEndpoint(endpoint: "CheckMobileAppVersion", jsonData: response); ApiResponse res = ApiResponse.fromJson(response);
return res;
if (res.data == null || res.data!.isEmpty) {
return CheckMobileAppVersionModel(data: ""); // Handle the case where response data is null
} else {
CheckMobileAppVersionModel res = await ApiClassMapper().handleApiEndpoint(endpoint: "CheckMobileAppVersion", jsonData: response.data);
return res;
}
} }
Future<MemberLoginListModel> memberLogin(String username, String password) async { Future<MemberLoginListModel> memberLogin(String username, String password) async {
@ -67,40 +78,32 @@ class LoginApiClient {
Map<String, dynamic> postParams = {"P_APP_VERSION": "CS", "P_LANGUAGE": "US", "P_PASSWORD": password, "P_USER_NAME": username}; Map<String, dynamic> postParams = {"P_APP_VERSION": "CS", "P_LANGUAGE": "US", "P_PASSWORD": password, "P_USER_NAME": username};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams); dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams);
MemberLoginListModel res = await ApiClassMapper().handleApiEndpoint(endpoint: "MemberLogin", jsonData: response); ApiResponse res = ApiResponse.fromJson(response);
AppState().postParamsObject?.setLogInTokenID = res.logInTokenId; MemberLoginListModel ress = await ApiClassMapper().handleApiEndpoint(endpoint: "MemberLogin", jsonData: res.data);
print("setLogInTokenID: ${AppState().postParamsObject?.logInTokenID}"); AppState().postParamsObject?.setLogInTokenID = ress.logInTokenId;
return res; print("getLogInTokenID: ${AppState().postParamsObject?.getLogInTokenID}");
return ress;
} }
Future<BasicMemberInformationModel?> mohemmSendActivationCodeByOTPNotificationType(int isMobileFingerPrint, String? mobileNumber, int optSendType, String? pUserName) async { Future<BasicMemberInformationModel?> mohemmSendActivationCodeByOTPNotificationType(int isMobileFingerPrint, String? mobileNumber, int optSendType, String? pUserName) async {
String url = "${ApiConsts.authRest}Mohemm_SendActivationCodebyOTPNotificationType"; String url = "${ApiConsts.authRest}Mohemm_SendActivationCodebyOTPNotificationType";
Map<String, dynamic> postParams = {"IsMobileFingerPrint": isMobileFingerPrint, "MobileNumber": mobileNumber, "OTP_SendType": optSendType, "P_USER_NAME": pUserName}; Map<String, dynamic> postParams = {"IsMobileFingerPrint": isMobileFingerPrint, "MobileNumber": mobileNumber, "OTP_SendType": optSendType, "P_USER_NAME": pUserName};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
postParams["LogInTokenID"] = AppState().postParamsObject?.logInTokenID; postParams["LogInTokenID"] = AppState().postParamsObject?.getLogInTokenID;
print(postParams); print(postParams);
dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams); dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams);
return await ApiClassMapper().handleApiEndpoint(endpoint: "Mohemm_SendActivationCodebyOTPNotificationType", jsonData: response); ApiResponse res = ApiResponse.fromJson(response);
return await ApiClassMapper().handleApiEndpoint(endpoint: "Mohemm_SendActivationCodebyOTPNotificationType", jsonData: res.data);
} }
Future<GenericResponseModel?> checkActivationCode(bool isDeviceNFC, String? mobileNumber, String activationCode, String? pUserName) async { Future<CheckActivationCodeModel?> checkActivationCode(bool isDeviceNFC, String? mobileNumber, String activationCode, String? pUserName) async {
String url = "${ApiConsts.authRest}CheckActivationCode"; String url = "${ApiConsts.authRest}CheckActivationCode";
Map<String, dynamic> postParams = {"IsDeviceNFC": isDeviceNFC, "MobileNumber": mobileNumber, "ActivationCode": activationCode, "P_USER_NAME": pUserName}; Map<String, dynamic> postParams = {"IsDeviceNFC": isDeviceNFC, "MobileNumber": mobileNumber, "ActivationCode": activationCode, "P_USER_NAME": pUserName};
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) { postParams["LogInTokenID"] = AppState().postParamsObject?.getLogInTokenID;
GenericResponseModel responseData = GenericResponseModel.fromJson(json.data); dynamic response = await ApiClient().postJsonForObject((json) => json, url, postParams);
AppState().postParamsObject?.setTokenID = responseData.tokenID; ApiResponse res = ApiResponse.fromJson(response);
AppState().postParamsObject?.mobileNumber = responseData.basicMemberInformation!.pMobileNumber; return await ApiClassMapper().handleApiEndpoint(endpoint: "CheckActivationCode", jsonData: res.data);
AppState().postParamsObject?.userName = AppState().getUserName;
AppState().postParamsObject?.pEmailAddress = responseData.basicMemberInformation!.pEmailAddress;
AppState().postParamsObject?.pSessionId = responseData.pSESSIONID;
AppState().postParamsObject?.pUserName = AppState().getUserName;
AppState().postParamsObject?.pSelectedEmployeeNumber = AppState().getUserName;
AppState().postParamsObject?.setPLegislationCode = responseData.basicMemberInformation!.pLegislationCode;
AppState().postParamsObject?.setPayrollCodeStr = responseData.memberInformationList!.first.pAYROLLCODE;
AppState().setBusinessCardPrivilege = responseData.businessCardPrivilege ?? false;
return responseData;
}, url, postParams);
} }
Future<BasicMemberInformationModel?> getBasicUserInformation(String pAppVersion, String pUsername) async { Future<BasicMemberInformationModel?> getBasicUserInformation(String pAppVersion, String pUsername) async {

@ -102,7 +102,7 @@ class MyTeamApiClient {
postParams.addAll(AppState().postParamsJson); postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID; postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) { return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json); GenericResponseModel? responseData = GenericResponseModel.fromJson(json["Data"]);
return responseData.getMenuEntriesList ?? []; return responseData.getMenuEntriesList ?? [];
}, url, postParams); }, url, postParams);
} }

@ -22,20 +22,20 @@ class BasicMemberInformationModel {
String toRawJson() => json.encode(toJson()); String toRawJson() => json.encode(toJson());
factory BasicMemberInformationModel.fromJson(Map<String, dynamic> json) => BasicMemberInformationModel( factory BasicMemberInformationModel.fromJson(Map<String, dynamic> json) => BasicMemberInformationModel(
pReturnStatus: json["p_RETURN_STATUS"], pReturnStatus: json["P_RETURN_STATUS"],
pReturnMsg: json["p_RETURN_MSG"], pReturnMsg: json["P_RETURN_MSG"],
pMobileNumber: json["p_MOBILE_NUMBER"], pMobileNumber: json["P_MOBILE_NUMBER"],
pEmailAddress: json["p_EMAIL_ADDRESS"], pEmailAddress: json["P_EMAIL_ADDRESS"],
pLegislationCode: json["p_LEGISLATION_CODE"], pLegislationCode: json["P_LEGISLATION_CODE"],
logInTokenId: json["logInTokenID"], logInTokenId: json["LogInTokenID"],
); );
Map<String, dynamic> toJson() => { Map<String, dynamic> toJson() => {
"p_RETURN_STATUS": pReturnStatus, "P_RETURN_STATUS": pReturnStatus,
"p_RETURN_MSG": pReturnMsg, "P_RETURN_MSG": pReturnMsg,
"p_MOBILE_NUMBER": pMobileNumber, "P_MOBILE_NUMBER": pMobileNumber,
"p_EMAIL_ADDRESS": pEmailAddress, "P_EMAIL_ADDRESS": pEmailAddress,
"p_LEGISLATION_CODE": pLegislationCode, "P_LEGISLATION_CODE": pLegislationCode,
"logInTokenID": logInTokenId, "LogInTokenID": logInTokenId,
}; };
} }

@ -0,0 +1,117 @@
import 'dart:convert';
import 'package:mohem_flutter_app/models/basic_member_information_model.dart';
import 'package:mohem_flutter_app/models/member_information_list_model.dart';
import 'package:mohem_flutter_app/models/privilege_list_model.dart';
class CheckActivationCodeModel {
String? authenticationTokenId;
String? pPassowrdExpired;
String? pPasswordExpiredMsg;
String? pInvalidLoginMsg;
String? mohemmWifiSsid;
String? mohemmWifiPassword;
String? companyImageUrl;
String? companyImageDescription;
String? companyBadge;
String? companyMainCompany;
dynamic bcLogo;
dynamic bcDomain;
dynamic businessGroupName;
String? pReturnStatus;
String? pReturnMsg;
List<MemberInformationListModel>? memberInformationList;
BasicMemberInformationModel? basicMemberInformation;
dynamic mohemmItgResponseItem;
int? pSessionId;
String? tokenId;
String? refreshToken;
String? errorMessage;
DateTime? expiry;
List<PrivilegeListModel>? privilegeList;
CheckActivationCodeModel({
this.authenticationTokenId,
this.pPassowrdExpired,
this.pPasswordExpiredMsg,
this.pInvalidLoginMsg,
this.mohemmWifiSsid,
this.mohemmWifiPassword,
this.companyImageUrl,
this.companyImageDescription,
this.companyBadge,
this.companyMainCompany,
this.bcLogo,
this.bcDomain,
this.businessGroupName,
this.pReturnStatus,
this.pReturnMsg,
this.memberInformationList,
this.basicMemberInformation,
this.mohemmItgResponseItem,
this.pSessionId,
this.tokenId,
this.refreshToken,
this.errorMessage,
this.expiry,
this.privilegeList,
});
factory CheckActivationCodeModel.fromRawJson(String str) => CheckActivationCodeModel.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory CheckActivationCodeModel.fromJson(Map<String, dynamic> json) => CheckActivationCodeModel(
authenticationTokenId: json["AuthenticationTokenID"],
pPassowrdExpired: json["P_PASSOWRD_EXPIRED"],
pPasswordExpiredMsg: json["P_PASSWORD_EXPIRED_MSG"],
pInvalidLoginMsg: json["P_INVALID_LOGIN_MSG"],
mohemmWifiSsid: json["Mohemm_Wifi_SSID"],
mohemmWifiPassword: json["Mohemm_Wifi_Password"],
companyImageUrl: json["CompanyImageURL"],
companyImageDescription: json["CompanyImageDescription"],
companyBadge: json["CompanyBadge"],
companyMainCompany: json["CompanyMainCompany"],
bcLogo: json["BC_Logo"],
bcDomain: json["BC_Domain"],
businessGroupName: json["BUSINESS_GROUP_NAME"],
pReturnStatus: json["P_RETURN_STATUS"],
pReturnMsg: json["P_RETURN_MSG"],
memberInformationList: json["MemberInformationList"] == null ? [] : List<MemberInformationListModel>.from(json["MemberInformationList"]!.map((x) => MemberInformationListModel.fromJson(x))),
basicMemberInformation: json["BasicMemberInformation"] == null ? null : BasicMemberInformationModel.fromJson(json["BasicMemberInformation"]),
mohemmItgResponseItem: json["Mohemm_ITG_ResponseItem"],
pSessionId: json["P_SESSION_ID"],
tokenId: json["TokenId"],
refreshToken: json["RefreshToken"],
errorMessage: json["ErrorMessage"],
expiry: json["Expiry"] == null ? null : DateTime.parse(json["Expiry"]),
privilegeList: json["Privilege_List"] == null ? [] : List<PrivilegeListModel>.from(json["Privilege_List"]!.map((x) => PrivilegeListModel.fromJson(x))),
);
Map<String, dynamic> toJson() => {
"AuthenticationTokenID": authenticationTokenId,
"P_PASSOWRD_EXPIRED": pPassowrdExpired,
"P_PASSWORD_EXPIRED_MSG": pPasswordExpiredMsg,
"P_INVALID_LOGIN_MSG": pInvalidLoginMsg,
"Mohemm_Wifi_SSID": mohemmWifiSsid,
"Mohemm_Wifi_Password": mohemmWifiPassword,
"CompanyImageURL": companyImageUrl,
"CompanyImageDescription": companyImageDescription,
"CompanyBadge": companyBadge,
"CompanyMainCompany": companyMainCompany,
"BC_Logo": bcLogo,
"BC_Domain": bcDomain,
"BUSINESS_GROUP_NAME": businessGroupName,
"P_RETURN_STATUS": pReturnStatus,
"P_RETURN_MSG": pReturnMsg,
"MemberInformationList": memberInformationList == null ? [] : List<dynamic>.from(memberInformationList!.map((x) => x.toJson())),
"BasicMemberInformation": basicMemberInformation?.toJson(),
"Mohemm_ITG_ResponseItem": mohemmItgResponseItem,
"P_SESSION_ID": pSessionId,
"TokenId": tokenId,
"RefreshToken": refreshToken,
"ErrorMessage": errorMessage,
"Expiry": expiry?.toIso8601String(),
"Privilege_List": privilegeList == null ? [] : List<dynamic>.from(privilegeList!.map((x) => x.toJson())),
};
}

@ -1,11 +1,9 @@
import 'dart:convert'; import 'dart:convert';
class CheckMobileAppVersionModel { class CheckMobileAppVersionModel {
String? data; dynamic data;
CheckMobileAppVersionModel({ CheckMobileAppVersionModel({this.data});
this.data,
});
factory CheckMobileAppVersionModel.fromRawJson(String str) => CheckMobileAppVersionModel.fromJson(json.decode(str)); factory CheckMobileAppVersionModel.fromRawJson(String str) => CheckMobileAppVersionModel.fromJson(json.decode(str));

@ -1,37 +1,37 @@
import 'dart:convert'; // import 'dart:convert';
//
class GenericMapperModel { // class GenericMapperModel {
int? totalItemsCount; // int? totalItemsCount;
dynamic data; // dynamic data;
int? messageStatus; // int? messageStatus;
dynamic errorMessage; // dynamic errorMessage;
dynamic errorEndUserMessage; // dynamic errorEndUserMessage;
//
GenericMapperModel({ // GenericMapperModel({
this.totalItemsCount, // this.totalItemsCount,
this.data, // this.data,
this.messageStatus, // this.messageStatus,
this.errorMessage, // this.errorMessage,
this.errorEndUserMessage, // this.errorEndUserMessage,
}); // });
//
factory GenericMapperModel.fromRawJson(String str) => GenericMapperModel.fromJson(json.decode(str)); // factory GenericMapperModel.fromRawJson(String str) => GenericMapperModel.fromJson(json.decode(str));
//
String toRawJson() => json.encode(toJson()); // String toRawJson() => json.encode(toJson());
//
factory GenericMapperModel.fromJson(Map<String, dynamic> json) => GenericMapperModel( // factory GenericMapperModel.fromJson(Map<String, dynamic> json) => GenericMapperModel(
totalItemsCount: json["totalItemsCount"], // totalItemsCount: json["TotalItemsCount"],
data: json["data"], // data: json["Data"],
messageStatus: json["messageStatus"], // messageStatus: json["MessageStatus"],
errorMessage: json["errorMessage"], // errorMessage: json["ErrorMessage"],
errorEndUserMessage: json["errorEndUserMessage"], // errorEndUserMessage: json["ErrorEndUserMessage"],
); // );
//
Map<String, dynamic> toJson() => { // Map<String, dynamic> toJson() => {
"totalItemsCount": totalItemsCount, // "TotalItemsCount": totalItemsCount,
"data": data, // "Data": data,
"messageStatus": messageStatus, // "MessageStatus": messageStatus,
"errorMessage": errorMessage, // "ErrorMessage": errorMessage,
"errorEndUserMessage": errorEndUserMessage, // "ErrorEndUserMessage": errorEndUserMessage,
}; // };
} // }

@ -62,7 +62,7 @@ class MemberInformationListModel {
int? pOSITIONID; int? pOSITIONID;
String? pOSITIONNAME; String? pOSITIONNAME;
String? pRIMARYFLAG; String? pRIMARYFLAG;
int? rOWNUM; String? rOWNUM;
int? sERVICEDAYS; int? sERVICEDAYS;
int? sERVICEMONTHS; int? sERVICEMONTHS;
int? sERVICEYEARS; int? sERVICEYEARS;
@ -85,6 +85,7 @@ class MemberInformationListModel {
int? tOROWNUM; int? tOROWNUM;
String? uNITNUMBER; String? uNITNUMBER;
String? uSERSTATUS; String? uSERSTATUS;
bool? businessCardPrivilege;
MemberInformationListModel( MemberInformationListModel(
{this.aCTUALTERMINATIONDATE, {this.aCTUALTERMINATIONDATE,
@ -97,6 +98,7 @@ class MemberInformationListModel {
this.bUSINESSGROUPID, this.bUSINESSGROUPID,
this.bUSINESSGROUPNAME, this.bUSINESSGROUPNAME,
this.businessCardQR, this.businessCardQR,
this.businessCardPrivilege,
this.cURRENTEMPLOYEEFLAG, this.cURRENTEMPLOYEEFLAG,
this.eMPLOYEEDISPLAYNAME, this.eMPLOYEEDISPLAYNAME,
this.eMPLOYEEDISPLAYNAMEAr, this.eMPLOYEEDISPLAYNAMEAr,
@ -174,6 +176,7 @@ class MemberInformationListModel {
aSSIGNMENTENDDATE = json['ASSIGNMENT_END_DATE']; aSSIGNMENTENDDATE = json['ASSIGNMENT_END_DATE'];
aSSIGNMENTID = json['ASSIGNMENT_ID']; aSSIGNMENTID = json['ASSIGNMENT_ID'];
aSSIGNMENTNUMBER = json['ASSIGNMENT_NUMBER']; aSSIGNMENTNUMBER = json['ASSIGNMENT_NUMBER'];
businessCardPrivilege = json['businessCardPrivilege'];
aSSIGNMENTSTARTDATE = json['ASSIGNMENT_START_DATE']; aSSIGNMENTSTARTDATE = json['ASSIGNMENT_START_DATE'];
aSSIGNMENTSTATUSTYPEID = json['ASSIGNMENT_STATUS_TYPE_ID']; aSSIGNMENTSTATUSTYPEID = json['ASSIGNMENT_STATUS_TYPE_ID'];
aSSIGNMENTTYPE = json['ASSIGNMENT_TYPE']; aSSIGNMENTTYPE = json['ASSIGNMENT_TYPE'];
@ -276,6 +279,7 @@ class MemberInformationListModel {
data['EMPLOYEE_NAME_Ar'] = this.eMPLOYEENAMEAr; data['EMPLOYEE_NAME_Ar'] = this.eMPLOYEENAMEAr;
data['EMPLOYEE_NAME_En'] = this.eMPLOYEENAMEEn; data['EMPLOYEE_NAME_En'] = this.eMPLOYEENAMEEn;
data['EMPLOYEE_NUMBER'] = this.eMPLOYEENUMBER; data['EMPLOYEE_NUMBER'] = this.eMPLOYEENUMBER;
data['businessCardPrivilege'] = this.businessCardPrivilege;
data['EMPLOYEE_WORK_NUMBER'] = this.eMPLOYEEWORKNUMBER; data['EMPLOYEE_WORK_NUMBER'] = this.eMPLOYEEWORKNUMBER;
data['EMPLOYMENT_CATEGORY'] = this.eMPLOYMENTCATEGORY; data['EMPLOYMENT_CATEGORY'] = this.eMPLOYMENTCATEGORY;
data['EMPLOYMENT_CATEGORY_MEANING'] = this.eMPLOYMENTCATEGORYMEANING; data['EMPLOYMENT_CATEGORY_MEANING'] = this.eMPLOYMENTCATEGORYMEANING;

@ -26,24 +26,24 @@ class MemberLoginListModel {
String toRawJson() => json.encode(toJson()); String toRawJson() => json.encode(toJson());
factory MemberLoginListModel.fromJson(Map<String, dynamic> json) => MemberLoginListModel( factory MemberLoginListModel.fromJson(Map<String, dynamic> json) => MemberLoginListModel(
pReturnStatus: json["p_RETURN_STATUS"], pReturnStatus: json["P_RETURN_STATUS"],
pReturnMsg: json["p_RETURN_MSG"], pReturnMsg: json["P_RETURN_MSG"],
pPassowrdExpired: json["p_PASSOWRD_EXPIRED"], pPassowrdExpired: json["P_PASSOWRD_EXPIRED"],
pPasswordExpiredMsg: json["p_PASSWORD_EXPIRED_MSG"], pPasswordExpiredMsg: json["P_PASSWORD_EXPIRED_MSG"],
pMobileNumber: json["p_MOBILE_NUMBER"], pMobileNumber: json["P_MOBILE_NUMBER"],
pEmailAddress: json["p_EMAIL_ADDRESS"], pEmailAddress: json["P_EMAIL_ADDRESS"],
pLegislationCode: json["p_LEGISLATION_CODE"], pLegislationCode: json["P_LEGISLATION_CODE"],
logInTokenId: json["logInTokenID"], logInTokenId: json["LogInTokenID"],
); );
Map<String, dynamic> toJson() => { Map<String, dynamic> toJson() => {
"p_RETURN_STATUS": pReturnStatus, "P_RETURN_STATUS": pReturnStatus,
"p_RETURN_MSG": pReturnMsg, "P_RETURN_MSG": pReturnMsg,
"p_PASSOWRD_EXPIRED": pPassowrdExpired, "P_PASSOWRD_EXPIRED": pPassowrdExpired,
"p_PASSWORD_EXPIRED_MSG": pPasswordExpiredMsg, "P_PASSWORD_EXPIRED_MSG": pPasswordExpiredMsg,
"p_MOBILE_NUMBER": pMobileNumber, "P_MOBILE_NUMBER": pMobileNumber,
"p_EMAIL_ADDRESS": pEmailAddress, "P_EMAIL_ADDRESS": pEmailAddress,
"p_LEGISLATION_CODE": pLegislationCode, "P_LEGISLATION_CODE": pLegislationCode,
"logInTokenID": logInTokenId, "LogInTokenID": logInTokenId,
}; };
} }

@ -76,10 +76,10 @@ class PostParamsModel {
return data; return data;
} }
// setLogInTokenID(String? token) => logInTokenID = token; // set setLogInTokenID(String? token) => logInTokenID = token;
String? _LogInTokenID; String? _LogInTokenID;
String? get getLogInTokenID => _LogInTokenID; String? get getLogInTokenID => _LogInTokenID ?? logInTokenID;
set setLogInTokenID(String? value) { set setLogInTokenID(String? value) {
logInTokenID = value; logInTokenID = value;

@ -17,6 +17,7 @@ import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/extensions/widget_extensions.dart'; import 'package:mohem_flutter_app/extensions/widget_extensions.dart';
import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
import 'package:mohem_flutter_app/models/basic_member_information_model.dart'; import 'package:mohem_flutter_app/models/basic_member_information_model.dart';
import 'package:mohem_flutter_app/models/check_activation_code_model.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart'; import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/get_mobile_login_info_list_model.dart'; import 'package:mohem_flutter_app/models/get_mobile_login_info_list_model.dart';
import 'package:mohem_flutter_app/ui/dialogs/id/business_card_dialog.dart'; import 'package:mohem_flutter_app/ui/dialogs/id/business_card_dialog.dart';
@ -369,10 +370,10 @@ class _VerifyLastLoginScreenState extends State<VerifyLastLoginScreen> {
Future<void> performDirectApiCall(String _title, String _icon, int _flag, String value, TextEditingController? _pinPutController, {bool isDirectLogin = false}) async { Future<void> performDirectApiCall(String _title, String _icon, int _flag, String value, TextEditingController? _pinPutController, {bool isDirectLogin = false}) async {
try { try {
GenericResponseModel? genericResponseModel = await LoginApiClient().checkActivationCode(true, AppState().memberLoginList?.pMobileNumber, value, AppState().getUserName); CheckActivationCodeModel? genericResponseModel = await LoginApiClient().checkActivationCode(true, AppState().memberLoginList?.pMobileNumber, value, AppState().getUserName);
GenericResponseModel? genericResponseModel1 = await LoginApiClient().insertMobileLoginInfoNEW( await LoginApiClient().insertMobileLoginInfoNEW(
AppState().memberLoginList?.pEmailAddress ?? "", AppState().memberLoginList?.pEmailAddress ?? "",
genericResponseModel?.pSESSIONID ?? 0, genericResponseModel?.pSessionId ?? 0,
genericResponseModel?.memberInformationList![0].eMPLOYEENAME ?? "", genericResponseModel?.memberInformationList![0].eMPLOYEENAME ?? "",
_flag, _flag,
AppState().memberLoginList?.pMobileNumber ?? "", AppState().memberLoginList?.pMobileNumber ?? "",

@ -16,6 +16,7 @@ import 'package:mohem_flutter_app/extensions/int_extensions.dart';
import 'package:mohem_flutter_app/extensions/string_extensions.dart'; import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:mohem_flutter_app/generated/locale_keys.g.dart'; import 'package:mohem_flutter_app/generated/locale_keys.g.dart';
import 'package:mohem_flutter_app/models/basic_member_information_model.dart'; import 'package:mohem_flutter_app/models/basic_member_information_model.dart';
import 'package:mohem_flutter_app/models/check_activation_code_model.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart'; import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/member_information_list_model.dart'; import 'package:mohem_flutter_app/models/member_information_list_model.dart';
import 'package:mohem_flutter_app/models/privilege_list_model.dart'; import 'package:mohem_flutter_app/models/privilege_list_model.dart';
@ -576,7 +577,7 @@ class _VerifyLoginScreenState extends State<VerifyLoginScreen> {
width: 38, width: 38,
color: isDisable ? MyColors.darkTextColor.withOpacity(0.7) : null, color: isDisable ? MyColors.darkTextColor.withOpacity(0.7) : null,
), ),
_title.toText16(height: 20/16) _title.toText16(height: 20 / 16)
], ],
), ),
), ),
@ -624,34 +625,34 @@ class _VerifyLoginScreenState extends State<VerifyLoginScreen> {
(value, TextEditingController _pinPutController) async { (value, TextEditingController _pinPutController) async {
Utils.showLoading(context); Utils.showLoading(context);
//try { //try {
GenericResponseModel? genericResponseModel = await LoginApiClient().checkActivationCode(true, AppState().memberLoginList?.pMobileNumber, value, AppState().getUserName); CheckActivationCodeModel? genericResponseModel = await LoginApiClient().checkActivationCode(true, AppState().memberLoginList?.pMobileNumber, value, AppState().getUserName);
GenericResponseModel? genericResponseModel1 = await LoginApiClient().insertMobileLoginInfoNEW( await LoginApiClient().insertMobileLoginInfoNEW(
AppState().memberLoginList?.pEmailAddress ?? "", AppState().memberLoginList?.pEmailAddress ?? "",
genericResponseModel?.pSESSIONID ?? 0, genericResponseModel?.pSessionId ?? 0,
genericResponseModel?.memberInformationList![0].eMPLOYEENAME ?? "", genericResponseModel?.memberInformationList![0].eMPLOYEENAME ?? "",
_flag, _flag,
AppState().memberLoginList?.pMobileNumber ?? "", AppState().memberLoginList?.pMobileNumber ?? "",
AppState().getUserName!, AppState().getUserName!,
AppState().getIsHuawei ? AppState().getHuaweiPushToken : firebaseToken!, AppState().getIsHuawei ? AppState().getHuaweiPushToken : firebaseToken!,
Platform.isAndroid ? "android" : "ios"); Platform.isAndroid ? "android" : "ios");
if (genericResponseModel?.errorMessage != null) { if (genericResponseModel?.errorMessage != null) {
Utils.showToast(genericResponseModel?.errorMessage ?? ""); Utils.showToast(genericResponseModel?.errorMessage ?? "");
} else { } else {
AppState().setPrivilegeListModel = genericResponseModel!.privilegeList ?? []; AppState().setPrivilegeListModel = genericResponseModel!.privilegeList ?? [];
AppState().setMemberInformationListModel = genericResponseModel.memberInformationList?.first; AppState().setMemberInformationListModel = genericResponseModel.memberInformationList?.first;
MemberInformationListModel.saveToPrefs(genericResponseModel.memberInformationList ?? []); MemberInformationListModel.saveToPrefs(genericResponseModel.memberInformationList ?? []);
PrivilegeListModel.saveToPrefs(genericResponseModel.privilegeList ?? []); PrivilegeListModel.saveToPrefs(genericResponseModel.privilegeList ?? []);
AppState().setMohemmWifiSSID = genericResponseModel.mohemmWifiSSID; AppState().setMohemmWifiSSID = genericResponseModel.mohemmWifiSsid;
AppState().setMohemmWifiPassword = genericResponseModel.mohemmWifiPassword; AppState().setMohemmWifiPassword = genericResponseModel.mohemmWifiPassword;
AppState().setMohemmWifiPassword = genericResponseModel.mohemmWifiPassword; AppState().setMohemmWifiPassword = genericResponseModel.mohemmWifiPassword;
Utils.saveStringFromPrefs(SharedPrefsConsts.username, AppState().getUserName!); Utils.saveStringFromPrefs(SharedPrefsConsts.username, AppState().getUserName!);
Utils.saveStringFromPrefs(SharedPrefsConsts.password, AppState().password!); Utils.saveStringFromPrefs(SharedPrefsConsts.password, AppState().password!);
Utils.saveStringFromPrefs(SharedPrefsConsts.mohemmWifiSSID, genericResponseModel.mohemmWifiSSID!); Utils.saveStringFromPrefs(SharedPrefsConsts.mohemmWifiSSID, genericResponseModel.mohemmWifiSsid!);
Utils.saveStringFromPrefs(SharedPrefsConsts.mohemmWifiPassword, genericResponseModel.mohemmWifiPassword!); Utils.saveStringFromPrefs(SharedPrefsConsts.mohemmWifiPassword, genericResponseModel.mohemmWifiPassword!);
} }
Utils.hideLoading(context); Utils.hideLoading(context);
Navigator.pop(context); Navigator.pop(context);
Navigator.pushNamedAndRemoveUntil(context, AppRoutes.dashboard, (Route<dynamic> route) => false); Navigator.pushNamedAndRemoveUntil(context, AppRoutes.dashboard, (Route<dynamic> route) => false);
// } catch (ex) { // } catch (ex) {
// print(ex); // print(ex);
// _pinPutController.clear(); // _pinPutController.clear();
@ -678,7 +679,7 @@ class _VerifyLoginScreenState extends State<VerifyLoginScreen> {
).displayDialog(context); ).displayDialog(context);
} catch (ex) { } catch (ex) {
Utils.hideLoading(context); Utils.hideLoading(context);
Utils.handleException(ex, context, null); Utils.handleException(ex, context, null);
} }
} }
// //
@ -692,5 +693,4 @@ class _VerifyLoginScreenState extends State<VerifyLoginScreen> {
// // isLoading = isTrue; // // isLoading = isTrue;
// }); // });
// } // }
} }

Loading…
Cancel
Save