import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:test_sa/controllers/localization/localization.dart'; import 'package:test_sa/extensions/context_extension.dart'; import 'package:test_sa/models/device/device_transfer_info.dart'; import 'package:test_sa/views/app_style/colors.dart'; import 'package:test_sa/views/widgets/loaders/image_loader.dart'; import 'package:test_sa/views/widgets/requests/info_row.dart'; import 'package:test_sa/views/widgets/requests/request_status.dart'; import '../../../controllers/providers/api/user_provider.dart'; import '../images/multi_image_picker.dart'; class DeviceTransferInfoSection extends StatelessWidget { final DeviceTransferInfo info; final bool isSender; final VoidCallback onEdit; const DeviceTransferInfoSection({Key key, this.info, this.onEdit, this.isSender}) : super(key: key); @override Widget build(BuildContext context) { info.userName = Provider.of(context).user.username; info.attachments ??= []; return Column( children: [ RequestInfoRow( title: context.translation.hospital, info: info.client.name, ), RequestInfoRow( title: context.translation.department, info: info.department.name, ), // RequestInfoRow( // title: isSender ? "Sender Name " : "Receiver Name", // info: info.userName, // ), RequestInfoRow( title: context.translation.workingHours, info: info.workingHours, ), RequestInfoRow( title: context.translation.travelingHours, info: info.travelingHours, ), RequestInfoRow( title: "Comment", info: info.comment, ), RequestInfoRow( title: "Assigned Engineer", info: info.assignedEmployeeName, ), RequestInfoRow( title: "Signature", info: info.engSignature?.isEmpty != false ? context.translation.noDateFound : null, contentWidget: info.engSignature?.isEmpty != false ? null : ImageLoader(url: info.engSignature), ), Padding( padding: const EdgeInsets.symmetric(vertical: 16), child: MultiFilesPicker( label: "Attachments", files: info.attachments, enabled: false, ), ), RequestInfoRow( title: context.translation.status, infoWidget: StatusLabel(label: info.status?.name, backgroundColor: AColors.getGasStatusColor(info.status?.id)), ), ], ); } }