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_jsonObject



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