aboutsummaryrefslogtreecommitdiffstats
path: root/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'app/models')
-rw-r--r--app/models/chouette/time_table.rb7
-rw-r--r--app/models/clean_up.rb13
2 files changed, 11 insertions, 9 deletions
diff --git a/app/models/chouette/time_table.rb b/app/models/chouette/time_table.rb
index 9af80fbb7..abe6186a7 100644
--- a/app/models/chouette/time_table.rb
+++ b/app/models/chouette/time_table.rb
@@ -4,8 +4,8 @@ class Chouette::TimeTable < Chouette::TridentActiveRecord
self.primary_key = "id"
acts_as_taggable
-
- attr_accessor :monday,:tuesday,:wednesday,:thursday,:friday,:saturday,:sunday
+
+ attr_accessor :monday,:tuesday,:wednesday,:thursday,:friday,:saturday,:sunday
attr_accessor :tag_search
def self.ransackable_attributes auth_object = nil
@@ -70,6 +70,7 @@ class Chouette::TimeTable < Chouette::TridentActiveRecord
return false unless self.end_date
self.end_date <= expected_date
end
+
def validity_out_between?(starting_date, ending_date)
return false unless self.start_date
starting_date < self.end_date &&
@@ -414,7 +415,7 @@ class Chouette::TimeTable < Chouette::TridentActiveRecord
# remove dates form tt which aren't in another_tt
def intersect!(another_tt)
transaction do
-
+
# transform tt as effective dates and get common ones
days = another_tt.intersects(self.effective_days) & self.intersects(another_tt.effective_days)
self.dates.clear
diff --git a/app/models/clean_up.rb b/app/models/clean_up.rb
index 607362682..a44bb46a4 100644
--- a/app/models/clean_up.rb
+++ b/app/models/clean_up.rb
@@ -3,7 +3,7 @@ class CleanUp < ActiveRecord::Base
belongs_to :referential
has_one :clean_up_result
- validates :expected_date, presence: true
+ validates :begin_date, presence: true
after_commit :perform_cleanup, :on => :create
def perform_cleanup
@@ -12,15 +12,16 @@ class CleanUp < ActiveRecord::Base
def clean
result = {}
- tms = Chouette::TimeTable.validity_out_from_on?(expected_date)
- tms.each.map(&:delete)
-
- result['time_table_count'] = tms.size
+ result['time_table_count'] = self.clean_time_tables
result['vehicle_journey_count'] = self.clean_vehicle_journeys
result['journey_pattern_count'] = self.clean_journey_patterns
result
end
+ def clean_time_tables
+ Chouette::TimeTable.validity_out_between?(begin_date, end_date).delete_all
+ end
+
def clean_vehicle_journeys
ids = Chouette::VehicleJourney.includes(:time_tables).where(:time_tables => {id: nil}).pluck(:id)
Chouette::VehicleJourney.where(id: ids).delete_all
@@ -61,6 +62,6 @@ class CleanUp < ActiveRecord::Base
def log_failed message_attributs
update_attribute(:ended_at, Time.now)
- # self.clean_up_result.create(message_key: :failed, message_attributs: message_attributs)
+ CleanUpResult.create(clean_up: self, message_key: :failed, message_attributs: message_attributs)
end
end