当存储在Firestore文档属性中的日期到来时如何触发云功能

时间:2018-09-16 02:10:51

标签: firebase google-cloud-firestore google-cloud-functions

我正在构建一个多方面的应用程序,人们可以在这里买卖食物。那是最短的摘要。

当用户向餐厅下达食品订单并且此订单被标记为已调度时,该应用会在消防站的餐厅资料上生成佣金。

创建佣金后,它会触发后台Firebase云功能,以检查餐厅是否具有有效的结算周期;如果没有,则创建如下所示的账单周期:

billingCycle: {
  openDate: 'the moment where the fee was created',
  endDate: '4th day after' //
} 

此对象已在用户个人资料中创建(带有正确的日期),并且可以正常工作!

现在,我想在endDate道具值的日期到达时发出发票,这是一个问题。

当endDate的日期相遇时如何触发功能?

我当时正在考虑将该决定移至该应用程序。这样,应用程序会检测到何时在使用时触发时间,但是如果用户不在时该怎么办?

如何触发firebase云功能以独立于用户与客户端应用的交互来发出发票?

我为寻找答案做了很多研究,但是我没有找到任何相关的东西,因此非常感谢任何帮助。

*这是Im首次使用FCF。

1 个答案:

答案 0 :(得分:0)

您可以在可能以这种方式更新的文档上使用onUpdate触发器。在每次更新中检查日期是否在文档中匹配的函数中编写代码。如果日期匹配,请发出发票,然后使用表明发出发票的标志值再次更新文档。

您还必须使用该新标志来确定 not 以在进一步更新时再次发出发票(否则,当日期匹配时,函数每次更新时都会发送发票-此布尔值将表明它已经发生了。