null safety

This commit is contained in:
Phaung Phaung
2021-09-10 16:48:20 +06:30
parent 52fe4b4568
commit 0f84fec2f7
12 changed files with 103 additions and 106 deletions

View File

@@ -30,9 +30,7 @@ class DiscountModel extends BaseModel {
initData() {
_selectedIndex = 1;
_load();
if (_used != null) _used.close();
if (_getUsed() != null) _used = _getUsed()!;
if (_getUsed() != null) _used = _getUsed();
_used.load();
}
@@ -44,14 +42,14 @@ class DiscountModel extends BaseModel {
_load() {
if (listener != null) listener!.cancel();
try {
listener = Firestore.instance
listener = FirebaseFirestore.instance
.collection("/$discounts_collection")
.orderBy("code", descending: false)
.snapshots()
.listen((snaps) {
_discounts.clear();
snaps.documents.forEach((d) {
_discounts.add(Discount.fromMap(d.data, d.documentID));
snaps.docs.forEach((d) {
_discounts.add(Discount.fromMap(d.data as Map<String,dynamic>, d.id));
});
notifyListeners();
});
@@ -60,10 +58,10 @@ class DiscountModel extends BaseModel {
}
}
Paginator? _getUsed() {
if (user == null || !user.hasFcsShipments()) return null;
Paginator _getUsed() {
if (user == null || !user!.hasFcsShipments()) throw "No Privilege";
var pageQuery = Firestore.instance
var pageQuery = FirebaseFirestore.instance
.collection("/$discounts_collection")
.where("status", isEqualTo: fcs_shipment_shipped_status)
.orderBy("code", descending: false);
@@ -73,17 +71,17 @@ class DiscountModel extends BaseModel {
return paginator;
}
Future<List<Discount>?> getDiscount(String userID) async {
Future<List<Discount?>?> getDiscount(String userID) async {
String path = "/$discounts_collection";
try {
var q = Firestore.instance
var q = FirebaseFirestore.instance
.collection("$path")
.where("customer_id", isEqualTo: userID)
.where("status", isEqualTo: "available");
var snaps = await q.getDocuments(source: Source.server);
List<Discount> discounts = snaps.documents.map((snap) {
var snaps = await q.get(const GetOptions(source: Source.server));
var discounts = snaps.docs.map((snap) {
if (snap.exists) {
var s = Discount.fromMap(snap.data, snap.documentID);
var s = Discount.fromMap(snap.data as Map<String,dynamic>, snap.id);
return s;
}
}).toList();
@@ -128,6 +126,6 @@ class DiscountModel extends BaseModel {
}
Future<void> deleteDiscount(Discount discount) async {
return Services.instance.commonService.deleteDiscount(discount.id);
return Services.instance.commonService.deleteDiscount(discount.id!);
}
}