Files
tm_app/lib/views/your_tenders/pages/your_tenders_screen.dart
T
amirrezaghabeli 6d674a4a1b Update dependencies and enhance tender approval status handling
- Updated `pubspec.lock` to reflect new versions for several packages, including `async`, `fake_async`, `leak_tracker`, and `vm_service`.
- Modified `TenderApprovalStatus` enum to include a new status `approved`.
- Updated routing for `YourTendersRouteData` to accept a status parameter and pass it to the `YourTendersScreen`.
- Adjusted API calls and view models to utilize the new status handling, ensuring proper filtering and display of tender data based on approval status.
- Enhanced filter dialog to support new status options and improved user feedback in the UI for submitted and approved tenders.
2025-10-12 14:57:33 +03:30

40 lines
1.3 KiB
Dart

import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'package:tm_app/core/utils/size_config.dart';
import 'package:tm_app/view_models/your_tenders_view_model.dart';
import 'package:tm_app/views/shared/responsive_builder.dart';
import 'package:tm_app/views/your_tenders/pages/your_tenders_desktop_page.dart';
import 'package:tm_app/views/your_tenders/pages/your_tenders_mobile_page.dart';
import 'package:tm_app/views/your_tenders/pages/your_tenders_tablet_page.dart';
class YourTendersScreen extends StatefulWidget {
const YourTendersScreen({required this.status, super.key});
final String status;
@override
State<YourTendersScreen> createState() => _YourTendersScreenState();
}
class _YourTendersScreenState extends State<YourTendersScreen> {
late final YourTendersViewModel viewModel;
@override
void initState() {
super.initState();
viewModel = context.read<YourTendersViewModel>();
WidgetsBinding.instance.addPostFrameCallback((_) {
viewModel.setStatus(widget.status);
viewModel.callWithFilter();
});
}
@override
Widget build(BuildContext context) {
SizeConfig.init(context);
return const ResponsiveBuilder(
mobile: YourTendersMobilePage(),
tablet: YourTendersTabletPage(),
desktop: YourTendersDesktopPage(),
);
}
}