Commit 1d4d1860fcf922018a909aa5a9df470e1a9e3134

Authored by Jun Jiang
Committed by GitHub
2 parents b92da658 807c3597
Exists in master

Merge pull request #46 from Suncx/fix_download_bill_error

download_bill返回string无法被xml解析导致错误
Showing 1 changed file with 11 additions and 13 deletions   Show diff stats
lib/wx_pay/service.rb
... ... @@ -16,7 +16,7 @@ module WxPay
16 16  
17 17 check_required_options(params, INVOKE_UNIFIEDORDER_REQUIRED_FIELDS)
18 18  
19   - r = invoke_remote("#{GATEWAY_URL}/pay/unifiedorder", make_payload(params), options)
  19 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/pay/unifiedorder", make_payload(params), options)))
20 20  
21 21 yield r if block_given?
22 22  
... ... @@ -34,7 +34,7 @@ module WxPay
34 34  
35 35 check_required_options(params, INVOKE_CLOSEORDER_REQUIRED_FIELDS)
36 36  
37   - r = invoke_remote("#{GATEWAY_URL}/pay/closeorder", make_payload(params), options)
  37 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/pay/closeorder", make_payload(params), options)))
38 38  
39 39 yield r if block_given?
40 40  
... ... @@ -92,7 +92,7 @@ module WxPay
92 92 verify_ssl: OpenSSL::SSL::VERIFY_NONE
93 93 }.merge(options)
94 94  
95   - r = invoke_remote("#{GATEWAY_URL}/secapi/pay/refund", make_payload(params), options)
  95 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/secapi/pay/refund", make_payload(params), options)))
96 96  
97 97 yield r if block_given?
98 98  
... ... @@ -109,7 +109,7 @@ module WxPay
109 109  
110 110 check_required_options(params, ORDER_QUERY_REQUIRED_FIELDS)
111 111  
112   - r = invoke_remote("#{GATEWAY_URL}/pay/refundquery", make_payload(params), options)
  112 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/pay/refundquery", make_payload(params), options)))
113 113  
114 114 yield r if block_given?
115 115  
... ... @@ -132,7 +132,7 @@ module WxPay
132 132 verify_ssl: OpenSSL::SSL::VERIFY_NONE
133 133 }.merge(options)
134 134  
135   - r = invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/promotion/transfers", make_payload(params), options)
  135 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/promotion/transfers", make_payload(params), options)))
136 136  
137 137 yield r if block_given?
138 138  
... ... @@ -155,7 +155,7 @@ module WxPay
155 155 verify_ssl: OpenSSL::SSL::VERIFY_NONE
156 156 }.merge(options)
157 157  
158   - r = invoke_remote("#{GATEWAY_URL}/secapi/pay/reverse", make_payload(params), options)
  158 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/secapi/pay/reverse", make_payload(params), options)))
159 159  
160 160 yield r if block_given?
161 161  
... ... @@ -178,7 +178,7 @@ module WxPay
178 178 verify_ssl: OpenSSL::SSL::VERIFY_NONE
179 179 }.merge(options)
180 180  
181   - r = invoke_remote("#{GATEWAY_URL}/pay/micropay", make_payload(params), options)
  181 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/pay/micropay", make_payload(params), options)))
182 182  
183 183 yield r if block_given?
184 184  
... ... @@ -195,7 +195,7 @@ module WxPay
195 195  
196 196 check_required_options(params, ORDER_QUERY_REQUIRED_FIELDS)
197 197  
198   - r = invoke_remote("#{GATEWAY_URL}/pay/orderquery", make_payload(params), options)
  198 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/pay/orderquery", make_payload(params), options)))
199 199  
200 200 yield r if block_given?
201 201  
... ... @@ -234,7 +234,7 @@ module WxPay
234 234 verify_ssl: OpenSSL::SSL::VERIFY_NONE
235 235 }.merge(options)
236 236  
237   - r = invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/sendgroupredpack", make_payload(params), options)
  237 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/sendgroupredpack", make_payload(params), options)))
238 238  
239 239 yield r if block_given?
240 240  
... ... @@ -256,7 +256,7 @@ module WxPay
256 256 verify_ssl: OpenSSL::SSL::VERIFY_NONE
257 257 }.merge(options)
258 258  
259   - r = invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/sendredpack", make_payload(params), options)
  259 + r = WxPay::Result.new(Hash.from_xml(invoke_remote("#{GATEWAY_URL}/mmpaymkttransfers/sendredpack", make_payload(params), options)))
260 260  
261 261 yield r if block_given?
262 262  
... ... @@ -282,7 +282,7 @@ module WxPay
282 282 def invoke_remote(url, payload, options = {})
283 283 options = WxPay.extra_rest_client_options.merge(options)
284 284  
285   - r = RestClient::Request.execute(
  285 + RestClient::Request.execute(
286 286 {
287 287 method: :post,
288 288 url: url,
... ... @@ -290,8 +290,6 @@ module WxPay
290 290 headers: { content_type: 'application/xml' }
291 291 }.merge(options)
292 292 )
293   -
294   - WxPay::Result.new(Hash.from_xml(r))
295 293 end
296 294 end
297 295 end
... ...