diff --git a/lib/views/your_tenders/widgets/liked_disliked_tenders_list.dart b/lib/views/your_tenders/widgets/liked_disliked_tenders_list.dart index 3ba3f28..2613cd1 100644 --- a/lib/views/your_tenders/widgets/liked_disliked_tenders_list.dart +++ b/lib/views/your_tenders/widgets/liked_disliked_tenders_list.dart @@ -87,6 +87,8 @@ class _LikedDislikedTendersListState extends State { child: TenderCard( tender: feedback.tender!, isDesktop: widget.isDesctop, + status: widget.status, + submissionMode: '', ), ); }, diff --git a/lib/views/your_tenders/widgets/tender_card.dart b/lib/views/your_tenders/widgets/tender_card.dart index 7501949..361ce29 100644 --- a/lib/views/your_tenders/widgets/tender_card.dart +++ b/lib/views/your_tenders/widgets/tender_card.dart @@ -5,6 +5,7 @@ import 'package:tm_app/data/services/model/tender_data/tender_data.dart'; import '../../../core/constants/assets.dart'; import '../../../core/constants/tender_approval_status.dart'; +import '../../../core/constants/tender_feedback.dart'; import '../../../core/theme/colors.dart'; import '../../../core/utils/size_config.dart'; import '../../shared/flag.dart'; @@ -12,36 +13,41 @@ import '../../shared/flag.dart'; class TenderCard extends StatelessWidget { final bool isDesktop; final TenderData tender; + final String status; + final String submissionMode; - const TenderCard({required this.isDesktop, required this.tender, super.key}); + const TenderCard({ + required this.isDesktop, + required this.tender, + required this.status, + required this.submissionMode, + super.key, + }); @override Widget build(BuildContext context) { // Determine styling based on tender status - Color backgroundColor; - Color borderColor; + Color backgroundColor = AppColors.grey0; + Color borderColor = AppColors.grey30; String? statusIcon; - Color statusCardColor; - Color statusTextColor; + Color statusCardColor = AppColors.grey0; + Color statusTextColor = AppColors.grey60; - if (tender.status == 'Won') { + if (status == TenderFeedback.liked.value || + status == TenderApprovalStatus.submitted.value) { backgroundColor = AppColors.green0; borderColor = AppColors.green10; statusIcon = AssetsManager.tickCircle; statusCardColor = AppColors.green20; statusTextColor = AppColors.green30; - } else if (tender.status == TenderApprovalStatus.submitted.value) { - backgroundColor = AppColors.grey0; - borderColor = AppColors.grey30; - statusIcon = null; - statusCardColor = AppColors.green20; - statusTextColor = AppColors.green30; - } else { - backgroundColor = AppColors.red0.withValues(alpha: 0.2); - borderColor = AppColors.red0; + } + if (status == TenderFeedback.disliked.value || + status == TenderApprovalStatus.rejected.value) { + backgroundColor = AppColors.red0; + borderColor = AppColors.red10; statusIcon = AssetsManager.closeCircle; - statusCardColor = AppColors.red0; - statusTextColor = AppColors.red10; + statusCardColor = AppColors.red10; + statusTextColor = AppColors.red20; } return Container( @@ -50,7 +56,7 @@ class TenderCard extends StatelessWidget { margin: EdgeInsets.only( left: 24.0.w(), right: 24.0.w(), - bottom: 24.0.h(), + bottom: 12.0.h(), ), decoration: BoxDecoration( color: backgroundColor, @@ -99,7 +105,7 @@ class TenderCard extends StatelessWidget { ), SizedBox(width: 4.0.w()), Text( - tender.status!, + status, style: TextStyle( color: statusTextColor, fontSize: 12.0.sp(), @@ -170,25 +176,29 @@ class TenderCard extends StatelessWidget { ), // Self Control button - Container( - padding: EdgeInsets.symmetric( - horizontal: 16.0.w(), - vertical: 4.0.h(), - ), - decoration: BoxDecoration( - color: AppColors.grey20, - borderRadius: BorderRadius.circular(88), - border: Border.all(color: AppColors.grey40), - ), - child: Text( - tender.procurementTypeCode!, - style: TextStyle( - color: AppColors.grey60, - fontSize: 12.0.sp(), - fontWeight: FontWeight.w500, + status == TenderApprovalStatus.rejected.value + ? SizedBox.shrink() + : Container( + padding: EdgeInsets.symmetric( + horizontal: 16.0.w(), + vertical: 4.0.h(), + ), + decoration: BoxDecoration( + color: AppColors.grey20, + borderRadius: BorderRadius.circular(88), + border: Border.all(color: AppColors.grey40), + ), + child: Text( + submissionMode.isNotEmpty + ? submissionMode + : tender.procurementTypeCode!, + style: TextStyle( + color: AppColors.grey60, + fontSize: 12.0.sp(), + fontWeight: FontWeight.w500, + ), + ), ), - ), - ), ], ), ], diff --git a/lib/views/your_tenders/widgets/tenders_submitted.dart b/lib/views/your_tenders/widgets/tenders_submitted.dart index 9f2cf39..6141b10 100644 --- a/lib/views/your_tenders/widgets/tenders_submitted.dart +++ b/lib/views/your_tenders/widgets/tenders_submitted.dart @@ -79,6 +79,8 @@ class _TendersSubmittedState extends State { return TenderCard( tender: tender.tender!, isDesktop: widget.isDesktop, + status: tender.status, + submissionMode: tender.submissionMode!, ); } else { return Padding(