traefik/vendor/github.com/sacloud/libsacloud/sacloud/bill.go
Ludovic Fernandez 139f280f35 ACME TLS ALPN
2018-07-03 12:44:04 +02:00

32 lines
1.2 KiB
Go

package sacloud
import "time"
// Bill 請求情報
type Bill struct {
Amount int64 `json:",omitempty"` // 金額
BillID int64 `json:",omitempty"` // 請求ID
Date *time.Time `json:",omitempty"` // 請求日
MemberID string `json:",omitempty"` // 会員ID
Paid bool `json:",omitempty"` // 支払済フラグ
PayLimit *time.Time `json:",omitempty"` // 支払い期限
PaymentClassID int `json:",omitempty"` // 支払いクラスID
}
// BillDetail 支払い明細情報
type BillDetail struct {
Amount int64 `json:",omitempty"` // 金額
ContractID int64 `json:",omitempty"` // 契約ID
Description string `json:",omitempty"` // 説明
Index int `json:",omitempty"` // インデックス
ServiceClassID int64 `json:",omitempty"` // サービスクラスID
Usage int64 `json:",omitempty"` // 秒数
Zone string `json:",omitempty"` // ゾーン
ContractEndAt *time.Time `json:",omitempty"` // 契約終了日時
}
// IsContractEnded 支払済か判定
func (d *BillDetail) IsContractEnded(t time.Time) bool {
return d.ContractEndAt != nil && d.ContractEndAt.Before(t)
}