chnages has been made
This commit is contained in:
@@ -17,6 +17,7 @@ import '../../domain/usecases/get_advances_usecase.dart';
|
||||
import '../../domain/models/vacation_response_model.dart';
|
||||
// import '../../domain/models/advances_list_response_model.dart';
|
||||
import '../../domain/models/advance_request_model.dart';
|
||||
import '../../data/datasources/user_local_data_source.dart';
|
||||
// import '../../core/error/failures.dart';
|
||||
|
||||
class HolidayScreen extends StatefulWidget {
|
||||
@@ -38,6 +39,7 @@ class _HolidayScreenState extends State<HolidayScreen> {
|
||||
List<AdvanceRequest> _advanceRequests = [];
|
||||
bool _isLoadingVacations = false;
|
||||
bool _isLoadingAdvances = false;
|
||||
String? _employeeId;
|
||||
|
||||
final ScrollController _scrollController = ScrollController();
|
||||
bool _showActions = true;
|
||||
@@ -74,9 +76,13 @@ class _HolidayScreenState extends State<HolidayScreen> {
|
||||
}
|
||||
|
||||
void _initializeData() async {
|
||||
// Load from API
|
||||
_loadVacationsFromAPI();
|
||||
_loadAdvancesFromAPI();
|
||||
_employeeId = await sl<UserLocalDataSource>().getCachedEmployeeId();
|
||||
if (mounted) {
|
||||
setState(() {});
|
||||
// Load from API
|
||||
_loadVacationsFromAPI();
|
||||
_loadAdvancesFromAPI();
|
||||
}
|
||||
|
||||
// Also listen to local changes (for newly created requests)
|
||||
_requestService.leaveRequestsStream.listen((requests) {
|
||||
@@ -94,11 +100,13 @@ class _HolidayScreenState extends State<HolidayScreen> {
|
||||
}
|
||||
|
||||
Future<void> _loadVacationsFromAPI() async {
|
||||
if (_employeeId == null || _employeeId!.isEmpty) return;
|
||||
|
||||
setState(() {
|
||||
_isLoadingVacations = true;
|
||||
});
|
||||
|
||||
final result = await _getVacationsUseCase();
|
||||
final result = await _getVacationsUseCase(_employeeId!);
|
||||
result.fold(
|
||||
(failure) {
|
||||
if (mounted) {
|
||||
@@ -178,11 +186,13 @@ class _HolidayScreenState extends State<HolidayScreen> {
|
||||
}
|
||||
|
||||
Future<void> _loadAdvancesFromAPI() async {
|
||||
if (_employeeId == null || _employeeId!.isEmpty) return;
|
||||
|
||||
setState(() {
|
||||
_isLoadingAdvances = true;
|
||||
});
|
||||
|
||||
final result = await _getAdvancesUseCase();
|
||||
final result = await _getAdvancesUseCase(_employeeId!);
|
||||
result.fold(
|
||||
(failure) {
|
||||
if (mounted) {
|
||||
|
||||
Reference in New Issue
Block a user