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
+97
View File
@@ -0,0 +1,97 @@
package laosijictrl
import (
"91porn-server/common"
"91porn-server/common/laosiji"
"91porn-server/common/stderr"
"91porn-server/web/service/laosijiser"
"91porn-server/web/service/vidser"
"github.com/gin-gonic/gin"
)
// @Tags 老司机
// @Summary 查询影片列表
// @Description 查询影片列表
// @Accept json
// @Produce json
// @Param param body laosiji.MovieSearchReq true "参数列表"
// @Success 200 {object} laosiji.MovieSearchResp "成功"
// @Failure 400 {string} string "失败"
// @Router /api/web/admin/laosiji/movie/search [POST]
func MovieSearch(ctx *gin.Context) {
param := laosiji.MovieSearchReq{}
if err := ctx.ShouldBind(&param); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
resp, err := laosijiser.MovieSearch(ctx, param)
if err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// @Tags 老司机
// @Summary 查询影片详情
// @Description 查询影片详情
// @Accept json
// @Produce json
// @Param param body laosiji.MovieDetailReq true "参数列表"
// @Success 200 {object} laosiji.MovieDetailResp "成功"
// @Failure 400 {string} string "失败"
// @Router /api/web/admin/laosiji/movie/detail [POST]
func MovieDetail(ctx *gin.Context) {
param := laosiji.MovieDetailReq{}
if err := ctx.ShouldBind(&param); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
resp, err := laosijiser.MovieDetail(ctx, param)
if err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, resp)
}
// @Tags 老司机
// @Summary 添加影片到本地
// @Description 添加影片到本地
// @Accept json
// @Produce json
// @Param param body laosiji.MovieAddListReq true "参数列表"
// @Success 200 {string} string "成功"
// @Failure 400 {string} string "失败"
// @Router /api/web/admin/laosiji/movie/add [POST]
func MovieAdd(ctx *gin.Context) {
param := laosiji.MovieAddListReq{}
if err := ctx.ShouldBind(&param); err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
manager, err := common.GetAdminAct(ctx)
if err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
hits, err := laosijiser.MovieAddList(ctx, param, manager)
if err != nil {
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
return
}
common.ServeJSON(ctx, stderr.Success, buildAddResp(hits))
}
// buildAddResp 老司机 *Add 接口统一应答结构:data 中带 sensitiveHits 与提示文案
// hits 为空时也返回,便于前端固定字段读取
func buildAddResp(hits []vidser.SensitiveHit) gin.H {
resp := gin.H{
"sensitiveHits": hits,
}
if len(hits) > 0 {
resp["sensitiveTip"] = vidser.SensitiveForcedOfflineTip
}
return resp
}