Merge pull request 'fixed bugs' (#191) from bug_fixes into main
Reviewed-on: https://repo.ravanertebat.com/TM/tm_app/pulls/191
This commit is contained in:
@@ -149,6 +149,8 @@ class HomeViewModel with ChangeNotifier {
|
||||
}
|
||||
} else {
|
||||
_hasMore = false;
|
||||
_isLoadingMore = false;
|
||||
getHomeRecommendTenders(reset: true);
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
@@ -21,9 +21,7 @@ class ProfileViewModel with ChangeNotifier {
|
||||
required AuthViewModel authViewModel,
|
||||
}) : _profileRepository = profileRepository,
|
||||
_authRepository = authRepository,
|
||||
_authViewModel = authViewModel {
|
||||
getCompanyProfile();
|
||||
}
|
||||
_authViewModel = authViewModel;
|
||||
|
||||
bool _isLoading = false;
|
||||
String? _errorMessage;
|
||||
|
||||
@@ -20,7 +20,10 @@ class CompletionOfDocumentsMobilePage extends StatelessWidget {
|
||||
),
|
||||
body: SafeArea(
|
||||
child: SingleChildScrollView(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.0.w(), vertical: 12.0.h()),
|
||||
padding: EdgeInsets.symmetric(
|
||||
horizontal: 16.0.w(),
|
||||
vertical: 12.0.h(),
|
||||
),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
@@ -115,8 +118,8 @@ class CompletionOfDocumentsMobilePage extends StatelessWidget {
|
||||
status: 'Completed',
|
||||
statusColor: AppColors.green30,
|
||||
statusBackgroundColor: AppColors.green10,
|
||||
backgroundColor: AppColors.primary10,
|
||||
borderSideColor: AppColors.primary20,
|
||||
backgroundColor: AppColors.primary10Light,
|
||||
borderSideColor: AppColors.primary30,
|
||||
),
|
||||
_docCard(
|
||||
title: 'Tax Compliance Certificate',
|
||||
@@ -124,7 +127,7 @@ class CompletionOfDocumentsMobilePage extends StatelessWidget {
|
||||
status: 'Completed',
|
||||
statusColor: AppColors.green30,
|
||||
statusBackgroundColor: AppColors.green10,
|
||||
backgroundColor: AppColors.primary10,
|
||||
backgroundColor: AppColors.primary10Light,
|
||||
borderSideColor: AppColors.primary30,
|
||||
),
|
||||
_docCard(
|
||||
@@ -161,7 +164,7 @@ class CompletionOfDocumentsMobilePage extends StatelessWidget {
|
||||
borderSideColor: AppColors.red10,
|
||||
),
|
||||
SizedBox(height: 16.0.h()),
|
||||
|
||||
|
||||
Text(
|
||||
CompletionOfDocumentsStrings.setDeadline,
|
||||
style: TextStyle(
|
||||
@@ -198,7 +201,7 @@ class CompletionOfDocumentsMobilePage extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
SizedBox(height: 16.0.h()),
|
||||
|
||||
|
||||
Container(
|
||||
padding: const EdgeInsets.all(12),
|
||||
height: 100.0.h(),
|
||||
|
||||
@@ -9,6 +9,7 @@ import 'package:tm_app/views/shared/select_submission_bottom_sheet.dart';
|
||||
|
||||
import '../../../core/constants/tender_approval_status.dart';
|
||||
import '../../../core/constants/tender_submision_mode.dart';
|
||||
import '../../../core/routes/app_routes.dart';
|
||||
import '../../../data/services/model/tender_data/tender_data.dart';
|
||||
import '../../shared/select_submission_dialog.dart';
|
||||
import '../strings/tender_details_strings.dart';
|
||||
@@ -61,18 +62,24 @@ class TenderDetailActions extends StatelessWidget {
|
||||
// tenderId: detail.id!,
|
||||
// submissionMode: value,
|
||||
// );
|
||||
Future.delayed(Duration.zero, () {
|
||||
showModalBottomSheet(
|
||||
isDismissible: true,
|
||||
// ignore: use_build_context_synchronously
|
||||
context: context,
|
||||
builder: (context) {
|
||||
return SelectMeetingTimeBottomSheet(
|
||||
onConfirm: (meetingTime) {},
|
||||
);
|
||||
},
|
||||
);
|
||||
});
|
||||
if (value ==
|
||||
TenderSubmissionMode.selfApply.value) {
|
||||
const CompletionOfDocumentsMobileRouteData()
|
||||
.push(context);
|
||||
} else {
|
||||
Future.delayed(Duration.zero, () {
|
||||
showModalBottomSheet(
|
||||
isDismissible: true,
|
||||
// ignore: use_build_context_synchronously
|
||||
context: context,
|
||||
builder: (context) {
|
||||
return SelectMeetingTimeBottomSheet(
|
||||
onConfirm: (meetingTime) {},
|
||||
);
|
||||
},
|
||||
);
|
||||
});
|
||||
}
|
||||
},
|
||||
);
|
||||
},
|
||||
|
||||
@@ -18,50 +18,3 @@ class NotificationScreen extends StatelessWidget {
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// class NotificationModel {
|
||||
// final String title;
|
||||
// final String description;
|
||||
// final String time;
|
||||
// final String type;
|
||||
|
||||
// NotificationModel({
|
||||
// required this.title,
|
||||
// required this.description,
|
||||
// required this.time,
|
||||
// required this.type,
|
||||
// });
|
||||
// }
|
||||
|
||||
// final List<NotificationModel> notifications = [
|
||||
// NotificationModel(
|
||||
// title: 'New Tender Invitation',
|
||||
// description: 'You’ve been invited to tender #A-778.',
|
||||
// time: '5 Min',
|
||||
// type: 'new',
|
||||
// ),
|
||||
// NotificationModel(
|
||||
// title: 'New Tender Invitation',
|
||||
// description: 'You’ve been invited to tender #N-3762.',
|
||||
// time: '28 Min',
|
||||
// type: 'new',
|
||||
// ),
|
||||
// NotificationModel(
|
||||
// title: 'Tender Submitted',
|
||||
// description: 'You submitted bid for tender #B-554.',
|
||||
// time: '28 Min',
|
||||
// type: 'submit',
|
||||
// ),
|
||||
// NotificationModel(
|
||||
// title: 'New Tender Invitation',
|
||||
// description: 'You’ve been invited to tender #N-3762.',
|
||||
// time: '28 Min',
|
||||
// type: 'new',
|
||||
// ),
|
||||
// NotificationModel(
|
||||
// title: 'Missing Documents',
|
||||
// description: 'Please upload your company registration certificate.',
|
||||
// time: '2 days ago',
|
||||
// type: 'missing',
|
||||
// ),
|
||||
// ];
|
||||
|
||||
@@ -1,15 +1,35 @@
|
||||
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/profile_view_model.dart';
|
||||
import 'package:tm_app/views/shared/responsive_builder.dart';
|
||||
|
||||
import '../pages/d_profile_page.dart';
|
||||
import '../pages/m_profile_page.dart';
|
||||
import '../pages/t_profile_page.dart';
|
||||
|
||||
class ProfileScreen extends StatelessWidget {
|
||||
class ProfileScreen extends StatefulWidget {
|
||||
const ProfileScreen({super.key});
|
||||
|
||||
@override
|
||||
State<ProfileScreen> createState() => _ProfileScreenState();
|
||||
}
|
||||
|
||||
class _ProfileScreenState extends State<ProfileScreen> {
|
||||
late ProfileViewModel viewModel;
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
viewModel = context.read<ProfileViewModel>();
|
||||
WidgetsBinding.instance.addPostFrameCallback((_) {
|
||||
viewModel.getCompanyProfile();
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
SizeConfig.init(context);
|
||||
return const ResponsiveBuilder(
|
||||
mobile: MobileProfilePage(),
|
||||
tablet: TabletProfilePage(),
|
||||
|
||||
@@ -49,18 +49,14 @@ class _TabletTendersPageState extends State<TabletTendersPage> {
|
||||
viewModel.isLoading == false) {
|
||||
return const Center(child: Text(CommonStrings.noData));
|
||||
}
|
||||
return Expanded(
|
||||
child: SingleChildScrollView(
|
||||
child: SafeArea(
|
||||
child: Padding(
|
||||
padding: EdgeInsetsDirectional.only(
|
||||
end: 24.0.w(),
|
||||
top: 128.0.h(),
|
||||
),
|
||||
child: MainTendersSlider(
|
||||
tenders: viewModel.tendersResponse?.data?.tenders ?? [],
|
||||
),
|
||||
),
|
||||
return SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: EdgeInsetsDirectional.only(
|
||||
end: 24.0.w(),
|
||||
top: 128.0.h(),
|
||||
),
|
||||
child: MainTendersSlider(
|
||||
tenders: viewModel.tendersResponse?.data?.tenders ?? [],
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:tm_app/core/utils/size_config.dart';
|
||||
import 'package:tm_app/views/shared/responsive_builder.dart';
|
||||
|
||||
import '../../../view_models/tenders_view_model.dart';
|
||||
@@ -28,6 +29,7 @@ class _TendersScreenState extends State<TendersScreen> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
SizeConfig.init(context);
|
||||
return const ResponsiveBuilder(
|
||||
mobile: MobileTendersPage(),
|
||||
tablet: TabletTendersPage(),
|
||||
|
||||
Reference in New Issue
Block a user