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.
		
		
		
		
		
			
		
			
	
	
		
			72 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Dart
		
	
		
		
			
		
	
	
			72 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Dart
		
	
| 
								 
											4 years ago
										 
									 | 
							
								
							 | 
						||
| 
								 | 
							
								import 'dart:async';
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/app_state/app_state.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/classes/consts.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/models/generic_response_model.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/models/get_day_hours_type_details_list_model.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/models/get_mobile_login_info_list_model.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/models/get_schedule_shifts_details_list_model.dart';
							 | 
						||
| 
								 | 
							
								import 'package:mohem_flutter_app/models/get_time_card_summary_list_model.dart';
							 | 
						||
| 
								 
											3 years ago
										 
									 | 
							
								import 'package:mohem_flutter_app/api/api_client.dart';
							 | 
						||
| 
								 
											4 years ago
										 
									 | 
							
								
							 | 
						||
| 
								 | 
							
								class MonthlyAttendanceApiClient {
							 | 
						||
| 
								 | 
							
								  static final MonthlyAttendanceApiClient _instance = MonthlyAttendanceApiClient._internal();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  MonthlyAttendanceApiClient._internal();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  factory MonthlyAttendanceApiClient() => _instance;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Future<GetTimeCardSummaryList?> getTimeCardSummary(String month, int year) async {
							 | 
						||
| 
								 | 
							
								    String url = "${ApiConsts.erpRest}GET_TIME_CARD_SUMMARY";
							 | 
						||
| 
								 | 
							
								    Map<String, dynamic> postParams = {
							 | 
						||
| 
								 | 
							
								      "P_MENU_TYPE": "E",
							 | 
						||
| 
								 | 
							
								      "P_SELECTED_RESP_ID": -999,
							 | 
						||
| 
								 | 
							
								      "SearchMonth": month,
							 | 
						||
| 
								 | 
							
								      "SearchYear": year,
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 
											3 years ago
										 
									 | 
							
								
							 | 
						||
| 
								 
											4 years ago
										 
									 | 
							
								    postParams.addAll(AppState().postParamsJson);
							 | 
						||
| 
								 | 
							
								    return await ApiClient().postJsonForObject((json) {
							 | 
						||
| 
								 | 
							
								      GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
							 | 
						||
| 
								 
											3 years ago
										 
									 | 
							
								     print(responseData);
							 | 
						||
| 
								 
											4 years ago
										 
									 | 
							
								      return (responseData.getTimeCardSummaryList?.length ?? 0) > 0 ? responseData.getTimeCardSummaryList!.first : null;
							 | 
						||
| 
								 | 
							
								    }, url, postParams);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Future<List<GetDayHoursTypeDetailsList>> getDayHoursTypeDetails(String month, int year) async {
							 | 
						||
| 
								 | 
							
								    String url = "${ApiConsts.erpRest}GET_DAY_HOURS_TYPE_DETAILS";
							 | 
						||
| 
								 | 
							
								    Map<String, dynamic> postParams = {
							 | 
						||
| 
								 | 
							
								      "P_MENU_TYPE": "E",
							 | 
						||
| 
								 | 
							
								      "P_PAGE_LIMIT": 100,
							 | 
						||
| 
								 | 
							
								      "P_PAGE_NUM": 1,
							 | 
						||
| 
								 | 
							
								      "P_SELECTED_RESP_ID": -999,
							 | 
						||
| 
								 | 
							
								      "SearchMonth": month,
							 | 
						||
| 
								 | 
							
								      "SearchYear": year,
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								    postParams.addAll(AppState().postParamsJson);
							 | 
						||
| 
								 | 
							
								    // postParams["DeviceToken"] = deviceToken;
							 | 
						||
| 
								 | 
							
								    // postParams["DeviceType"] = deviceType;
							 | 
						||
| 
								 | 
							
								    return await ApiClient().postJsonForObject((json) {
							 | 
						||
| 
								 | 
							
								      GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
							 | 
						||
| 
								 | 
							
								      print(responseData.getDayHoursTypeDetailsList!.length);
							 | 
						||
| 
								 | 
							
								      return responseData.getDayHoursTypeDetailsList ?? [];
							 | 
						||
| 
								 | 
							
								    }, url, postParams);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  Future<GetScheduleShiftsDetailsList?> getScheduleShiftsDetails(int pRTPID) async {
							 | 
						||
| 
								 | 
							
								    String url = "${ApiConsts.erpRest}GET_SCHEDULE_SHIFTS_DETAILS";
							 | 
						||
| 
								 | 
							
								    Map<String, dynamic> postParams = {
							 | 
						||
| 
								 | 
							
								      "P_PAGE_LIMIT": 10,
							 | 
						||
| 
								 | 
							
								      "P_PAGE_NUM": 1,
							 | 
						||
| 
								 | 
							
								      "P_RTP_ID": pRTPID,
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								    postParams.addAll(AppState().postParamsJson);
							 | 
						||
| 
								 | 
							
								    return await ApiClient().postJsonForObject((json) {
							 | 
						||
| 
								 | 
							
								      GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
							 | 
						||
| 
								 | 
							
								      return (responseData.getScheduleShiftsDetailsList?.length ?? 0) > 0 ? responseData.getScheduleShiftsDetailsList!.first : null;
							 | 
						||
| 
								 | 
							
								    }, url, postParams);
							 | 
						||
| 
								 | 
							
								  }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								}
							 |