Module: KMExport
- Defined in:
- lib/reimporter.rb,
lib/alias_parser.rb,
lib/km-export-processor.rb,
lib/converters/json_to_csv.rb,
lib/converters/json_to_json.rb
Defined Under Namespace
Classes: Reimporter
Class Method Summary collapse
Class Method Details
.alias_parser(jsonfile) ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/alias_parser.rb', line 2 def self.alias_parser(jsonfile) file = File.open(jsonfile) alias_file = File.open(Time.now.to_i.to_s + "_aliases.json", "w+") json = JSON.parse(file.read) aliases = [] data = [] json.each do |row| if row["_p2"] aliases << row else data << row end end new_file = File.open(jsonfile, "w+") new_file.write(JSON.pretty_generate(data)) alias_file.write(JSON.pretty_generate(aliases)) end |
.json_to_csv(jsonfile) ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/converters/json_to_csv.rb', line 2 def self.json_to_csv(jsonfile) default_headers = ["_n", "_p", "_t", "_p2", "_a"] headers = [] file = File.open(jsonfile) json = JSON.parse(file.read) results = [] json.each do |row| headers = headers | row.keys end json.each do |row| row_result = {} headers.each do |header| row_result[header.to_sym] = row[header] || "" end results << row_result end CSV.open(Time.now.to_i.to_s + "_converter_result.csv", "wb") do |csv| csv << results.first.keys results.each do |hash| csv << hash.values end end end |
.json_to_json ⇒ Object
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/converters/json_to_json.rb', line 2 def self.json_to_json files = Dir["*.json"] result = [] files.each do |file| json = File.open(file, "r") json.readlines.each do |line| result << JSON.parse(line.chomp) end end output = File.open(Time.now.to_i.to_s + "_result.json", "w+") output.write(JSON.pretty_generate(result)) end |