lanmao 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
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: []