From ff3c6eb52623dfc13292e2b5284d9a774224301a Mon Sep 17 00:00:00 2001 From: zhengjiajie Date: Tue, 18 Dec 2018 16:04:06 +0800 Subject: [PATCH] zhengjiajie add new files --- cmd/climc/shell/bill_balances.go | 48 +++++++++++++++++++++++ pkg/mcclient/modules/mod_bill_balances.go | 13 ++++++ 2 files changed, 61 insertions(+) create mode 100644 cmd/climc/shell/bill_balances.go create mode 100644 pkg/mcclient/modules/mod_bill_balances.go diff --git a/cmd/climc/shell/bill_balances.go b/cmd/climc/shell/bill_balances.go new file mode 100644 index 0000000000..51a23e99b7 --- /dev/null +++ b/cmd/climc/shell/bill_balances.go @@ -0,0 +1,48 @@ +package shell + +import ( + "yunion.io/x/jsonutils" + "yunion.io/x/onecloud/pkg/mcclient" + "yunion.io/x/onecloud/pkg/mcclient/modules" + "yunion.io/x/onecloud/pkg/mcclient/options" +) + +func init() { + + type BillBalanceListOptions struct { + options.BaseListOptions + ACCOUNTID string `help:"accountId of the BillBalance"` + } + R(&BillBalanceListOptions{}, "billbalance-list", "List all BillBalances ", func(s *mcclient.ClientSession, args *BillBalanceListOptions) error { + var params *jsonutils.JSONDict + { + var err error + params, err = args.BaseListOptions.Params() + if err != nil { + return err + } + } + + params.Add(jsonutils.NewString(args.ACCOUNTID), "account_id") + + result, err := modules.BillBalances.List(s, params) + if err != nil { + return err + } + + printList(result, modules.BillBalances.GetColumns(s)) + return nil + }) + + type BillBalanceShowOptions struct { + ACCOUNTID string `help:"accountId of the BillBalance to show"` + } + R(&BillBalanceShowOptions{}, "billbalance-show", "Show BillBalance details", func(s *mcclient.ClientSession, args *BillBalanceShowOptions) error { + result, err := modules.BillBalances.Get(s, args.ACCOUNTID, nil) + if err != nil { + return err + } + printObject(result) + return nil + }) +} diff --git a/pkg/mcclient/modules/mod_bill_balances.go b/pkg/mcclient/modules/mod_bill_balances.go new file mode 100644 index 0000000000..3d1d3273eb --- /dev/null +++ b/pkg/mcclient/modules/mod_bill_balances.go @@ -0,0 +1,13 @@ +package modules + +var ( + BillBalances ResourceManager +) + +func init() { + BillBalances = NewMeterManager("bill_balance", "bill_balances", + []string{"provider", "account", "account_name", "query_date", "balance", "currency", "today_fee", "month_fee"}, + []string{}, + ) + register(&BillBalances) +}