Skip to content

Commit 559192d

Browse files
authored
fix: default verifyCode type and admin register user (#274)
* fix: default verifyCode type and admin register user * fix: default verifyCode type and admin register user * fix: default verifyCode type and admin register user * fix: default verifyCode type and admin register user
1 parent bb1d6cb commit 559192d

6 files changed

Lines changed: 29 additions & 12 deletions

File tree

config/config.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ verifyCode:
7676
maxCount: 10 # 单位时间内最大获取次数
7777
superCode: "666666" # 超级验证码(只有use为空时使用)
7878
len: 6 # 验证码长度
79-
use: "ali" # 使用的验证码服务(use: "ali")
79+
use: "" # 使用的验证码服务(use: "ali")
8080
ali:
8181
endpoint: "dysmsapi.aliyuncs.com"
8282
accessKeyId: ""

internal/api/mw.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,3 +136,14 @@ func (o *MW) CheckUser(c *gin.Context) {
136136
}
137137
o.setToken(c, userID, constant.NormalUser)
138138
}
139+
140+
func (o *MW) CheckAdminOrNil(c *gin.Context) {
141+
defer c.Next()
142+
userID, userType, _, err := o.parseToken(c)
143+
if err != nil {
144+
return
145+
}
146+
if userType == constant.AdminUser {
147+
o.setToken(c, userID, constant.AdminUser)
148+
}
149+
}

internal/api/router.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func NewChatRoute(router gin.IRouter, discov discoveryregistry.SvcDiscoveryRegis
3636
account := router.Group("/account")
3737
account.POST("/code/send", chat.SendVerifyCode) // 发送验证码
3838
account.POST("/code/verify", chat.VerifyCode) // 校验验证码
39-
account.POST("/register", chat.RegisterUser) // 注册
39+
account.POST("/register", mw.CheckAdminOrNil, chat.RegisterUser) // 注册
4040
account.POST("/login", chat.Login) // 登录
4141
account.POST("/password/reset", chat.ResetPassword) // 忘记密码
4242
account.POST("/password/change", mw.CheckToken, chat.ChangePassword) // 修改密码

internal/rpc/chat/login.go

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func (o *chatSvr) SendVerifyCode(ctx context.Context, req *chat.SendVerifyCodeRe
5454
return nil, errs.ErrArgs.Wrap("area code or phone number is empty")
5555
}
5656
if req.AreaCode[0] != '+' {
57-
return nil, errs.ErrArgs.Wrap("area code must start with +")
57+
req.AreaCode = "+" + req.AreaCode
5858
}
5959
if _, err := strconv.ParseUint(req.AreaCode[1:], 10, 64); err != nil {
6060
return nil, errs.ErrArgs.Wrap("area code must be number")
@@ -306,7 +306,7 @@ func (o *chatSvr) RegisterUser(ctx context.Context, req *chat.RegisterUserReq) (
306306
}
307307
if req.User.PhoneNumber != "" {
308308
if req.User.AreaCode[0] != '+' {
309-
return nil, errs.ErrArgs.Wrap("area code must start with +")
309+
req.User.AreaCode = "+" + req.User.AreaCode
310310
}
311311
if _, err := strconv.ParseUint(req.User.AreaCode[1:], 10, 64); err != nil {
312312
return nil, errs.ErrArgs.Wrap("area code must be number")
@@ -393,8 +393,14 @@ func (o *chatSvr) Login(ctx context.Context, req *chat.LoginReq) (*chat.LoginRes
393393
if req.Account != "" {
394394
attribute, err = o.Database.GetAttributeByAccount(ctx, req.Account)
395395
} else if req.PhoneNumber != "" {
396-
if req.AreaCode == "" || req.AreaCode[0] != '+' {
397-
return nil, errs.ErrArgs.Wrap("area code must start with +")
396+
if req.AreaCode == "" {
397+
return nil, errs.ErrArgs.Wrap("area code must")
398+
}
399+
if req.AreaCode[0] != '+' {
400+
req.AreaCode = "+" + req.AreaCode
401+
}
402+
if _, err := strconv.ParseUint(req.AreaCode[1:], 10, 64); err != nil {
403+
return nil, errs.ErrArgs.Wrap("area code must be number")
398404
}
399405
attribute, err = o.Database.GetAttributeByPhone(ctx, req.AreaCode, req.PhoneNumber)
400406
} else {

pkg/common/mw/gin_log.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ func GinLog() gin.HandlerFunc {
4343
return
4444
}
4545
start := time.Now()
46-
log.ZDebug(c, "gin request", "method", c.Request.Method, "uri", c.Request.RequestURI, "req header", c.Request.Header, "req body", string(req))
46+
log.ZDebug(c, "gin request", "method", c.Request.Method, "uri", c.Request.RequestURI, "req", string(req))
4747
c.Request.Body = io.NopCloser(bytes.NewReader(req))
4848
writer := &responseWriter{
4949
ResponseWriter: c.Writer,
@@ -52,6 +52,6 @@ func GinLog() gin.HandlerFunc {
5252
c.Writer = writer
5353
c.Next()
5454
resp := writer.buf.Bytes()
55-
log.ZDebug(c, "gin response", "time", time.Since(start), "status", c.Writer.Status(), "resp header", c.Writer.Header(), "resp", string(resp))
55+
log.ZDebug(c, "gin response", "time", time.Since(start), "status", c.Writer.Status(), "resp", string(resp))
5656
}
5757
}

pkg/proto/chat/chat.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -245,10 +245,10 @@ func EmailCheck(email string) error {
245245
}
246246

247247
func AreaCodeCheck(areaCode string) error {
248-
pattern := `\+[1-9][0-9]{1,2}`
249-
if err := regexMatch(pattern, areaCode); err != nil {
250-
return errs.Wrap(err, "AreaCode is invalid")
251-
}
248+
//pattern := `\+[1-9][0-9]{1,2}`
249+
//if err := regexMatch(pattern, areaCode); err != nil {
250+
// return errs.Wrap(err, "AreaCode is invalid")
251+
//}
252252
return nil
253253
}
254254

0 commit comments

Comments
 (0)