如何在Flatter和Firebase中添加时钟输入和时钟输出功能?
我正在尝试构建一个应用程序,该应用程序具有允许员工使用flifter和Firebase打卡/打卡的功能。由于我是一个初学者,我不知道如何继续,因此我需要你在逻辑部分的帮助 我如何在颤振应用程序中添加此功能,以便用户每次单击“时钟输入”按钮时,都能及时保存时钟,反之亦然 稍后,我计划使用如何在Flatter和Firebase中添加时钟输入和时钟输出功能?,firebase,flutter,datetime,google-cloud-firestore,Firebase,Flutter,Datetime,Google Cloud Firestore,我正在尝试构建一个应用程序,该应用程序具有允许员工使用flifter和Firebase打卡/打卡的功能。由于我是一个初学者,我不知道如何继续,因此我需要你在逻辑部分的帮助 我如何在颤振应用程序中添加此功能,以便用户每次单击“时钟输入”按钮时,都能及时保存时钟,反之亦然 稍后,我计划使用listview.builder显示时间,并计算当天工作的总小时数 我已经尝试建立自己的,但我认为我的逻辑有一些问题 我的Firebase系列是这样的 hours > userid > time
listview.builder
显示时间,并计算当天工作的总小时数
我已经尝试建立自己的,但我认为我的逻辑有一些问题
我的Firebase系列是这样的
hours > userid > time > 2021-03-04 > timein: 1614842992920 timeout: 1614842992920
2021-03-05 > timein: 1614842992920 timeout: 1614842992920
2021-03-06 > timein: 1614842992920 timeout: 1614842992920
现在,当我尝试获取时间时,我必须使用文档id(即2021-03-04)来确定时间
hoursCollection.doc(employeeId).collection('time').doc(2021-03-04).get();
是的,如果我使用limit(7)
,它会给我前七个文档,但为了显示最近几天,我想按降序获取文档
我想从下至上获取文档,即从2021-03-06
。
如果您有更好的解决方案,请告诉我,我很高兴更改整个代码库。我建议重新构造您的数据模型,以便更轻松地访问您要显示的数据。一个小的改变将使您的应用程序更具可伸缩性。例如,此结构提供特定日期的列表,以便您可以根据
userid
进行筛选。看看这个,了解一些想法
{
“小时”:{
“Gycybhfyrghdiksiezeh”:{
"2021-03-04":[
{
“timein”:“1614842992920”,
“超时”:“1614842992920”,
“userid”:“JHYRHD”
},
{
“timein”:“1614845792920”,
“超时”:“1614842992920”,
“用户ID”:“JHYHYGD”
},
]
},
“HyhHgudhKDSKSY7p7mYfW”:{
"2021-03-05":[
{
“timein”:“1614842992920”,
“超时”:“1614842992920”,
“userid”:“JHYGHD”
}
]
}
}
}
尝试使用Firestore的order by方法,如以下帖子:。你只需要把方向改成下降。非常感谢。谢谢。