Javascript Meteor和SyncedCron任务每天都在执行。时间过得很好

Javascript Meteor和SyncedCron任务每天都在执行。时间过得很好,javascript,meteor,Javascript,Meteor,这样做的目的是让人们进出我保存在另一页上的日程表。我不明白为什么它每天都在为每个人激活。时间对每个人都有效,但有些日子不应该有效。第一段代码是我必须从中提取的模板。第二个是我从中提取并尝试从中创建一个SyncedCron name: name, StartTime: startT, EndTime: endT, Monday: Monday, Tuesday: Tuesday, Wednesday: Wednesday, Thursday: Thursday, Friday: Friday, S

这样做的目的是让人们进出我保存在另一页上的日程表。我不明白为什么它每天都在为每个人激活。时间对每个人都有效,但有些日子不应该有效。第一段代码是我必须从中提取的模板。第二个是我从中提取并尝试从中创建一个SyncedCron

name: name,
StartTime: startT,
EndTime: endT,
Monday: Monday,
Tuesday: Tuesday,
Wednesday: Wednesday,
Thursday: Thursday,
Friday: Friday,
Saturday: Saturday,
Sunday: Sunday,
queue: false,
status: "Working",
weight: 1,
OOTO: false,
Lunch: false


看来我发现了问题所在。我在使用
“every”
,我应该在“上使用
”。这就是那条线现在的样子

var startTimeTemp=“at”+tech.StartTime+”在“+天;
以前是这样的


var startTimeTemp=“at”+tech.StartTime+“每”+天

所以看起来我发现了问题所在。我在使用
“every”
,我应该在“
上使用
”。这就是那条线现在的样子

var startTimeTemp=“at”+tech.StartTime+”在“+天;
以前是这样的

var startTimeTemp=“at”+tech.StartTime+“每”+天

updateCron: function() {
SyncedCron.stop();
var temp = [
  "Monday",
  "Tuesday",
  "Wednesday",
  "Thursday",
  "Friday",
  "Saturday",
  "Sunday"
];

temp.forEach(function(day) {
  var temp = {};
  // temp[day] = false;

  _Techs.find(temp).forEach(function(tech) {


    if (tech.startTime != "" && tech[day]) {
      var startTimeTemp = "at " + tech.StartTime + " every " + day;
      var endTimeTemp = "at " + tech.EndTime + " every " + day;
      SyncedCron.add({name: tech.name + " Work Start " + day,
      schedule: function(parser) {return parser.text(startTimeTemp);},
        job: function() {_Techs.update({_id: tech._id}, {$set: {
              queue: true,
              totaltickets: 0,
              dispatched: false,
              timesincelast: new Date(),
              status: "Working"
            }
          });
          // console.log(tech.name + " Entered Queue");
          return "Worked";
        }
      });
    };

    if (tech.endTime != "" && tech[day]) {
      var startTimeTemp = "at " + tech.StartTime + " every " + day;
      var endTimeTemp = "at " + tech.EndTime + " every " + day;
      SyncedCron.add({
        name: tech.name + ' Work End Time for ' + day,
        schedule: function(parser) {
          return parser.text(endTimeTemp);
        },
        job: function() {
          _Techs.update({
            _id: tech._id
          }, {
            $set: {
              queue: false,
              totaltickets: 0,
              dispatched: false,
              timesincelast: new Date(),
              status: "Working"
            }
          });
          // console.log(tech.name + " Left Queue");
          return "Worked";
        }
      });
  };
  });
});
SyncedCron.start();
}