entity

package
v0.0.0-...-b33ce83 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 10, 2023 License: GPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BanchoBeatmapEntity

type BanchoBeatmapEntity struct {
	BeatmapId        int      `json:"id" gorm:"column:BEATMAP_ID"`
	BeatmapsetId     int      `json:"beatmapset_id" gorm:"column:BEATMAPSET_ID"`
	Mode             *string  `json:"mode" gorm:"column:MODE"`
	ModeInt          *int     `json:"mode_int" gorm:"column:MODE_INT"`
	Status           *string  `json:"status" gorm:"column:STATUS"`
	Ranked           *int     `json:"ranked" gorm:"column:RANKED"`
	TotalLength      *int     `json:"total_length" gorm:"column:TOTAL_LENGTH"`
	MaxCombo         *int     `json:"max_combo" gorm:"column:MAX_COMBO"`
	DifficultyRating *float64 `json:"difficulty_rating" gorm:"column:DIFFICULTY_RATING"`
	Version          *string  `json:"version" gorm:"column:VERSION"`
	Accuracy         *float64 `json:"accuracy" gorm:"column:ACCURACY"`
	Ar               *float64 `json:"ar" gorm:"column:AR"`
	Cs               *float64 `json:"cs" gorm:"column:CS"`
	Drain            *float64 `json:"drain" gorm:"column:DRAIN"`
	Bpm              *float64 `json:"bpm" gorm:"column:BPM"`
	Convert          *bool    `json:"convert" gorm:"column:CONVERT"`
	CountCircles     *int     `json:"count_circles" gorm:"column:COUNT_CIRCLES"`
	CountSliders     *int     `json:"count_sliders" gorm:"column:COUNT_SLIDERS"`
	CountSpinners    *int     `json:"count_spinners" gorm:"column:COUNT_SPINNERS"`
	HitLength        *int     `json:"hit_length" gorm:"column:HIT_LENGTH"`
	IsScoreable      *bool    `json:"is_scoreable" gorm:"column:IS_SCOREABLE"`
	LastUpdated      *RFC3339 `json:"last_updated" gorm:"column:LAST_UPDATED"`
	DeletedAt        *RFC3339 `json:"deleted_at" gorm:"column:DELETED_AT"`
	Passcount        *int     `json:"passcount" gorm:"column:PASSCOUNT"`
	Playcount        *int     `json:"playcount" gorm:"column:PLAYCOUNT"`
	Checksum         *string  `json:"checksum" gorm:"column:CHECKSUM"`
	UserId           *int     `json:"user_id" gorm:"column:USER_ID"`
	OsuFile          string   `json:"osu_file" gorm:"-"`

	//=================================================================
	// 내부 변수
	BeatmapSet *BanchoBeatmapSetEntity `json:"-" gorm:"-"`
}

func (*BanchoBeatmapEntity) SetBeatmapSet

func (v *BanchoBeatmapEntity) SetBeatmapSet(beatmapSet *BanchoBeatmapSetEntity)

func (BanchoBeatmapEntity) TableName

func (BanchoBeatmapEntity) TableName() string

type BanchoBeatmapSetEntity

