57 lines
1.9 KiB
Dart
57 lines
1.9 KiB
Dart
import 'package:tm_app/core/utils/result.dart';
|
|
import 'package:tm_app/data/services/api/home_api.dart';
|
|
import 'package:tm_app/data/services/model/feedback_stats_response/feedback_stat_response.dart';
|
|
import 'package:tm_app/data/services/model/recommended_tenders_response/recommended_tenders_response.dart';
|
|
import 'package:tm_app/data/services/model/tender_approvals_response/tender_approvals_response.dart';
|
|
import 'package:tm_app/data/services/model/tender_approvals_state_response/tender_approvals_state_response.dart';
|
|
|
|
import '../../core/network/network_manager.dart';
|
|
|
|
class HomeService {
|
|
HomeService({required NetworkManager networkManager})
|
|
: _networkManager = networkManager;
|
|
final NetworkManager _networkManager;
|
|
|
|
Future<Result<RecommendedTendersResponse>> getRecommendedTenders({
|
|
required int limit,
|
|
required int offset,
|
|
}) async {
|
|
final result = await _networkManager.makeRequest(
|
|
HomeApi.getRecommendedTenders(limit: limit, offset: offset),
|
|
method: 'GET',
|
|
(json) => RecommendedTendersResponse.fromJson(json),
|
|
);
|
|
return result;
|
|
}
|
|
|
|
Future<Result<TenderApprovalsResponse>> getYourTenders({
|
|
required int limit,
|
|
required int offset,
|
|
}) async {
|
|
final result = await _networkManager.makeRequest(
|
|
HomeApi.getYourTenders(limit: limit, offset: offset),
|
|
(json) => TenderApprovalsResponse.fromJson(json),
|
|
method: 'GET',
|
|
);
|
|
return result;
|
|
}
|
|
|
|
Future<Result<TenderApprovalsStateResponse>> getTendersApprovalsState() async {
|
|
final result = await _networkManager.makeRequest(
|
|
HomeApi.tenderApprovalStats,
|
|
(json) => TenderApprovalsStateResponse.fromJson(json),
|
|
method: 'GET',
|
|
);
|
|
return result;
|
|
}
|
|
|
|
Future<Result<FeedbackStatResponse>> getFeedbackStats() async {
|
|
final result = await _networkManager.makeRequest(
|
|
HomeApi.statsCompany,
|
|
(json) => FeedbackStatResponse.fromJson(json),
|
|
method: 'GET',
|
|
);
|
|
return result;
|
|
}
|
|
}
|