model

package
v0.0.0-...-a32abf6 Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2024 License: Unlicense Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CommonStatusSuccess = 1
	CommonStatusFailed  = 0
)
View Source
const (
	MeetingStatusPending = iota // 待开始
	MeetingStatusRunning        // 进行中
	MeetingStatusEnd            // 结束
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Admin

type Admin struct {
	BaseModel
	Username      string `json:"username"     gorm:"size:20"`
	Password      string `json:"-"            gorm:"size:255"`
	Avatar        string `json:"avatar"       gorm:"size:255"`
	RoleId        int64  `json:"role_id"      gorm:"index"`
	Role          Role   `json:"role"         gorm:"foreignkey:RoleId;rerences:Id;constraint:OnUpdate:CASCADE,OnDelete:SET NULL;"`
	LastLoginTime int64  `json:"last_login_time"`
}

func (*Admin) CheckPassword

func (u *Admin) CheckPassword(password string) bool

func (*Admin) SetPassword

func (u *Admin) SetPassword(password string) error

type BaseModel

type BaseModel struct {
	Id          int64 `json:"id"             gorm:"primaryKey;autoIncrement"`
	CreatedTime int64 `json:"created_time"   gorm:"autoCreateTime"` //autoUpdateTime:nano/milli 纳/毫秒
	UpdatedTime int64 `json:"updated_time"   gorm:"autoUpdateTime"`
	IsDeleted   bool  `json:"-"              gorm:"default:0"`
}

type ChatFile

type ChatFile struct {
	BaseModel
	Uri      string `json:"uri"`       // 文件地址
	FileType string `json:"file_type"` // 文件类型 图片 录音 视频
}

type ChatMessage

type ChatMessage struct {
	BaseModel
	OwnerId    string `json:"owner_id"`    // 拥有者id
	SenderId   string `json:"sender_id"`   // 发送者id
	ReceiverId string `json:"receiver_id"` // 接收者id
	IsGroup    bool   `json:"is_group"`    // 是否为群组
	IsSuccess  bool   `json:"is_success"`  // 是否成功
	Msg        string `json:"msg"`         // 消息
	MsgType    int    `json:"msg_type"`    // 消息类型  文本 表情 图片 录音 视频
	FileId     int64  `json:"file_id"`     // 文件id
}

type ConnectType

type ConnectType int
const (
	ConnectTypeHttp ConnectType = iota
	ConnectTypeHttps
	ConnectTypeSSh
)

type File

type File struct {
	BaseModel
	Hash string `json:"hash"` // 文件hash
	Path string `json:"path"` // 文件路径
}

File 文件类型 默认0->可执行文件;1->.py文件;2->python包

type FileRecord

type FileRecord struct {
	BaseModel
	Uid      int64  `json:"uid"`
	Name     string `json:"name"`                       // 用户上传文件名用作显示
	FileType uint8  `json:"file_type" gorm:"default:0"` // 文件类型
	FileId   int64  `json:"fileId"`
	File     *File  `gorm:"foreignkey:FileId;rerences:Id;"`
}

File 文件类型 默认0->可执行文件;1->.py文件;2->python包

func (*FileRecord) GetCmd

func (f *FileRecord) GetCmd() string

type FriendsGroups

type FriendsGroups struct {
	IsAllFriends   bool   `json:"is_all_friends"`  // 是否所有好友触发
	Friends        string `json:"friends"`         // 好友id , 分割
	ExcludeFriends string `json:"exclude_friends"` // 排除的好友id , 分割
	IsAllGroups    bool   `json:"is_all_groups"`   // 是否全部组群
	ExcludeGroups  string `json:"exclude_groups"`  // 排除掉的群聊(优先级高于选中的群聊)
	Groups         string `json:"groups"`          // 选中的群聊
}

type Host

type Host struct {
	BaseModel
	Name        string      `json:"name"`         // 主机名称
	Host        string      `json:"host"`         // 主机地址
	ConnectType ConnectType `json:"connect_type"` // 连接类型 0 http 1 https 2 ssh
	Method      string      `json:"method"`       // 请求方法
	Port        int         `json:"port"`         // 端口
	Username    string      `json:"username"`     // 用户名
	Password    string      `json:"password"`     // 密码
	Status      int         `json:"status"`       // 状态 0 连接失败 1 连接成功
	Comment     string      `json:"comment"`      // 备注
}

type Image

type Image struct {
	BaseModel
	Name string `json:"name"`
	Type string `json:"type"` // 类型
}

type LiveRoom

type LiveRoom struct {
	BaseModel
	Name      string         `json:"name"`       // 房间名称
	Status    LiveRoomStatus `json:"status"`     // 房间状态   -1 直播结束  0 待直播 1 正在直播
	OwnerId   int64          `json:"owner_id"`   // 创建者
	StartTime int64          `json:"start_time"` // 开播时间
	EndTime   int64          `json:"end_time"`   // 结束时间
	Owner     *Admin         `gorm:"foreignkey:OwnerId;rerences:Id;"`
}

LiveRoom 直播房间 id 10000开始自增

type LiveRoomStatus

type LiveRoomStatus int
const (
	LiveRoomStatusStop   LiveRoomStatus = -1 // 直播结束
	LiveRoomStatusIdle   LiveRoomStatus = 0  // 待直播
	LiveRoomStatusLiving LiveRoomStatus = 1  // 正在直播
)

type Meeting

type Meeting struct {
	BaseModel
	Uid       int64         `json:"uid"`
	Name      string        `json:"name"`       // 房间名
	Status    MeetingStatus `json:"status"`     // 会议状态 0待开始 1 开始 2 结束
	EndTime   int64         `json:"end_time"`   // 结束时间
	StartTime int64         `json:"start_time"` // 开始时间
	Owner     *Admin        `gorm:"foreignkey:Uid;rerences:Id;"`
}

type MeetingStatus

type MeetingStatus int

type OperateLog

type OperateLog struct {
	BaseModel
	OperateId int64          `json:"operate_id"`  // 操作人id
	Module    string         `json:"module"`      // 模块
	Log       string         `json:"operate_log"` // 操作日志
	Type      OperateLogType `json:"type"`        // 0增 1删 2改 3查
	Admin     *Admin         `gorm:"foreignkey:OperateId;rerences:Id;"`
}

OperateLog 操作日志

type OperateLogType

type OperateLogType uint8
const (
	OperateLogTypeAdd OperateLogType = iota
	OperateLogTypeDel
	OperateLogTypeUpdate
	OperateLogTypeSelect
)

type Permission

type Permission struct {
	BaseModel
	Name     string       `json:"name"`                                                                                             // 权限名称
	ParentId int64        `json:"parent_id"`                                                                                        // 父节点id
	Key      string       `json:"key"`                                                                                              // 前端唯一key
	Routes   []Route      `json:"routes"                gorm:"many2many:permission_route;"`                                         // 路由
	Children []Permission `json:"children"              gorm:"foreignKey:parent_id;constraint:OnUpdate:CASCADE,OnDelete:SET NULL;"` // 子页面
	Roles    []Role       `json:"roles"                 gorm:"many2many:role_permission;"`
}

权限表

func (*Permission) AfterFind

func (p *Permission) AfterFind(tx *gorm.DB) (err error)

func (*Permission) BeforeDelete

func (p *Permission) BeforeDelete(tx *gorm.DB) (err error)

type Record

type Record struct {
	BaseModel
	Uid     int64  `json:"uid"`
	Number  string `json:"number"`   // 订单号
	Amount  int    `json:"amount"`   // 支付总价
	State   int    `json:"state"`    // 支付状态  -2.手动关闭 -3.超时关闭 -4.商家关闭 -1支付失败 0未支付 1 支付成功/待发货 2 配货中 3 配货完成 4.出库成功 5.运输中 6 交易成功
	Type    uint   `json:"type"`     // 支付类型 0 余额 1 支付宝 2 微信 3 ....
	PayTime int    `json:"pay_time"` // 付款时间
}

type RecordAddress

type RecordAddress struct {
	RecordId   int64  `json:"record_id"`
	Province   string `json:"province"`    // 省/直辖市
	City       string `json:"city"`        // 市
	Region     string `json:"region"`      // 区
	Address    string `json:"address"`     // 详细地址
	PostalCode string `json:"postal_code"` // 邮政编码
	State      int    `json:"state"`       // 状态 -1废弃 0使用中
}

type ReplyBot

type ReplyBot struct {
	BaseModel
	FriendsGroups
	Name        string `json:"name"`
	Description string `json:"description"`
	Rules       []Rule `json:"rules"   gorm:"many2many:reply_bot_rule;"`
	Uid         int64  `json:"uid"`
}

type ReplyBotRule

type ReplyBotRule struct {
	ReplyBotId int64 `json:"reply_bot_id"`
	RuleId     int64 `json:"rule_id"`
}

type Role

type Role struct {
	BaseModel
	Name        string        `json:"name"` // 角色名称
	Permissions []*Permission `gorm:"many2many:role_permission;"`
}

角色表

type RolePermission

type RolePermission struct {
	RoleId       int64 `json:"role_id"`
	PermissionId int64 `json:"permission_id"`
}

type Route

type Route struct {
	BaseModel
	Method string `json:"method"  gorm:"size:20"` // 方法
	Path   string `json:"path"    gorm:"size:50"` // 路由
}

type Rule

type Rule struct {
	BaseModel
	Name        string `json:"name"`        // 名称
	Key         string `json:"key"`         // 关键词
	Reply       string `json:"reply"`       // 回复代码,可替换默认模板{{}}
	Description string `json:"description"` // 描述
	Uid         int64  `json:"uid"`         // 用户id
}

type Status

type Status int8
const (
	StatusFailed Status = iota - 3
	StatusExpiry
	StatusStop
	StatusIdle
	StatusRunning
)

type Task

type Task struct {
	BaseModel
	Name         string    `json:"name"`           // 任务名称
	HostId       int64     `json:"host_id"`        // 主机id
	Status       Status    `json:"status"`         // 状态 -3:失败 -2:过期 -1:停止 0:待生效 1:生效中
	Cmd          string    `json:"cmd"`            // 任务指令
	Spec         string    `json:"spec"`           // 执行时刻
	EffectTime   int64     `json:"effect_time"`    // 生效时间
	ExpiryTime   int64     `json:"expiry_time"`    // 失效时间
	NextExecTime int64     `json:"next_exec_time"` // 下次执行时间
	Comment      string    `json:"comment"`        // 备注
	TaskLogs     []TaskLog `gorm:"foreignKey:TaskId"`
	Host         Host      `gorm:"foreignkey:HostId;rerences:Id"`
}

func (*Task) Verify

func (t *Task) Verify() (err error)

type TaskLog

type TaskLog struct {
	BaseModel
	TaskId  int64  `json:"task_id"` // 执行记录
	Status  uint8  `json:"status"`  // 状态 0 失败 1 成功
	Comment string `json:"comment"` // 备注
}

type TimerBot

type TimerBot struct {
	BaseModel
	FriendsGroups
	Uid         int64  `json:"uid"`
	Name        string `json:"name"`        // 机器人名称
	Description string `json:"description"` // 机器人描述
	Msg         string `json:"msg"`         // 发送内容
	Spec        string `json:"spec"`        // 定时规则
	Times       int    `json:"times"`       // <=0 为无限次 >0 为有限次数

}

TimerBot 定时机器人

type User

type User struct {
	BaseModel
	Username      string  `json:"username"     gorm:"size:20"`
	Password      string  `json:"-"            gorm:"size:255"`
	Avatar        string  `json:"avatar"       gorm:"size:255"`
	LastLoginTime int64   `json:"last_login_time"`
	Wallet        *Wallet `gorm:"foreignkey:Uid;rerences:Id;constraint:OnUpdate:CASCADE,OnDelete:SET NULL;"`
}

func (*User) CheckPassword

func (u *User) CheckPassword(password string) bool

func (*User) SetPassword

func (u *User) SetPassword(password string) error

type Wallet

type Wallet struct {
	BaseModel
	Uid     int64 `json:"uid"     gorm:"index"`
	Balance int64 `json:"balance"`
}

type WalletRecord

type WalletRecord struct {
	BaseModel
	WalletId   int64            `json:"wallet_id"     gorm:"index"`
	Amount     int64            `json:"amount"`
	RecordType WalletRecordType `json:"record_type"` // -1后台扣除 1 后台增加
}

type WalletRecordType

type WalletRecordType int
const (
	WalletRecordTypeBackendIncrease WalletRecordType = 1
	WalletRecordTypeBackendDecrease WalletRecordType = -1
)

Jump to

Keyboard shortcuts

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