type BanchoBeatmapSetEntity struct {
	BeatmapsetId   int     `json:"id" gorm:"column:BEATMAPSET_ID"`
	Artist         *string `json:"artist" gorm:"column:ARTIST"`
	ArtistUnicode  *string `json:"artist_unicode" gorm:"column:ARTIST_UNICODE"`
	Creator        *string `json:"creator" gorm:"column:CREATOR"`
	FavouriteCount *int    `json:"favourite_count" gorm:"column:FAVOURITE_COUNT"`
	HypeCurrent    *int    `json:"-" gorm:"column:HYPE_CURRENT"`  // 조회용
	HypeRequired   *int    `json:"-" gorm:"column:HYPE_REQUIRED"` // 조회용
	Hype           struct {
		Current  *int `json:"current"`
		Required *int `json:"required"`
	} `json:"hype" gorm:"-"`
	Nsfw                         *bool   `json:"nsfw" gorm:"column:NSFW"`
	PlayCount                    *int    `json:"play_count" gorm:"column:PLAY_COUNT"`
	Source                       *string `json:"source" gorm:"column:SOURCE"`
	Status                       *string `json:"status" gorm:"column:STATUS"`
	Title                        *string `json:"title" gorm:"column:TITLE"`
	TitleUnicode                 *string `json:"title_unicode" gorm:"column:TITLE_UNICODE"`
	UserId                       *int    `json:"user_id" gorm:"column:USER_ID"`
	Video                        *bool   `json:"video" gorm:"column:VIDEO"`
	AvailabilityDownloadDisabled *bool   `json:"-" gorm:"column:AVAILABILITY_DOWNLOAD_DISABLED"` // 조회용
	AvailabilityMoreInformation  *string `json:"-" gorm:"column:AVAILABILITY_MORE_INFORMATION"`  // 조회용
	Availability                 struct {
		DownloadDisabled *bool   `json:"download_disabled"`
		MoreInformation  *string `json:"more_information"`
	} `json:"availability" gorm:"-"`
	Bpm               *float64 `json:"bpm" gorm:"column:BPM"`
	CanBeHyped        *bool    `json:"can_be_hyped" gorm:"column:CAN_BE_HYPED"`
	DiscussionEnabled *bool    `json:"-" gorm:"column:DISCUSSION_ENABLED"` // 조회용
	DiscussionLocked  *bool    `json:"-" gorm:"column:DISCUSSION_LOCKED"`  // 조회용
	Discussion        struct {
		Enabled *bool `json:"enabled"`
		Locked  *bool `json:"locked"`
	} `json:"discussion" gorm:"-"`
	IsScoreable                *bool    `json:"is_scoreable" gorm:"column:IS_SCOREABLE"`
	LastUpdated                *RFC3339 `json:"last_updated" gorm:"column:LAST_UPDATED"`
	DeletedAt                  *RFC3339 `json:"deleted_at" gorm:"column:DELETED_AT"`
	LegacyThreadUrl            *string  `json:"legacy_thread_url" gorm:"column:LEGACY_THREAD_URL"`
	NominationsSummaryCurrent  *int     `json:"-" gorm:"column:NOMINATIONS_SUMMARY_CURRENT"`  // 조회용
	NominationsSummaryRequired *int     `json:"-" gorm:"column:NOMINATIONS_SUMMARY_REQUIRED"` // 조회용
	Nominations                struct {
		SummaryCurrent  *int `json:"current"`
		SummaryRequired *int `json:"required"`
	} `json:"nominations_summary" gorm:"-"`
	Ranked        *int                  `json:"ranked" gorm:"column:RANKED"`
	RankedDate    *RFC3339              `json:"ranked_date" gorm:"column:RANKED_DATE"`
	Storyboard    *bool                 `json:"storyboard" gorm:"column:STORYBOARD"`
	SubmittedDate *string               `json:"submitted_date" gorm:"column:SUBMITTED_DATE"`
	Tags          *string               `json:"tags" gorm:"column:TAGS"`
	HasFavourited *bool                 `json:"has_favourited" gorm:"column:HAS_FAVOURITED"`
	Beatmaps      []BanchoBeatmapEntity `json:"beatmaps" gorm:"foreignKey:BEATMAPSET_ID;references:BEATMAPSET_ID"`

	Description *string `json:"description" gorm:"column:DESCRIPTION"`
	GenreId     *string `json:"-" gorm:"column:GENRE_ID"`   // 조회용
	GenreName   *string `json:"-" gorm:"column:GENRE_NAME"` // 조회용
	Genre       struct {
		Id   *string `json:"id"`
		Name *string `json:"name"`
	} `json:"genre" gorm:"-"`
	LanguageId   *string `json:"-" gorm:"column:LANGUAGE_ID"`   // 조회용
	LanguageName *string `json:"-" gorm:"column:LANGUAGE_NAME"` // 조회용
	Language     struct {
		Id   *string `json:"id"`
		Name *string `json:"name"`
	} `json:"language" gorm:"-"`
	Ratings *string `json:"ratings_string" gorm:"column:RATINGS"`
	Cache   struct {
		Video   bool `json:"video"`
		NoVideo bool `json:"noVideo"`
	} `json:"cache" gorm:"-"`
}

func (*BanchoBeatmapSetEntity) AfterFind

func (v *BanchoBeatmapSetEntity) AfterFind(tx *gorm.DB) (err error)

func (BanchoBeatmapSetEntity) TableName

func (BanchoBeatmapSetEntity) TableName() string

type BlacklistEntity

type BlacklistEntity struct {
	IPV4      string    `gorm:"column:IPV4"`
	ExpiredAt time.Time `gorm:"column:EXPIRED_AT"`
}

func (BlacklistEntity) TableName

func (BlacklistEntity) TableName() string

type CheesegoolBeatmapEntity

