【发布时间】:2022-01-30 02:25:41
【问题描述】:
我是 Flutter 和 Firestore 开发的新手。我有一个 SalesRecord 集合和一个名为 SellingPrice 的字段名称。如何根据日常记录将 SellingPrice 的所有值求和并打印出所有这些总和值。
更新代码:-
FutureBuilder(
future: FirebaseFirestore.instance.collection('SalesRecord').get(),
builder: (BuildContext context,
AsyncSnapshot<QuerySnapshot> querySnapshot) {
if (querySnapshot.hasError) {
return Text("Something went wrong");
}
// if (snapshot.hasData && !snapshot.data!.exists) {
// return Text("Document does not exist");
// }
if (querySnapshot.connectionState == ConnectionState.done) {
querySnapshot.data!.docs.forEach((doc) {
sumTotal = sumTotal +
doc["SellingPrice"]; // make sure you create the variable sumTotal somewhere
});
return Text("Sum of all sells: ${sumTotal}");
}
return Text("loading");
},
),
【问题讨论】:
-
所以,如果我猜对了,您的
SalesRecord集合中包含的每个document都有一个名为SellingPrice的字段,您希望获取所有SellingPrice字段的值的总和 -
@TimothyOfie 是的,假设我今天有 20 笔销售,售价不同,我想总结今天所有的售价并每天更新售价的总和。
-
@BJW 下面的答案可以正常工作,尽管这取决于您想要什么,为了获得干净的体验,您可以选择使用
Firebase Cloud Functions自动将所有SellingPrice值汇总到一个字段中在一天结束时,但为了获得快速简便的解决方案,您可以应用下面按日期排序的答案