models

package
v0.0.0-...-e432ecc Latest Latest
Warning

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

Go to latest
Published: Mar 12, 2023 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DB *gorm.DB

Functions

func CloseDB

func CloseDB()

CloseDB closes database connection (unnecessary)

func Count

func Count[T any](data T, query string, args ...any) int64

统计数量

func Create

func Create[T any](data *T)

通用 CRUD 创建数据(可以创建[单条]数据, 也可[批量]创建)

func Delete

func Delete[T any](data T, query string, args ...any)

[批量]删除数据, 通过条件控制可以删除单条数据

func GetOne

func GetOne[T any](data T, query string, args ...any) T

[单条]数据查询

func List

func List[T any](data T, req request.PageQuery, query string, args ...any) (T, int64)

数据列表

func Setup

func Setup()

Setup initializes the database instance

func Update

func Update[T any](data *T, slt ...string)

[单行]更新: 传入对应结构体[传递主键用] 和 带有对应更新字段值的[结构体],结构体不更新零值

func Updates

func Updates[T any](data *T, query string, args ...any)

[批量]更新: 结构体的属性就是要更新的字段 (结构体不更新零值), 通过条件可以实现[单行]更新

func UpdatesMap

func UpdatesMap[T any](data *T, maps map[string]any, query string, args ...any)

[批量]更新: map 的字段就是要更新的字段 (map 可以更新零值), 通过条件可以实现[单行]更新

Types

type Album

type Album struct {
	common.Model
	ArtistID     uint64      `json:"artist_id"`
	Name         string      `json:"name"`
	Pic          string      `json:"pic"`
	Introduction string      `json:"introduction"`
	Genre        string      `json:"genre"`
	Publisher    string      `json:"publisher"`
	ReleaseTime  common.Date `json:"release_time" gorm:"default:nil;type:date"`
}

func (*Album) GetSelectList

func (a *Album) GetSelectList(req request.PageQuery) (res response.AlbumSelectList)

type Artist

type Artist struct {
	common.Model
	Category     string      `json:"category"`
	Nationality  string      `json:"nationality"`
	Birthday     common.Date `json:"birthday" gorm:"default:nil",type:date`
	Name         string      `json:"name"`
	Pic          string      `json:"pic"`
	Introduction string      `json:"introduction"`
}

func (*Artist) GetSelectList

func (a *Artist) GetSelectList(req request.PageQuery) (res response.ArtistSelectList)

type LoginRecord

type LoginRecord struct {
	ID        uint64            `gorm:"primaryKey" json:"id"`
	UserID    uint64            `json:"user_id"`
	LoginIP   string            `json:"login_ip"`
	LoginTime *common.LocalTime `gorm:"autoCreateTime" json:"login_time"`
}

func (*LoginRecord) Create

func (l *LoginRecord) Create(loginRecord LoginRecord) LoginRecord

func (*LoginRecord) GetList

func (l *LoginRecord) GetList(req request.PageQuery) (res response.LogLoginList)

type Playlist

type Playlist struct {
	common.Model
	UserID       uint   `json:"user_id"`
	Name         string `json:"name"`
	Pic          string `json:"pic"`
	Introduction string `json:"introduction"`
}

func (Playlist) Create

func (s Playlist) Create(model Playlist) Playlist

func (Playlist) Delete

func (s Playlist) Delete() bool

func (Playlist) Update

func (s Playlist) Update() Playlist

type PlaylistCat

type PlaylistCat struct {
	common.Model
	Name  string `json:"name"`
	PID   uint64 `json:"pid"`
	Order uint64 `json:"order"`
}

func (PlaylistCat) TableName

func (PlaylistCat) TableName() string

type Song

type Song struct {
	common.Model
	AlbumID    uint64 `json:"album_id"`
	Name       string `json:"name"`
	Status     *int   `json:"status"`
	Url        string `json:"url"`
	IsOriginal *int   `json:"is_original"`
	Pic        string `json:"pic"`
	Duration   int    `json:"duration"`
	Lyric      string `json:"lyric"`
}

func (Song) Create

func (s Song) Create(req request.CreateSong)

func (Song) Delete

func (s Song) Delete(req request.IdsJson) int

func (Song) GetDetail

func (s Song) GetDetail(id uint64) (res response.Song)

func (Song) GetList

func (s Song) GetList(req request.PageQuery) (res response.SngList)

func (Song) GetOne

func (s Song) GetOne(song Song) Song

func (Song) Update

func (s Song) Update(song Song) Song

type User

type User struct {
	common.Model
	Username      string            `gorm:"unique,autoIncrement" json:"username"`
	Password      string            `json:"-"`
	Nickname      string            `json:"nickname"`
	Phone         string            `json:"phone"`
	Avatar        string            `json:"avatar"`
	Status        *int              `gorm:"default:1" json:"status"`
	Role          *int              `json:"role"`
	LastLoginTime *common.LocalTime `gorm:"autoUpdateTime" json:"last_login_time"`
	LastLoginIP   string            `json:"last_login_ip"`
}

func (*User) Create

func (u *User) Create(user User) User

func (*User) Delete

func (u *User) Delete(req request.IdsJson) int

func (*User) GetByID

func (u *User) GetByID(userID uint64) (user User)

func (*User) GetByNickname

func (u *User) GetByNickname(nickname string) (user User)

func (*User) GetByUsername

func (u *User) GetByUsername(username string) (user User)

GetUserByName 根据用户名查询用户

func (*User) GetList

func (u *User) GetList(req request.PageQuery) (users []User, total int)

func (*User) Save

func (u *User) Save(user User) bool

func (*User) UpdateStatus

func (u *User) UpdateStatus(req request.UpdateStatus) int

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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