|
@@ -1,8 +1,10 @@
|
|
import 'package:domain/entity/response/staff_request_report_entity.dart';
|
|
import 'package:domain/entity/response/staff_request_report_entity.dart';
|
|
import 'package:domain/repository/other_repository.dart';
|
|
import 'package:domain/repository/other_repository.dart';
|
|
import 'package:get/get.dart';
|
|
import 'package:get/get.dart';
|
|
|
|
+import 'package:plugin_basic/service/app_config_service.dart';
|
|
import 'package:plugin_platform/http/dio/dio_cancelable_mixin.dart';
|
|
import 'package:plugin_platform/http/dio/dio_cancelable_mixin.dart';
|
|
import 'package:shared/utils/date_time_utils.dart';
|
|
import 'package:shared/utils/date_time_utils.dart';
|
|
|
|
+import 'package:shared/utils/log_utils.dart';
|
|
import 'package:widgets/load_state_layout.dart';
|
|
import 'package:widgets/load_state_layout.dart';
|
|
import 'package:widgets/picker/date_picker_util.dart';
|
|
import 'package:widgets/picker/date_picker_util.dart';
|
|
|
|
|
|
@@ -31,20 +33,41 @@ class ReportStaffRequestController extends GetxController with DioCancelableMixi
|
|
void fetchReportData() async {
|
|
void fetchReportData() async {
|
|
changeLoadingState(LoadState.State_Loading);
|
|
changeLoadingState(LoadState.State_Loading);
|
|
|
|
|
|
- var result = await _otherRepository.fetchReportStaffRequest(
|
|
|
|
- DateTimeUtils.formatDate(state.startDateTime, format: "yyyy-MM-dd"),
|
|
|
|
- DateTimeUtils.formatDate(state.endDateTime, format: "yyyy-MM-dd"),
|
|
|
|
- cancelToken: cancelToken,
|
|
|
|
- );
|
|
|
|
-
|
|
|
|
- if (result.isSuccess) {
|
|
|
|
- state.datas = result.list
|
|
|
|
- ?.whereType<StaffRequestReportEntity>() // 直接过滤出非 null 的 StaffRequestReportEntity
|
|
|
|
- .toList() ?? [];
|
|
|
|
- changeLoadingState(LoadState.State_Success);
|
|
|
|
|
|
+ //根据不同的国家,调用不同的接口
|
|
|
|
+ if (ConfigService.to.curSelectCountry.value == 1) {
|
|
|
|
+ //如果是新加坡版本的
|
|
|
|
+ var result = await _otherRepository.fetchReportStaffRequest(
|
|
|
|
+ DateTimeUtils.formatDate(state.startDateTime, format: "yyyy-MM-dd"),
|
|
|
|
+ DateTimeUtils.formatDate(state.endDateTime, format: "yyyy-MM-dd"),
|
|
|
|
+ cancelToken: cancelToken,
|
|
|
|
+ );
|
|
|
|
+ if (result.isSuccess) {
|
|
|
|
+ state.datas = result.list
|
|
|
|
+ ?.whereType<StaffRequestReportEntity>() // 直接过滤出非 null 的 StaffRequestReportEntity
|
|
|
|
+ .toList() ??
|
|
|
|
+ [];
|
|
|
|
+ changeLoadingState(LoadState.State_Success);
|
|
|
|
+ } else {
|
|
|
|
+ errorMessage = result.errorMsg ?? "Network Load Error".tr;
|
|
|
|
+ changeLoadingState(LoadState.State_Error);
|
|
|
|
+ }
|
|
} else {
|
|
} else {
|
|
- errorMessage = result.errorMsg ?? "Network Load Error".tr;
|
|
|
|
- changeLoadingState(LoadState.State_Error);
|
|
|
|
|
|
+ //如果是越南的版本
|
|
|
|
+ var result = await _otherRepository.fetchStaffReportVN(
|
|
|
|
+ DateTimeUtils.formatDate(state.startDateTime, format: "yyyy-MM-dd"),
|
|
|
|
+ DateTimeUtils.formatDate(state.endDateTime, format: "yyyy-MM-dd"),
|
|
|
|
+ cancelToken: cancelToken,
|
|
|
|
+ );
|
|
|
|
+ if (result.isSuccess) {
|
|
|
|
+ state.datas = result.data?.requestList
|
|
|
|
+ .whereType<StaffRequestReportEntity>() // 直接过滤出非 null 的 StaffRequestReportEntity
|
|
|
|
+ .toList() ??
|
|
|
|
+ [];
|
|
|
|
+ changeLoadingState(LoadState.State_Success);
|
|
|
|
+ } else {
|
|
|
|
+ errorMessage = result.errorMsg ?? "Network Load Error".tr;
|
|
|
|
+ changeLoadingState(LoadState.State_Error);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -70,7 +93,7 @@ class ReportStaffRequestController extends GetxController with DioCancelableMixi
|
|
/// 筛选结束日期
|
|
/// 筛选结束日期
|
|
void pickerEndDate() {
|
|
void pickerEndDate() {
|
|
DatePickerUtil.showCupertinoDatePicker(
|
|
DatePickerUtil.showCupertinoDatePicker(
|
|
- selectedDateTime: state.endDateTime??state.startDateTime,
|
|
|
|
|
|
+ selectedDateTime: state.endDateTime ?? state.startDateTime,
|
|
onDateTimeChanged: (date) {
|
|
onDateTimeChanged: (date) {
|
|
state.endDateTime = date;
|
|
state.endDateTime = date;
|
|
update();
|
|
update();
|
|
@@ -79,5 +102,4 @@ class ReportStaffRequestController extends GetxController with DioCancelableMixi
|
|
title: "End Date".tr,
|
|
title: "End Date".tr,
|
|
);
|
|
);
|
|
}
|
|
}
|
|
-
|
|
|
|
}
|
|
}
|