update pickup and box list

This commit is contained in:
Thinzar Win
2020-06-26 16:17:40 +06:30
parent 59cb172713
commit ace9254093
20 changed files with 1266 additions and 213 deletions

View File

@@ -1,10 +1,13 @@
import 'package:fcs/model/main_model.dart';
import 'package:fcs/model/shipment_model.dart';
import 'package:fcs/model_fcs/package_model.dart';
import 'package:fcs/pages/invoice/package_addition.dart';
import 'package:fcs/pages/shipping_address_editor.dart';
import 'package:fcs/pages/util.dart';
import 'package:fcs/vo/box.dart';
import 'package:fcs/vo/cargo.dart';
import 'package:fcs/vo/package.dart';
import 'package:fcs/vo/shipping_address.dart';
import 'package:fcs/widget/bottom_up_page_route.dart';
import 'package:fcs/widget/local_text.dart';
import 'package:fcs/widget/localization/app_translations.dart';
@@ -19,6 +22,7 @@ import 'package:timeline_list/timeline.dart';
import 'package:timeline_list/timeline_model.dart';
import '../theme/theme.dart';
import 'shipping_address_row.dart';
class BoxEditor extends StatefulWidget {
final Box box;
@@ -45,14 +49,15 @@ class _BoxEditorState extends State<BoxEditor> {
"assets/photos/3.jpg"
];
bool isNew;
bool isMixBox = false;
ShippingAddress _shippingAddress = new ShippingAddress();
@override
void initState() {
super.initState();
if (widget.box != null) {
_box = widget.box;
_shippingAddress = _box.shippingAddress;
isNew = false;
// _addressEditingController.text = _pickUp.address;
// _fromTimeEditingController.text = _pickUp.fromTime;
@@ -72,6 +77,9 @@ class _BoxEditorState extends State<BoxEditor> {
Cargo(type: 'Dangerous Cargo', weight: 30)
];
var shipmentModel = Provider.of<ShipmentModel>(context, listen: false);
_shippingAddress = shipmentModel.shippingAddresses[1];
isNew = true;
_box = Box(
rate: 0,
@@ -133,6 +141,7 @@ class _BoxEditorState extends State<BoxEditor> {
@override
Widget build(BuildContext context) {
var mainModel = Provider.of<MainModel>(context);
var shipmentModel = Provider.of<ShipmentModel>(context);
var images = isNew ? [] : _images;
return LocalProgress(
@@ -247,7 +256,7 @@ class _BoxEditorState extends State<BoxEditor> {
),
ExpansionTile(
title: Text(
'Packages',
'Cargo Types',
style: TextStyle(
color: primaryColor, fontWeight: FontWeight.bold),
),
@@ -333,7 +342,6 @@ class _BoxEditorState extends State<BoxEditor> {
),
),
),
mainModel.isOwner()
? Container(
padding: EdgeInsets.only(top: 20),
@@ -403,6 +411,39 @@ class _BoxEditorState extends State<BoxEditor> {
SizedBox(height: 25),
],
),
ExpansionTile(
title: Text(
'Shipping Address',
style: TextStyle(
color: primaryColor, fontWeight: FontWeight.bold),
),
children: [
ShippingAddressRow(shippingAddress: _shippingAddress),
Container(
padding:
EdgeInsets.only(top: 20, bottom: 15, right: 15),
child: Align(
alignment: Alignment.bottomRight,
child: Container(
width: 130,
height: 40,
child: FloatingActionButton.extended(
materialTapTargetSize:
MaterialTapTargetSize.shrinkWrap,
onPressed: () {},
icon: Icon(Icons.add),
label: Text(
'Add Shipping\nAddress',
style: TextStyle(fontSize: 12),
),
backgroundColor: primaryColor,
),
),
),
),
SizedBox(height: 25),
],
),
isNew
? Container()
: ExpansionTile(
@@ -459,8 +500,24 @@ class _BoxEditorState extends State<BoxEditor> {
},
),
))),
widget.box.status == 'Arrived'
? Align(
alignment: Alignment.bottomCenter,
child: Center(
child: Container(
width: 250,
child: FlatButton(
child: Text('Deliver'),
color: primaryColor,
textColor: Colors.white,
onPressed: () {
Navigator.pop(context);
},
),
)))
: Container(),
],
))
)),
],
),
),
@@ -488,4 +545,14 @@ class _BoxEditorState extends State<BoxEditor> {
);
}).toList();
}
List<Widget> getAddressList(
BuildContext context, List<ShippingAddress> addresses) {
return addresses.asMap().entries.map((s) {
return InkWell(
onTap: () {},
child: ShippingAddressRow(shippingAddress: s.value, index: s.key),
);
}).toList();
}
}