alipay_dualfun 0.3 → 0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- ZDFiNGY4NmI1NDEwMTdjYTMyNWQzMWI1MGYzMWVhYzZkZTU5N2IwYg==
4
+ YjJkNDQyMDFkMjI3YzI4ZGNkZjI2ZGM4YzYwODE4OGExYjU4OWUwZA==
5
5
  data.tar.gz: !binary |-
6
- ZWM2M2I1MDNmZmJkY2VmYjQ3MTViMDU3M2I3MDU1YjBhYTdhOGU5Yw==
6
+ Y2I5MDVmMGJmNWNkZjM4MTMyYzFjODY4ZTBlYzhhOGIyNjM1MDRkMw==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MDRmNzY4ODg3MzI2YzQxNTQzOGY1NWFjYzE2ODhjYTY2OGYxYzE4N2U1OGZl
10
- YmZmNjMxNzgwODIxMDJiZTM2ZjgzYjIwNDMxYTZjNTBhMzljYzI5MGMyZTE3
11
- M2U5NzJkOTBjZWZmNTc5MWJkMzEyMjk5M2Y0NzdlNjUyZDM4OGQ=
9
+ MmExNzA2ZDQ3YjZlMDMyODY3MDQ4NDcwNzlmNmU4MDhmOWM0YzI0ZDI0YWNl
10
+ OWI1YjkxZDhlNmRmODE0OTI3ZmJkNThjYzI5ZWQzZWQ5Y2NiZTE1MDgxMjUx
11
+ ZTc4MzZmYTA5YmUxMTNkZDI3MDJjM2EwOGNlNzIxMzYyZDlhNDc=
12
12
  data.tar.gz: !binary |-
13
- MmNiZjdiMzQzMDFiMTJhMjJlOTBmYWViODRmMjRjMmFjYjY0ZjRlZWI0N2My
14
- OWI0YTAzZDc0ZmZjNGUzN2M2NjY2YzM0NjYzODBlNzgxOGUyNDRkYzg4ZWRk
15
- YTY2N2U0ODQzYzgxMGU1ODc3NWNjMmNlNmU2ZThlNDRjOWQ1YWM=
13
+ MzY2ZTE5M2JiODllMWRjM2QwNmI2Y2ExOGRjNzVmOTc0OWJmZjJmYTZhMzVi
14
+ NDIzYTRmNTc2OTUxYTU3NTFkMzlmMDVlODc3NWM3MDBkMDU4YWZmZWFmZDQ2
15
+ MjgwMDQ2NTAyYjM0N2QzOGM0MjJlZjBlZmI4MDMwNmRlNmM3ZGM=
data/README.md CHANGED
@@ -23,8 +23,8 @@ And then execute:
23
23
 
24
24
  ### Thanks
25
25
 
26
- - <https://github.com/chloerei/alipay>
27
- - <https://github.com/daqing/china_pay>
26
+ - <https://github.com/chloerei/alipay> lots of code token from here
27
+ - <https://github.com/daqing/china_pay> for the initial idea
28
28
 
29
29
 
30
30
  Generate payment url
@@ -45,3 +45,14 @@ Generate payment url
45
45
  # => 'https://mapi.alipay.com/gateway.do?out_trade_no=...'
46
46
 
47
47
  以上除了标注`可选项`的内容之外,其他选项都是 Gem 要求的必填项,缺一不可。用户还可以根据自身特定需求添加可选项,具体可以参考支付宝官方资料包中的 pdf 文件。
48
+
49
+ Send Goods
50
+
51
+ options = {
52
+ :partner => 'PID',
53
+ :trade_no => 'TRADE_NO',
54
+ :logistics_name => 'haoqicat course'
55
+ }
56
+
57
+ Alipay::Service.send_goods_confirm_by_platform(options)
58
+ # => '<!xml version="1.0" encoding="utf-8"?><alipay><is_success>T</is_success></alipay>'
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "alipay_dualfun"
7
- gem.version = "0.3"
7
+ gem.version = "0.4"
8
8
  gem.authors = ["happypeter"]
9
9
  gem.email = ["happypeter1983@gmail.com"]
10
10
  gem.description = %q{This gem can help you integrate Alipay Dual-function Payment.}
@@ -4,10 +4,10 @@ require 'open-uri'
4
4
  require 'digest/md5'
5
5
 
6
6
  module AlipayDualfun
7
+ GATEWAY_URL = 'https://mapi.alipay.com/gateway.do'
7
8
 
9
+ TRADE_CREATE_BY_BUYER_REQUIRED_OPTIONS = %w( service partner _input_charset out_trade_no subject payment_type logistics_type logistics_fee logistics_payment seller_email price quantity )
8
10
  def self.trade_create_by_buyer_url(options = {})
9
- gateway_url = 'https://mapi.alipay.com/gateway.do'
10
- trade_create_by_buyer_required_options = %w( service partner _input_charset out_trade_no subject payment_type logistics_type logistics_fee logistics_payment seller_email price quantity )
11
11
  options = {
12
12
  'service' => 'trade_create_by_buyer',
13
13
  '_input_charset' => 'utf-8',
@@ -21,9 +21,9 @@ module AlipayDualfun
21
21
  @partner = options['partner']
22
22
  options.delete('key')
23
23
 
24
- check_required_options(options, trade_create_by_buyer_required_options)
24
+ check_required_options(options, TRADE_CREATE_BY_BUYER_REQUIRED_OPTIONS)
25
25
 
26
- "#{gateway_url}?#{query_string(options)}"
26
+ "#{GATEWAY_URL}?#{query_string(options)}"
27
27
  end
28
28
 
29
29
  def self.check_required_options(options, names)
@@ -70,4 +70,16 @@ module AlipayDualfun
70
70
  false
71
71
  end
72
72
  end
73
+
74
+ SEND_GOODS_CONFIRM_BY_PLATFORM_REQUIRED_OPTIONS = %w( service partner _input_charset trade_no logistics_name )
75
+ def self.send_goods_confirm_by_platform(options)
76
+ options = {
77
+ 'service' => 'send_goods_confirm_by_platform',
78
+ 'transport_type' => 'DIRECT',
79
+ '_input_charset' => 'utf-8'
80
+ }.merge(stringify_keys(options))
81
+
82
+ check_required_options(options, SEND_GOODS_CONFIRM_BY_PLATFORM_REQUIRED_OPTIONS)
83
+ open("#{GATEWAY_URL}?#{query_string(options)}").read
84
+ end
73
85
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alipay_dualfun
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.3'
4
+ version: '0.4'
5
5
  platform: ruby
6
6
  authors:
7
7
  - happypeter
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-23 00:00:00.000000000 Z
11
+ date: 2013-12-13 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: This gem can help you integrate Alipay Dual-function Payment.
14
14
  email: