Files
huangguo_server/models/v/officialmod/web.go
T
rootandClaude Opus 5 8679200f41 Initial commit
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 13:57:10 +08:00

51 lines
2.7 KiB
Go

package officialmod
import (
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/bson/primitive"
"go.mongodb.org/mongo-driver/mongo/options"
"time"
)
// QueryAllCond 查询列表
type QueryAllCond struct {
OfficialType string `form:"officialType" json:"officialType"`
Status *bool `form:"isActive" json:"officialName"` // 状态---启用/禁用
PageNumber int64 `form:"pageNumber" json:"pageNumber" binding:"required,min=1"` // 当前页
PageSize int64 `form:"pageSize" json:"pageSize" binding:"required,min=10,max=50"` // 每页条数
}
func (q *QueryAllCond) Options() *options.FindOptions {
return options.Find().SetLimit(q.PageSize).SetSkip((q.PageNumber - 1) * q.PageSize).SetSort(bson.M{"updatedAt": -1}).SetSort(bson.M{"sort": -1})
}
type WebOfficialDeleteReqInfo struct {
IDs []primitive.ObjectID `form:"id" json:"id" binding:"required"`
}
type WebOfficialAddReqInfo struct {
OfficialName string `form:"officialName" json:"officialName" binding:"required"`
OfficialDesc string `form:"officialDesc" json:"officialDesc" binding:"omitempty"`
OfficialImg string `form:"officialImg" json:"officialImg" binding:"omitempty"`
OfficialUrl string `form:"officialUrl" json:"officialUrl" binding:"required"`
Position int `json:"position" bson:"position"` // 官方位置
OfficialType string `form:"officialType" json:"officialType" binding:"required"`
IsActive bool `form:"isActive" json:"isActive" binding:"omitempty"`
Sort int64 `form:"sort" json:"sort" binding:"omitempty"` //排序
IsHomepageAds bool `form:"isHomepageAds" json:"isHomepageAds" binding:"omitempty"`
CreatedAt time.Time `bson:"createdAt" json:"createdAt" binding:"omitempty"` // 创建时间
UpdatedAt time.Time `bson:"updatedAt" json:"updatedAt" binding:"omitempty"` // 更新时间
}
type WebTagUpdateReqInfo struct {
ID primitive.ObjectID `form:"id" json:"id" binding:"required"`
OfficialName string `form:"officialName" json:"officialName" binding:"omitempty"`
OfficialDesc string `form:"officialDesc" json:"officialDesc" binding:"omitempty"`
OfficialImg string `form:"officialImg" json:"officialImg" binding:"omitempty"`
OfficialUrl string `form:"officialUrl" json:"officialUrl" binding:"omitempty"`
IsActive bool `form:"isActive" json:"isActive" binding:"omitempty"`
Sort int64 `form:"sort" json:"sort" binding:"omitempty"` // 排序
Position int `form:"position" json:"position" bson:"position"` // 官方位置
IsHomepageAds bool `form:"isHomepageAds" json:"isHomepageAds" binding:"omitempty"`
}