Files
eatvio_app/lib/features/plans/services/plan_service.dart
2025-03-10 22:25:30 +07:00

36 lines
960 B
Dart

import 'package:dio/dio.dart';
import 'package:eatvio_app/features/feed/models/plan_pagination_model.dart';
import 'package:eatvio_app/features/plans/models/chosen_plan_model.dart';
import 'package:retrofit/retrofit.dart';
part 'plan_service.g.dart';
@RestApi()
abstract class PlanService {
factory PlanService(Dio dio, {String baseUrl}) = _PlanService;
@GET('/api/plans/show/{slug}')
Future<PlanModel> getPlan(@Path('slug') String slug);
@POST('/api/plans/{slug}/like')
Future<void> likePlan({
@Path() required String slug,
});
@POST('/api/plans/{slug}/add_to_favorite')
Future<void> addToFavorite({
@Path() required String slug,
});
@POST('/api/plans/{slug}/remove_from_favorite')
Future<void> removeFromFavorite({
@Path() required String slug,
});
@POST('/api/plans/{slug}/choose')
Future<ChosenPlanModel> chosePlan({
@Path() required String slug,
@Body() required Map<String, dynamic> option,
});
}