Files
EasyGoAdmin_GoFrame_EleVue/api/v1/link.go
T
2026-10-20 11:37:25 +08:00

112 lines
5.6 KiB
Go

package v1
import (
"github.com/gogf/gf/v2/os/gtime"
"github.com/gogf/gf/v2/util/gmeta"
)
// ============================== 友链模块 ==============================
// LinkItem 友链行数据
// 用于友链分页列表等场景的友链基础信息
type LinkItem struct {
Id int64 `json:"id"` // 主键ID
Name string `json:"name"` // 友链名称
Type int `json:"type"` // 类型:1-友情链接 2-合作伙伴
TypeText string `json:"typeText"` // 类型文本
Url string `json:"url"` // 友链URL
Form int `json:"form"` // 形式:1-文字链接 2-图片链接
FormText string `json:"formText"` // 形式文本
Image string `json:"image"` // 友链图片
Status int `json:"status"` // 状态:1-正常 2-停用
StatusText string `json:"statusText"` // 状态文本
Sort int `json:"sort"` // 排序
Note string `json:"note"` // 备注
CreateUser string `json:"createUser"` // 创建人
CreateTime *gtime.Time `json:"createTime"` // 创建时间
}
// LinkPageReq 友链分页请求
// 支持关键词、名称、类型、状态等条件组合查询
type LinkPageReq struct {
gmeta.Meta `method:"get" path:"/api/link/page" summary:"友链分页" permission:"sys:link:page" log:"友链管理-查询分页记录" logType:"query"`
PageReq // 分页基础参数
Keyword string `json:"keyword" dc:"关键词(名称模糊)"` // 关键词,名称模糊匹配
Name string `json:"name" dc:"名称模糊"` // 名称模糊匹配
Type int `json:"type" dc:"类型:1-友情链接 2-合作伙伴"` // 类型
Status int `json:"status" dc:"状态:1-正常 2-停用"` // 状态
}
// LinkPageRes 友链分页结果
type LinkPageRes = PageData[LinkItem]
// LinkDetailReq 友链详情请求
type LinkDetailReq struct {
gmeta.Meta `method:"get" path:"/api/link/detail/:id" summary:"友链详情" permission:"sys:link:detail" log:"友链管理-查询详情" logType:"query"`
Id int64 `json:"id" v:"required#缺少ID" dc:"友链ID"` // 友链ID
}
// LinkDetailRes 友链详情结果
type LinkDetailRes struct {
Id int64 `json:"id"` // 主键ID
Name string `json:"name"` // 友链名称
Type int `json:"type"` // 类型:1-友情链接 2-合作伙伴
TypeText string `json:"typeText"` // 类型文本
Url string `json:"url"` // 友链URL
Form int `json:"form"` // 形式:1-文字链接 2-图片链接
FormText string `json:"formText"` // 形式文本
Image string `json:"image"` // 友链图片
Status int `json:"status"` // 状态:1-正常 2-停用
StatusText string `json:"statusText"` // 状态文本
Sort int `json:"sort"` // 排序
Note string `json:"note"` // 备注
}
// LinkAddReq 新增友链请求
type LinkAddReq struct {
gmeta.Meta `method:"post" path:"/api/link/add" summary:"新增友链" permission:"sys:link:add" log:"友链管理-新增记录" logType:"add"`
Name string `json:"name" v:"required#请输入友链名称" dc:"友链名称"` // 友链名称
Type int `json:"type" dc:"类型:1-友情链接 2-合作伙伴"` // 类型
Url string `json:"url" v:"required#请输入友链地址" dc:"友链URL"` // 友链URL
Form int `json:"form" dc:"形式:1-文字链接 2-图片链接"` // 形式
Image string `json:"image" dc:"友链图片"` // 友链图片
Status int `json:"status" dc:"状态:1-正常 2-停用"` // 状态
Sort int `json:"sort" dc:"排序"` // 排序
Note string `json:"note" dc:"备注"` // 备注
}
// LinkUpdateReq 修改友链请求
type LinkUpdateReq struct {
gmeta.Meta `method:"put" path:"/api/link/update" summary:"修改友链" permission:"sys:link:update" log:"友链管理-修改记录" logType:"update"`
Id int64 `json:"id" v:"required#缺少ID" dc:"友链ID"` // 友链ID
Name string `json:"name" v:"required#请输入友链名称" dc:"友链名称"` // 友链名称
Type int `json:"type" dc:"类型"` // 类型
Url string `json:"url" v:"required#请输入友链地址" dc:"友链URL"` // 友链URL
Form int `json:"form" dc:"形式"` // 形式
Image string `json:"image" dc:"友链图片"` // 友链图片
Status int `json:"status" dc:"状态"` // 状态
Sort int `json:"sort" dc:"排序"` // 排序
Note string `json:"note" dc:"备注"` // 备注
}
// LinkUpdateRes 修改友链结果
type LinkUpdateRes struct{}
// LinkDeleteReq 删除友链请求
type LinkDeleteReq struct {
gmeta.Meta `method:"delete" path:"/api/link/delete/:id" summary:"删除友链" permission:"sys:link:delete" log:"友链管理-删除记录" logType:"delete"`
Id int64 `json:"id" v:"required#缺少ID" dc:"友链ID"` // 友链ID
}
// LinkDeleteRes 删除友链结果
type LinkDeleteRes struct{}
// LinkBatchDeleteReq 批量删除友链请求
type LinkBatchDeleteReq struct {
gmeta.Meta `method:"delete" path:"/api/link/batchDelete" summary:"批量删除友链" permission:"sys:link:batchDelete" log:"友链管理-批量删除记录" logType:"delete"`
Ids []int64 `json:"ids" v:"required#请选择要删除的记录" dc:"友链ID列表"` // 友链ID列表
}
// LinkBatchDeleteRes 批量删除结果
type LinkBatchDeleteRes struct{}