Files
flutterApp/lib/features/my/usecases/updatename_usecase.dart
2026-03-04 21:21:43 +08:00

27 lines
1.0 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import 'package:fpdart/fpdart.dart';
import 'package:maibu_satabot_v2/core/domain/usecases/base_usecase.dart';
import 'package:maibu_satabot_v2/features/devices/domain/errors/device_failure.dart'; // 必须导入
import 'package:maibu_satabot_v2/features/my/repository/my_repository.dart';
// 1. 泛型严格匹配:BaseUseCase<成功类型int, 参数类型UpdateNameParams>
class UpdateNameUsecase implements BaseUseCase<int, UpdateNameParams> {
final MyRepository myRepository;
UpdateNameUsecase(this.myRepository);
// 2. 核心修复:返回值类型从 dynamic 改为 Either<DeviceFailure, int>
// 严格覆盖 BaseUseCase 的 call 方法
@override
Future<Either<DeviceFailure, int>> call(UpdateNameParams params) async {
// 3. 调用仓库方法(返回值已匹配 Either<DeviceFailure, int>)
return await myRepository.updateName(params.nickName);
}
}
// 参数类保持不变(不可变,语义清晰)
class UpdateNameParams {
final String nickName;
const UpdateNameParams(this.nickName);
}