import 'package:fcs/model/main_model.dart'; import 'package:fcs/model/pickup_model.dart'; import 'package:fcs/fcs/common/theme.dart'; import 'package:fcs/vo/package.dart'; import 'package:fcs/widget/label_widgets.dart'; import 'package:fcs/widget/localization/app_translations.dart'; import 'package:fcs/widget/progress.dart'; import 'package:flutter/material.dart'; import 'package:font_awesome_flutter/font_awesome_flutter.dart'; import 'package:intl/intl.dart'; import 'package:provider/provider.dart'; class PackageInfo extends StatefulWidget { final Package package; PackageInfo({this.package}); @override _PackageInfoState createState() => _PackageInfoState(); } class _PackageInfoState extends State { var dateFormatter = new DateFormat('dd MMM yyyy'); Package _package; bool _isLoading = false; @override void initState() { super.initState(); if (widget.package != null) { _package = widget.package; } } @override void dispose() { super.dispose(); } @override Widget build(BuildContext context) { return LocalProgress( inAsyncCall: _isLoading, child: Scaffold( appBar: AppBar( centerTitle: true, leading: new IconButton( icon: new Icon(Icons.close), onPressed: () => Navigator.of(context).pop(), ), backgroundColor: primaryColor, title: Text(AppTranslations.of(context).text("package.edit.title")), ), body: Card( child: Column( children: [ Expanded( child: Padding( padding: const EdgeInsets.all(10.0), child: ListView(children: [ Container( padding: EdgeInsets.only(top: 10), child: Row( children: [ Icon( Icons.calendar_today, ), Padding( padding: const EdgeInsets.only(right: 8.0, left: 15), child: labeledText( context, dateFormatter.format(_package.arrivedDate), "package.arrival.date"), ), ], ), ), Container( padding: EdgeInsets.only(top: 10), child: Row( children: [ Icon(Icons.pages), Padding( padding: const EdgeInsets.only(right: 8.0, left: 15), child: labeledText(context, _package.packageNumber, "package.number"), ), ], ), ), Container( padding: EdgeInsets.only(top: 10), child: Row( children: [ Icon(FontAwesomeIcons.weightHanging), Padding( padding: const EdgeInsets.only(right: 8.0, left: 15), child: labeledText( context, "${_package.weight.toString()} lb", "package.weight"), ), ], ), ), Container( padding: EdgeInsets.only(top: 10), child: Row( children: [ Icon(FontAwesomeIcons.tag), Padding( padding: const EdgeInsets.only(right: 8.0, left: 15), child: labeledText(context, _package.rate.toString(), "package.rate"), ), ], ), ), Container( padding: EdgeInsets.only(top: 10), child: Row( children: [ Icon(FontAwesomeIcons.moneyBill), Padding( padding: const EdgeInsets.only(right: 8.0, left: 15), child: labeledText( context, _package.price == null ? "" : "\$ " + _package.price.toString(), "package.amount"), ), ], ), ) ]), )), ], ), ), ), ); } }