lanmao 0.1.0

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.
Files changed (57) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +59 -0
  3. data/.travis.yml +21 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +8 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +47 -0
  8. data/Rakefile +12 -0
  9. data/bin/console +14 -0
  10. data/bin/setup +8 -0
  11. data/lanmao.gemspec +45 -0
  12. data/lib/lanmao/api/account/.gitkeep +0 -0
  13. data/lib/lanmao/api/api_helper.rb +57 -0
  14. data/lib/lanmao/api/money/.gitkeep +0 -0
  15. data/lib/lanmao/api/money/auto_withdraw.rb +37 -0
  16. data/lib/lanmao/api/query/.gitkeep +0 -0
  17. data/lib/lanmao/api/query/query_authorization_entrust_pay_record.rb +32 -0
  18. data/lib/lanmao/api/query/query_project_information.rb +32 -0
  19. data/lib/lanmao/api/query/query_transaction.rb +34 -0
  20. data/lib/lanmao/api/query/query_user_information.rb +33 -0
  21. data/lib/lanmao/api/trade/.gitkeep +0 -0
  22. data/lib/lanmao/api/trade/async_transaction.rb +49 -0
  23. data/lib/lanmao/api/trade/establish_project.rb +45 -0
  24. data/lib/lanmao/api/trade/modify_project.rb +34 -0
  25. data/lib/lanmao/client.rb +45 -0
  26. data/lib/lanmao/extensions.rb +7 -0
  27. data/lib/lanmao/form/account/.gitkeep +0 -0
  28. data/lib/lanmao/form/account/activate_stocked_user_form.rb +36 -0
  29. data/lib/lanmao/form/account/check_password_form.rb +35 -0
  30. data/lib/lanmao/form/account/enterprise_register_form.rb +52 -0
  31. data/lib/lanmao/form/account/personal_register_expand_form.rb +44 -0
  32. data/lib/lanmao/form/account/reset_password_form.rb +35 -0
  33. data/lib/lanmao/form/account/user_authorization_form.rb +35 -0
  34. data/lib/lanmao/form/account/user_pre_transaction_form.rb +43 -0
  35. data/lib/lanmao/form/form_helper.rb +34 -0
  36. data/lib/lanmao/form/money/.gitkeep +0 -0
  37. data/lib/lanmao/form/money/recharge_form.rb +65 -0
  38. data/lib/lanmao/form/query/.gitkeep +0 -0
  39. data/lib/lanmao/form/trade/.gitkeep +0 -0
  40. data/lib/lanmao/http/error_code/account.rb +61 -0
  41. data/lib/lanmao/http/error_code/asset.rb +20 -0
  42. data/lib/lanmao/http/error_code/batch.rb +28 -0
  43. data/lib/lanmao/http/error_code/enterprise.rb +12 -0
  44. data/lib/lanmao/http/error_code/form.rb +15 -0
  45. data/lib/lanmao/http/error_code/money.rb +48 -0
  46. data/lib/lanmao/http/error_code/platform.rb +15 -0
  47. data/lib/lanmao/http/error_code/query.rb +48 -0
  48. data/lib/lanmao/http/error_code/trade.rb +52 -0
  49. data/lib/lanmao/http/request.rb +82 -0
  50. data/lib/lanmao/http/response.rb +55 -0
  51. data/lib/lanmao/railtie.rb +7 -0
  52. data/lib/lanmao/sign/rsa.rb +14 -0
  53. data/lib/lanmao/utils.rb +76 -0
  54. data/lib/lanmao/version.rb +3 -0
  55. data/lib/lanmao.rb +55 -0
  56. data/tmp/.gitkeep +0 -0
  57. metadata +270 -0
