4 "github.com/vapor/consensus"
5 "github.com/vapor/protocol/bc"
6 "github.com/vapor/protocol/bc/types"
7 "github.com/vapor/toolbar/apinode"
10 func MergeUTXO(hostPort, accountID, password, address string, amount uint64) ([]string, error) {
11 actions := []interface{}{}
13 actions = append(actions, &apinode.ControlAddressAction{
15 AssetAmount: &bc.AssetAmount{AssetId: consensus.BTMAssetID, Amount: amount},
18 actions = append(actions, &apinode.SpendAccountAction{
20 AssetAmount: &bc.AssetAmount{AssetId: consensus.BTMAssetID, Amount: amount},
23 node := apinode.NewNode(hostPort)
25 tpls, err := node.BuildChainTxs(actions)
27 return []string{}, err
30 tpls, err = node.SignTxs(tpls, password)
32 return []string{}, err
36 for _, tpl := range tpls {
37 txs = append(txs, tpl.Transaction)
40 return node.SubmitTxs(txs)