10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/wechat_pay/package.rb', line 10
def self.generate(package_params)
package_params = Utils.slice_hash(package_params, *PACKAGE_PARAMS)
params = {
bank_type: 'WX',
fee_type: '1',
input_charset: 'UTF-8',
partner: WechatPay.partner_id
}.merge(package_params)
regexp = Regexp.new("[^#{URI::PATTERN::UNRESERVED}]")
escaped_params_str = params.sort.map do |key, value|
"#{key}=#{URI.escape(value.to_s, regexp)}"
end.join('&')
"#{escaped_params_str}&sign=#{Sign.md5(params)}"
end
|