Documentation ¶
Index ¶
- Constants
- Variables
- type BaseRepo
- func (br *BaseRepo[T]) CheckProcessDB(processDB func(*gorm.DB) *gorm.DB) func(*gorm.DB) *gorm.DB
- func (br *BaseRepo[T]) Count(processDB func(*gorm.DB) *gorm.DB) (int, error)
- func (br *BaseRepo[T]) Create(entity *T) (*T, error)
- func (br *BaseRepo[T]) DeleteById(id any) error
- func (br *BaseRepo[T]) DeleteByIdWithDB(id any, processDB func(*gorm.DB) *gorm.DB) error
- func (br *BaseRepo[T]) DeleteByIds(id []any) error
- func (br *BaseRepo[T]) DeleteByIdsWithDB(ids []any, processDB func(*gorm.DB) *gorm.DB) error
- func (br *BaseRepo[T]) FindAll(processDB func(*gorm.DB) *gorm.DB) ([]*T, error)
- func (br *BaseRepo[T]) FindById(id any) (*T, error)
- func (br *BaseRepo[T]) FindByIdWithDB(id any, processDB func(*gorm.DB) *gorm.DB) (*T, error)
- func (br *BaseRepo[T]) FindWithDB(processDB func(*gorm.DB) *gorm.DB) (*T, error)
- func (br *BaseRepo[T]) IncrementCounterField(fieldName string, delta int, processDB func(*gorm.DB) *gorm.DB) error
- func (br *BaseRepo[T]) IncrementCounterFieldByIds(ids []any, fieldName string, delta int) error
- func (br *BaseRepo[T]) Init()
- func (br *BaseRepo[T]) Save(entity *T) (*T, error)
- func (br *BaseRepo[T]) SaveAll(entities []*T) ([]*T, error)
- func (br *BaseRepo[T]) SaveAllWithDB(entities []*T, processDB func(*gorm.DB) *gorm.DB) ([]*T, error)
- func (br *BaseRepo[T]) SaveWithDB(entity *T, processDB func(*gorm.DB) *gorm.DB) (*T, error)
- func (br *BaseRepo[T]) Update(entity *T) (*T, error)
- func (br *BaseRepo[T]) UpdateById(id any, column string, value interface{}) error
- func (br *BaseRepo[T]) UpdateWithDB(column string, value interface{}, processDB func(*gorm.DB) *gorm.DB) error
- func (br *BaseRepo[T]) UpdatesWithDB(entity *T, processDB func(*gorm.DB) *gorm.DB) error
- type BaseRest
- func (br *BaseRest[T]) AfterCreate(*T) error
- func (br *BaseRest[T]) AfterDelete([]string) error
- func (br *BaseRest[T]) AfterEdit(*T) error
- func (br *BaseRest[T]) AfterFind(*T) error
- func (br *BaseRest[T]) BeforeCreate(*T) error
- func (br *BaseRest[T]) BeforeDelete([]string) error
- func (br *BaseRest[T]) BeforeEdit(*T) error
- func (br *BaseRest[T]) Create(c *fiber.Ctx) error
- func (br *BaseRest[T]) Delete(c *fiber.Ctx) error
- func (br *BaseRest[T]) Edit(c *fiber.Ctx) error
- func (br *BaseRest[T]) Find(c *fiber.Ctx) error
- func (br *BaseRest[T]) InitNeedAuth(app *fiber.App)
- func (br *BaseRest[T]) InitUnAuth(*fiber.App)
- func (br *BaseRest[T]) JwtTokenToUser(c *fiber.Ctx) *User
- func (br *BaseRest[T]) JwtUserToToken(user *User, exp time.Time) (string, error)
- func (br *BaseRest[T]) List(c *fiber.Ctx) error
- func (br *BaseRest[T]) ListWithQuery(c *fiber.Ctx, queryParams QueryCondition) (err error)
- func (br *BaseRest[T]) RouterUrl(subPath string) string
- func (br *BaseRest[T]) Unsupported(c *fiber.Ctx, methodName string) error
- type CrudRepoInf
- type IdInf
- type PageParams
- type PageRet
- type QueryCondition
- type Rest
- type Ret
- type RetCode
- type UUIDBase
- type User
Constants ¶
View Source
const DefaultApiPrefix = "/api"
View Source
const EmptyUUID = "00000000-0000-0000-0000-000000000000"
Variables ¶
View Source
var ( RetCodeMessage = map[RetCode]string{ RetCodeRetOk: "Success", RetCodeParamsError: "Params error: %s", RetCodeRecordNotExists: "Record not exists.", RetCodeSysError: "System error: %s", RetCodeAdminInitedError: "System init error: admin is %s", RetCodeMethodNotSupported: "Method %s not supported", RetCodeCreateErr: "Create err: %s", RetCodeUpdateErr: "Update err: %s", RetCodeDeleteErr: "Delete err: %s", RetCodeImportErr: "Import err: %s", RetCodeExportErr: "Export err: %s", RetCodeQueryErr: "Query err: %s", RetCodeUnauthorized: "Login error, username or password error.", RetCodeForbidden: "forbidden: %s", } )
Functions ¶
This section is empty.
Types ¶
type BaseRepo ¶
type BaseRepo[T any] struct { DB *gorm.DB `wire:"auto"` DefaultProcessDB func(db *gorm.DB) *gorm.DB DefaultFindProcessDB func(db *gorm.DB) *gorm.DB DefaultCreateProcessDB func(db *gorm.DB) *gorm.DB DefaultUpdateProcessDB func(db *gorm.DB) *gorm.DB FindOmitColumns []string CreateOmitColumns []string UpdateOmitColumns []string DBStatement *gorm.Statement }
func (*BaseRepo[T]) CheckProcessDB ¶
func (*BaseRepo[T]) DeleteById ¶
func (*BaseRepo[T]) DeleteByIdWithDB ¶
func (*BaseRepo[T]) DeleteByIds ¶
func (*BaseRepo[T]) DeleteByIdsWithDB ¶
func (*BaseRepo[T]) FindByIdWithDB ¶
func (*BaseRepo[T]) FindWithDB ¶
func (*BaseRepo[T]) IncrementCounterField ¶
func (*BaseRepo[T]) IncrementCounterFieldByIds ¶
func (*BaseRepo[T]) SaveAllWithDB ¶
func (*BaseRepo[T]) SaveWithDB ¶
func (*BaseRepo[T]) UpdateById ¶
func (*BaseRepo[T]) UpdateWithDB ¶
type BaseRest ¶
type BaseRest[T any] struct { Self Rest[T] `wire:"self"` Repo CrudRepoInf[T] `wire:"auto"` RestName string // contains filtered or unexported fields }
func (*BaseRest[T]) AfterCreate ¶
func (*BaseRest[T]) AfterDelete ¶
func (*BaseRest[T]) BeforeCreate ¶
func (*BaseRest[T]) BeforeDelete ¶
func (*BaseRest[T]) BeforeEdit ¶
func (*BaseRest[T]) InitNeedAuth ¶
func (br *BaseRest[T]) InitNeedAuth(app *fiber.App)
func (*BaseRest[T]) InitUnAuth ¶
func (br *BaseRest[T]) InitUnAuth(*fiber.App)
func (*BaseRest[T]) JwtTokenToUser ¶
func (*BaseRest[T]) JwtUserToToken ¶
func (*BaseRest[T]) ListWithQuery ¶
func (br *BaseRest[T]) ListWithQuery(c *fiber.Ctx, queryParams QueryCondition) (err error)
func (*BaseRest[T]) Unsupported ¶
type CrudRepoInf ¶
type CrudRepoInf[T any] interface { Count(processDB func(*gorm.DB) *gorm.DB) (int, error) Create(entity *T) (*T, error) Update(entity *T) (*T, error) Save(entity *T) (*T, error) SaveAll(entities []*T) ([]*T, error) FindById(id any) (*T, error) FindAll(processDB func(*gorm.DB) *gorm.DB) ([]*T, error) DeleteById(id any) error DeleteByIds(ids []any) error }
type PageParams ¶
type PageParams struct { Page int `json:"page"` Size int `json:"size"` TotalPage int `json:"totalPage"` Total int `json:"total"` }
PageParams
page: 从1开始表示第一页 如果page等于0,返回第一页;如果page等于1,还是返回第一页 如果page小于0,则不进行分页 size: 表示分页大小
func (*PageParams) CheckDefault ¶
func (pp *PageParams) CheckDefault()
func (*PageParams) QueryCondition ¶
func (pp *PageParams) QueryCondition(db *gorm.DB) *gorm.DB
type PageRet ¶
type PageRet[T any] struct { Items []T `json:"items"` Page *PageParams `json:"page"` }
type Rest ¶
type Rest[T any] interface { InitNeedAuth(app *fiber.App) InitUnAuth(app *fiber.App) List(c *fiber.Ctx) error Find(c *fiber.Ctx) error AfterFind(m *T) error Create(c *fiber.Ctx) error BeforeCreate(m *T) error AfterCreate(m *T) error Edit(c *fiber.Ctx) error BeforeEdit(m *T) error AfterEdit(m *T) error Delete(c *fiber.Ctx) error BeforeDelete(ids []string) error AfterDelete(ids []string) error }
type Ret ¶
type RetCode ¶
type RetCode int
const ( RetCodeRetOk RetCode = 0 // OK RetCodeParamsError RetCode = 1 RetCodeRecordNotExists RetCode = 2 RetCodeSysError RetCode = 3 RetCodeAdminInitedError RetCode = 4 RetCodeMethodNotSupported RetCode = 5 RetCodeCreateErr RetCode = 10 RetCodeUpdateErr RetCode = 11 RetCodeDeleteErr RetCode = 12 RetCodeImportErr RetCode = 13 RetCodeExportErr RetCode = 14 RetCodeQueryErr RetCode = 20 RetCodeForbidden RetCode = 403 )
type UUIDBase ¶
type User ¶
type User struct { UUIDBase Username string `json:"username" gorm:"uniqueIndex;column:username;type:varchar(32);"` Password string `json:"password,omitempty" gorm:"column:password;type:varchar(128);"` Valid bool `json:"valid" gorm:"index;column:valid;"` IsAdmin bool `json:"isAdmin" gorm:"column:is_admin"` }
func (*User) BeforeCreate ¶
BeforeCreate only use to create non admin user
func (*User) SetHashPassword ¶
Click to show internal directories.
Click to hide internal directories.