2
0
mirror of https://github.com/acepanel/panel.git synced 2026-02-04 10:17:17 +08:00
Files
panel/internal/biz/app.go
2024-10-11 01:39:47 +08:00

35 lines
998 B
Go

package biz
import (
"time"
"github.com/TheTNB/panel/pkg/api"
)
type App struct {
ID uint `gorm:"primaryKey" json:"id"`
Slug string `gorm:"not null;unique" json:"slug"`
Channel string `gorm:"not null" json:"channel"`
Version string `gorm:"not null" json:"version"`
Show bool `gorm:"not null" json:"show"`
ShowOrder int `gorm:"not null" json:"show_order"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type AppRepo interface {
All() api.Apps
Get(slug string) (*api.App, error)
UpdateExist(slug string) bool
Installed() ([]*App, error)
GetInstalled(slug string) (*App, error)
GetInstalledAll(query string, cond ...string) ([]*App, error)
GetHomeShow() ([]map[string]string, error)
IsInstalled(query string, cond ...string) (bool, error)
Install(channel, slug string) error
UnInstall(slug string) error
Update(slug string) error
UpdateShow(slug string, show bool) error
UpdateCache() error
}