import 'package:flutter/material.dart'; import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/extensions/int_extensions.dart'; import 'package:test_sa/extensions/string_extensions.dart'; import 'package:test_sa/extensions/widget_extensions.dart'; import 'package:test_sa/views/app_style/sizing.dart'; import '../../../extensions/text_extensions.dart'; import '../../../models/new_models/gas_refill_model.dart'; import '../../app_style/colors.dart'; import '../requests/request_status.dart'; class GasRefillItem extends StatelessWidget { final int index; final GasRefillModel item; final Function(GasRefillModel) onPressed; const GasRefillItem({Key key, this.item, this.onPressed, this.index}) : super(key: key); @override Widget build(BuildContext context) { return Padding( padding: const EdgeInsets.symmetric(vertical: 4), child: ElevatedButton( style: ElevatedButton.styleFrom( padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 8), backgroundColor: Colors.white, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(AppStyle.getBorderRadius(context)), ), ), onPressed: () { onPressed(item); }, child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Row( crossAxisAlignment: CrossAxisAlignment.start, children: [ /// TBD // StatusLabel( // label: , // id: , // textColor: AColors.getPriorityStatusTextColor(), // backgroundColor: AColors.getPriorityStatusColor()), 8.width, StatusLabel(label: item.status.name, textColor: AColors.getRequestStatusTextColor(item.status.value), backgroundColor: AColors.getRequestStatusColor(item.status.value)), 1.width.expanded, Text(item.startDate != null ?item.startDate.toServiceRequestCardFormat:"", textAlign: TextAlign.end, style: AppTextStyles.tinyFont.copyWith(color: const Color(0xFF3B3D4A))), ], ), 8.height, Text(context.translation.gasRefillRequest, style: AppTextStyles.heading5.copyWith(color: const Color(0xFF3B3D4A))), Text( '${context.translation.gasType}: ${item.gazRefillDetails[0].gasType.name}', style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)), ), Text( '${context.translation.site}: ${item.site.name}', style: AppTextStyles.bodyText.copyWith(color: Color(0xFF757575)), ), 8.height, Row( mainAxisSize: MainAxisSize.min, children: [ Text( context.translation.viewDetails, style: AppTextStyles.bodyText.copyWith(color: const Color(0xFF4A8DB7)), ), 4.width, const Icon( Icons.arrow_forward, color: Color(0xFF4A8DB7), size: 14, ) ], ), // Row( // children: [ // Expanded( // child: Column( // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // Text( // item.title ?? "-----", // style: Theme.of(context).textTheme.titleLarge.copyWith(color: onItemColor, fontSize: 16, fontWeight: FontWeight.bold), // ), // Row( // children: [ // Expanded( // child: Text( // subtitle.hospital, // style: Theme.of(context).textTheme.titleSmall.copyWith( // color: onItemColor, // ), // ), // ), // if (item.clientName != null) // Text( // item.clientName, // style: Theme.of(context).textTheme.titleSmall.copyWith( // color: onItemColor, // ), // ), // ], // ), // Divider(color: onItemColor), // Row( // children: [ // Expanded( // child: Text(subtitle.status, style: Theme.of(context).textTheme.titleSmall.copyWith(color: onItemColor)), // ), // if (item.status?.id != null) StatusLabel(label: item.status.name, color: AColors.getGasStatusColor(item.status.id)), // ], // ), // if (item?.expectedDate != null) Divider(color: onItemColor), // if (item?.expectedDate != null) // Row( // mainAxisAlignment: MainAxisAlignment.spaceBetween, // children: [ // Text("Expected Date", style: Theme.of(context).textTheme.titleSmall.copyWith(color: onItemColor)), // Text(item.expectedDate.toIso8601String().split("T").first, style: Theme.of(context).textTheme.titleSmall.copyWith(color: onItemColor)), // ], // ), // if (item?.details?.isNotEmpty ?? false) Divider(color: onItemColor), // Row( // mainAxisAlignment: MainAxisAlignment.spaceBetween, // crossAxisAlignment: CrossAxisAlignment.start, // children: [ // if (item?.details?.isNotEmpty ?? false) Text("Gas Type", style: Theme.of(context).textTheme.titleSmall.copyWith(color: onItemColor)), // Column( // crossAxisAlignment: CrossAxisAlignment.end, // children: item.details // .map( // (gas) => gas?.type?.name?.isNotEmpty ?? false // ? Text(gas?.type?.name, style: Theme.of(context).textTheme.titleSmall.copyWith(color: onItemColor)) // : const SizedBox.shrink(), // ) // .toList(), // ) // ], // ), // ], // ), // ), // ], // ), ], ), ), ); } }