update carton and cargo type
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
// ignore_for_file: use_build_context_synchronously
|
||||
|
||||
import 'package:fcs/domain/entities/rate.dart';
|
||||
import 'package:fcs/helpers/theme.dart';
|
||||
import 'package:fcs/pages/rates/model/shipment_rate_model.dart';
|
||||
@@ -5,13 +7,14 @@ import 'package:fcs/pages/widgets/input_text.dart';
|
||||
import 'package:fcs/pages/widgets/local_app_bar.dart';
|
||||
import 'package:fcs/pages/widgets/progress.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_vector_icons/flutter_vector_icons.dart';
|
||||
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
import '../main/util.dart';
|
||||
|
||||
class ShipmentRatesEdit extends StatefulWidget {
|
||||
ShipmentRatesEdit();
|
||||
const ShipmentRatesEdit({super.key});
|
||||
|
||||
@override
|
||||
_ShipmentRatesEditState createState() => _ShipmentRatesEditState();
|
||||
@@ -19,11 +22,11 @@ class ShipmentRatesEdit extends StatefulWidget {
|
||||
|
||||
class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
bool _isLoading = false;
|
||||
TextEditingController _minWeight = new TextEditingController();
|
||||
TextEditingController _deliveryFee = new TextEditingController();
|
||||
TextEditingController _volumetricRatio = new TextEditingController();
|
||||
TextEditingController _diffDiscountWeight = new TextEditingController();
|
||||
TextEditingController _diffWeightRate = new TextEditingController();
|
||||
TextEditingController minWeight = TextEditingController();
|
||||
TextEditingController deliveryFee = TextEditingController();
|
||||
TextEditingController volumetricRatio = TextEditingController();
|
||||
TextEditingController diffDiscountWeight = TextEditingController();
|
||||
TextEditingController diffWeightRate = TextEditingController();
|
||||
|
||||
late Rate rate;
|
||||
|
||||
@@ -34,11 +37,11 @@ class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
Provider.of<ShipmentRateModel>(context, listen: false);
|
||||
rate = shipmentRateModel.rate;
|
||||
|
||||
_minWeight.text = rate.freeDeliveryWeight.toStringAsFixed(2);
|
||||
_deliveryFee.text = rate.deliveryFee.toStringAsFixed(2);
|
||||
_volumetricRatio.text = rate.volumetricRatio.toStringAsFixed(2);
|
||||
_diffDiscountWeight.text = rate.diffDiscountWeight.toStringAsFixed(2);
|
||||
_diffWeightRate.text = rate.diffWeightRate.toStringAsFixed(2);
|
||||
minWeight.text = rate.freeDeliveryWeight.toStringAsFixed(2);
|
||||
deliveryFee.text = rate.deliveryFee.toStringAsFixed(2);
|
||||
volumetricRatio.text = rate.volumetricRatio.toStringAsFixed(2);
|
||||
diffDiscountWeight.text = rate.diffDiscountWeight.toStringAsFixed(2);
|
||||
diffWeightRate.text = rate.diffWeightRate.toStringAsFixed(2);
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -51,23 +54,27 @@ class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
final minWigBox = InputText(
|
||||
labelTextKey: 'rate.min_weight',
|
||||
iconData: FontAwesomeIcons.weightHanging,
|
||||
controller: _minWeight);
|
||||
controller: minWeight);
|
||||
|
||||
final feeBox = InputText(
|
||||
labelTextKey: 'rate.delivery_fee',
|
||||
iconData: Icons.attach_money,
|
||||
controller: _deliveryFee);
|
||||
iconData: Fontisto.dollar,
|
||||
controller: deliveryFee);
|
||||
|
||||
final ratioBox = InputText(
|
||||
labelTextKey: 'rate.volumetric_ratio',
|
||||
iconData: FontAwesomeIcons.weightHanging,
|
||||
controller: _volumetricRatio);
|
||||
controller: volumetricRatio);
|
||||
|
||||
final diffDiscountWeightBox = InputText(
|
||||
labelTextKey: 'rate.diff_discount_weight',
|
||||
iconData: FontAwesomeIcons.weightHanging,
|
||||
controller: _diffDiscountWeight);
|
||||
controller: diffDiscountWeight);
|
||||
|
||||
final diffWeightRateBox = InputText(
|
||||
labelTextKey: 'rate.diff_weight_rate',
|
||||
iconData: Icons.attach_money,
|
||||
controller: _diffWeightRate);
|
||||
iconData: Fontisto.dollar,
|
||||
controller: diffWeightRate);
|
||||
|
||||
return LocalProgress(
|
||||
inAsyncCall: _isLoading,
|
||||
@@ -105,7 +112,7 @@ class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
),
|
||||
fcsButton(context, getLocalString(context, "btn.save"),
|
||||
callack: _save),
|
||||
SizedBox(height: 10)
|
||||
SizedBox(height: 30)
|
||||
],
|
||||
),
|
||||
),
|
||||
@@ -120,15 +127,14 @@ class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
try {
|
||||
var shipmentRateModel =
|
||||
Provider.of<ShipmentRateModel>(context, listen: false);
|
||||
Rate _rate = new Rate(
|
||||
deliveryFee: double.parse(_deliveryFee.text),
|
||||
freeDeliveryWeight: double.parse(_minWeight.text),
|
||||
volumetricRatio: double.parse(_volumetricRatio.text),
|
||||
diffDiscountWeight: double.parse(_diffDiscountWeight.text),
|
||||
diffWeightRate: double.parse(_diffWeightRate.text));
|
||||
Rate r = new Rate();
|
||||
print('_rate =>$r');
|
||||
await shipmentRateModel.updateRate(_rate);
|
||||
Rate rate = Rate(
|
||||
deliveryFee: double.parse(deliveryFee.text),
|
||||
freeDeliveryWeight: double.parse(minWeight.text),
|
||||
volumetricRatio: double.parse(volumetricRatio.text),
|
||||
diffDiscountWeight: double.parse(diffDiscountWeight.text),
|
||||
diffWeightRate: double.parse(diffWeightRate.text));
|
||||
|
||||
await shipmentRateModel.updateRate(rate);
|
||||
Navigator.pop(context);
|
||||
} catch (e) {
|
||||
showMsgDialog(context, "Error", e.toString());
|
||||
@@ -140,13 +146,13 @@ class _ShipmentRatesEditState extends State<ShipmentRatesEdit> {
|
||||
}
|
||||
|
||||
isDataChanged() {
|
||||
Rate _rate = new Rate(
|
||||
deliveryFee: double.parse(_deliveryFee.text),
|
||||
freeDeliveryWeight: double.parse(_minWeight.text),
|
||||
volumetricRatio: double.parse(_volumetricRatio.text),
|
||||
diffDiscountWeight: double.parse(_diffDiscountWeight.text),
|
||||
diffWeightRate: double.parse(_diffWeightRate.text),
|
||||
Rate rate = Rate(
|
||||
deliveryFee: double.parse(deliveryFee.text),
|
||||
freeDeliveryWeight: double.parse(minWeight.text),
|
||||
volumetricRatio: double.parse(volumetricRatio.text),
|
||||
diffDiscountWeight: double.parse(diffDiscountWeight.text),
|
||||
diffWeightRate: double.parse(diffWeightRate.text),
|
||||
);
|
||||
return rate.isChangedForEdit(_rate);
|
||||
return rate.isChangedForEdit(rate);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user