lib/sushi_fabric/sushiApp.rb in sushi_fabric-1.2.9 vs lib/sushi_fabric/sushiApp.rb in sushi_fabric-1.3.0

- old
+ new

@@ -1,8 +1,8 @@ #!/usr/bin/env ruby # encoding: utf-8 -# Version = '20241108-111516' +# Version = '20241121-112242' require 'csv' require 'fileutils' require 'yaml' require 'drb/drb' @@ -176,22 +176,28 @@ headers.each_with_index do |header, i| sample_hash[header]=row[i] end sample = Sample.new sample.key_value = sample_hash.to_s - sample.save # skip exact-match search data_set.samples << sample end data_set.md5 = data_set.md5hexdigest - project.data_sets << data_set - parent_data_set.data_sets << data_set if parent_data_set - data_set.save - if user - user.data_sets << data_set - user.save - end + if data_set_ = DataSet.find_by_md5(data_set.md5) and data_set_.project_id == data_set.project_id + data_set = data_set_ + else + data_set.samples.each do |sample| + sample.save + end + project.data_sets << data_set + parent_data_set.data_sets << data_set if parent_data_set + data_set.save + if user + user.data_sets << data_set + user.save + end + end data_set.id end end #module_function :save_data_set @@ -788,25 +794,32 @@ headers.each_with_index do |header, i| sample_hash[header]=row[i] end sample = Sample.new sample.key_value = sample_hash.to_s - sample.save # skip exact-match search + #sample.save # skip exact-match search data_set.samples << sample end if child data_set.child = true end data_set.md5 = data_set.md5hexdigest - project.data_sets << data_set - parent_data_set.data_sets << data_set if parent_data_set - data_set.save - if user - user.data_sets << data_set - user.save - end + if data_set_ = DataSet.find_by_md5(data_set.md5) and data_set_.project_id == data_set.project_id + data_set = data_set_ + else + data_set.samples.each do |sample| + sample.save + end + project.data_sets << data_set + parent_data_set.data_sets << data_set if parent_data_set + data_set.save + if user + user.data_sets << data_set + user.save + end + end data_set.id end end def save_parameters_in_sushi_db if @next_dataset_id and next_dataset = DataSet.find_by_id(@next_dataset_id)