From 99853b8514dd76f9a6f5b9574e7053de741a231d Mon Sep 17 00:00:00 2001 From: luorijun Date: Tue, 17 Mar 2026 14:19:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=BC=80=E5=8F=91=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=EF=BC=8C=E5=8F=AF=E4=BB=A5=E6=B8=85=E9=99=A4=E5=AE=9E?= =?UTF-8?q?=E5=90=8D=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/handlers/iden.go | 62 +++++++++++++++++++++++++++++--------------- web/routes.go | 1 + 2 files changed, 42 insertions(+), 21 deletions(-) diff --git a/web/handlers/iden.go b/web/handlers/iden.go index 1250157..8bdf1db 100644 --- a/web/handlers/iden.go +++ b/web/handlers/iden.go @@ -18,19 +18,7 @@ import ( jdclient "github.com/jdcloud-api/jdcloud-sdk-go/services/cloudauth/client" ) -// region Identify - -type IdentifyReq struct { - Type int `json:"type" validate:"required,oneof=1 2"` - Name string `json:"name" validate:"required"` - IdenNo string `json:"iden_no" validate:"required"` -} - -type IdentifyRes struct { - Identified bool `json:"identified"` - Target string `json:"target"` -} - +// Identify 发起实名认证 func Identify(c *fiber.Ctx) error { // 检查权限 @@ -99,20 +87,22 @@ func Identify(c *fiber.Ctx) error { }) } -// endregion +type IdentifyReq struct { + Type int `json:"type" validate:"required,oneof=1 2"` + Name string `json:"name" validate:"required"` + IdenNo string `json:"iden_no" validate:"required"` +} + +type IdentifyRes struct { + Identified bool `json:"identified"` + Target string `json:"target"` +} type idenResultData struct { Success bool Message string } -func renderIdenResult(c *fiber.Ctx, success bool, message string) error { - return c.Render("views/iden-result", idenResultData{ - Success: success, - Message: message, - }) -} - // IdentifyCallbackNew 更新用户实名认证状态 func IdentifyCallbackNew(c *fiber.Ctx) error { @@ -168,6 +158,36 @@ func IdentifyCallbackNew(c *fiber.Ctx) error { return renderIdenResult(c, true, "实名认证成功,请在扫码页面点击按钮完成认证") } +func renderIdenResult(c *fiber.Ctx, success bool, message string) error { + return c.Render("views/iden-result", idenResultData{ + Success: success, + Message: message, + }) +} + +// DebugIdentifyClear 清除用户实名认证状态(调试用) +func DebugIdentifyClear(c *fiber.Ctx) error { + phone := c.Params("phone") + if phone == "" { + return core.NewServErr("需要提供手机号") + } + + _, err := q.User. + Where( + q.User.Phone.Eq(phone), + ). + UpdateSimple( + q.User.IDType.Value(0), + q.User.IDNo.Value(""), + q.User.IDToken.Value(""), + ) + if err != nil { + return core.NewServErr("清除实名认证失败") + } + + return c.SendString("实名信息已清除") +} + func idenKey(id string) string { return fmt.Sprintf("iden:%s", id) } diff --git a/web/routes.go b/web/routes.go index 51bb010..85f8bd4 100644 --- a/web/routes.go +++ b/web/routes.go @@ -22,6 +22,7 @@ func ApplyRouters(app *fiber.App) { debug := app.Group("/debug") debug.Get("/sms/:phone", handlers.DebugGetSmsCode) debug.Get("/proxy/register", handlers.DebugRegisterProxyBaiYin) + debug.Get("/iden/clear/:phone", handlers.DebugIdentifyClear) } }