update pagination listener
This commit is contained in:
@@ -26,8 +26,8 @@ class PackageModel extends BaseModel {
|
||||
set menuSelectedIndex(int index) {
|
||||
_menuSelectedIndex = index;
|
||||
|
||||
_loadPackages(_menuSelectedIndex == 2);
|
||||
_loadCustomerPackages(_menuSelectedIndex == 2);
|
||||
_loadPaginationPackages(_menuSelectedIndex == 2);
|
||||
_loadPaginationCustomerPackages(_menuSelectedIndex == 2);
|
||||
|
||||
notifyListeners();
|
||||
}
|
||||
@@ -41,24 +41,11 @@ class PackageModel extends BaseModel {
|
||||
}
|
||||
|
||||
Future<void> _initData() async {
|
||||
logout();
|
||||
_menuSelectedIndex = 1;
|
||||
packages = PaginatorListener<Package>(
|
||||
(data, id) => Package.fromMap(data, id), onChange: () {
|
||||
notifyListeners();
|
||||
}, rowPerLoad: 30, insertNewByListener: true);
|
||||
customerPackages = PaginatorListener<Package>(
|
||||
(data, id) => Package.fromMap(data, id), onChange: () {
|
||||
notifyListeners();
|
||||
}, rowPerLoad: 30, insertNewByListener: true);
|
||||
activePackages = PaginatorListener<Package>(
|
||||
(data, id) => Package.fromMap(data, id), onChange: () {
|
||||
notifyListeners();
|
||||
}, rowPerLoad: 30, insertNewByListener: true);
|
||||
|
||||
_loadPackages(_menuSelectedIndex == 2);
|
||||
_loadCustomerPackages(_menuSelectedIndex == 2);
|
||||
_loadActivePackages();
|
||||
_loadPaginationPackages(_menuSelectedIndex == 2);
|
||||
_loadPaginationCustomerPackages(_menuSelectedIndex == 2);
|
||||
_loadPaginationActivePackages();
|
||||
}
|
||||
|
||||
@override
|
||||
@@ -68,71 +55,68 @@ class PackageModel extends BaseModel {
|
||||
if (activePackages != null) activePackages!.close();
|
||||
}
|
||||
|
||||
Future<void> _loadPackages(bool isDelivered) async {
|
||||
_loadPaginationPackages(bool isDelivered) {
|
||||
if (user == null) return;
|
||||
if (!((user!.hasPackages() ||
|
||||
user!.hasReceiving() ||
|
||||
user!.hasProcessing()))) return;
|
||||
String path = "/$packages_collection";
|
||||
|
||||
try {
|
||||
Query listenerQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered);
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered);
|
||||
Query col = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered);
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered)
|
||||
.orderBy("update_time", descending: true);
|
||||
|
||||
pageQuery = pageQuery.orderBy("update_time", descending: true);
|
||||
packages!.refresh(listeningQuery: listenerQuery, pageQuery: pageQuery);
|
||||
} catch (e) {
|
||||
log.warning("Error!! $e");
|
||||
}
|
||||
packages?.close();
|
||||
packages = PaginatorListener<Package>(
|
||||
col, pageQuery, (data, id) => Package.fromMap(data, id),
|
||||
rowPerLoad: 30);
|
||||
}
|
||||
|
||||
Future<void> _loadCustomerPackages(bool isDelivered) async {
|
||||
_loadPaginationCustomerPackages(bool isDelivered) {
|
||||
if (user == null) return;
|
||||
String path = "/$packages_collection";
|
||||
|
||||
try {
|
||||
Query listenerQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered)
|
||||
.where("user_id", isEqualTo: user!.id);
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered)
|
||||
.where("user_id", isEqualTo: user!.id)
|
||||
.orderBy("update_time", descending: true);
|
||||
Query col = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered)
|
||||
.where("user_id", isEqualTo: user!.id);
|
||||
|
||||
customerPackages!
|
||||
.refresh(listeningQuery: listenerQuery, pageQuery: pageQuery);
|
||||
} catch (e) {
|
||||
log.warning("Error!! $e");
|
||||
}
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: isDelivered)
|
||||
.where("user_id", isEqualTo: user!.id)
|
||||
.orderBy("update_time", descending: true);
|
||||
|
||||
customerPackages?.close();
|
||||
customerPackages = PaginatorListener<Package>(
|
||||
col, pageQuery, (data, id) => Package.fromMap(data, id),
|
||||
rowPerLoad: 30);
|
||||
}
|
||||
|
||||
Future<void> _loadActivePackages() async {
|
||||
_loadPaginationActivePackages() {
|
||||
if (user == null) return;
|
||||
if (!((user!.hasPackages() ||
|
||||
user!.hasReceiving() ||
|
||||
user!.hasProcessing()))) return;
|
||||
String path = "/$packages_collection";
|
||||
|
||||
try {
|
||||
Query listenerQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: false);
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: false);
|
||||
Query col = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: false);
|
||||
|
||||
pageQuery = pageQuery.orderBy("update_time", descending: true);
|
||||
activePackages!
|
||||
.refresh(listeningQuery: listenerQuery, pageQuery: pageQuery);
|
||||
} catch (e) {
|
||||
log.warning("Error!! $e");
|
||||
}
|
||||
Query pageQuery = FirebaseFirestore.instance
|
||||
.collection(path)
|
||||
.where("is_delivered", isEqualTo: false)
|
||||
.orderBy("update_time", descending: true);
|
||||
|
||||
activePackages?.close();
|
||||
activePackages = PaginatorListener<Package>(
|
||||
col, pageQuery, (data, id) => Package.fromMap(data, id),
|
||||
rowPerLoad: 30);
|
||||
}
|
||||
|
||||
Future<Package?> getPackage(String id) async {
|
||||
|
||||
Reference in New Issue
Block a user