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.
mohemm-flutter-app/lib/api/api_mapper_class.dart

418 lines
14 KiB
Dart

5 months ago
import 'dart:convert';
import 'package:flutter/foundation.dart';
5 months ago
import 'package:mohem_flutter_app/api/api_client.dart';
5 months ago
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';
3 months ago
import 'package:mohem_flutter_app/models/chane_forgot_password_model.dart';
5 months ago
import 'package:mohem_flutter_app/models/check_activation_code_model.dart';
5 months ago
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';
5 months ago
import 'package:mohem_flutter_app/models/dashboard/itg_forms_model.dart';
3 months ago
import 'package:mohem_flutter_app/models/dashboard/list_menu.dart';
import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart';
5 months ago
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';
4 months ago
import 'package:mohem_flutter_app/models/get_mobile_login_info_list_model.dart';
5 months ago
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';
2 months ago
import 'package:mohem_flutter_app/models/worklist/get_open_notifications.dart';
5 months ago
class ApiClassMapper {
5 months ago
Future<dynamic> handleApiEndpoint({required String endpoint, required var jsonData, String? errorMessage}) async {
5 months ago
switch (endpoint) {
case 'MemberLogin':
5 months ago
return MemberLoginListModel.fromRawJson(jsonEncode(jsonData));
5 months ago
case 'Mohemm_SendActivationCodebyOTPNotificationType':
5 months ago
BasicMemberInformationModel response = BasicMemberInformationModel.fromRawJson(jsonEncode(jsonData));
// AppState().postParamsObject?.setLogInTokenID = response.logInTokenId;
5 months ago
return response;
case 'CheckActivationCode':
5 months ago
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;
5 months ago
AppState().setBusinessCardPrivilege = responseData.memberInformationList!.first.businessCardPrivilege ?? false;
// AppState().postParamsObject!.logInTokenID = responseData.authenticationTokenId;
//responseData.errorMessage = errorMessage;
5 months ago
return responseData;
5 months ago
case 'RefreshToken':
return;
case 'Logout':
return;
case 'Mohemm_Insert_MobileDeviceInfo':
5 months ago
if (jsonData is Map && jsonData['Data'] == true) {
return true;
} else {
return false;
}
5 months ago
case 'Mohemm_GetMobileLoginInfo_NEW':
GetMobileLoginInfoListModel response = GetMobileLoginInfoListModel.fromJson(jsonData.first);
4 months ago
return response;
5 months ago
case 'ChangePassword_FromActiveSession':
return;
case 'Get_BasicUserInformation':
BasicMemberInformationModel response = BasicMemberInformationModel.fromJson(jsonData);
return response;
5 months ago
case 'SendPublicActivationCode':
return;
case 'CheckPublicActivationCode':
return;
case 'ChangePassword_Forget':
2 months ago
return ChangePasswordForgetModel.fromJson(jsonData);
5 months ago
case 'CheckMobileAppVersion':
5 months ago
return CheckMobileAppVersionModel.fromRawJson(jsonData);
case 'GET_MENU':
2 months ago
List<ListMenu> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => ListMenu.fromRawJson(jsonEncode(item))).toList();
return data;
5 months ago
// 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();
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;
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;
2 months ago
case 'GET_MENU_ENTRIES':
2 months ago
List<GetMenuEntriesList> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetMenuEntriesList.fromRawJson(jsonEncode(item))).toList();
return data;
2 months ago
case 'GET_OPEN_NOTIFICATIONS':
List<GetOpenNotifications?> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetOpenNotifications.fromRawJson(jsonEncode(item))).toList();
return data;
2 months ago
case 'GET_OPEN_MISSING_SWIPES':
return GetOpenMissingSwipes.fromJson(jsonData);
5 months ago
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':
2 months ago
print(jsonEncode(jsonData));
List<GetAccrualBalancesList> data = (jsonDecode(jsonEncode(jsonData)) as List).map((item) => GetAccrualBalancesList.fromRawJson(jsonEncode(item))).toList();
return data;
5 months ago
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;
2 months ago
// case 'GET_OPEN_NOTIFICATIONS':
// return GenericResponseModel();
5 months ago
case 'GET_ABSENCE_TRANSACTIONS':
return;
case 'GET_ABSENCE_ATTENDANCE_TYPES':
return;
case 'CALCULATE_ABSENCE_DURATION':
return;
case 'CANCEL_HR_TRANSACTION':
return;
default:
return;
}
}
}