You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
421 lines
14 KiB
Dart
421 lines
14 KiB
Dart
import 'dart:convert';
|
|
|
|
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/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';
|
|
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_time_card_summary_list_model.dart';
|
|
import 'package:mohem_flutter_app/models/itg/itg_main_response.dart';
|
|
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/worklist/get_open_notifications.dart';
|
|
|
|
class ApiClassMapper {
|
|
Future<dynamic> handleApiEndpoint({required String endpoint, required var jsonData, String? errorMessage}) async {
|
|
switch (endpoint) {
|
|
case 'MemberLogin':
|
|
return MemberLoginListModel.fromRawJson(jsonEncode(jsonData));
|
|
case 'Mohemm_SendActivationCodebyOTPNotificationType':
|
|
BasicMemberInformationModel response = BasicMemberInformationModel.fromRawJson(jsonEncode(jsonData));
|
|
// AppState().postParamsObject?.setLogInTokenID = response.logInTokenId;
|
|
return response;
|
|
case 'CheckActivationCode':
|
|
CheckActivationCodeModel responseData = CheckActivationCodeModel.fromRawJson(jsonEncode(jsonData));
|
|
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':
|
|
return;
|
|
case 'Logout':
|
|
return;
|
|
case 'Mohemm_Insert_MobileDeviceInfo':
|
|
if (jsonData is Map && jsonData['Data'] == true) {
|
|
return true;
|
|
} else {
|
|
return false;
|
|
}
|
|
case 'Mohemm_GetMobileLoginInfo_NEW':
|
|
GetMobileLoginInfoListModel response = GetMobileLoginInfoListModel.fromJson(jsonData.first);
|
|
return response;
|
|
case 'ChangePassword_FromActiveSession':
|
|
return;
|
|
case 'Get_BasicUserInformation':
|
|
BasicMemberInformationModel response = BasicMemberInformationModel.fromJson(jsonData);
|
|
return response;
|
|
case 'SendPublicActivationCode':
|
|
return;
|
|
case 'CheckPublicActivationCode':
|
|
return;
|
|
case 'ChangePassword_Forget':
|
|
return ChangePasswordForgetModel.fromJson(jsonData);
|
|
case 'CheckMobileAppVersion':
|
|
return CheckMobileAppVersionModel.fromRawJson(jsonData);
|
|
case 'GET_MENU':
|
|
List<ListMenu> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => ListMenu.fromRawJson(jsonEncode(item))).toList();
|
|
return data;
|
|
// COCWS endpoints
|
|
case 'Mohemm_ITG_GetCategories':
|
|
return;
|
|
case 'ITGGetTaskCountRequestType':
|
|
return;
|
|
case 'Mohemm_ITG_ReviewerAdmin_Pending_Tasks':
|
|
return GenericResponseModel.fromJson(jsonData["data"]);
|
|
case 'Mohemm_ITG_CreateTicketMobile':
|
|
return;
|
|
case 'Mohemm_ITG_GetTicketsByEmployee':
|
|
return;
|
|
case 'Mohemm_ITG_AddItemForSaleMobile':
|
|
return;
|
|
case 'Mohemm_ITG_GetItemForSale':
|
|
return;
|
|
case 'Mohemm_ITG_GetRegion':
|
|
return;
|
|
case 'Mohemm_ITG_GetItemForSaleByEmployee':
|
|
return;
|
|
case 'Mohemm_ITG_GetItemSaleCategory':
|
|
return;
|
|
case 'Mohemm_ITG_UpdateItemForSale':
|
|
return;
|
|
case 'GetAnnouncementDiscountsConfigData':
|
|
return;
|
|
case 'GetOfferDiscountsConfigData':
|
|
return;
|
|
case 'Mohemm_ITG_OffersDiscount_GetAll':
|
|
return;
|
|
case 'Mohemm_ITG_GetPageNotification':
|
|
return MohemmItgResponseItem.fromJson(jsonDecode(jsonData));
|
|
case 'Mohemm_ITG_Survey_Response':
|
|
return ItgMainRes();
|
|
case 'Mohemm_ITG_GetPageNotificationDetails':
|
|
return ItgMainRes();
|
|
case 'Mohemm_ITG_UpdateAdvertisementAsViewed':
|
|
return dynamic;
|
|
case 'Mohemm_ITG_GetTicketDetails':
|
|
return;
|
|
case 'Mohemm_ITG_GetTicketTransaction':
|
|
return;
|
|
case 'Mohemm_ITG_GetTicketAttachment':
|
|
return;
|
|
case 'Mohemm_ITG_GetTicketTypes':
|
|
return;
|
|
case 'Mohemm_ITG_GetProjectDepartments':
|
|
return;
|
|
case 'Mohemm_ITG_GetDepartmentSections':
|
|
return;
|
|
case 'Mohemm_ITG_GetSectionTopics':
|
|
return;
|
|
case 'Mohemm_ITG_GetProjects':
|
|
return;
|
|
case 'ITGApproveRequest':
|
|
return;
|
|
case 'ITGRejectRequest':
|
|
return;
|
|
case 'ITGDelegateRequest':
|
|
return;
|
|
case 'ITGAnswer':
|
|
return;
|
|
case 'ITGRequestInformation':
|
|
return;
|
|
case 'ITGGrantAccess':
|
|
return;
|
|
case 'ITGGetFormDetials':
|
|
return;
|
|
case 'ITGFormsPendingTasks':
|
|
return ItgFormsModel();
|
|
case 'ITGGetFormDetialsAttachment':
|
|
return;
|
|
case 'Mohemm_GetFavoriteReplacements':
|
|
return;
|
|
case 'Mohemm_ITG_GetMyFavorites_Images':
|
|
return;
|
|
|
|
// ERP endpoints
|
|
case 'VALIDATE_ABSENCE_TRANSACTION':
|
|
return;
|
|
case 'SUBMIT_ABSENCE_TRANSACTION':
|
|
return;
|
|
case 'START_ABSENCE_APPROVAL_PROCESS':
|
|
return;
|
|
case 'GET_EIT_TRANSACTIONS':
|
|
return CollectionTransaction();
|
|
case 'GET_TIME_CARD_SUMMARY':
|
|
// return (res.getTimeCardSummaryList?.length ?? 0) > 0 ? res.getTimeCardSummaryList!.first : null;
|
|
GetTimeCardSummaryList data = GetTimeCardSummaryList.fromRawJson(jsonEncode(jsonData));
|
|
return;
|
|
case 'GET_DAY_HOURS_TYPE_DETAILS':
|
|
return;
|
|
case 'GET_CONCURRENT_PROGRAMS':
|
|
return;
|
|
case 'GET_SCHEDULE_SHIFTS_DETAILS':
|
|
return;
|
|
case 'GET_CONTACT_DETAILS':
|
|
return;
|
|
case 'GET_PENDING_REQ_DETAILS':
|
|
return;
|
|
case 'GET_EMPLOYEE_CONTACTS':
|
|
return;
|
|
case 'GET_OBJECT_VALUES':
|
|
return;
|
|
case 'GET_COUNTRIES':
|
|
return;
|
|
case 'START_PHONES_APPROVAL_PROCESS':
|
|
return;
|
|
case 'GET_NOTIFICATION_REASSIGN_MODE':
|
|
return;
|
|
case 'START_TERM_APPROVAL_PROCESS':
|
|
return;
|
|
case 'GET_PENDING_REQ_FUNCTIONS':
|
|
return;
|
|
case 'GET_CCP_TRANSACTIONS':
|
|
return;
|
|
case 'GET_CCP_OUTPUT':
|
|
return;
|
|
case 'GET_USER_ITEM_TYPES':
|
|
return;
|
|
case 'GET_ADDRESS_NOTIFICATION_BODY':
|
|
return;
|
|
case 'UPDATE_USER_ITEM_TYPES':
|
|
return;
|
|
case 'GET_ATTACHMENTS':
|
|
return;
|
|
case 'GET_WORKLIST':
|
|
return;
|
|
case 'GET_RFC_EMPLOYEE_LIST':
|
|
return;
|
|
case 'GET_TERM_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_MO_ITEM_HISTORY':
|
|
return;
|
|
case 'GET_ABSENCE_DFF_STRUCTURE':
|
|
return;
|
|
case 'GET_CCP_DFF_STRUCTURE':
|
|
return;
|
|
case 'GET_TERM_DFF_STRUCTURE':
|
|
return;
|
|
case 'GET_EIT_DFF_STRUCTURE':
|
|
return;
|
|
case 'GET_CONTACT_DFF_STRUCTURE':
|
|
return;
|
|
case 'GET_BASIC_DET_DFF_STRUCTURE':
|
|
return;
|
|
case 'SUBMIT_CONTACT_TRANSACTION':
|
|
return;
|
|
case 'SUBMIT_PHONES_TRANSACTION':
|
|
return;
|
|
case 'VHR_GetManagersDetails':
|
|
return;
|
|
case 'START_CONTACT_APPROVAL_PROCESS':
|
|
return;
|
|
case 'GET_PO_ITEM_HISTORY':
|
|
return;
|
|
case 'GET_CEI_TRANSACTIONS':
|
|
return;
|
|
case 'START_CEI_APPROVAL_PROCESS':
|
|
return;
|
|
case 'VHR_GetProjectByCode':
|
|
return;
|
|
case 'Mohemm_LicenseInfoByID':
|
|
return;
|
|
case 'GET_PR_INFORMATION':
|
|
return;
|
|
case 'GET_PAY_REQ_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_SUBORDINATES_LEAVES_TOTAL_VACATIONS':
|
|
return;
|
|
case 'GET_EMPLOYEE_SUBORDINATES':
|
|
return;
|
|
case 'GET_PR_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_PO_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_EIT_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_STAMP_MS_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_ABSENCE_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_SUBORDINATES_LEAVES':
|
|
return;
|
|
case 'GET_NOTIFICATION_BUTTONS':
|
|
return;
|
|
case 'GET_REPLACEMENT_LIST':
|
|
return;
|
|
case 'Get_UserInformation':
|
|
return;
|
|
case 'SUBMIT_BASIC_DET_TRANSACTION':
|
|
return;
|
|
case 'CreateIssueInfo':
|
|
return GenericResponseModel();
|
|
case 'AuthenticateAndSwipeUserSupportNFC':
|
|
return GenericResponseModel();
|
|
case 'ErrorCount_Get':
|
|
return;
|
|
case 'GET_MENU_ENTRIES':
|
|
List<GetMenuEntriesList> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetMenuEntriesList.fromRawJson(jsonEncode(item))).toList();
|
|
return data;
|
|
case 'GET_OPEN_NOTIFICATIONS':
|
|
List<GetOpenNotifications?> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetOpenNotifications.fromRawJson(jsonEncode(item))).toList();
|
|
return data;
|
|
case 'GET_OPEN_MISSING_SWIPES':
|
|
return GetOpenMissingSwipes.fromJson(jsonData);
|
|
case 'GET_CONTACT_COLS_STRUCTURE':
|
|
return;
|
|
case 'GET_EMPLOYEE_ADDRESS':
|
|
return;
|
|
case 'START_BASIC_DET_APPR_PROCESS':
|
|
return;
|
|
case 'GET_BASIC_DET_COLS_STRUCTURE':
|
|
return;
|
|
case 'START_ADDRESS_APPROVAL_PROCESS':
|
|
return;
|
|
case 'SUBMIT_TERM_TRANSACTION':
|
|
return;
|
|
case 'GET_PAYSLIP':
|
|
return;
|
|
case 'GET_EARNINGS':
|
|
return;
|
|
case 'GET_DEDUCTIONS':
|
|
return;
|
|
case 'GET_SUMMARY_OF_PAYMENT':
|
|
return;
|
|
case 'GET_PAYMENT_INFORMATION':
|
|
return;
|
|
case 'GET_VALUE_SET_VALUES':
|
|
return;
|
|
case 'UPDATE_EMPLOYEE_IMAGE':
|
|
return;
|
|
case 'GET_EMPLOYEE_DOCUMENTS':
|
|
return;
|
|
case 'GET_EMPLOYEE_BASIC_DETAILS':
|
|
return;
|
|
case 'GET_EMPLOYEE_PHONES':
|
|
return;
|
|
case 'GET_PERFORMANCE_APPRAISAL':
|
|
return;
|
|
case 'START_EIT_APPROVAL_PROCESS':
|
|
return;
|
|
case 'SUBMIT_CCP_TRANSACTION':
|
|
return;
|
|
case 'SUBMIT_EIT_TRANSACTION':
|
|
return;
|
|
case 'VALIDATE_EIT_TRANSACTION':
|
|
return;
|
|
case 'SUBMIT_ADDRESS_TRANSACTION':
|
|
return;
|
|
case 'RESUBMIT_EIT_TRANSACTION':
|
|
return;
|
|
case 'GET_APPROVERS_LIST':
|
|
return;
|
|
case 'GET_WF_LOOKUP':
|
|
return;
|
|
case 'ADD_ATTACHMENT':
|
|
return;
|
|
case 'CREATE_VACATION_RULE':
|
|
return;
|
|
case 'GET_ITEM_TYPE_NOTIFICATIONS':
|
|
return;
|
|
case 'GET_VR_ITEM_TYPES':
|
|
return;
|
|
case 'GET_TERM_COLS_STRUCTURE':
|
|
return;
|
|
case 'Mohemm_ChangeFavoriteReplacements':
|
|
return;
|
|
case 'NOTIFICATION_ACTIONS':
|
|
return;
|
|
case 'GET_MO_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_QUOTATION_ANALYSIS':
|
|
return;
|
|
case 'GET_ITEM_CREATION_NTF_BODY':
|
|
return;
|
|
case 'GET_BASIC_DET_NTF_BODY':
|
|
return;
|
|
case 'GET_ACTION_HISTORY':
|
|
return;
|
|
case 'GET_PR_ATTACHMENTS':
|
|
return;
|
|
case 'NOTIFICATION_GET_RESPOND_ATTRIBUTES':
|
|
return;
|
|
case 'GET_PHONES_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_PR_ACTION_HISTORY':
|
|
return;
|
|
case 'GET_CONTACT_NOTIFICATION_BODY':
|
|
return;
|
|
case 'VHR_EmployeeLogin':
|
|
return;
|
|
case 'VHR_SendActivationCodebyOTPNotificationType':
|
|
return;
|
|
case 'VHR_CheckVerificationCode':
|
|
return;
|
|
case 'SetPassword':
|
|
return;
|
|
case 'GET_STAMP_NS_NOTIFICATION_BODY':
|
|
return;
|
|
case 'GET_DEFAULT_VALUE':
|
|
return;
|
|
case 'GET_ACCRUAL_BALANCES':
|
|
print(jsonEncode(jsonData));
|
|
List<GetAccrualBalancesList> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetAccrualBalancesList.fromRawJson(jsonEncode(item))).toList();
|
|
return data;
|
|
case 'DisableSession':
|
|
return;
|
|
case 'GET_VACATION_RULES':
|
|
return;
|
|
case 'Get_NewEmployees':
|
|
return;
|
|
case 'GET_EIT_STRUCTURE':
|
|
return;
|
|
case 'GET_ItemOnHand':
|
|
return;
|
|
case 'PROCESS_TRANSACTIONS':
|
|
return;
|
|
case 'INSERT_BOOKED_ORDERS_INTO_STG':
|
|
return;
|
|
case 'INSERT_AP_INV_INTO_STG':
|
|
return;
|
|
case 'INSERT_GL_JOURNALS_INTO_STG':
|
|
return;
|
|
case 'GET_Attendance_Tracking':
|
|
GetAttendanceTracking response = GetAttendanceTracking.fromJson(jsonData);
|
|
return response;
|
|
// case 'GET_OPEN_NOTIFICATIONS':
|
|
// return GenericResponseModel();
|
|
case 'GET_ABSENCE_TRANSACTIONS':
|
|
return;
|
|
case 'GET_ABSENCE_ATTENDANCE_TYPES':
|
|
return;
|
|
case 'CALCULATE_ABSENCE_DURATION':
|
|
return;
|
|
case 'CANCEL_HR_TRANSACTION':
|
|
return;
|
|
default:
|
|
return;
|
|
}
|
|
}
|
|
}
|