@@ -0,0 +1,48 @@
1
+ # coding: utf-8
2
+
3
+ module Lanmao
4
+ module Http
5
+ module ErrorCode
6
+
7
+ def self.batch_query_payment_b
8
+ @_batch_query_payment ||= %w[]
9
+ end
10
+
11
+ def self.batch_query_repayment_b
12
+ @_batch_query_repayment ||= %w[]
13
+ end
14
+
15
+ def self.apply_bid_query
16
+ @_apply_bid_query ||= %w[RD000094 RD000201 RD000210]
17
+ end
18
+
19
+ def self.batch_new_query_payment_b
20
+ @_batch_new_query_payment ||= %w[]
21
+ end
22
+
23
+ def self.batch_new_query_repayment_b
24
+ @_batch_new_query_repayment ||= %w[]
25
+ end
26
+
27
+ def self.buy_credit_query
28
+ @_buy_credit_query ||= %w[]
29
+ end
30
+
31
+ def self.money_query
32
+ @_money_query ||= %w[]
33
+ end
34
+
35
+ def self.cnaps_query
36
+ @_cnaps_query ||= %w[]
37
+ end
38
+
39
+ def self.trustee_pay_query
40
+ @_trustee_pay_query ||= %w[]
41
+ end
42
+
43
+ def self.batch_new_query_coupon_b
44
+ @_batch_new_query_coupon_b || %w[]
45
+ end
46
+ end # module ErrorCode
47
+ end
48
+ end
@@ -0,0 +1,52 @@
1
+ # coding: utf-8
2
+
3
+ module Lanmao
4
+ module Http
5
+ module ErrorCode
6
+
7
+ def self.sign_bid_query
8
+ @_sign_bid_query ||= %w[]
9
+ end
10
+
11
+ def self.auto_bid_apply
12
+ @_auto_bid_apply ||= %w[]
13
+ end
14
+
15
+ def self.debt_query
16
+ @_debt_query ||= %w[]
17
+ end
18
+
19
+ def self.buy_credit_p
20
+ @_buy_credit_p ||= %w[]
21
+ end
22
+
23
+ def trustee_pay_p
24
+ @_trustee_pay_p ||= %w[]
25
+ end
26
+
27
+ def self.sign_auto_bid_p
28
+ @_sign_auto_bid ||= %w[]
29
+ end
30
+
31
+ def self.auto_bid_apply
32
+ @_auto_bid_apply ||= %w[]
33
+ end
34
+
35
+ def self.revoke_auto_bid
36
+ @_revoke_auto_bid ||= %w[]
37
+ end
38
+
39
+ def self.bid_apply_p
40
+ @_bid_apply_p ||= ['RD001025']
41
+ end
42
+
43
+ def self.authorization_p
44
+ @_authorization_p ||= []
45
+ end
46
+
47
+ def self.sign_transfer_query
48
+ @_sign_transfer_query ||= []
49
+ end
50
+ end # module ErrorCode
51
+ end # module http
52
+ end # module rockfintech
@@ -0,0 +1,82 @@
1
+ # coding: utf-8
2
+ module Lanmao
3
+ module Http
4
+
5
+ class Request
6
+ def initialize(params, config, service, type)
7
+ @params = params
8
+ @params[:timestamp] = Time.now.strftime('%Y%m%d%H%M%S') # 时间戳
9
+
10
+ @config = config
11
+ @service = service
12
+
13
+ @url = if :gateway == type # 网关模式
14
+ @config[:path] + "/gateway"
15
+ elsif :service == type # 直连模式
16
+ @config[:path] + "/service"
17
+ else
18
+ @config[:path]
19
+ end
20
+ @response = nil
21
+ end
22
+
23
+ def get_body
24
+ Lanmao.logger.info "#{identifier} 请求内容为:\n#{@params.to_json}\n"
25
+
26
+ sign_str = Sign::RSA.sign(@params.to_json, @config[:private_key])
27
+
28
+ body = {
29
+ serviceName: @service,
30
+ platformNo: @config[:platform_no],
31
+ reqData: @params.to_json,
32
+ keySerial: @config[:key_serial],
33
+ sign: sign_str,
34
+ }
35
+
36
+ url = @url
37
+
38
+ return body, url
39
+ end
40
+
41
+ def post
42
+ # 1. api params
43
+ Lanmao.logger.info "#{identifier} 请求内容为:\n#{@params.to_json}\n"
44
+
45
+ # 2. sign
46
+ sign_str = Sign::RSA.sign(@params.to_json, @config[:private_key])
47
+
48
+ # 3. merge sign
49
+ post_body = {
50
+ serviceName: @service,
51
+ platformNo: @config[:platform_no],
52
+ reqData: @params.to_json,
53
+ keySerial: @config[:key_serial],
54
+ sign: sign_str,
55
+ }
56
+
57
+ # 5. send http request
58
+ Lanmao.logger.info "#{identifier} 发送的报文为:\n#{post_body}\n"
59
+ http_response = RestClient.post(@url, post_body)
60
+ Lanmao.logger.info "#{identifier} 返回的报文为:\n#{http_response.body.force_encoding('utf-8')}\n"
61
+
62
+ # 6. create response
63
+ @response = Lanmao::Http::Response.new(service: @service,
64
+ flow_id: flow_id,
65
+ http_response: http_response,
66
+ raw_body: http_response.body,
67
+ data: JSON.parse(http_response.body),
68
+ data_valid: true)
69
+ # data_valid: Sign.verify(res, @config))
70
+ end
71
+
72
+ def flow_id
73
+ @params[:requestNo]
74
+ end
75
+
76
+ def identifier
77
+ "[#{@service} - #{flow_id}] "
78
+ end
79
+
80
+ end # end of class
81
+ end
82
+ end
@@ -0,0 +1,55 @@
1
+ # coding: utf-8
2
+ module Lanmao
3
+ module Http
4
+
5
+ class Response
6
+ attr_accessor :service, :flow_id
7
+ attr_accessor :http_response, :raw_body
8
+ attr_accessor :data, :data_valid
9
+
10
+ def initialize(params)
11
+ self.data_valid = true
12
+
13
+ params.each do |key, value|
14
+ self.instance_variable_set("@#{key}", value)
15
+ end
16
+
17
+ self.data = {} if self.data.nil? # 默认一定要有
18
+
19
+ unless self.data_valid
20
+ self.data[:code] = 'sign_valid_fail'
21
+ self.data[:msg] = '数据签名错误'
22
+ end
23
+
24
+ end
25
+
26
+ def [] key
27
+ instance_variable_get("#{key}")
28
+ end
29
+
30
+ def to_s
31
+ arr = ["{"]
32
+ self.instance_variables.map{ |value|
33
+ arr << "\t#{value.to_s} => #{self[value.to_sym]}"
34
+ }
35
+ arr << ["}"]
36
+ arr.join("\n")
37
+ end
38
+
39
+ def http_success?
40
+ http_response && /^2/ =~ http_response.code.to_s
41
+ end
42
+
43
+ def http_fail?
44
+ # 而 400 错误一般都是地址不存在或者没有权限,都当成错误处理
45
+ http_response && http_response.code.to_s == '404'
46
+ end
47
+
48
+ def http_pending?
49
+ # nil 的时候是超时,非 404 的其他错误都是 pending
50
+ http_response.nil? || (!http_success? && !http_fail?)
51
+ end
52
+ end
53
+
54
+ end
55
+ end
@@ -0,0 +1,7 @@
1
+ module Lanmao
2
+ class Railtie < ::Rails::Railtie
3
+ initializer "Lanmao.logger" do
4
+ Lanmao.logger = Rails.logger
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,14 @@
1
+ # coding: utf-8
2
+ module Lanmao
3
+ module Sign
4
+ module RSA
5
+
6
+ def self.sign(content, private_key)
7
+ sign = private_key.sign('sha1', content.force_encoding("utf-8"))
8
+ signature = Base64.encode64(sign)
9
+ signature = signature.delete("\n").delete("\r")
10
+ end
11
+
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,76 @@
1
+ # coding: utf-8
2
+
3
+ # 通用工具类方法
4
+
5
+ module Lanmao
6
+ module Utils
7
+
8
+ # 把 hash 中的 key,都转化为 symbol 类型
9
+ #
10
+ # @param hash [Hash] 需要更改的 hash
11
+ # @return [Hash] 更改后的 hash
12
+ def self.symbolize_keys(hash)
13
+ new_hash = {}
14
+ hash.each do |key, value|
15
+ new_hash[(key.to_sym rescue key) || key] = value
16
+ end
17
+ new_hash
18
+ end
19
+
20
+ def self.get_uuid(time=Time.now.to_i)
21
+ machine_id = Digest::MD5.digest(::Mac.addr).unpack("N")[0]
22
+ process_id = Process.pid % 0xFFFF
23
+
24
+ @uuid_counter ||= 0
25
+ @uuid_counter += 1
26
+ count = (@uuid_counter) % 0xFFFFFF
27
+
28
+ uid = [ time, machine_id, process_id, count << 8 ].pack("N NX lXX NX").unpack("H*")[0].force_encoding('UTF-8')
29
+
30
+ return 'uuid' + uid
31
+ end
32
+
33
+ # 通过时间,返回唯一一个24位flow id(支持分布)
34
+ # 同一秒,同一台机器,同一个进程,最多可以产生 16777214 个不一样的订单号
35
+ #
36
+ # @example
37
+ # JytPay::Utils.gen_flow_id
38
+ #
39
+ # @param time [ Integer ] 时间(默认是 now)
40
+ # @return [ String ]
41
+ def self.gen_flow_id(time=Time.now.to_i)
42
+ machine_id = Digest::MD5.digest(::Mac.addr).unpack("N")[0]
43
+ process_id = Process.pid % 0xFFFF
44
+
45
+ @counter ||= 0
46
+ @counter += 1
47
+ count = (@counter) % 0xFFFFFF
48
+
49
+ return [ time, machine_id, process_id, count << 8 ].pack("N NX lXX NX").unpack("H*")[0].force_encoding('UTF-8')
50
+ end
51
+
52
+ # 随机产生 size 位字符串(大小写,数字组成)
53
+ # @param size [Int] 需要的位数,默认 16 位
54
+ # @return [String] 随机字符串
55
+ def self.random_key(size=16)
56
+ ((0..9).to_a + ('a'..'z').to_a + ('A'..'Z').to_a).sample(size).join()
57
+ end
58
+
59
+ # api 通用返回数据结构
60
+ # @param request_params [Object] 请求参数
61
+ # @param response [Object] 响应对象
62
+ # @return [Object]
63
+ def self.api_result(request_params, response)
64
+ {
65
+ result: 'P', # 默认
66
+ request_params: request_params,
67
+ response: response,
68
+ flow_id: response.nil? ? nil : response.flow_id,
69
+ code: response.nil? ? nil : response.data[:code],
70
+ error_code: response.nil? ? nil : response.data[:errorCode],
71
+ error_msg: response.nil? ? nil : response.data[:errorMessage],
72
+ data: response.nil? ? nil : response.data,
73
+ }
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,3 @@
1
+ module Lanmao
2
+ VERSION = "0.1.0"
3
+ end
data/lib/lanmao.rb ADDED
@@ -0,0 +1,55 @@
1
+ # coding: utf-8
2
+ require "json"
3
+ require "openssl"
4
+ require "base64"
5
+ require 'macaddr'
6
+ require 'byebug'
7
+ require 'logger'
8
+ require 'bigdecimal'
9
+ require 'bigdecimal/util'
10
+ require 'rest-client'
11
+
12
+ require "lanmao/version"
13
+
14
+ require "lanmao/version"
15
+ require "lanmao/utils"
16
+ require "lanmao/extensions"
17
+ require "lanmao/sign/rsa"
18
+ require "lanmao/http/request"
19
+ require "lanmao/http/response"
20
+
21
+ # 自动加载所有 api
22
+ Dir["#{File.dirname(__FILE__)}/lanmao/api/**/*.rb"].each { |file| require file }
23
+ # 自动加载所有 form
24
+ Dir["#{File.dirname(__FILE__)}/lanmao/form/**/*.rb"].each { |file| require file }
25
+ # 自动加载所有 http error code
26
+ Dir["#{File.dirname(__FILE__)}/lanmao/http/error_code/**/*.rb"].each { |file| require file }
27
+
28
+ module Lanmao
29
+ module Form
30
+ end
31
+ end
32
+
33
+ require "lanmao/client"
34
+
35
+ module Lanmao
36
+
37
+ class << self
38
+ def logger
39
+ @logger ||= default_logger
40
+ end
41
+
42
+ def default_logger
43
+ _logger = Logger.new(STDOUT)
44
+ _logger.level = Logger::INFO
45
+ _logger
46
+ end
47
+
48
+ def logger=(log)
49
+ @logger = (log ? log : Logger.new('/dev/null'))
50
+ end
51
+ end
52
+
53
+ end
54
+
55
+ require 'lanmao/railtie' if defined?(::Rails)
data/tmp/.gitkeep ADDED
File without changes
metadata ADDED
@@ -0,0 +1,270 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: lanmao
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - tony
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2018-06-03 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.16'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.16'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: macaddr
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.7'
48
+ - - ">="
49
+ - !ruby/object:Gem::Version
50
+ version: 1.7.1
51
+ type: :development
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.7'
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 1.7.1
61
+ - !ruby/object:Gem::Dependency
62
+ name: rest-client
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '2.0'
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 2.0.2
71
+ type: :development
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '2.0'
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 2.0.2
81
+ - !ruby/object:Gem::Dependency
82
+ name: rspec
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - "~>"
86
+ - !ruby/object:Gem::Version
87
+ version: '3.0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - "~>"
93
+ - !ruby/object:Gem::Version
94
+ version: '3.0'
95
+ - !ruby/object:Gem::Dependency
96
+ name: faker
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '1.8'
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 1.8.4
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - "~>"
110
+ - !ruby/object:Gem::Version
111
+ version: '1.8'
112
+ - - ">="
113
+ - !ruby/object:Gem::Version
114
+ version: 1.8.4
115
+ - !ruby/object:Gem::Dependency
116
+ name: byebug
117
+ requirement: !ruby/object:Gem::Requirement
118
+ requirements:
119
+ - - "~>"
120
+ - !ruby/object:Gem::Version
121
+ version: '9.1'
122
+ type: :development
123
+ prerelease: false
124
+ version_requirements: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '9.1'
129
+ - !ruby/object:Gem::Dependency
130
+ name: awesome_print
131
+ requirement: !ruby/object:Gem::Requirement
132
+ requirements:
133
+ - - "~>"
134
+ - !ruby/object:Gem::Version
135
+ version: '1.8'
136
+ type: :development
137
+ prerelease: false
138
+ version_requirements: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - "~>"
141
+ - !ruby/object:Gem::Version
142
+ version: '1.8'
143
+ - !ruby/object:Gem::Dependency
144
+ name: macaddr
145
+ requirement: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: '1.7'
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: 1.7.1
153
+ type: :runtime
154
+ prerelease: false
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '1.7'
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ version: 1.7.1
163
+ - !ruby/object:Gem::Dependency
164
+ name: rest-client
165
+ requirement: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - "~>"
168
+ - !ruby/object:Gem::Version
169
+ version: '2.0'
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: 2.0.2
173
+ type: :runtime
174
+ prerelease: false
175
+ version_requirements: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: '2.0'
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ version: 2.0.2
183
+ description: 新网银行的存管实现
184
+ email:
185
+ - gandalf@omniaccount.com
186
+ executables: []
187
+ extensions: []
188
+ extra_rdoc_files: []
189
+ files:
190
+ - ".gitignore"
191
+ - ".travis.yml"
192
+ - CODE_OF_CONDUCT.md
193
+ - Gemfile
194
+ - LICENSE.txt
195
+ - README.md
196
+ - Rakefile
197
+ - bin/console
198
+ - bin/setup
199
+ - lanmao.gemspec
200
+ - lib/lanmao.rb
201
+ - lib/lanmao/api/account/.gitkeep
202
+ - lib/lanmao/api/api_helper.rb
203
+ - lib/lanmao/api/money/.gitkeep
204
+ - lib/lanmao/api/money/auto_withdraw.rb
205
+ - lib/lanmao/api/query/.gitkeep
206
+ - lib/lanmao/api/query/query_authorization_entrust_pay_record.rb
207
+ - lib/lanmao/api/query/query_project_information.rb
208
+ - lib/lanmao/api/query/query_transaction.rb
209
+ - lib/lanmao/api/query/query_user_information.rb
210
+ - lib/lanmao/api/trade/.gitkeep
211
+ - lib/lanmao/api/trade/async_transaction.rb
212
+ - lib/lanmao/api/trade/establish_project.rb
213
+ - lib/lanmao/api/trade/modify_project.rb
214
+ - lib/lanmao/client.rb
215
+ - lib/lanmao/extensions.rb
216
+ - lib/lanmao/form/account/.gitkeep
217
+ - lib/lanmao/form/account/activate_stocked_user_form.rb
218
+ - lib/lanmao/form/account/check_password_form.rb
219
+ - lib/lanmao/form/account/enterprise_register_form.rb
220
+ - lib/lanmao/form/account/personal_register_expand_form.rb
221
+ - lib/lanmao/form/account/reset_password_form.rb
222
+ - lib/lanmao/form/account/user_authorization_form.rb
223
+ - lib/lanmao/form/account/user_pre_transaction_form.rb
224
+ - lib/lanmao/form/form_helper.rb
225
+ - lib/lanmao/form/money/.gitkeep
226
+ - lib/lanmao/form/money/recharge_form.rb
227
+ - lib/lanmao/form/query/.gitkeep
228
+ - lib/lanmao/form/trade/.gitkeep
229
+ - lib/lanmao/http/error_code/account.rb
230
+ - lib/lanmao/http/error_code/asset.rb
231
+ - lib/lanmao/http/error_code/batch.rb
232
+ - lib/lanmao/http/error_code/enterprise.rb
233
+ - lib/lanmao/http/error_code/form.rb
234
+ - lib/lanmao/http/error_code/money.rb
235
+ - lib/lanmao/http/error_code/platform.rb
236
+ - lib/lanmao/http/error_code/query.rb
237
+ - lib/lanmao/http/error_code/trade.rb
238
+ - lib/lanmao/http/request.rb
239
+ - lib/lanmao/http/response.rb
240
+ - lib/lanmao/railtie.rb
241
+ - lib/lanmao/sign/rsa.rb
242
+ - lib/lanmao/utils.rb
243
+ - lib/lanmao/version.rb
244
+ - tmp/.gitkeep
245
+ homepage: https://github.com/omniaccountcorp/lanmao
246
+ licenses:
247
+ - MIT
248
+ metadata:
249
+ allowed_push_host: https://rubygems.org
250
+ post_install_message:
251
+ rdoc_options: []
252
+ require_paths:
253
+ - lib
254
+ required_ruby_version: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - ">="
257
+ - !ruby/object:Gem::Version
258
+ version: '0'
259
+ required_rubygems_version: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">="
262
+ - !ruby/object:Gem::Version
263
+ version: '0'
264
+ requirements: []
265
+ rubyforge_project:
266
+ rubygems_version: 2.6.14
267
+ signing_key:
268
+ specification_version: 4
269
+ summary: 懒猫存管系统 SDK
270
+ test_files: []