29 lines
726 B
Dart
29 lines
726 B
Dart
import 'package:fpdart/fpdart.dart';
|
|
import '../../domain/errors/device_failure.dart';
|
|
import '../../domain/repositories/path_repository.dart';
|
|
|
|
class CreateDeviceTaskUseCase {
|
|
final PathRepository repository;
|
|
|
|
CreateDeviceTaskUseCase(this.repository);
|
|
|
|
Future<Either<DeviceFailure, int>> execute({
|
|
required String deviceId,
|
|
required int routeId,
|
|
required int siteId,
|
|
required int orgId,
|
|
}) async {
|
|
try {
|
|
final taskId = await repository.createDeviceTask(
|
|
deviceId: deviceId,
|
|
routeId: routeId,
|
|
siteId: siteId,
|
|
orgId: orgId,
|
|
);
|
|
return Right(taskId);
|
|
} catch (e) {
|
|
return Left(DeviceFailure.networkError(message: e.toString()));
|
|
}
|
|
}
|
|
}
|