Files
feature-next-arch/lib/features/auth/domain/usecases/login_usecase.dart

30 lines
791 B
Dart
Raw Normal View History

2026-01-18 20:21:14 +08:00
import 'package:fpdart/fpdart.dart';
2026-01-11 19:42:22 +08:00
import '../../../../core/domain/entities/user_entity.dart';
import '../../../../core/domain/usecases/base_usecase.dart';
2026-01-18 20:21:14 +08:00
import '../errors/auth_failure.dart';
2026-01-11 19:42:22 +08:00
import '../repositories/auth_repository.dart';
class LoginUseCase implements BaseUseCase<UserEntity, LoginParams> {
final AuthRepository repository;
LoginUseCase(this.repository);
@override
2026-01-18 20:21:14 +08:00
Future<Either<AuthFailure, UserEntity>> call(LoginParams params) async {
return await repository.login(
2026-01-11 19:42:22 +08:00
params.username,
params.password,
params.sourceType,
);
}
}
class LoginParams {
final String username;
final String password;
final int sourceType; //1:web; 2:mobile; 3:mini_programs; 4:pc
LoginParams(this.username, this.password, this.sourceType);
}