array = [{"name"=>"id", "value"=>"123"},
{"name"=>"type", "value"=>"app"},
{"name"=>"codes", "value"=>"12"},
{"name"=>"codes", "value"=>"345"},
{"name"=>"type", "value"=>"app1"}]
sample_hash = Hash.new { |h, k| h[k] = [] }
array.each { |f| sample_hash[f['name']] << f['value'] }
p sample_hash
YXJyYXkgPSBbeyJuYW1lIj0+ImlkIiwgInZhbHVlIj0+IjEyMyJ9LCAKICAgICAgICAgeyJuYW1lIj0+InR5cGUiLCAidmFsdWUiPT4iYXBwIn0sIAogICAgICAgICB7Im5hbWUiPT4iY29kZXMiLCAidmFsdWUiPT4iMTIifSwgCiAgICAgICAgIHsibmFtZSI9PiJjb2RlcyIsICJ2YWx1ZSI9PiIzNDUifSwgCiAgICAgICAgIHsibmFtZSI9PiJ0eXBlIiwgInZhbHVlIj0+ImFwcDEifV0gCgpzYW1wbGVfaGFzaCA9IEhhc2gubmV3IHsgfGgsIGt8IGhba10gPSBbXSB9CgphcnJheS5lYWNoIHsgfGZ8IHNhbXBsZV9oYXNoW2ZbJ25hbWUnXV0gPDwgZlsndmFsdWUnXSB9CgpwIHNhbXBsZV9oYXNo