170 lines
4.6 KiB
Go
170 lines
4.6 KiB
Go
package domain
|
|
|
|
import (
|
|
"time"
|
|
|
|
dbgen "github.com/SamuelTariku/FortuneBet-Backend/gen/db"
|
|
)
|
|
|
|
type MarketSettings struct {
|
|
MarketID int64
|
|
MarketName string
|
|
IsActive bool
|
|
UpdatedAt time.Time
|
|
}
|
|
type MarketSettingsRes struct {
|
|
MarketID int64 `json:"market_id"`
|
|
MarketName string `json:"market_name"`
|
|
IsActive bool `json:"is_active"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
type CreateGlobalMarketSettings struct {
|
|
MarketID int64
|
|
MarketName string
|
|
IsActive bool
|
|
}
|
|
|
|
type CreateCompanyMarketSettings struct {
|
|
CompanyID int64
|
|
MarketID int64
|
|
MarketName string
|
|
IsActive ValidBool
|
|
}
|
|
type CreateCompanyMarketSettingsReq struct {
|
|
MarketID int64 `json:"market_id"`
|
|
MarketName string `json:"market_name"`
|
|
IsActive *bool `json:"is_active,omitempty"`
|
|
}
|
|
|
|
type CompanyMarketSettings struct {
|
|
CompanyID int64
|
|
MarketID int64
|
|
MarketName string
|
|
IsActive ValidBool
|
|
UpdatedAt time.Time
|
|
}
|
|
|
|
type CompanyMarketSettingsRes struct {
|
|
CompanyID int64 `json:"company_id"`
|
|
MarketID int64 `json:"market_id"`
|
|
MarketName string `json:"market_name"`
|
|
IsActive bool `json:"is_active"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
type MarketSettingFilter struct {
|
|
Limit ValidInt32
|
|
Offset ValidInt32
|
|
}
|
|
type CompanyMarketSettingFilter struct {
|
|
Limit ValidInt32
|
|
Offset ValidInt32
|
|
CompanyID ValidInt64
|
|
}
|
|
|
|
func ConvertMarketSettingsRes(setting MarketSettings) MarketSettingsRes {
|
|
return MarketSettingsRes{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive,
|
|
UpdatedAt: setting.UpdatedAt,
|
|
}
|
|
}
|
|
|
|
func ConvertMarketSettingsResList(settings []MarketSettings) []MarketSettingsRes {
|
|
result := make([]MarketSettingsRes, len(settings))
|
|
for i, setting := range settings {
|
|
result[i] = ConvertMarketSettingsRes(setting)
|
|
}
|
|
return result
|
|
}
|
|
|
|
func ConvertCreateCompanyMarketSettingsReq(setting CreateCompanyMarketSettingsReq, companyId int64) CreateCompanyMarketSettings {
|
|
return CreateCompanyMarketSettings{
|
|
CompanyID: companyId,
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: ConvertBoolPtr(setting.IsActive),
|
|
}
|
|
}
|
|
|
|
func ConvertCreateGlobalMarketSettings(setting CreateGlobalMarketSettings) dbgen.InsertGlobalMarketSettingsParams {
|
|
return dbgen.InsertGlobalMarketSettingsParams{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive,
|
|
}
|
|
}
|
|
|
|
func ConvertCreateCompanyMarketSettings(setting CreateCompanyMarketSettings) dbgen.InsertCompanyMarketSettingsParams {
|
|
return dbgen.InsertCompanyMarketSettingsParams{
|
|
CompanyID: setting.CompanyID,
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive.ToPG(),
|
|
}
|
|
}
|
|
|
|
func ConvertDBGlobalMarketSettings(setting dbgen.GlobalOddMarketSetting) MarketSettings {
|
|
return MarketSettings{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive,
|
|
UpdatedAt: setting.UpdatedAt.Time,
|
|
}
|
|
}
|
|
|
|
func ConvertDBCompanyMarketSettingsList(settings []dbgen.CompanyOddMarketSetting) []CompanyMarketSettings {
|
|
result := make([]CompanyMarketSettings, len(settings))
|
|
for i, setting := range settings {
|
|
result[i] = ConvertDBCompanyMarketSettings(setting)
|
|
}
|
|
return result
|
|
}
|
|
func ConvertDBCompanyMarketSettings(setting dbgen.CompanyOddMarketSetting) CompanyMarketSettings {
|
|
return CompanyMarketSettings{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: ValidBool{
|
|
Value: setting.IsActive.Bool,
|
|
Valid: setting.IsActive.Valid,
|
|
},
|
|
UpdatedAt: setting.UpdatedAt.Time,
|
|
}
|
|
}
|
|
|
|
func ConvertDBGlobalMarketSettingsList(settings []dbgen.GlobalOddMarketSetting) []MarketSettings {
|
|
result := make([]MarketSettings, len(settings))
|
|
for i, setting := range settings {
|
|
result[i] = ConvertDBGlobalMarketSettings(setting)
|
|
}
|
|
return result
|
|
}
|
|
|
|
func ConvertDBGetAllOverrideMarketSettings(setting dbgen.GetAllOverrideMarketSettingsRow) MarketSettings {
|
|
return MarketSettings{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive,
|
|
UpdatedAt: setting.UpdatedAt.Time,
|
|
}
|
|
}
|
|
|
|
func ConvertDBGetOverrideMarketSettingsByID(setting dbgen.GetOverrideMarketSettingByIDRow) MarketSettings {
|
|
return MarketSettings{
|
|
MarketID: setting.MarketID,
|
|
MarketName: setting.MarketName,
|
|
IsActive: setting.IsActive,
|
|
UpdatedAt: setting.UpdatedAt.Time,
|
|
}
|
|
}
|
|
|
|
func ConvertDBGetAllOverrideMarketSettingsList(settings []dbgen.GetAllOverrideMarketSettingsRow) []MarketSettings {
|
|
result := make([]MarketSettings, len(settings))
|
|
for i, setting := range settings {
|
|
result[i] = ConvertDBGetAllOverrideMarketSettings(setting)
|
|
}
|
|
return result
|
|
}
|