Skip to content

Instantly share code, notes, and snippets.

@devifr
Created February 7, 2020 07:12
Show Gist options
  • Save devifr/ff5e8d1ddd35cdb4673bc196d2b9a84c to your computer and use it in GitHub Desktop.
Save devifr/ff5e8d1ddd35cdb4673bc196d2b9a84c to your computer and use it in GitHub Desktop.
schs = Schedule.where("DATE(work_date) >= DATE(?) AND DATE(work_date) <= DATE(?)", '2019-12-01', '2020-01-01')
site_blank = []
schs.each do |sc|
if sc.site.blank?
site_blank << {schedule_id: sc.id, site_id: sc.site_id}
end
end
no_site = []
edited = []
site_blank = [{:schedule_id=>81592, :site_id=>5102}, {:schedule_id=>81586, :site_id=>5085}, {:schedule_id=>81594, :site_id=>5105}, {:schedule_id=>81587, :site_id=>5093}, {:schedule_id=>81591, :site_id=>5096}, {:schedule_id=>81593, :site_id=>5104}, {:schedule_id=>81595, :site_id=>5118}, {:schedule_id=>81588, :site_id=>5112}, {:schedule_id=>81526, :site_id=>5069}]
site_blank.each do |data|
get_site = Site.with_deleted.find(data[:site_id])
site = Site.where(site_id_sap: get_site.site_id_customer).first
no_site << data[:site_id] if site.blank?
sch = Schedule.where(id: data[:schedule_id]).first
if Schedule.where(id: data[:schedule_id]).update_all(site_id: site.id)
edited << {schedule_id: data[:schedule_id], site_old: data[:site_id], site_id: site.id, date: sch.work_date}
end
end
edited.each do |a|
Work::FormItemValue.where(schedule_id: a[:schedule_id], site_id: a[:site_old]).update_all(site_id: a[:site_id])
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment