You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
123456789101112131415 |
- class ClearEstimatedHoursOnParentIssues < ActiveRecord::Migration
- def self.up
- # Clears estimated hours on parent issues
- Issue.where("rgt > lft + 1 AND estimated_hours > 0").update_all :estimated_hours => nil
- end
-
- def self.down
- table_name = Issue.table_name
- leaves_sum_select = "SELECT SUM(leaves.estimated_hours) FROM (SELECT * FROM #{table_name}) AS leaves" +
- " WHERE leaves.root_id = #{table_name}.root_id AND leaves.lft > #{table_name}.lft AND leaves.rgt < #{table_name}.rgt" +
- " AND leaves.rgt = leaves.lft + 1"
-
- Issue.where("rgt > lft + 1").update_all "estimated_hours = (#{leaves_sum_select})"
- end
- end
|