Commit 987f24d713512f46cddeffd973f1c066a8f2058c

Authored by 常守达
1 parent 2d2bc767

fix(today):迁移请求数据

... ... @@ -3,7 +3,11 @@ import 'package:doublefeel_flutter/core/network/api/friend_api.dart';
import 'package:doublefeel_flutter/core/network/api/health_api.dart';
import 'package:doublefeel_flutter/core/network/api/pay_api.dart';
import 'package:doublefeel_flutter/core/network/api/vip_api.dart';
import 'package:doublefeel_flutter/core/services/health_raw_data_core_service.dart';
import 'package:doublefeel_flutter/core/services/user_state_service.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_datasource_wrapper.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_local_datasource.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_remote_datasource.dart';
import 'package:doublefeel_flutter/data/models/friend/friend_models.dart';
import 'package:get/get.dart';
... ... @@ -15,7 +19,11 @@ class FriendHomeBinding extends Bindings {
() => TodayController(
Get.find<PayApi>(),
Get.find<VipApi>(),
Get.find<HealthApi>(),
HealthDataSourceWrapper(
remoteDataSource: RemoteHealthDataSource(Get.find<HealthApi>()),
localDataSource: LocalHealthDataSource(
coreService: Get.find<HealthRawDataCoreService>()),
),
Get.find<FriendApi>(),
Get.find<UserStateService>(),
friendInfo: args,
... ...
... ... @@ -5,7 +5,11 @@ import 'package:doublefeel_flutter/core/network/api/pay_api.dart';
import 'package:doublefeel_flutter/core/network/api/theme_api.dart';
import 'package:doublefeel_flutter/core/network/api/user_api.dart';
import 'package:doublefeel_flutter/core/network/api/vip_api.dart';
import 'package:doublefeel_flutter/core/services/health_raw_data_core_service.dart';
import 'package:doublefeel_flutter/core/services/user_state_service.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_datasource_wrapper.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_local_datasource.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_remote_datasource.dart';
import 'package:get/get.dart';
import '../../friends/controllers/friends_controller.dart';
... ... @@ -21,7 +25,11 @@ class HomeBinding extends Bindings {
() => TodayController(
Get.find<PayApi>(),
Get.find<VipApi>(),
Get.find<HealthApi>(),
HealthDataSourceWrapper(
remoteDataSource: RemoteHealthDataSource(Get.find<HealthApi>()),
localDataSource: LocalHealthDataSource(
coreService: Get.find<HealthRawDataCoreService>()),
),
Get.find<FriendApi>(),
Get.find<UserStateService>(),
),
... ...
... ... @@ -18,6 +18,7 @@ import 'package:doublefeel_flutter/core/services/health_raw_data_core_service.da
import 'package:doublefeel_flutter/core/services/thinking_data_service.dart';
import 'package:doublefeel_flutter/core/services/user_state_service.dart';
import 'package:doublefeel_flutter/core/util/app_toast.dart';
import 'package:doublefeel_flutter/data/datasource/health/health_datasource.dart';
import 'package:doublefeel_flutter/data/local/user_account_storage.dart';
import 'package:doublefeel_flutter/data/local/user_preferences_storage.dart';
import 'package:doublefeel_flutter/data/models/friend/friend_models.dart';
... ... @@ -68,7 +69,7 @@ class TodayController extends GetMaterialController {
final PayApi _payApi;
final VipApi _vipApi;
final HealthApi _healthApi;
final HealthDataSource _healthApi;
final FriendApi _friendApi;
final UserStateService _userStateService;
final HealthKitHostApi _hostApi = HealthKitHostApi();
... ...
import 'package:doublefeel_flutter/core/result/app_result.dart';
import 'package:doublefeel_flutter/data/models/health/activity/activity_burn_statistics_data_v2.dart';
import 'package:doublefeel_flutter/data/models/health/health_v2_models.dart';
import 'package:doublefeel_flutter/data/models/health/hrv/hrv_statistics_data.dart';
import 'package:doublefeel_flutter/data/models/health/sleep/sleep_statistics_data.dart';
... ... @@ -22,4 +23,35 @@ abstract interface class HealthDataSource {
int startDate, {
int? queryUserId,
});
Future<AppResult<V2HealthData>> getV2HealthData(
int? queryUserId,
int intDate,
);
Future<AppResult<V2StressScore>> getV2StressScore(
int? queryUserId,
int intDate,
);
Future<AppResult<V2LatestHrvData>> getV2LatestHrv(
int? queryUserId,
int intDate,
);
Future<AppResult<V2HrvTrendData>> getV2HrvTrend(
int? queryUserId,
int intDate,
);
Future<AppResult<V2RealtimeStressData>> getV2RealtimeStress(
int? queryUserId,
int intDate,
);
Future<AppResult<V2ActivityTarget>> getV2ActivityTarget(
int? queryUserId,
);
Future<AppResult<V2HealthEverUploaded>> getHealthDataEverUploaded();
}
... ...
import 'package:doublefeel_flutter/core/result/app_result.dart';
import 'package:doublefeel_flutter/core/services/user_state_service.dart';
import 'package:doublefeel_flutter/data/models/health/activity/activity_burn_statistics_data_v2.dart';
import 'package:doublefeel_flutter/data/models/health/health_v2_models.dart';
import 'package:doublefeel_flutter/data/models/health/hrv/hrv_statistics_data.dart';
import 'package:doublefeel_flutter/data/models/health/sleep/sleep_statistics_data.dart';
import 'package:get/get_core/src/get_main.dart';
... ... @@ -72,4 +73,74 @@ class HealthDataSourceWrapper implements HealthDataSource {
queryUserId: queryUserId,
);
}
@override
Future<AppResult<V2HealthEverUploaded>> getHealthDataEverUploaded() {
return localDataSource.getHealthDataEverUploaded();
}
@override
Future<AppResult<V2ActivityTarget>> getV2ActivityTarget(int? queryUserId) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2ActivityTarget(queryUserId);
}
@override
Future<AppResult<V2HealthData>> getV2HealthData(
int? queryUserId, int intDate) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2HealthData(queryUserId, intDate);
}
@override
Future<AppResult<V2HrvTrendData>> getV2HrvTrend(
int? queryUserId, int intDate) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2HrvTrend(queryUserId, intDate);
}
@override
Future<AppResult<V2LatestHrvData>> getV2LatestHrv(
int? queryUserId, int intDate) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2LatestHrv(queryUserId, intDate);
}
@override
Future<AppResult<V2RealtimeStressData>> getV2RealtimeStress(
int? queryUserId, int intDate) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2RealtimeStress(queryUserId, intDate);
}
@override
Future<AppResult<V2StressScore>> getV2StressScore(
int? queryUserId, int intDate) {
HealthDataSource dataSource = remoteDataSource;
if (queryUserId == null || _myUserId == queryUserId) {
dataSource = localDataSource;
}
return dataSource.getV2StressScore(queryUserId, intDate);
}
}
... ...
... ... @@ -3,6 +3,7 @@ import 'package:doublefeel_flutter/core/result/app_result.dart';
import 'package:doublefeel_flutter/core/services/health_raw_data_core_service.dart';
import 'package:doublefeel_flutter/data/models/enums/app_enums.dart';
import 'package:doublefeel_flutter/data/models/health/activity/activity_burn_statistics_data_v2.dart';
import 'package:doublefeel_flutter/data/models/health/health_v2_models.dart';
import 'package:doublefeel_flutter/data/models/health/hrv/hrv_statistics_data.dart';
import 'package:doublefeel_flutter/data/models/health/sleep/sleep_statistics_data.dart';
... ... @@ -140,4 +141,54 @@ class LocalHealthDataSource implements HealthDataSource {
return AppFailure(AppUnknownError(error));
}
}
@override
Future<AppResult<V2HealthEverUploaded>> getHealthDataEverUploaded() async {
var data = V2HealthEverUploaded(flag: true);
return AppSuccess(data);
}
@override
Future<AppResult<V2ActivityTarget>> getV2ActivityTarget(
int? queryUserId) async {
var data = V2ActivityTarget(
sleepTargetDuration: 480,
);
return AppSuccess(data);
}
@override
Future<AppResult<V2HealthData>> getV2HealthData(
int? queryUserId, int intDate) async {
var data = V2HealthData(hrvAvg: 10);
return AppSuccess(data);
}
@override
Future<AppResult<V2HrvTrendData>> getV2HrvTrend(
int? queryUserId, int intDate) async {
var data = V2HrvTrendData();
return AppSuccess(data);
}
@override
Future<AppResult<V2LatestHrvData>> getV2LatestHrv(
int? queryUserId, int intDate) async {
var data = V2LatestHrvData();
return AppSuccess(data);
}
@override
Future<AppResult<V2RealtimeStressData>> getV2RealtimeStress(
int? queryUserId, int intDate) async {
var data = V2RealtimeStressData();
return AppSuccess(data);
}
@override
Future<AppResult<V2StressScore>> getV2StressScore(
int? queryUserId, int intDate) async {
var data = V2StressScore(state: 1, comprehensiveScore: 18);
return AppSuccess(data);
}
}
... ...
import 'package:doublefeel_flutter/core/network/api/health_api.dart';
import 'package:doublefeel_flutter/core/result/app_result.dart';
import 'package:doublefeel_flutter/data/models/health/activity/activity_burn_statistics_data_v2.dart';
import 'package:doublefeel_flutter/data/models/health/health_v2_models.dart';
import 'package:doublefeel_flutter/data/models/health/hrv/hrv_statistics_data.dart';
import 'package:doublefeel_flutter/data/models/health/sleep/sleep_statistics_data.dart';
... ... @@ -50,4 +51,56 @@ class RemoteHealthDataSource implements HealthDataSource {
queryUserId: queryUserId,
);
}
@override
Future<AppResult<V2HealthData>> getV2HealthData(
int? queryUserId,
int intDate,
) {
return _healthApi.getV2HealthData(queryUserId, intDate);
}
@override
Future<AppResult<V2StressScore>> getV2StressScore(
int? queryUserId,
int intDate,
) {
return _healthApi.getV2StressScore(queryUserId, intDate);
}
@override
Future<AppResult<V2LatestHrvData>> getV2LatestHrv(
int? queryUserId,
int intDate,
) {
return _healthApi.getV2LatestHrv(queryUserId, intDate);
}
@override
Future<AppResult<V2HrvTrendData>> getV2HrvTrend(
int? queryUserId,
int intDate,
) {
return _healthApi.getV2HrvTrend(queryUserId, intDate);
}
@override
Future<AppResult<V2RealtimeStressData>> getV2RealtimeStress(
int? queryUserId,
int intDate,
) {
return _healthApi.getV2RealtimeStress(queryUserId, intDate);
}
@override
Future<AppResult<V2ActivityTarget>> getV2ActivityTarget(
int? queryUserId,
) {
return _healthApi.getV2ActivityTarget(queryUserId);
}
@override
Future<AppResult<V2HealthEverUploaded>> getHealthDataEverUploaded() {
return _healthApi.getHealthDataEverUploaded();
}
}
... ...