f
This commit is contained in:
@@ -12,6 +12,7 @@ import (
|
||||
"xingfucha-server/app/main/model"
|
||||
"xingfucha-server/common/ctxdata"
|
||||
"xingfucha-server/common/xerr"
|
||||
"xingfucha-server/pkg/captcha"
|
||||
"xingfucha-server/pkg/lzkit/crypto"
|
||||
"xingfucha-server/pkg/lzkit/validator"
|
||||
|
||||
@@ -84,10 +85,12 @@ func (l *QueryServiceLogic) ProcessMarriageLogic(req *types.QueryServiceReq) (*t
|
||||
return nil, errors.Wrapf(xerr.NewErrCodeMsg(xerr.PARAM_VERIFICATION_ERROR, validatorErr.Error()), "查询服务, 参数不正确: %+v", validatorErr)
|
||||
}
|
||||
|
||||
// 校验验证码
|
||||
verifyCodeErr := l.VerifyCode(data.Mobile, data.Code)
|
||||
if verifyCodeErr != nil {
|
||||
return nil, verifyCodeErr
|
||||
// 校验拼图验证码(marriage 产品使用拼图验证,不使用短信验证码;captcha_verify_param 为必传)
|
||||
if data.CaptchaVerifyParam == "" {
|
||||
return nil, errors.Wrapf(xerr.NewErrMsg("请完成拼图验证"), "marriage 查询缺少拼图验证参数")
|
||||
}
|
||||
if err := l.VerifyCaptcha(data.CaptchaVerifyParam); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// 校验三要素
|
||||
@@ -586,6 +589,20 @@ func (l *QueryServiceLogic) VerifyCode(mobile string, code string) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// 校验拼图验证码
|
||||
func (l *QueryServiceLogic) VerifyCaptcha(captchaVerifyParam string) error {
|
||||
cfg := l.svcCtx.Config.Captcha
|
||||
if err := captcha.Verify(captcha.Config{
|
||||
AccessKeyID: cfg.AccessKeyID,
|
||||
AccessKeySecret: cfg.AccessKeySecret,
|
||||
EndpointURL: cfg.EndpointURL,
|
||||
SceneID: cfg.SceneID,
|
||||
}, captchaVerifyParam); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
// 二、三要素验证
|
||||
func (l *QueryServiceLogic) Verify(Name string, IDCard string, Mobile string) error {
|
||||
// 开发环境下跳过二/三要素验证(避免未授权IP调用天元API失败)
|
||||
|
||||
@@ -4,7 +4,7 @@ type MarriageReq struct {
|
||||
Name string `json:"name" validate:"required,name"`
|
||||
IDCard string `json:"id_card" validate:"required,idCard"`
|
||||
Mobile string `json:"mobile" validate:"required,mobile"`
|
||||
Code string `json:"code" validate:"required"`
|
||||
CaptchaVerifyParam string `json:"captcha_verify_param"`
|
||||
}
|
||||
type HomeServiceReq struct {
|
||||
Name string `json:"name" validate:"required,name"`
|
||||
|
||||
Reference in New Issue
Block a user