focas-client 0.1.5 → 0.1.7

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
  SHA256:
3
- metadata.gz: a4ee135e6e235cece01fd3a79c3734433e6d44aa5e71c260c3685516c5f324c9
4
- data.tar.gz: 7a804b5355c42126635453e4412f9c259bd72d0bb3f7891149d08c1efec724fb
3
+ metadata.gz: 669f15d07af72519ab202c2a7e23fbc9dc0d71fe5378ea9d2df3aed07d897d75
4
+ data.tar.gz: 1a41cc58bb6def738004ecbcf17bc5e8cb23cfb8683a1cefa2f8291791405271
5
5
  SHA512:
6
- metadata.gz: 286f429762664df2516d5077cef22209c150235ef160b276d412483b525cd5063111db658ac8cfa1f65d3afd900eed0dc054e78a544f89119e6d70d3d45c2d78
7
- data.tar.gz: 47e3a463d22bc59f5a0c1dc079655ba51731d9c20420165e7c3b719d029fa6aa900b5067a58567e7e3ee6538fd4a002313e25ae640aff7aa52f5ff43fdf08f98
6
+ metadata.gz: 83440f5576fb35d9f97c0f0ec7bd04676b035838adc93126fe8cead7a45f3bce9d85e9217d9389f8cc8b4272ae96033e2dbb4a346f502b984a1a3ab7291547b9
7
+ data.tar.gz: 1d7f634f7b1c29fbb9db6e1bcd468c31e698861c837d31e69a3f374f4e3829421802f71033c4e263b96ef3fee3cee56efbb8f98561ebd312e04967bc1989f01a
data/CHANGELOG.md CHANGED
@@ -1 +1 @@
1
- ## 0.1.5 (開發中)
1
+ ## 0.1.7 (開發中)
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- focas-client (0.1.5)
4
+ focas-client (0.1.7)
5
5
  activesupport (>= 4.0)
6
6
 
7
7
  GEM
data/lib/focas/payment.rb CHANGED
@@ -53,13 +53,12 @@ module Focas
53
53
  ret = data.transform_keys(&:to_sym).to_h
54
54
  return false if not ret[:respToken].present?
55
55
 
56
-
57
56
  begin
58
57
  # to hash
59
58
  resp_token = ret[:respToken]
60
59
 
61
60
  options = Config.options
62
- settings = options.transform_keys(&:to_sym).to_h
61
+ settings = options.transform_keys(&:to_sym)
63
62
 
64
63
  # 檢查 ret[:status] 成功或失敗
65
64
  if ret[:status] == '0'
@@ -70,8 +69,8 @@ module Focas
70
69
  #{settings[:token]}
71
70
  #{ret[:authCode]}
72
71
  #{ret[:authRespTime]}
73
- #{settings[:merchant_id]}
74
- #{settings[:terminal_id]}
72
+ #{settings[:MerchantID]}
73
+ #{settings[:TerminalID]}
75
74
  )
76
75
 
77
76
  hash_string = tmp_arr.join('&')
@@ -83,8 +82,8 @@ module Focas
83
82
  #{ret[:lidm]}
84
83
  #{settings[:token]}
85
84
  #{ret[:authRespTime]}
86
- #{settings[:merchant_id]}
87
- #{settings[:terminal_id]}
85
+ #{settings[:MerchantID]}
86
+ #{settings[:TerminalID]}
88
87
  )
89
88
  end
90
89
 
@@ -100,16 +99,23 @@ module Focas
100
99
 
101
100
  def set_trade_info
102
101
  options = Config.options
103
- @trade_info = options.transform_keys(&:to_sym).to_h
104
- # 應移除 token,不該曝光
105
- @trade_info.delete(:token)
102
+ @trade_info = options.transform_keys(&:to_sym)
106
103
 
107
104
  local_date = Time.now.strftime('%Y%m%d')
108
105
  local_time = Time.now.strftime('%H%M%S')
109
106
  trade_time = "#{local_date}#{local_time}"
110
-
107
+
111
108
  # 訂單編號&交易金額&驗證參數&特店代號&端末代號&交易時間
112
- hash_string = "#{@lidm}#{@purch_amt}#{@trade_info[:token]}#{@trade_info[:merchant_id]}#{@trade_info[:terminal_id]}#{trade_time}"
109
+ tmp_arr = %W(
110
+ #{@lidm}
111
+ #{@purch_amt}
112
+ #{@trade_info[:token]}
113
+ #{@trade_info[:MerchantID]}
114
+ #{@trade_info[:TerminalID]}
115
+ #{trade_time}
116
+ )
117
+
118
+ hash_string = tmp_arr.join('&')
113
119
 
114
120
  req_token = Digest::SHA256.hexdigest(hash_string).upcase
115
121
 
@@ -124,10 +130,8 @@ module Focas
124
130
  LocalTime: local_time
125
131
  }
126
132
 
127
- individual_trade_info.merge!(options[:trade_info]) if options[:trade_info]
128
-
129
- # 同是 hash 再來 merge
130
- @trade_info = (options.to_h.merge!(individual_trade_info)).transform_keys(&:to_sym)
133
+ # 應移除 token,不該曝光
134
+ @trade_info.merge!(individual_trade_info).delete(:token)
131
135
  end
132
136
  end
133
137
  end
data/lib/focas/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Focas
4
- VERSION = '0.1.5'
4
+ VERSION = '0.1.7'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: focas-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Lin (pct)