Как мне тренироваться вовремя, когда я уже знаю дату? - PullRequest
0 голосов
/ 02 мая 2019

Я ищу фильтр по временному интервалу.Например, с 9 утра до полудня .Неясно, как создать эту функциональность в концепции обучения и действий.Например, у меня в настоящее время есть это:

enter image description here

1 Ответ

2 голосов
/ 02 мая 2019

Вы должны обучить его с DateTimeExpression и использовать компонент DateTimeInterval, чтобы получить фактическую разницу Try it this way

action (TestDateTimeInterval) {
  type(Search)
  description (__DESCRIPTION__)
  collect {
    input (dateTimeExpression) {
      type (time.DateTimeExpression)
      min (Optional) max (One)
    }
  }
  output (core.Integer)
}

Action Javascript

module.exports.function = function testDateTimeInterval (dateTimeExpression) {
  var dates = require ('dates')
  var whenStart;
  var whenEnd;
  if (dateTimeExpression.dateTimeInterval) {
    whenStart = dates.ZonedDateTime.of(
      dateTimeExpression.dateTimeInterval.start.date.year,
      dateTimeExpression.dateTimeInterval.start.date.month,
      dateTimeExpression.dateTimeInterval.start.date.day,
      dateTimeExpression.dateTimeInterval.start.time.hour,
      dateTimeExpression.dateTimeInterval.start.time.minute,
      dateTimeExpression.dateTimeInterval.start.time.second);
    whenEnd = dates.ZonedDateTime.of(
      dateTimeExpression.dateTimeInterval.end.date.year,
      dateTimeExpression.dateTimeInterval.end.date.month,
      dateTimeExpression.dateTimeInterval.end.date.day,
      dateTimeExpression.dateTimeInterval.end.time.hour,
      dateTimeExpression.dateTimeInterval.end.time.minute,
      dateTimeExpression.dateTimeInterval.end.time.second);

// If you intend to return the difference between the number of hours
    return dateTimeExpression.dateTimeInterval.end.time.hour - dateTimeExpression.dateTimeInterval.start.time.hour
  }

  return -1;
}

...