Added getStates in home

This commit is contained in:
llsajjad
2025-08-20 13:57:33 +03:30
parent 1af9c0a76b
commit ed5768decb
12 changed files with 1582 additions and 96 deletions
+23
View File
@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'package:tm_app/core/utils/result.dart';
import 'package:tm_app/data/services/model/home/home_request/home_request_model.dart';
import 'package:tm_app/data/services/model/recommended_tenders_response/recommended_tenders_response.dart';
import 'package:tm_app/data/services/model/tender_approvals_state_response/tender_approvals_state_response.dart';
import 'package:tm_app/data/services/model/tender_approvals_response/tender_approvals_response.dart';
import 'package:tm_app/data/services/model/tender_data/tender_data.dart';
@@ -15,6 +16,7 @@ class HomeViewModel with ChangeNotifier {
: _homeRepository = homeRepository {
getHome(homeRequestModel: HomeRequestModel(id: '1'));
getYourTenders();
getApprovedStates();
}
bool _isLoading = false;
@@ -27,6 +29,8 @@ class HomeViewModel with ChangeNotifier {
HomeResponseModel? get homeResponse => _homeResponse;
RecommendedTendersResponse? _recommendedTendersResponse;
TenderApprovalsStateResponse? tenderApprovalsStateResponse;
final List<TenderData> _tenders = [];
final int _pageSize = 20;
int _currentPage = 0;
@@ -128,6 +132,25 @@ class HomeViewModel with ChangeNotifier {
break;
}
_isLoading = false;
notifyListeners();
}
Future<void> getApprovedStates() async {
_isLoading = true;
_errorMessage = null;
notifyListeners();
final result = await _homeRepository.getTendersApprovalsState();
switch (result) {
case Ok<TenderApprovalsStateResponse>():
tenderApprovalsStateResponse = result.value;
break;
case Error<TenderApprovalsStateResponse>():
_errorMessage = result.error.toString();
break;
}
_isLoading = false;
notifyListeners();
}