mirror of
https://github.com/redmine/redmine.git
synced 2024-08-06 21:06:41 +02:00
16 lines
629 B
Ruby
16 lines
629 B
Ruby
![]() |
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 #{table_name} 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
|