This commit is contained in:
phyothandar
2021-09-13 09:53:27 +06:30
8 changed files with 39 additions and 33 deletions

View File

@@ -4,17 +4,17 @@ import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:fcs/data/services/services.dart';
import 'package:fcs/domain/constants.dart';
import 'package:fcs/domain/entities/carton.dart';
import 'package:fcs/domain/vo/message.dart';
import 'package:fcs/helpers/paginator.dart';
import 'package:fcs/pages/main/model/base_model.dart';
import 'package:logging/logging.dart';
class DeliveryModel extends BaseModel {
final log = Logger('DeliveryModel');
List<Carton> get cartons =>
_selectedIndex == 1 ? _cartons : List<Carton>.from(_delivered.values);
List<Carton> get cartons => _selectedIndex == 1
? _cartons
: List<Carton>.from(_delivered?.values ?? []);
late Paginator _delivered;
Paginator? _delivered;
int _selectedIndex = 1;
bool isLoading = false;
List<Carton> _cartons = [];
@@ -31,9 +31,9 @@ class DeliveryModel extends BaseModel {
_selectedIndex = 1;
_loadCartons();
if (_delivered != null) _delivered.close();
if (_delivered != null) _delivered!.close();
_delivered = _getDelivered();
_delivered.load();
_delivered!.load();
}
Future<void> _loadCartons() async {
@@ -57,7 +57,8 @@ class DeliveryModel extends BaseModel {
_cartons.clear();
_cartons = snapshot.docs.map((documentSnapshot) {
var s = Carton.fromMap(
documentSnapshot.data as Map<String, dynamic>, documentSnapshot.id);
documentSnapshot.data as Map<String, dynamic>,
documentSnapshot.id);
return s;
}).toList();
notifyListeners();
@@ -82,10 +83,10 @@ class DeliveryModel extends BaseModel {
}
Future<void> loadMore() async {
if (_delivered.ended || _selectedIndex == 1) return;
if (_delivered!.ended || _selectedIndex == 1) return;
isLoading = true;
notifyListeners();
await _delivered.load(onFinished: () {
await _delivered!.load(onFinished: () {
isLoading = false;
notifyListeners();
});
@@ -94,7 +95,7 @@ class DeliveryModel extends BaseModel {
Future<void> refresh() async {
if (_selectedIndex == 1) return;
await _delivered.refresh(onFinished: () {
await _delivered!.refresh(onFinished: () {
notifyListeners();
});
}
@@ -106,7 +107,7 @@ class DeliveryModel extends BaseModel {
@override
logout() async {
if (listener != null) await listener!.cancel();
if (_delivered != null) _delivered.close();
if (_delivered != null) _delivered!.close();
_cartons = [];
}

View File

@@ -39,7 +39,8 @@ class _ProcessingInfoState extends State<ProcessingInfo> {
initPackage(widget.package!);
}
initPackage(Package package) {
initPackage(Package? package) {
if (package == null) return;
setState(() {
_package = package;
multiImgController.setImageUrls = package.photoUrls;
@@ -69,37 +70,37 @@ class _ProcessingInfoState extends State<ProcessingInfo> {
iconData: Icons.phone,
);
final customerNameBox = DisplayText(
text:_package!=null? _package!.userName:"",
text: _package != null ? _package!.userName : "",
labelTextKey: "processing.consignee.name",
iconData: Icons.perm_identity,
);
var senderFcsIDBox = DisplayText(
text:_package!=null? _package!.senderFCSID:"",
text: _package != null ? _package!.senderFCSID : "",
labelTextKey: "processing.fcs.id",
icon: FcsIDIcon(),
);
final senderPhoneNumberBox = DisplayText(
text: _package!=null?_package!.senderPhoneNumber:"",
text: _package != null ? _package!.senderPhoneNumber : "",
labelTextKey: "processing.phone",
iconData: Icons.phone,
);
final senderNameBox = DisplayText(
text:_package!=null? _package!.senderName:"",
text: _package != null ? _package!.senderName : "",
labelTextKey: "processing.shipper.name",
iconData: Icons.perm_identity,
);
final marketBox = DisplayText(
text:_package!=null? _package!.market : "-",
text: _package != null ? _package!.market : "-",
labelTextKey: "processing.market",
iconData: Icons.store,
);
final descBox = DisplayText(
text:_package!=null? _package!.desc : "-",
text: _package != null ? _package!.desc : "-",
labelTextKey: "processing.desc",
iconData: MaterialCommunityIcons.message_text_outline,
);
final remarkBox = DisplayText(
text:_package!=null? _package!.remark : "-",
text: _package != null ? _package!.remark : "-",
labelTextKey: "processing.remark",
iconData: Entypo.new_message,
);
@@ -175,7 +176,7 @@ class _ProcessingInfoState extends State<ProcessingInfo> {
_package!.photoUrls.length == 0 ? Container() : img,
StatusTree(
shipmentHistory: _package!.shipmentHistory,
currentStatus: _package!.status??""),
currentStatus: _package!.status ?? ""),
SizedBox(
height: 20,
)
@@ -223,7 +224,7 @@ class _ProcessingInfoState extends State<ProcessingInfo> {
PackageModel packageModel =
Provider.of<PackageModel>(context, listen: false);
Package? p = await packageModel.getPackage(_package!.id!);
initPackage(p!);
initPackage(p);
}
}
}

View File

@@ -40,7 +40,8 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
initPackage(widget.package!);
}
initPackage(Package package) {
initPackage(Package? package) {
if (package == null) return;
multiImgController.setImageUrls = package.photoUrls;
setState(() {
_package = package;
@@ -150,7 +151,7 @@ class _ReceivingInfoState extends State<ReceivingInfo> {
PackageModel packageModel =
Provider.of<PackageModel>(context, listen: false);
var pkg = await packageModel.getPackage(widget.package!.id!);
initPackage(pkg!);
initPackage(pkg);
}
_delete() {

View File

@@ -622,7 +622,6 @@ class MyDataTable extends StatelessWidget {
final List<TableColumnWidth> tableColumns = (columns.length +
(showCheckboxColumn ? 1 : 0)) as List<TableColumnWidth>;
final List<TableRow> tableRows = List<TableRow>.generate(
rows.length + 1, // the +1 is for the header row
(int index) {