30 lines
791 B
Dart
30 lines
791 B
Dart
import 'package:fpdart/fpdart.dart';
|
|
|
|
import '../../../../core/domain/entities/user_entity.dart';
|
|
import '../../../../core/domain/usecases/base_usecase.dart';
|
|
import '../errors/auth_failure.dart';
|
|
import '../repositories/auth_repository.dart';
|
|
|
|
class LoginUseCase implements BaseUseCase<UserEntity, LoginParams> {
|
|
final AuthRepository repository;
|
|
|
|
LoginUseCase(this.repository);
|
|
|
|
@override
|
|
Future<Either<AuthFailure, UserEntity>> call(LoginParams params) async {
|
|
return await repository.login(
|
|
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);
|
|
}
|