Files
ezbookkeeping/pkg/models/exchange_rate.go
T

37 lines
1.1 KiB
Go

package models
import "strings"
// LatestExchangeRateResponse returns a view-object which contains latest exchange rate
type LatestExchangeRateResponse struct {
DataSource string `json:"dataSource"`
ReferenceUrl string `json:"referenceUrl"`
UpdateTime int64 `json:"updateTime"`
BaseCurrency string `json:"baseCurrency"`
ExchangeRates LatestExchangeRateSlice `json:"exchangeRates"`
}
// LatestExchangeRate represents a data pair of currency and exchange rate
type LatestExchangeRate struct {
Currency string `json:"currency"`
Rate string `json:"rate"`
}
// LatestExchangeRateSlice represents the slice data structure of LatestExchangeRate
type LatestExchangeRateSlice []*LatestExchangeRate
// Len returns the count of items
func (c LatestExchangeRateSlice) Len() int {
return len(c)
}
// Swap swaps two items
func (c LatestExchangeRateSlice) Swap(i, j int) {
c[i], c[j] = c[j], c[i]
}
// Less reports whether the first item is less than the second one
func (c LatestExchangeRateSlice) Less(i, j int) bool {
return strings.Compare(c[i].Currency, c[j].Currency) < 0
}