alipay 0.9.0 → 0.10.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 90db58ac96b9dc46b469b17123cad251d9d12834
4
- data.tar.gz: d0b01bd14ba415fcd64c56dfb6d3e4863bd12659
3
+ metadata.gz: 8979f4b881f0f270d17d009910c709e5b263eefe
4
+ data.tar.gz: dde95025f79b4a7fcdbebf2e8c59c0b27276318b
5
5
  SHA512:
6
- metadata.gz: fe6faf8e28ca0e2913b8926247774f760f697985a788d3930a55519798d9489d67f3ca20ba48979b441905bdee7c8777dd686259c62974e278cfdea772cb4672
7
- data.tar.gz: dc2b6411f65c4fd289e42d19a5af28f2a00b1528e6f07c3cf6bb8ce26dfc62ed2c9b3e8ab6d735c42dfd9aeacec572032a0c7998ff2f31cee24824b9d35a15c5
6
+ metadata.gz: 41cfd0dea75e28a73cbbb867d8e1360822450f7bc05bf09560c6a8706f4532ca53a240cc6306b6d28f75a8ca233322bf1230d26340ae7e012ba2d25be3b52de7
7
+ data.tar.gz: b84f1540bfc9c3532efd437f625220c7522df1aee0f2deda25b591fc401dc2a521975369b7e62882f6cfee07f4c153f94e438d678880c87027a9e90273779a0f
@@ -1,5 +1,9 @@
1
1
  ## master
2
2
 
3
+ ## v0.10.0 (2015-11-03)
4
+
5
+ - Add `Alipay::Service.account_page_query` method, thanks @xjz19901211 #53
6
+
3
7
  ## v0.9.0 (2015-10-15)
4
8
 
5
9
  - Add `Alipay::Service.create_direct_pay_by_user_wap_url` method, thanks @serco-chen #52
data/README.md CHANGED
@@ -9,7 +9,7 @@ Alipay official document: https://b.alipay.com/order/techService.htm .
9
9
  Add this line to your application's Gemfile:
10
10
 
11
11
  ```ruby
12
- gem 'alipay', '~> 0.9.0'
12
+ gem 'alipay', '~> 0.10.0'
13
13
  ```
14
14
 
15
15
  And then execute:
