58 lines
1.8 KiB
Go
58 lines
1.8 KiB
Go
package domain
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
type Setting struct {
|
|
Key string
|
|
Value string
|
|
UpdatedAt time.Time
|
|
}
|
|
|
|
type SettingRes struct {
|
|
Key string `json:"key"`
|
|
Value string `json:"value"`
|
|
UpdatedAt string `json:"updated_at"`
|
|
}
|
|
|
|
type SettingList struct {
|
|
MaxNumberOfOutcomes int64 `json:"max_number_of_outcomes"`
|
|
BetAmountLimit Currency `json:"bet_amount_limit"`
|
|
DailyTicketPerIP int64 `json:"daily_ticket_limit"`
|
|
TotalWinningLimit Currency `json:"total_winning_limit"`
|
|
AmountForBetReferral Currency `json:"amount_for_bet_referral"`
|
|
CashbackAmountCap Currency `json:"cashback_amount_cap"`
|
|
}
|
|
|
|
type DBSettingList struct {
|
|
MaxNumberOfOutcomes ValidInt64
|
|
BetAmountLimit ValidInt64
|
|
DailyTicketPerIP ValidInt64
|
|
TotalWinningLimit ValidInt64
|
|
AmountForBetReferral ValidInt64
|
|
CashbackAmountCap ValidInt64
|
|
}
|
|
|
|
func ConvertInt64SettingsMap(dbSettingList *DBSettingList) map[string]*ValidInt64 {
|
|
return map[string]*ValidInt64{
|
|
"max_number_of_outcomes": &dbSettingList.MaxNumberOfOutcomes,
|
|
"bet_amount_limit": &dbSettingList.BetAmountLimit,
|
|
"daily_ticket_limit": &dbSettingList.DailyTicketPerIP,
|
|
"total_winnings_limit": &dbSettingList.TotalWinningLimit,
|
|
"amount_for_bet_referral": &dbSettingList.AmountForBetReferral,
|
|
"cashback_amount_cap": &dbSettingList.CashbackAmountCap,
|
|
}
|
|
}
|
|
|
|
func ConvertDBSetting(dbSettingList DBSettingList) SettingList {
|
|
return SettingList{
|
|
MaxNumberOfOutcomes: dbSettingList.MaxNumberOfOutcomes.Value,
|
|
BetAmountLimit: Currency(dbSettingList.BetAmountLimit.Value),
|
|
DailyTicketPerIP: dbSettingList.DailyTicketPerIP.Value,
|
|
TotalWinningLimit: Currency(dbSettingList.TotalWinningLimit.Value),
|
|
AmountForBetReferral: Currency(dbSettingList.AmountForBetReferral.Value),
|
|
CashbackAmountCap: Currency(dbSettingList.CashbackAmountCap.Value),
|
|
}
|
|
}
|