import 'package:fcs/model/main_model.dart'; import 'package:fcs/model/pickup_model.dart'; import 'package:fcs/vo/package.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:provider/provider.dart'; import '../theme/theme.dart'; class PackageEditor extends StatefulWidget { final Package package; PackageEditor({this.package}); @override _PackageEditorState createState() => _PackageEditorState(); } class _PackageEditorState extends State { TextEditingController _addressEditingController = new TextEditingController(); TextEditingController _fromTimeEditingController = new TextEditingController(); TextEditingController _toTimeEditingController = new TextEditingController(); TextEditingController _noOfPackageEditingController = new TextEditingController(); TextEditingController _weightEditingController = new TextEditingController(); Package _package; bool _isLoading = false; @override void initState() { super.initState(); if (widget.package != null) { _package = widget.package; // _addressEditingController.text = _pickUp.address; // _fromTimeEditingController.text = _pickUp.fromTime; // _toTimeEditingController.text = _pickUp.toTime; // _noOfPackageEditingController.text = _pickUp.numberOfPackage.toString(); // _weightEditingController.text = _pickUp.weight.toString(); } } @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: [ DropdownButtonFormField( decoration: InputDecoration( fillColor: Colors.white, labelText: 'Shipment Number', icon: Icon(Icons.pages) // prefixIcon: Icon(Icons.play_arrow) ), items: ["A102", "A103"] .map((e) => DropdownMenuItem(child: Text(e), value: e)) .toList(), onChanged: (map) => {}, ), TextFormField( initialValue: "FCS383-283-1", decoration: InputDecoration( fillColor: Colors.white, labelText: 'FCS_ID', hintText: 'FCS_ID', filled: true, icon: Icon( Icons.account_box, ), suffixIcon: IconButton( icon: Icon(Icons.search), onPressed: () {})), ), DropdownButtonFormField( decoration: InputDecoration( fillColor: Colors.white, labelText: 'Cargo Type', icon: Icon(Icons.pages) // prefixIcon: Icon(Icons.play_arrow) ), items: ["General", "Medicine", "Dangerous"] .map((e) => DropdownMenuItem(child: Text(e), value: e)) .toList(), onChanged: (map) => {}, ), TextFormField( initialValue: "0", textAlign: TextAlign.end, decoration: InputDecoration( fillColor: Colors.white, labelText: 'Weight', filled: true, icon: Icon( FontAwesomeIcons.weightHanging, ), )), TextFormField( initialValue: "0", textAlign: TextAlign.end, decoration: InputDecoration( fillColor: Colors.white, labelText: 'Rate', filled: true, icon: Icon( FontAwesomeIcons.tag, ), )), TextFormField( initialValue: "0", textAlign: TextAlign.end, decoration: InputDecoration( fillColor: Colors.white, labelText: 'Amount', filled: true, icon: Icon( FontAwesomeIcons.moneyBill, ), )), TextFormField( initialValue: "P0203", decoration: InputDecoration( fillColor: Colors.white, labelText: 'Pickup ID', filled: true, icon: Icon( Icons.account_box, ), suffixIcon: IconButton( icon: Icon(Icons.search), onPressed: () {})), ), ]), )), widget.package == null ? Align( alignment: Alignment.bottomCenter, child: Center( child: Container( width: 250, child: FlatButton( child: Text('Create package'), color: primaryColor, textColor: Colors.white, onPressed: () { Navigator.pop(context); }, ), ))) : Container( child: Column( children: [ Align( alignment: Alignment.bottomCenter, child: Center( child: Container( width: 250, child: FlatButton( child: Text('Save package'), color: primaryColor, textColor: Colors.white, onPressed: () { Navigator.pop(context); }, ), ))), ], )) ], ), ), ), ); } }