update application_service
This commit is contained in:
parent
31a3e6ccea
commit
3f618b3a09
|
@ -1,115 +1,115 @@
|
||||||
class ApplicationService
|
class ApplicationService
|
||||||
include Callable
|
include Callable
|
||||||
|
|
||||||
Error = Class.new(StandardError)
|
Error = Class.new(StandardError)
|
||||||
|
|
||||||
def regix_emoji content
|
def regix_emoji content
|
||||||
" " if content.blank?
|
" " if content.blank?
|
||||||
regex = /[^a-zA-Z0-9\u4E00-\u9FFF]/
|
regex = /[^a-zA-Z0-9\u4E00-\u9FFF]/
|
||||||
content.gsub(regex, '')
|
content.gsub(regex, '')
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def strip(str)
|
def strip(str)
|
||||||
str.to_s.strip.presence
|
str.to_s.strip.presence
|
||||||
end
|
end
|
||||||
|
|
||||||
def str_to_boolean str
|
def str_to_boolean str
|
||||||
ActiveModel::Type::Boolean.new.cast str
|
ActiveModel::Type::Boolean.new.cast str
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
# author: zxh
|
# author: zxh
|
||||||
# blockchain创建项目相关api
|
# blockchain创建项目相关api
|
||||||
|
|
||||||
def invoke_blockchain_api(uri, params)
|
def invoke_blockchain_api(uri, params)
|
||||||
begin
|
begin
|
||||||
uri = URI.parse(URI.encode(uri.strip))
|
uri = URI.parse(URI.encode(uri.strip))
|
||||||
res = Net::HTTP.start(uri.host, uri.port) do |http|
|
res = Net::HTTP.start(uri.host, uri.port) do |http|
|
||||||
req = Net::HTTP::Post.new(uri)
|
req = Net::HTTP::Post.new(uri)
|
||||||
req['Content-Type'] = 'application/json'
|
req['Content-Type'] = 'application/json'
|
||||||
req.body = params
|
req.body = params
|
||||||
http.request(req)
|
http.request(req)
|
||||||
end
|
end
|
||||||
if res.code.to_i != 200
|
if res.code.to_i != 200
|
||||||
puts '区块链接口请求失败.'
|
puts '区块链接口请求失败.'
|
||||||
return false
|
return false
|
||||||
else
|
else
|
||||||
res_body = JSON.parse(res.body)
|
res_body = JSON.parse(res.body)
|
||||||
if res_body.has_key?("status") && res_body["status"] == 0
|
if res_body.has_key?("status") && res_body["status"] == 0
|
||||||
else
|
else
|
||||||
puts '区块链接口请求出错.'
|
puts '区块链接口请求出错.'
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
return true
|
return true
|
||||||
rescue Exception => e
|
rescue Exception => e
|
||||||
puts '区块链接口请求失败.'
|
puts '区块链接口请求失败.'
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
# params: params from index.js page
|
# params: params from index.js page
|
||||||
def create_repo_on_blockchain(params, project)
|
def create_repo_on_blockchain(params, project)
|
||||||
username = params['user_id'].to_s
|
username = params['user_id'].to_s
|
||||||
token_name = project.id.to_s
|
token_name = project.id.to_s
|
||||||
total_supply = params['blockchain_token_all'].to_i
|
total_supply = params['blockchain_token_all'].to_i
|
||||||
token_balance = [[username, (total_supply * params['blockchain_init_token'].to_i / 100).to_i]]
|
token_balance = [[username, (total_supply * params['blockchain_init_token'].to_i / 100).to_i]]
|
||||||
|
|
||||||
param = {
|
param = {
|
||||||
"request-type": "create repo",
|
"request-type": "create repo",
|
||||||
"username": username,
|
"username": username,
|
||||||
"token_name": token_name,
|
"token_name": token_name,
|
||||||
"total_supply": total_supply,
|
"total_supply": total_supply,
|
||||||
"token_balance": token_balance
|
"token_balance": token_balance
|
||||||
}.to_json
|
}.to_json
|
||||||
invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
def transfer_balance_on_blockchain(payer, payee, token_name, amount)
|
def transfer_balance_on_blockchain(payer, payee, token_name, amount)
|
||||||
|
|
||||||
param = {
|
param = {
|
||||||
"request-type": "transfer amount",
|
"request-type": "transfer amount",
|
||||||
"payer": payer,
|
"payer": payer,
|
||||||
"payee": payee,
|
"payee": payee,
|
||||||
"token_name": token_name,
|
"token_name": token_name,
|
||||||
"amount": amount
|
"amount": amount
|
||||||
}.to_json
|
}.to_json
|
||||||
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
||||||
return results
|
return results
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
def lock_balance_on_blockchain(username, tokenname, amount)
|
def lock_balance_on_blockchain(username, tokenname, amount)
|
||||||
|
|
||||||
param = {
|
param = {
|
||||||
"request-type": "lock user balance",
|
"request-type": "lock user balance",
|
||||||
"username": username,
|
"username": username,
|
||||||
"token_name": tokenname,
|
"token_name": tokenname,
|
||||||
"amount": amount
|
"amount": amount
|
||||||
}.to_json
|
}.to_json
|
||||||
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
||||||
return results
|
return results
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
def unlock_balance_on_blockchain(username, tokenname, amount)
|
def unlock_balance_on_blockchain(username, tokenname, amount)
|
||||||
|
|
||||||
param = {
|
param = {
|
||||||
"request-type": "unlock user balance",
|
"request-type": "unlock user balance",
|
||||||
"username": username,
|
"username": username,
|
||||||
"token_name": tokenname,
|
"token_name": tokenname,
|
||||||
"amount": amount
|
"amount": amount
|
||||||
}.to_json
|
}.to_json
|
||||||
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
results = invoke_blockchain_api(Blockchain.blockchain_config[:api_url], param)
|
||||||
return results
|
return results
|
||||||
end
|
end
|
||||||
def phone_mail_type value
|
def phone_mail_type value
|
||||||
value =~ /^1\d{10}$/ ? 1 : 0
|
value =~ /^1\d{10}$/ ? 1 : 0
|
||||||
end
|
end
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue