import 'package:tm_app/core/utils/result.dart'; import 'package:tm_app/data/services/api/your_tenders_api.dart'; import 'package:tm_app/data/services/model/liked_tenders_response/liked_tenders_response.dart'; import 'package:tm_app/data/services/model/tender_approvals_response/tender_approvals_response.dart'; import '../../../core/network/network_manager.dart'; import 'model/request_models/get_tenders_request_model/get_tenders_request_model.dart'; class YourTendersService { YourTendersService({required NetworkManager networkManager}) : _networkManager = networkManager; final NetworkManager _networkManager; Future> getApprovedTenders({ required int limit, required int offset, required String createdFrom, required String createdTo, }) async { final result = await _networkManager.makeRequest( YourTendersApi.getTenderApprovalsStatus( limit: limit, offset: offset, createdFrom: createdFrom, createdTo: createdTo, ), (json) => TenderApprovalsResponse.fromJson(json), method: 'GET', ); return result; } Future> getTenders({ required GetTendersRequestModel requestModel, }) async { final result = await _networkManager.makeRequest( YourTendersApi.getTenders( limit: requestModel.limit, offset: requestModel.offset, createdFrom: requestModel.createdFrom, createdTo: requestModel.createdTo, status: requestModel.status, ), (json) => TenderApprovalsResponse.fromJson(json), method: 'GET', ); return result; } Future> getTendersFeedback({ required int limit, required int offset, required String feedbackType, required String dateFrom, required String dateTo, }) async { final result = await _networkManager.makeRequest( YourTendersApi.getTendersFeedback( limit: limit, offset: offset, feedbackType: feedbackType, dateFrom: dateFrom, dateTo: dateTo, ), (json) => LikedTendersResponse.fromJson(json), method: 'GET', ); return result; } }