@@ -0,0 +1,91 @@
|
||||
package extctrl
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"91porn-server/common"
|
||||
"91porn-server/common/constant"
|
||||
"91porn-server/common/constant/redisconst"
|
||||
"91porn-server/common/log"
|
||||
"91porn-server/common/maths"
|
||||
"91porn-server/common/stderr"
|
||||
"91porn-server/common/ysphone"
|
||||
"91porn-server/web/service/vidser"
|
||||
"91porn-server/web/webg"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
// 拓展功能接口 doc
|
||||
// @Summary 查看用户验证码
|
||||
// @Description 查看用户验证码
|
||||
// @Tags Ext-拓展功能
|
||||
// @Accept mpfd,json
|
||||
// @Produce json,html
|
||||
// @Param mobile formData string true "手机号"
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /api/web/admin/extend/viewCaptcha [get]
|
||||
func ViewCaptcha(ctx *gin.Context) {
|
||||
var args struct {
|
||||
Mobile string `form:"mobile" json:"mobile" binding:"required"`
|
||||
}
|
||||
if err := ctx.ShouldBind(&args); err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
|
||||
return
|
||||
}
|
||||
args.Mobile = strings.TrimSpace(args.Mobile)
|
||||
args.Mobile = ysphone.FormatPhoneNumber(args.Mobile)
|
||||
redisKey := redisconst.MobileCaptchaKey(args.Mobile)
|
||||
redisCode, _ := webg.Redis.Get(redisKey)
|
||||
var captcha string
|
||||
if redisCode == nil {
|
||||
captcha = maths.RandDigits(constant.CaptchaLen)
|
||||
if err := webg.Redis.Set(redisKey, captcha, redisconst.MobileCaptchaExpire); err != nil {
|
||||
log.Error("SendCaptcha Save Redis error", log.Any("mobile", args.Mobile), log.E(err))
|
||||
common.ServeJSON(ctx, stderr.Failure, err.Error())
|
||||
return
|
||||
}
|
||||
} else {
|
||||
captcha = *redisCode
|
||||
}
|
||||
common.ServeJSON(ctx, stderr.Success, gin.H{"captcha": captcha})
|
||||
}
|
||||
|
||||
// 从Server-file同步基础信息 doc
|
||||
// @Summary
|
||||
// @Description 从Server-file同步基础信息
|
||||
// @Tags Ext-拓展功能
|
||||
// @Accept mpfd,json
|
||||
// @Produce json,html
|
||||
// @Param mobile formData string true "手机号"
|
||||
// @Success 200 {string} json "{"msg": "操作成功"}"
|
||||
// @Failure 400 {string} json "{"msg": "操作失败"}"
|
||||
// @Router /api/web/admin/extend/syncServerFile [post]
|
||||
func SyncServerFile(ctx *gin.Context) {
|
||||
var args struct {
|
||||
IDs []string `form:"ids" json:"ids" binding:"required"`
|
||||
Token string `form:"token" json:"token" binding:"required"`
|
||||
}
|
||||
if err := ctx.ShouldBind(&args); err != nil {
|
||||
common.ServeJSON(ctx, stderr.ErrParamError, err.Error())
|
||||
return
|
||||
}
|
||||
if args.Token != "q7ydjHVIVBYiTqQ&" {
|
||||
common.ServeJSON(ctx, stderr.ErrNoToken, nil)
|
||||
return
|
||||
}
|
||||
var successCnt, failCount int64
|
||||
failIds := make([]string, 0, len(args.IDs))
|
||||
for _, v := range args.IDs {
|
||||
code := vidser.SyncBaseInfoFromFs(v)
|
||||
if code != stderr.UpLoadFileComplete {
|
||||
failCount++
|
||||
failIds = append(failIds, v)
|
||||
continue
|
||||
}
|
||||
successCnt++
|
||||
}
|
||||
ctx.JSON(http.StatusOK, gin.H{"successCnt": successCnt, "failCount": failCount, "failIds": failIds})
|
||||
}
|
||||
Reference in New Issue
Block a user