Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
c1a98ed1
Commit
c1a98ed1
authored
Jan 10, 2020
by
hxzqlh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update chain33; fix linter error
parent
481152c1
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
36 additions
and
77 deletions
+36
-77
go.mod
go.mod
+1
-1
go.sum
go.sum
+2
-0
exchangedb.go
plugin/dapp/exchange/executor/exchangedb.go
+9
-6
main.go
plugin/dapp/exchange/test/cmd/main.go
+0
-9
exchange_test.go
plugin/dapp/exchange/test/exchange_test.go
+10
-8
grpc_cli.go
plugin/dapp/exchange/test/grpc_cli.go
+10
-7
prepare.sh
plugin/dapp/exchange/test/prepare.sh
+4
-6
query.go
plugin/dapp/token/executor/query.go
+0
-7
token.go
plugin/dapp/token/executor/token.go
+0
-33
No files found.
go.mod
View file @
c1a98ed1
...
@@ -3,7 +3,7 @@ module github.com/33cn/plugin
...
@@ -3,7 +3,7 @@ module github.com/33cn/plugin
go 1.12
go 1.12
require (
require (
github.com/33cn/chain33 v0.0.0-2020010
8042336-2dda2dfb7e0e
github.com/33cn/chain33 v0.0.0-2020010
9024406-6514ff4beb02
github.com/BurntSushi/toml v0.3.1
github.com/BurntSushi/toml v0.3.1
github.com/NebulousLabs/Sia v1.3.7
github.com/NebulousLabs/Sia v1.3.7
github.com/beorn7/perks v1.0.1 // indirect
github.com/beorn7/perks v1.0.1 // indirect
...
...
go.sum
View file @
c1a98ed1
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
github.com/33cn/chain33 v0.0.0-20200108042336-2dda2dfb7e0e h1:FMnJCJUDEsjHURlHv3zqiiftvNCtTbsMSjXSykG7htc=
github.com/33cn/chain33 v0.0.0-20200108042336-2dda2dfb7e0e h1:FMnJCJUDEsjHURlHv3zqiiftvNCtTbsMSjXSykG7htc=
github.com/33cn/chain33 v0.0.0-20200108042336-2dda2dfb7e0e/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/33cn/chain33 v0.0.0-20200108042336-2dda2dfb7e0e/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/33cn/chain33 v0.0.0-20200109024406-6514ff4beb02 h1:OyEN91t4fEsb7N3i86A5u1f0j5D1L/VW0QzKEXqgjLg=
github.com/33cn/chain33 v0.0.0-20200109024406-6514ff4beb02/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 h1:PqzgE6kAMi81xWQA2QIVxjWkFHptGgC547vchpUbtFo=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 h1:PqzgE6kAMi81xWQA2QIVxjWkFHptGgC547vchpUbtFo=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8=
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
...
...
plugin/dapp/exchange/executor/exchangedb.go
View file @
c1a98ed1
...
@@ -386,12 +386,15 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -386,12 +386,15 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
matched
=
matchorder
.
GetBalance
()
matched
=
matchorder
.
GetBalance
()
}
}
elog
.
Info
(
"try match"
,
"activeId"
,
or
.
OrderID
,
"passiveId"
,
matchorder
.
OrderID
,
"activeAddr"
,
or
.
Addr
,
"passiveAddr"
,
matchorder
.
Addr
,
"amount"
,
matched
,
"price"
,
payload
.
Price
)
if
payload
.
Op
==
et
.
OpSell
{
if
payload
.
Op
==
et
.
OpSell
{
//转移冻结资产
//转移冻结资产
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
payload
.
Price
)
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
payload
.
Price
)
receipt
,
err
:=
rightAccountDB
.
ExecTransferFrozen
(
matchorder
.
Addr
,
a
.
fromaddr
,
a
.
execaddr
,
amount
)
receipt
,
err
:=
rightAccountDB
.
ExecTransferFrozen
(
matchorder
.
Addr
,
a
.
fromaddr
,
a
.
execaddr
,
amount
)
if
err
!=
nil
{
if
err
!=
nil
{
elog
.
Error
(
"match
LimitOrder.ExecTransferFrozen"
,
"addr"
,
matchorder
.
A
ddr
,
"amount"
,
amount
,
"err"
,
err
)
elog
.
Error
(
"match
Model.ExecTransferFrozen"
,
"from"
,
matchorder
.
Addr
,
"to"
,
a
.
froma
ddr
,
"amount"
,
amount
,
"err"
,
err
)
return
nil
,
nil
,
err
return
nil
,
nil
,
err
}
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
logs
=
append
(
logs
,
receipt
.
Logs
...
)
...
@@ -401,7 +404,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -401,7 +404,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
-
payload
.
Price
)
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
-
payload
.
Price
)
receipt
,
err
:=
rightAccountDB
.
ExecActive
(
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
receipt
,
err
:=
rightAccountDB
.
ExecActive
(
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
if
err
!=
nil
{
if
err
!=
nil
{
elog
.
Error
(
"match
LimitOrder
.ExecActive"
,
"addr"
,
matchorder
.
Addr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
elog
.
Error
(
"match
Model
.ExecActive"
,
"addr"
,
matchorder
.
Addr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
return
nil
,
nil
,
err
return
nil
,
nil
,
err
}
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
logs
=
append
(
logs
,
receipt
.
Logs
...
)
...
@@ -411,7 +414,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -411,7 +414,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
amount
=
CalcActualCost
(
payload
.
Op
,
matched
,
payload
.
Price
)
amount
=
CalcActualCost
(
payload
.
Op
,
matched
,
payload
.
Price
)
receipt
,
err
=
leftAccountDB
.
ExecTransfer
(
a
.
fromaddr
,
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
receipt
,
err
=
leftAccountDB
.
ExecTransfer
(
a
.
fromaddr
,
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
if
err
!=
nil
{
if
err
!=
nil
{
elog
.
Error
(
"match
LimitOrder.ExecTransfer"
,
"addr"
,
a
.
froma
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
elog
.
Error
(
"match
Model.ExecTransfer"
,
"from"
,
a
.
fromaddr
,
"to"
,
matchorder
.
A
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
return
nil
,
nil
,
err
return
nil
,
nil
,
err
}
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
logs
=
append
(
logs
,
receipt
.
Logs
...
)
...
@@ -427,7 +430,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -427,7 +430,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
)
amount
:=
CalcActualCost
(
matchorder
.
GetLimitOrder
()
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
)
receipt
,
err
:=
leftAccountDB
.
ExecTransferFrozen
(
matchorder
.
Addr
,
a
.
fromaddr
,
a
.
execaddr
,
amount
)
receipt
,
err
:=
leftAccountDB
.
ExecTransferFrozen
(
matchorder
.
Addr
,
a
.
fromaddr
,
a
.
execaddr
,
amount
)
if
err
!=
nil
{
if
err
!=
nil
{
elog
.
Error
(
"match
LimitOrder.ExecTransferFrozen"
,
"addr"
,
matchorder
.
A
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
elog
.
Error
(
"match
Model.ExecTransferFrozen2"
,
"from"
,
matchorder
.
Addr
,
"to"
,
a
.
froma
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
return
nil
,
nil
,
err
return
nil
,
nil
,
err
}
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
logs
=
append
(
logs
,
receipt
.
Logs
...
)
...
@@ -436,7 +439,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -436,7 +439,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
amount
=
CalcActualCost
(
payload
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
)
amount
=
CalcActualCost
(
payload
.
Op
,
matched
,
matchorder
.
GetLimitOrder
()
.
Price
)
receipt
,
err
=
rightAccountDB
.
ExecTransfer
(
a
.
fromaddr
,
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
receipt
,
err
=
rightAccountDB
.
ExecTransfer
(
a
.
fromaddr
,
matchorder
.
Addr
,
a
.
execaddr
,
amount
)
if
err
!=
nil
{
if
err
!=
nil
{
elog
.
Error
(
"match
LimitOrder.ExecTransfer"
,
"addr"
,
a
.
froma
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
elog
.
Error
(
"match
Model.ExecTransfer2"
,
"from"
,
a
.
fromaddr
,
"to"
,
matchorder
.
A
ddr
,
"amount"
,
amount
,
"err"
,
err
.
Error
())
return
nil
,
nil
,
err
return
nil
,
nil
,
err
}
}
logs
=
append
(
logs
,
receipt
.
Logs
...
)
logs
=
append
(
logs
,
receipt
.
Logs
...
)
...
@@ -465,7 +468,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
...
@@ -465,7 +468,7 @@ func (a *Action) matchModel(leftAccountDB, rightAccountDB *account.DB, payload *
matchorder
.
Executed
=
matched
matchorder
.
Executed
=
matched
kvs
=
append
(
kvs
,
a
.
GetKVSet
(
matchorder
)
...
)
kvs
=
append
(
kvs
,
a
.
GetKVSet
(
matchorder
)
...
)
or
.
Executed
+=
matched
// TODO why not += ?
or
.
Executed
+=
matched
or
.
Balance
=
0
or
.
Balance
=
0
kvs
=
append
(
kvs
,
a
.
GetKVSet
(
or
)
...
)
//or complete
kvs
=
append
(
kvs
,
a
.
GetKVSet
(
or
)
...
)
//or complete
}
else
{
}
else
{
...
...
plugin/dapp/exchange/test/cmd/main.go
View file @
c1a98ed1
...
@@ -10,17 +10,8 @@ import (
...
@@ -10,17 +10,8 @@ import (
var
(
var
(
cli
*
test
.
GRPCCli
cli
*
test
.
GRPCCli
Genesis
=
"0x3990969DF92A5914F7B71EEB9A4E58D6E255F32BF042FEA5318FC8B3D50EE6E8"
// 1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
PrivKeyA
=
"0x6da92a632ab7deb67d38c0f6560bcfed28167998f6496db64c258d5e8393a81b"
// 1KSBd17H7ZK8iT37aJztFB22XGwsPTdwE4
PrivKeyA
=
"0x6da92a632ab7deb67d38c0f6560bcfed28167998f6496db64c258d5e8393a81b"
// 1KSBd17H7ZK8iT37aJztFB22XGwsPTdwE4
PrivKeyB
=
"0x19c069234f9d3e61135fefbeb7791b149cdf6af536f26bebb310d4cd22c3fee4"
// 1JRNjdEqp4LJ5fqycUBm9ayCKSeeskgMKR
PrivKeyB
=
"0x19c069234f9d3e61135fefbeb7791b149cdf6af536f26bebb310d4cd22c3fee4"
// 1JRNjdEqp4LJ5fqycUBm9ayCKSeeskgMKR
PrivKeyC
=
"0x7a80a1f75d7360c6123c32a78ecf978c1ac55636f87892df38d8b85a9aeff115"
// 1NLHPEcbTWWxxU3dGUZBhayjrCHD3psX7k
PrivKeyD
=
"0xcacb1f5d51700aea07fca2246ab43b0917d70405c65edea9b5063d72eb5c6b71"
// 1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs
Nodes
=
[]
string
{
"1KSBd17H7ZK8iT37aJztFB22XGwsPTdwE4"
,
"1JRNjdEqp4LJ5fqycUBm9ayCKSeeskgMKR"
,
"1NLHPEcbTWWxxU3dGUZBhayjrCHD3psX7k"
,
"1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs"
,
}
)
)
// 批量测试前,先确保测试账户有足够的币和钱
// 批量测试前,先确保测试账户有足够的币和钱
...
...
plugin/dapp/exchange/test/exchange_test.go
View file @
c1a98ed1
...
@@ -3,6 +3,8 @@ package test
...
@@ -3,6 +3,8 @@ package test
import
(
import
(
"testing"
"testing"
"github.com/golang/protobuf/proto"
"github.com/33cn/plugin/plugin/dapp/exchange/executor"
"github.com/33cn/plugin/plugin/dapp/exchange/executor"
"github.com/33cn/chain33/types"
"github.com/33cn/chain33/types"
...
@@ -21,7 +23,7 @@ var (
...
@@ -21,7 +23,7 @@ var (
rightAsset
=
&
et
.
Asset
{
Symbol
:
token
,
Execer
:
"token"
}
rightAsset
=
&
et
.
Asset
{
Symbol
:
token
,
Execer
:
"token"
}
cli
Cli
cli
Cli
orderI
d
int64
orderI
D
int64
)
)
func
init
()
{
func
init
()
{
...
@@ -39,11 +41,11 @@ func TestOrderList(t *testing.T) {
...
@@ -39,11 +41,11 @@ func TestOrderList(t *testing.T) {
orderList
,
err
:=
getOrderList
(
et
.
Ordered
,
Nodes
[
0
],
""
)
orderList
,
err
:=
getOrderList
(
et
.
Ordered
,
Nodes
[
0
],
""
)
assert
.
Nil
(
t
,
err
)
assert
.
Nil
(
t
,
err
)
t
.
Log
(
orderList
)
t
.
Log
(
orderList
)
orderI
d
=
orderList
.
List
[
0
]
.
OrderID
orderI
D
=
orderList
.
List
[
0
]
.
OrderID
}
}
func
TestGetOrder
(
t
*
testing
.
T
)
{
func
TestGetOrder
(
t
*
testing
.
T
)
{
order
,
err
:=
getOrder
(
orderI
d
)
order
,
err
:=
getOrder
(
orderI
D
)
assert
.
Nil
(
t
,
err
)
assert
.
Nil
(
t
,
err
)
t
.
Log
(
order
)
t
.
Log
(
order
)
}
}
...
@@ -71,7 +73,7 @@ func TestHistoryOrderList(t *testing.T) {
...
@@ -71,7 +73,7 @@ func TestHistoryOrderList(t *testing.T) {
func
TestRevokeOrder
(
t
*
testing
.
T
)
{
func
TestRevokeOrder
(
t
*
testing
.
T
)
{
//A 撤回未完成订单
//A 撤回未完成订单
testRevokeLimitOrder
(
t
,
orderI
d
,
Nodes
[
0
],
PrivKeyA
)
testRevokeLimitOrder
(
t
,
orderI
D
,
Nodes
[
0
],
PrivKeyA
)
}
}
func
TestSample0
(
t
*
testing
.
T
)
{
func
TestSample0
(
t
*
testing
.
T
)
{
...
@@ -219,8 +221,8 @@ func getOrder(orderID int64) (*et.Order, error) {
...
@@ -219,8 +221,8 @@ func getOrder(orderID int64) (*et.Order, error) {
return
&
resp
,
nil
return
&
resp
,
nil
}
}
func
getMarketDepth
(
q
uery
*
et
.
QueryMarketDepth
)
(
*
et
.
MarketDepthList
,
error
)
{
func
getMarketDepth
(
q
proto
.
Message
)
(
*
et
.
MarketDepthList
,
error
)
{
msg
,
err
:=
cli
.
Query
(
et
.
FuncNameQueryMarketDepth
,
q
uery
)
msg
,
err
:=
cli
.
Query
(
et
.
FuncNameQueryMarketDepth
,
q
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -233,8 +235,8 @@ func getMarketDepth(query *et.QueryMarketDepth) (*et.MarketDepthList, error) {
...
@@ -233,8 +235,8 @@ func getMarketDepth(query *et.QueryMarketDepth) (*et.MarketDepthList, error) {
return
&
resp
,
nil
return
&
resp
,
nil
}
}
func
getHistoryOrderList
(
q
uery
*
et
.
QueryHistoryOrderList
)
(
*
et
.
OrderList
,
error
)
{
func
getHistoryOrderList
(
q
proto
.
Message
)
(
*
et
.
OrderList
,
error
)
{
msg
,
err
:=
cli
.
Query
(
et
.
FuncNameQueryHistoryOrderList
,
q
uery
)
msg
,
err
:=
cli
.
Query
(
et
.
FuncNameQueryHistoryOrderList
,
q
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
...
plugin/dapp/exchange/test/grpc_cli.go
View file @
c1a98ed1
...
@@ -90,14 +90,11 @@ func (c *GRPCCli) GetExecAccount(addr string, exec string, symbol string) (*type
...
@@ -90,14 +90,11 @@ func (c *GRPCCli) GetExecAccount(addr string, exec string, symbol string) (*type
}
}
// token: ccny
// token: ccny
var
addrs
[]
string
param
:=
&
tt
.
ReqAccountTokenAssets
{
addrs
=
append
(
addrs
,
addr
)
Address
:
addr
,
param
:=
&
tt
.
ReqTokenBalance
{
Addresses
:
addrs
,
TokenSymbol
:
symbol
,
Execer
:
et
.
ExchangeX
,
Execer
:
et
.
ExchangeX
,
}
}
msg
,
err
:=
c
.
Query
(
"token.GetAccountToken
Balance
"
,
param
)
msg
,
err
:=
c
.
Query
(
"token.GetAccountToken
Assets
"
,
param
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -108,7 +105,13 @@ func (c *GRPCCli) GetExecAccount(addr string, exec string, symbol string) (*type
...
@@ -108,7 +105,13 @@ func (c *GRPCCli) GetExecAccount(addr string, exec string, symbol string) (*type
return
nil
,
err
return
nil
,
err
}
}
return
resp
.
TokenAssets
[
0
]
.
Account
,
nil
for
_
,
v
:=
range
resp
.
TokenAssets
{
if
v
.
Symbol
==
symbol
{
return
v
.
Account
,
nil
}
}
return
nil
,
types
.
ErrNotFound
}
}
// 发送交易并等待执行结果
// 发送交易并等待执行结果
...
...
plugin/dapp/exchange/test/prepare.sh
View file @
c1a98ed1
#!/usr/bin/env bash
#!/usr/bin/env bash
BUILD
=
$(
cd
`
dirname
$0
`
&&
cd
../../../../build
&&
pwd
)
BUILD
=
$(
cd
"
$(
dirname
"
$0
"
)
"
&&
cd
../../../../build
&&
pwd
)
echo
"
$BUILD
"
echo
"
$BUILD
"
cd
$BUILD
cd
$BUILD
||
return
seed
=
$(
./chain33-cli seed generate
-l
0
)
seed
=
$(
./chain33-cli seed generate
-l
0
)
echo
$seed
echo
"
$seed
"
./chain33-cli seed save
-p
bty123456
-s
"
$seed
"
./chain33-cli seed save
-p
bty123456
-s
"
$seed
"
sleep
1
sleep
1
...
@@ -29,13 +30,11 @@ sleep 1
...
@@ -29,13 +30,11 @@ sleep 1
#D -- 1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs
#D -- 1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs
./chain33-cli account import_key
-k
0xcacb1f5d51700aea07fca2246ab43b0917d70405c65edea9b5063d72eb5c6b71
-l
D
./chain33-cli account import_key
-k
0xcacb1f5d51700aea07fca2246ab43b0917d70405c65edea9b5063d72eb5c6b71
-l
D
## config token
## config token
./chain33-cli send config config_tx
-c
token-finisher
-o
add
-v
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
-k
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
./chain33-cli send config config_tx
-c
token-finisher
-o
add
-v
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
-k
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
sleep
1
sleep
1
./chain33-cli config query
-k
token-finisher
./chain33-cli config query
-k
token-finisher
./chain33-cli send config config_tx
-c
token-blacklist
-o
add
-v
BTY
-k
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
./chain33-cli send config config_tx
-c
token-blacklist
-o
add
-v
BTY
-k
1CbEVT9RnM5oZhWMj4fxUrJX94VtRotzvs
sleep
1
sleep
1
./chain33-cli config query
-k
token-blacklist
./chain33-cli config query
-k
token-blacklist
...
@@ -80,4 +79,3 @@ echo "account balance in execer"
...
@@ -80,4 +79,3 @@ echo "account balance in execer"
./chain33-cli send token send_exec
-a
200000000
-e
exchange
-s
CCNY
-k
1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs
./chain33-cli send token send_exec
-a
200000000
-e
exchange
-s
CCNY
-k
1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs
echo
"token balance in execer"
echo
"token balance in execer"
./chain33-cli token balance
-e
exchange
-s
CCNY
-a
"1KSBd17H7ZK8iT37aJztFB22XGwsPTdwE4 1JRNjdEqp4LJ5fqycUBm9ayCKSeeskgMKR 1NLHPEcbTWWxxU3dGUZBhayjrCHD3psX7k 1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs"
./chain33-cli token balance
-e
exchange
-s
CCNY
-a
"1KSBd17H7ZK8iT37aJztFB22XGwsPTdwE4 1JRNjdEqp4LJ5fqycUBm9ayCKSeeskgMKR 1NLHPEcbTWWxxU3dGUZBhayjrCHD3psX7k 1MCftFynyvG2F4ED5mdHYgziDxx6vDrScs"
plugin/dapp/token/executor/query.go
View file @
c1a98ed1
...
@@ -59,13 +59,6 @@ func (t *token) Query_GetAccountTokenAssets(in *tokenty.ReqAccountTokenAssets) (
...
@@ -59,13 +59,6 @@ func (t *token) Query_GetAccountTokenAssets(in *tokenty.ReqAccountTokenAssets) (
return
t
.
getAccountTokenAssets
(
in
)
return
t
.
getAccountTokenAssets
(
in
)
}
}
func
(
t
*
token
)
Query_GetAccountTokenBalance
(
in
*
tokenty
.
ReqTokenBalance
)
(
types
.
Message
,
error
)
{
if
in
==
nil
{
return
nil
,
types
.
ErrInvalidParam
}
return
t
.
getAccountTokenBalance
(
in
)
}
// Query_GetTxByToken 获取token相关交易
// Query_GetTxByToken 获取token相关交易
func
(
t
*
token
)
Query_GetTxByToken
(
in
*
tokenty
.
ReqTokenTx
)
(
types
.
Message
,
error
)
{
func
(
t
*
token
)
Query_GetTxByToken
(
in
*
tokenty
.
ReqTokenTx
)
(
types
.
Message
,
error
)
{
if
in
==
nil
{
if
in
==
nil
{
...
...
plugin/dapp/token/executor/token.go
View file @
c1a98ed1
...
@@ -124,39 +124,6 @@ func (t *token) getAccountTokenAssets(req *tokenty.ReqAccountTokenAssets) (types
...
@@ -124,39 +124,6 @@ func (t *token) getAccountTokenAssets(req *tokenty.ReqAccountTokenAssets) (types
return
reply
,
nil
return
reply
,
nil
}
}
func
(
t
*
token
)
getAccountTokenBalance
(
req
*
tokenty
.
ReqTokenBalance
)
(
types
.
Message
,
error
)
{
var
reply
=
&
tokenty
.
ReplyAccountTokenAssets
{}
cfg
:=
t
.
GetAPI
()
.
GetConfig
()
for
_
,
addr
:=
range
req
.
Addresses
{
assets
,
err
:=
t
.
queryTokenAssetsKey
(
addr
)
if
err
!=
nil
{
return
nil
,
err
}
for
_
,
asset
:=
range
assets
.
Datas
{
if
asset
!=
req
.
TokenSymbol
{
continue
}
acc
,
err
:=
account
.
NewAccountDB
(
cfg
,
t
.
GetName
(),
asset
,
t
.
GetStateDB
())
if
err
!=
nil
{
return
nil
,
err
}
var
acc1
*
types
.
Account
if
req
.
Execer
==
t
.
GetName
()
{
acc1
=
acc
.
LoadAccount
(
addr
)
}
else
if
req
.
Execer
!=
""
{
execAddress
:=
address
.
ExecAddress
(
req
.
Execer
)
acc1
=
acc
.
LoadExecAccount
(
addr
,
execAddress
)
}
if
acc1
==
nil
{
continue
}
tokenAsset
:=
&
tokenty
.
TokenAsset
{
Symbol
:
asset
,
Account
:
acc1
}
reply
.
TokenAssets
=
append
(
reply
.
TokenAssets
,
tokenAsset
)
}
}
return
reply
,
nil
}
func
(
t
*
token
)
getAddrReceiverforTokens
(
addrTokens
*
tokenty
.
ReqAddrTokens
)
(
types
.
Message
,
error
)
{
func
(
t
*
token
)
getAddrReceiverforTokens
(
addrTokens
*
tokenty
.
ReqAddrTokens
)
(
types
.
Message
,
error
)
{
var
reply
=
&
tokenty
.
ReplyAddrRecvForTokens
{}
var
reply
=
&
tokenty
.
ReplyAddrRecvForTokens
{}
db
:=
t
.
GetLocalDB
()
db
:=
t
.
GetLocalDB
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment