45 lines
1.3 KiB
Go
45 lines
1.3 KiB
Go
package officialWebsitectrl
|
|
|
|
import (
|
|
"91porn-server/app/service/officialWebsiteser"
|
|
"91porn-server/common"
|
|
"91porn-server/common/cachev2"
|
|
"91porn-server/common/constant/redisconst"
|
|
"91porn-server/common/stderr"
|
|
"fmt"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func NewsList(ctx *gin.Context) {
|
|
req := &officialWebsiteser.NewsListReq{}
|
|
if err := ctx.ShouldBindQuery(req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
|
|
return
|
|
}
|
|
var data officialWebsiteser.NewsListResp
|
|
_, err := cachev2.Classes().
|
|
CacheTime(redisconst.OfficialWebsiteNewsListCacheExpire).
|
|
AutoListKey(fmt.Sprintf(redisconst.OfficialWebsiteNewsListCacheKey, req.PageNumber, req.PageSize)).
|
|
ResBind(&data).Cache(officialWebsiteser.NewsList, req)
|
|
if err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrDbQueryError, err.Error())
|
|
return
|
|
}
|
|
common.ServeJSON(ctx, stderr.Success, gin.H{"hasNext": data.HasNext, "list": data.List})
|
|
}
|
|
|
|
func NewsDetail(ctx *gin.Context) {
|
|
req := &officialWebsiteser.NewsDetailReq{}
|
|
if err := ctx.ShouldBindUri(req); err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
|
|
return
|
|
}
|
|
data, err := officialWebsiteser.NewsDetail(req)
|
|
if err != nil {
|
|
common.ServeJSON(ctx, stderr.ErrDbQueryError, err.Error())
|
|
return
|
|
}
|
|
common.ServeJSON(ctx, stderr.Success, data)
|
|
}
|