Initial commit

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-15 13:57:10 +08:00
co-authored by Claude Opus 5
commit 8679200f41
1897 changed files with 257900 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
package scenebannerctrl
import (
"strings"
"time"
"91porn-server/common"
"91porn-server/common/stderr"
"91porn-server/models/v/scenebannermod"
"github.com/gin-gonic/gin"
)
type listResp struct {
List []bannerItem `json:"list"`
}
type bannerItem struct {
ID string `json:"id"`
ImageURL string `json:"imageUrl"`
MediaType string `json:"mediaType"`
LinkType string `json:"linkType"`
LinkValue string `json:"linkValue"`
Sort int `json:"sort"`
}
func List(ctx *gin.Context) {
scene := strings.ToUpper(strings.TrimSpace(ctx.Query("scene")))
if !scenebannermod.ValidScene(scene) {
common.ServeJSON(ctx, stderr.ErrParamError, "invalid scene")
return
}
list, err := scenebannermod.FindActive(scene, time.Now())
if err != nil {
common.ServeJSON(ctx, stderr.ErrDbQueryError, nil)
return
}
items := make([]bannerItem, 0, len(list))
for _, banner := range list {
items = append(items, bannerItem{
ID: banner.ID.Hex(),
ImageURL: banner.ImageURL,
MediaType: banner.MediaType,
LinkType: banner.LinkType,
LinkValue: banner.LinkValue,
Sort: banner.Sort,
})
}
common.ServeJSON(ctx, stderr.Success, listResp{List: items})
}