71 lines
2.1 KiB
Go
71 lines
2.1 KiB
Go
package systemconfig
|
|
|
|
import "time"
|
|
|
|
type ConfigDTO struct {
|
|
ID uint64 `json:"id"`
|
|
Key string `json:"key"`
|
|
Value string `json:"value"`
|
|
Description string `json:"description"`
|
|
UpdatedBy *uint64 `json:"updated_by"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
}
|
|
|
|
type UpdateRequest struct {
|
|
Value string `json:"value" binding:"required"`
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
type HomeAnnouncementsDTO struct {
|
|
Items []string `json:"items"`
|
|
}
|
|
|
|
type HomeConfigDTO struct {
|
|
Announcements []string `json:"announcements"`
|
|
Banners []HomeBannerItem `json:"banners"`
|
|
PublishOptions PublishOptionsDTO `json:"publish_options"`
|
|
}
|
|
|
|
type HomeBannerItem struct {
|
|
Eyebrow string `json:"eyebrow"`
|
|
Title string `json:"title"`
|
|
Badge string `json:"badge"`
|
|
Pill string `json:"pill"`
|
|
Tone string `json:"tone"`
|
|
ImageURL string `json:"image_url,omitempty"`
|
|
}
|
|
|
|
type PublishOptionsDTO struct {
|
|
ServerOptions []string `json:"server_options"`
|
|
FaceOptions []string `json:"face_options"`
|
|
RankOptions []string `json:"rank_options"`
|
|
InsuranceOptions []string `json:"insurance_options"`
|
|
LevelOptions []string `json:"level_options"`
|
|
LoginMethodOptions []string `json:"login_method_options"`
|
|
RegionOptions []string `json:"region_options"`
|
|
SkinGroups []PublishOptionGroup `json:"skin_groups"`
|
|
QuantityItems []PublishQuantityItem `json:"quantity_items"`
|
|
ScreenshotSlots []PublishScreenshotSlot `json:"screenshot_slots"`
|
|
}
|
|
|
|
type PublishOptionGroup struct {
|
|
Key string `json:"key"`
|
|
Title string `json:"title"`
|
|
Options []string `json:"options"`
|
|
}
|
|
|
|
type PublishQuantityItem struct {
|
|
Key string `json:"key"`
|
|
Label string `json:"label"`
|
|
Price string `json:"price"`
|
|
Placeholder string `json:"placeholder,omitempty"`
|
|
}
|
|
|
|
type PublishScreenshotSlot struct {
|
|
Key string `json:"key"`
|
|
Label string `json:"label"`
|
|
Required bool `json:"required"`
|
|
Hint string `json:"hint"`
|
|
}
|