@@ -7,13 +7,28 @@ import (
77 "github.com/UnipayFI/binance-cli/config"
88 "github.com/UnipayFI/binance-cli/exchange"
99 universaltransfer "github.com/UnipayFI/binance-cli/exchange/universal_transfer"
10+ "github.com/UnipayFI/binance-cli/printer"
1011 "github.com/spf13/cobra"
1112)
1213
1314var (
1415 universalTransferCmd = & cobra.Command {
1516 Use : "universal-transfer" ,
16- Short : "User universal transfer" ,
17+ Short : "Transfer asset and history" ,
18+ }
19+
20+ universalTransferListCmd = & cobra.Command {
21+ Use : "ls" ,
22+ Short : "list universal transfer history" ,
23+ Run : universalTransferList ,
24+ Long : `Query User Universal Transfer History.
25+
26+ Docs Link: https://developers.binance.com/docs/wallet/asset/query-user-universal-transfer` ,
27+ }
28+
29+ transferCmd = & cobra.Command {
30+ Use : "transfer" ,
31+ Short : "transfer asset" ,
1732 PreRun : func (cmd * cobra.Command , args []string ) {
1833 transferType , _ := cmd .Flags ().GetString ("type" )
1934 asset , _ := cmd .Flags ().GetString ("asset" )
2944 }
3045 }
3146 },
32- Long : `user universal transfer.
47+ Long : `User universal transfer.
3348* You need to enable 'Permits Universal Transfer' option for the API Key which requests this endpoint.
3449
3550Docs Link: https://developers.binance.com/docs/wallet/asset/user-universal-transfer` ,
@@ -38,14 +53,40 @@ Docs Link: https://developers.binance.com/docs/wallet/asset/user-universal-trans
3853)
3954
4055func init () {
41- universalTransferCmd .Flags ().String ("type" , "" , "transfer type" )
42- universalTransferCmd .Flags ().String ("asset" , "" , "asset" )
43- universalTransferCmd .Flags ().String ("amount" , "" , "amount" )
44- universalTransferCmd .Flags ().String ("fromSymbol" , "" , "from symbol" )
45- universalTransferCmd .Flags ().String ("toSymbol" , "" , "to symbol" )
56+ universalTransferListCmd .Flags ().String ("type" , "" , "transfer type" )
57+ universalTransferListCmd .Flags ().Int64 ("startTime" , 0 , "start time" )
58+ universalTransferListCmd .Flags ().Int64 ("endTime" , 0 , "end time" )
59+ universalTransferListCmd .Flags ().Int64 ("current" , 0 , "current" )
60+ universalTransferListCmd .Flags ().Int64 ("size" , 100 , "size, max 100" )
61+ universalTransferListCmd .Flags ().String ("fromSymbol" , "" , "from symbol" )
62+ universalTransferListCmd .Flags ().String ("toSymbol" , "" , "to symbol" )
63+
64+ transferCmd .Flags ().String ("type" , "" , "transfer type" )
65+ transferCmd .Flags ().String ("asset" , "" , "asset" )
66+ transferCmd .Flags ().String ("amount" , "" , "amount" )
67+ transferCmd .Flags ().String ("fromSymbol" , "" , "from symbol" )
68+ transferCmd .Flags ().String ("toSymbol" , "" , "to symbol" )
69+ universalTransferCmd .AddCommand (universalTransferListCmd , transferCmd )
4670 RootCmd .AddCommand (universalTransferCmd )
4771}
4872
73+ func universalTransferList (cmd * cobra.Command , args []string ) {
74+ transferType , _ := cmd .Flags ().GetString ("type" )
75+ startTime , _ := cmd .Flags ().GetInt64 ("startTime" )
76+ endTime , _ := cmd .Flags ().GetInt64 ("endTime" )
77+ current , _ := cmd .Flags ().GetInt64 ("current" )
78+ size , _ := cmd .Flags ().GetInt64 ("size" )
79+ fromSymbol , _ := cmd .Flags ().GetString ("fromSymbol" )
80+ toSymbol , _ := cmd .Flags ().GetString ("toSymbol" )
81+
82+ client := universaltransfer.Client {Client : exchange .NewClient (config .Config .APIKey , config .Config .APISecret )}
83+ list , err := client .List (transferType , startTime , endTime , current , size , fromSymbol , toSymbol )
84+ if err != nil {
85+ log .Fatal (err )
86+ }
87+ printer .PrintTable (& list )
88+ }
89+
4990func universalTransfer (cmd * cobra.Command , args []string ) {
5091 transferType , _ := cmd .Flags ().GetString ("type" )
5192 asset , _ := cmd .Flags ().GetString ("asset" )
0 commit comments