mirror of
https://gitee.com/xiangheng/x_admin.git
synced 2025-10-06 08:37:12 +08:00
72 lines
1.6 KiB
Go
72 lines
1.6 KiB
Go
package commonController
|
|
|
|
import (
|
|
"errors"
|
|
"x_admin/app/schema/commonSchema"
|
|
"x_admin/app/service/commonService"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func CaptchaRoute(rg *gin.RouterGroup) {
|
|
|
|
rg = rg.Group("/common/captcha")
|
|
rg.POST("/get", func(c *gin.Context) {
|
|
var captchaGet commonSchema.CaptchaGetParams
|
|
if err := c.ShouldBind(&captchaGet); err != nil {
|
|
// 返回错误信息
|
|
c.JSON(200, errorRes(err))
|
|
return
|
|
}
|
|
if captchaGet.CaptchaType == "" {
|
|
c.JSON(200, errorRes(errors.New("验证码类型不能为空")))
|
|
return
|
|
}
|
|
// 根据参数类型获取不同服务即可
|
|
data, err := commonService.CaptchaGet(captchaGet.CaptchaType)
|
|
if err != nil {
|
|
c.JSON(200, errorRes(err))
|
|
return
|
|
}
|
|
//输出json结果给调用方
|
|
c.JSON(200, successRes(data))
|
|
})
|
|
rg.POST("/check", func(c *gin.Context) {
|
|
var params commonSchema.ClientParams
|
|
if err := c.ShouldBind(¶ms); err != nil {
|
|
// 返回错误信息
|
|
c.JSON(200, errorRes(err))
|
|
return
|
|
}
|
|
err := commonService.CaptchaCheck(params)
|
|
|
|
if err != nil {
|
|
c.JSON(200, errorRes(err))
|
|
return
|
|
}
|
|
//输出json结果给调用方
|
|
c.JSON(200, successRes(nil))
|
|
})
|
|
|
|
}
|
|
|
|
func successRes(data interface{}) map[string]interface{} {
|
|
ret := make(map[string]interface{})
|
|
ret["error"] = false
|
|
ret["repCode"] = "0000"
|
|
ret["repData"] = data
|
|
ret["repMsg"] = nil
|
|
ret["successRes"] = true
|
|
|
|
return ret
|
|
}
|
|
func errorRes(err error) map[string]interface{} {
|
|
ret := make(map[string]interface{})
|
|
ret["error"] = true
|
|
ret["repCode"] = "0001"
|
|
ret["repData"] = nil
|
|
ret["repMsg"] = err.Error()
|
|
ret["successRes"] = false
|
|
return ret
|
|
}
|