@@ -463,7 +463,7 @@ Alipay::Mobile::Service.mobile_securitypay_pay_string(
463
463
 
464
464
  This is not a complete list of arguments, please read official document: http://download.alipay.com/public/api/base/WS_MOBILE_PAY_SDK_BASE.zip .
465
465
 
466
- ## Wap::Service (Deprecated)
466
+ ## Wap::Service
467
467
 
468
468
  ### 授权接口
469
469
 
@@ -562,6 +562,35 @@ notify_params = params.except(*request.path_parameters.keys)
562
562
  Alipay::Wap::Notify.verify?(notify_params)
563
563
  ```
564
564
 
565
+
566
+ ### 账单明细分页查询接口
567
+
568
+ #### Name
569
+
570
+ ```ruby
571
+ account.page.query
572
+ ```
573
+
574
+ #### Definition
575
+
576
+ ```ruby
577
+ Alipay::Service::account_page_query({PARAMS}, {OPTIONS})
578
+ ```
579
+
580
+ #### Arguments
581
+
582
+ It's an unpublic api, contact support for permission and document.
583
+
584
+ #### Example
585
+
586
+ ```ruby
587
+ Alipay::Service.account_page_query(
588
+ page_no: 1,
589
+ gmt_start_time: '2015-10-25 00:00:00',
590
+ gmt_end_time: '2015-10-26 00:00:00'
591
+ )
592
+ ```
593
+
565
594
  ## Contributing
566
595
 
567
596
  Bug report or pull request are welcome.
@@ -3,7 +3,6 @@ module Alipay
3
3
  GATEWAY_URL = 'https://mapi.alipay.com/gateway.do'
4
4
 
5
5
  CREATE_PARTNER_TRADE_BY_BUYER_REQUIRED_PARAMS = %w( out_trade_no subject logistics_type logistics_fee logistics_payment price quantity )
6
- # alipayescow
7
6
  def self.create_partner_trade_by_buyer_url(params, options = {})
8
7
  params = Utils.stringify_keys(params)
9
8
  check_required_params(params, CREATE_PARTNER_TRADE_BY_BUYER_REQUIRED_PARAMS)
@@ -20,7 +19,6 @@ module Alipay
20
19
  end
21
20
 
22
21
  TRADE_CREATE_BY_BUYER_REQUIRED_PARAMS = %w( out_trade_no subject logistics_type logistics_fee logistics_payment price quantity )
23
- # alipaydualfun
24
22
  def self.trade_create_by_buyer_url(params, options = {})
25
23
  params = Utils.stringify_keys(params)
26
24
  check_required_params(params, TRADE_CREATE_BY_BUYER_REQUIRED_PARAMS)
@@ -37,7 +35,6 @@ module Alipay
37
35
  end
38
36
 
39
37
  CREATE_DIRECT_PAY_BY_USER_REQUIRED_PARAMS = %w( out_trade_no subject )
40
- # direct
41
38
  def self.create_direct_pay_by_user_url(params, options = {})
42
39
  params = Utils.stringify_keys(params)
43
40
  check_required_params(params, CREATE_DIRECT_PAY_BY_USER_REQUIRED_PARAMS)
@@ -58,7 +55,6 @@ module Alipay
58
55
  end
59
56
 
60
57
  CREATE_DIRECT_PAY_BY_USER_WAP_REQUIRED_PARAMS = %w( out_trade_no subject total_fee )
61
- # direct wap
62
58
  def self.create_direct_pay_by_user_wap_url(params, options = {})
63
59
  params = Utils.stringify_keys(params)
64
60
  check_required_params(params, CREATE_DIRECT_PAY_BY_USER_WAP_REQUIRED_PARAMS)
@@ -75,7 +71,6 @@ module Alipay
75
71
  end
76
72
 
77
73
  CREATE_REFUND_URL_REQUIRED_PARAMS = %w( batch_no data notify_url )
78
- # 支付宝即时到帐批量退款有密接口(此为异步接口,有密指通过此接口打开 url 后需要用户输入支付宝的支付密码进行退款)
79
74
  def self.refund_fastpay_by_platform_pwd_url(params, options = {})
80
75
  params = Utils.stringify_keys(params)
81
76
  check_required_params(params, CREATE_REFUND_URL_REQUIRED_PARAMS)
@@ -87,24 +82,19 @@ module Alipay
87
82
  end.join('#')
88
83
 
89
84
  params = {
90
- 'service' => 'refund_fastpay_by_platform_pwd', # 接口名称
85
+ 'service' => 'refund_fastpay_by_platform_pwd',
91
86
  '_input_charset' => 'utf-8',
92
87
  'partner' => options[:pid] || Alipay.pid,
93
88
  'seller_user_id' => options[:pid] || Alipay.pid,
94
- 'refund_date' => Time.now.strftime('%Y-%m-%d %H:%M:%S'), # 申请退款时间
95
- 'batch_num' => data.size, # 总笔数
96
- 'detail_data' => detail_data # 转换后的单笔数据集字符串
89
+ 'refund_date' => Time.now.strftime('%Y-%m-%d %H:%M:%S'),
90
+ 'batch_num' => data.size,
91
+ 'detail_data' => detail_data
97
92
  }.merge(params)
98
93
 
99
94
  request_uri(params, options).to_s
100
95
  end
101
96
 
102
97
  CREATE_FOREX_SINGLE_REFUND_URL_REQUIRED_PARAMS = %w( out_return_no out_trade_no return_amount currency reason )
103
- # 支付宝境外收单单笔退款接口
104
- # out_return_no 退款流水单号
105
- # out_trade_no 交易创建时的订单号
106
- # return_amount 退款金额
107
- # currency 退款币种,与交易创建时的币种一致
108
98
  def self.forex_refund_url(params, options = {})
109
99
  params = Utils.stringify_keys(params)
110
100
  check_required_params(params, CREATE_FOREX_SINGLE_REFUND_URL_REQUIRED_PARAMS)
@@ -179,6 +169,16 @@ module Alipay
179
169
  Net::HTTP.get(request_uri(params, options))
180
170
  end
181
171
 
172
+ def self.account_page_query(params, options = {})
173
+ params = {
174
+ service: 'account.page.query',
175
+ _input_charset: 'utf-8',
176
+ partner: options[:pid] || Alipay.pid,
177
+ }.merge(params)
178
+
179
+ Net::HTTP.get(request_uri(params, options))
180
+ end
181
+
182
182
  def self.request_uri(params, options = {})
183
183
  uri = URI(GATEWAY_URL)
184
184
  uri.query = URI.encode_www_form(sign_params(params, options))
@@ -1,3 +1,3 @@
1
1
  module Alipay
2
- VERSION = "0.9.0"
2
+ VERSION = "0.10.0"
3
3
  end
@@ -174,4 +174,66 @@ class Alipay::ServiceTest < Minitest::Test
174
174
  transport_type: 'DIRECT'
175
175
  )
176
176
  end
177
+
178
+ def test_account_page_query
179
+ body = <<-EOF
180
+ <?xml version="1.0" encoding="utf-8"?>
181
+ <alipay>
182
+ <is_success>T</is_success>
183
+ <request>
184
+ <param name="sign">sign_data</param>
185
+ <param name="_input_charset">utf-8</param>
186
+ <param name="gmt_end_time">2015-10-26 06:20:29</param>
187
+ <param name="sign_type">MD5</param>
188
+ <param name="service">account.page.query</param>
189
+ <param name="partner">2088123123</param>
190
+ <param name="page_no">1</param>
191
+ <param name="gmt_start_time">2015-10-25 06:20:29</param>
192
+ </request>
193
+ <response>
194
+ <account_page_query_result>
195
+ <account_log_list>
196
+ <AccountQueryAccountLogVO>
197
+ <balance>1234</balance>
198
+ <buyer_account>2088123123</buyer_account>
199
+ <currency>123</currency>
200
+ <deposit_bank_no>20151025123123</deposit_bank_no>
201
+ <goods_title>商品名称</goods_title>
202
+ <income>100.00</income>
203
+ <iw_account_log_id>12345678910</iw_account_log_id>
204
+ <memo> </memo>
205
+ <merchant_out_order_no>1234567</merchant_out_order_no>
206
+ <outcome>0.00</outcome>
207
+ <partner_id>2088123123</partner_id>
208
+ <rate>0.015</rate>
209
+ <seller_account>2088123123123</seller_account>
210
+ <seller_fullname>xxxx有限公司</seller_fullname>
211
+ <service_fee>0.00</service_fee>
212
+ <service_fee_ratio> </service_fee_ratio>
213
+ <sign_product_name>快捷手机安全支付</sign_product_name>
214
+ <sub_trans_code_msg>快速支付,支付给个人,支付宝帐户全额</sub_trans_code_msg>
215
+ <total_fee>100.00</total_fee>
216
+ <trade_no>20151025123123</trade_no>
217
+ <trade_refund_amount>0.00</trade_refund_amount>
218
+ <trans_code_msg>在线支付</trans_code_msg>
219
+ <trans_date>2015-10-25 06:33:07</trans_date>
220
+ </AccountQueryAccountLogVO>
221
+ </account_log_list>
222
+ <has_next_page>F</has_next_page>
223
+ <page_no>1</page_no>
224
+ <page_size>5000</page_size>
225
+ </account_page_query_result>
226
+ </response>
227
+ <sign>sign_data</sign>
228
+ <sign_type>MD5</sign_type>
229
+ </alipay>
230
+ EOF
231
+ FakeWeb.register_uri(:get, %r|https://mapi\.alipay\.com/gateway\.do.*|, :body => body)
232
+
233
+ assert_equal body, Alipay::Service.account_page_query(
234
+ page_no: 1,
235
+ gmt_start_time: (Time.now - 1).strftime('%Y-%m-%d %H:%M:%S'),
236
+ gmt_end_time: Time.now.strftime('%Y-%m-%d %H:%M:%S')
237
+ )
238
+ end
177
239
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alipay
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rei
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-15 00:00:00.000000000 Z
11
+ date: 2015-11-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler