从查询组合集合中插入新文档

时间:2015-09-29 22:36:32

标签: javascript mongodb meteor

我是Nosql world和meteor的新手,我有两个集合,taskCollectioin和workersCollection,我的目标是将每个任务与workersCollection中的可用时间段相匹配。我的任务集合有字段{client,task-name,time-flag,assigned = false},我的workers集合有字段{name,timeslot:[slot,available]}。我还创建了名为matchCollection结果的结果集合,需要插入一个文档,使每个任务与可用的worker相匹配。

我的问题:既然我们正在处理从两个不同的集合中查询并比较它们的匹配字段,那么如何在meteor中实现一个函数来解决后面的psuedo代码算法?

'FOR each task FROM TaskCollection
   | IF (assigned == false)
   |  |  get the task flag(for example: 10-12 pm)     
   | ENDIF   
   |  FOR each worker From collection
   |  |  **get worker slots
   |  |    IF (worker timeslot is availible for a given task time-flag)
   |  |    |   1-assign the task to the worker
   |  |    |   2-set the task assigned to true
   |  |    |   3-set the timeslot.available to false
   |  |    |   4-create a document in MatchCollection
   |  |    END IF 
   |  ENDFOR     
   ENDFOR'

1 个答案:

答案 0 :(得分:1)

您将使用聚合实现此目标... here 你必须研究这部分。