add shipments
This commit is contained in:
@@ -585,8 +585,7 @@ class _BoxEditorState extends State<BoxEditor> {
|
||||
DeliveryAddress deliveryAddress =
|
||||
await Navigator.push(
|
||||
context,
|
||||
BottomUpPageRoute(DeliveryAddressList(
|
||||
deliveryAddress: _deliveryAddress)),
|
||||
BottomUpPageRoute(DeliveryAddressList()),
|
||||
);
|
||||
setState(() {
|
||||
_deliveryAddress = deliveryAddress;
|
||||
|
||||
@@ -1,12 +1,14 @@
|
||||
import 'package:fcs/domain/entities/cargo.dart';
|
||||
import 'package:fcs/helpers/theme.dart';
|
||||
import 'package:fcs/localization/app_translations.dart';
|
||||
import 'package:fcs/pages/main/model/main_model.dart';
|
||||
import 'package:fcs/pages/main/util.dart';
|
||||
import 'package:fcs/pages/widgets/input_text.dart';
|
||||
import 'package:fcs/pages/widgets/local_dropdown.dart';
|
||||
import 'package:fcs/pages/widgets/local_text.dart';
|
||||
import 'package:fcs/pages/widgets/progress.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
class CargoTypeEditor extends StatefulWidget {
|
||||
final Cargo cargo;
|
||||
@@ -17,7 +19,6 @@ class CargoTypeEditor extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _CargoTypeEditorState extends State<CargoTypeEditor> {
|
||||
TextEditingController _typeController = new TextEditingController();
|
||||
TextEditingController _weightController = new TextEditingController();
|
||||
|
||||
bool _isLoading = false;
|
||||
@@ -28,11 +29,17 @@ class _CargoTypeEditorState extends State<CargoTypeEditor> {
|
||||
super.initState();
|
||||
if (widget.cargo != null) {
|
||||
_cargo = widget.cargo;
|
||||
_typeController.text = _cargo.type;
|
||||
_weightController.text = _cargo.weight.toString();
|
||||
} else {
|
||||
_loadDefalut();
|
||||
}
|
||||
}
|
||||
|
||||
_loadDefalut() {
|
||||
MainModel mainModel = Provider.of<MainModel>(context, listen: false);
|
||||
_cargo = mainModel.setting.defaultCargoType;
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
super.dispose();
|
||||
@@ -40,20 +47,33 @@ class _CargoTypeEditorState extends State<CargoTypeEditor> {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final typeBox = InputText(
|
||||
labelTextKey: 'cargo.type',
|
||||
iconData: Icons.text_format,
|
||||
controller: _typeController);
|
||||
MainModel mainModel = Provider.of<MainModel>(context);
|
||||
List<Cargo> cargos = mainModel.setting.cargoTypesList;
|
||||
|
||||
final rateBox = InputText(
|
||||
labelTextKey: 'cargo.weight',
|
||||
iconData: FontAwesomeIcons.weightHanging,
|
||||
textInputType: TextInputType.number,
|
||||
controller: _weightController);
|
||||
|
||||
|
||||
var cargoTypeBox = LocalDropdown<Cargo>(
|
||||
callback: (v) {
|
||||
setState(() {
|
||||
_cargo = v;
|
||||
});
|
||||
},
|
||||
iconData: Icons.text_format,
|
||||
selectedValue: _cargo,
|
||||
values: cargos,
|
||||
);
|
||||
|
||||
final saveBtn = fcsButton(
|
||||
context,
|
||||
getLocalString(context, 'box.cargo.save.btn'),
|
||||
callack: () {},
|
||||
callack: () {
|
||||
_cargo.weight = int.parse(_weightController.text, onError: (s) => 0);
|
||||
Navigator.pop(context, _cargo);
|
||||
},
|
||||
);
|
||||
return LocalProgress(
|
||||
inAsyncCall: _isLoading,
|
||||
@@ -76,7 +96,7 @@ class _CargoTypeEditorState extends State<CargoTypeEditor> {
|
||||
padding: EdgeInsets.all(18),
|
||||
child: ListView(
|
||||
children: <Widget>[
|
||||
typeBox,
|
||||
cargoTypeBox,
|
||||
rateBox,
|
||||
SizedBox(height: 40),
|
||||
saveBtn,
|
||||
|
||||
Reference in New Issue
Block a user