Aidra Connect 10.0.2+16
Aidra Connect Mobile Application
Loading...
Searching...
No Matches
update_course_progress_usecase.dart
Go to the documentation of this file.
1import 'package:dartz/dartz.dart';
2import 'package:equatable/equatable.dart';
3
4import '../../../../core/common/use_cases/use_cases.dart';
5import '../../../../core/errors/failures.dart';
6import '../repository/elearning_v2_repository.dart';
7
8class UpdateCourseProgressUseCase implements UseCase<bool, ProgressParams> {
10
12
13 @override
14 Future<Either<Failure, bool>> call(ProgressParams params) async {
15 return await repository.updateCourseProgress(params.courseId, params.progress);
16 }
17}
18
19class ProgressParams extends Equatable {
20 final int courseId;
21 final double progress;
22
24 required this.courseId,
25 required this.progress,
26 });
27
28 @override
29 List<Object?> get props => [courseId, progress];
30}
UpdateCourseProgressUseCase(this.repository)
override Future< Either< Failure, bool > > call(ProgressParams params) async
class GetPdfPathUseCase implements UseCase< String, PdfParams > courseId
final double progress
const ProgressParams({ required this.courseId, required this.progress, })
abstract class UseCase< Type, Params > props