type CheesegoolBeatmapEntity struct {
	BeatmapId        *int     `json:"BeatmapID" gorm:"column:BEATMAP_ID"`
	ParentSetId      *int     `json:"ParentSetID" gorm:"column:BEATMAPSET_ID"`
	DiffName         *string  `json:"DiffName" gorm:"column:VERSION"`
	FileMd5          *string  `json:"FileMD5" gorm:"column:CHECKSUM"`
	Mode             *int     `json:"Mode" gorm:"column:MODE_INT"`
	Bpm              *float64 `json:"BPM" gorm:"column:BPM"`
	Ar               *float64 `json:"AR" gorm:"column:AR"`
	Od               *float64 `json:"OD" gorm:"column:ACCURACY"`
	Cs               *float64 `json:"CS" gorm:"column:CS"`
	Hp               *float64 `json:"HP" gorm:"column:DRAIN"`
	TotalLength      *int     `json:"TotalLength" gorm:"column:TOTAL_LENGTH"`
	HitLength        *int     `json:"HitLength" gorm:"column:HIT_LENGTH"`
	Playcount        *int     `json:"Playcount" gorm:"column:PLAYCOUNT"`
	Passcount        *int     `json:"Passcount" gorm:"column:PASSCOUNT"`
	MaxCombo         *int     `json:"MaxCombo" gorm:"column:MAX_COMBO"`
	DifficultyRating *float64 `json:"DifficultyRating" gorm:"column:DIFFICULTY_RATING"`
}

func (CheesegoolBeatmapEntity) TableName

func (CheesegoolBeatmapEntity) TableName() string

type CheesegullBeatmapSetEntity

type CheesegullBeatmapSetEntity struct {
	SetId            int                       `json:"SetID" gorm:"column:BEATMAPSET_ID"`
	ChildrenBeatmaps []CheesegoolBeatmapEntity `json:"ChildrenBeatmaps" gorm:"foreignKey:BEATMAPSET_ID;references:BEATMAPSET_ID"`
	RankedStatus     *int                      `json:"RankedStatus" gorm:"column:RANKED"`
	ApprovedDate     *string                   `json:"ApprovedDate" gorm:"column:"`
	LastUpdate       *string                   `json:"LastUpdate" gorm:"column:LAST_UPDATED"`             // 비트맵 업데이트된 시간
	LastChecked      *time.Time                `json:"LastChecked" gorm:"column:SYSTEM_UPDATE_TIMESTAMP"` // 크롤링한 시간
	Artist           *string                   `json:"Artist" gorm:"column:ARTIST"`
	Title            *string                   `json:"Title" gorm:"column:TITLE"`
	Creator          *string                   `json:"Creator" gorm:"column:CREATOR"`
	CreatorId        *string                   `json:"CreatorID" gorm:"column:USER_ID"`
	Source           *string                   `json:"Source" gorm:"column:SOURCE"`
	Tags             *string                   `json:"Tags" gorm:"column:TAGS"`
	HasVideo         *bool                     `json:"HasVideo" gorm:"column:VIDEO"`
	GenreId          *string                   `json:"-" gorm:"column:GENRE_ID"`
	Genre            *int                      `json:"Genre" gorm:"-"`
	LanguageId       *string                   `json:"-" gorm:"column:LANGUAGE_ID"`
	Language         *int                      `json:"Language" gorm:"-"`
	Favourites       *int                      `json:"Favourites" gorm:"column:FAVOURITE_COUNT"`
}

func (*CheesegullBeatmapSetEntity) AfterFind

func (v *CheesegullBeatmapSetEntity) AfterFind(tx *gorm.DB) (err error)

func (CheesegullBeatmapSetEntity) TableName

func (CheesegullBeatmapSetEntity) TableName() string

type RFC3339

type RFC3339 time.Time

func (RFC3339) MarshalJSON

func (t RFC3339) MarshalJSON() ([]byte, error)

type SearchCache

type SearchCache struct {
	Text         string `gorm:"column:TEXT;primaryKey"`
	BeatmapSetID int    `gorm:"column:BEATMAPSET_ID;primaryKey"`
	SearchOption int    `gorm:"column:SEARCH_OPTION;default:0"`
}

func (SearchCache) TableName

func (SearchCache) TableName() string

type ServerCache

type ServerCache struct {
	Key   string `gorm:"column:KEY;primaryKey"`
	Value string `gorm:"column:VALUE"`
}

func (ServerCache) TableName

func (ServerCache) TableName() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL