Найти график совпадает с Ruby & Runt? - PullRequest
0 голосов
/ 07 мая 2009

Я использую Ruby on Rails для создания простого приложения для отслеживания времени открытия и закрытия магазина и его встреч, и у меня возникли некоторые проблемы при проверке встреч по закрытиям в расписании магазина.

Я использовал Runt для составления расписания. Например, если магазин открыт в понедельник утром с 9:00 до 12:00 и закрыт на обед на час, а затем открыт во второй половине дня до 17:00, он будет выглядеть следующим образом:

require 'runt'
include Runt

monday = DIWeek.new(Mon)
morning = REDay.new(9,00,12,00)
afternoon = REDAy.new(13,00,17,00)

expr = monday & morning & afternoon

Для данной встречи (также временного выражения Runt), как я могу убедиться, что встреча перекрывает с временем открытия, а не перекрывает час обеда (или в другое время до или после открытия)?

Я так понял, что у Рунта есть совпадения? метод, но если я сделаю что-то вроде:

expr.overlaps?(DIWeek.new(Mon) & REDay.new(10,00,11,00)) # the appointment is from 10-11am on Monday and should overlap the morning opening time

Я получаю эту ошибку:

NoMethodError: undefined method `overlaps?' for #<Runt::Intersect:0x10483cc>

Может кто-нибудь пожалуйста посоветовать мне, как исправить эту ошибку или еще какой-нибудь способ решить эту проблему?

1 Ответ

1 голос
/ 07 мая 2009

перекрытия? Метод определен только для Runt :: Collection и Runt :: DateRange. Возможно, вы можете создать объект DateRange из вашего expr, а затем запустить перекрытие? на нем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...