sample/internal/logic/register/code.go

31 lines
644 B
Go

package register
import (
"context"
"regexp"
"git.apinb.com/bsm-sdk/core/errcode"
pb "git.apinb.com/bsm-sdk/sample/pb"
)
// 手机验证码注册
func Code(ctx context.Context, in *pb.RegisterRequest) (reply *pb.RegisterReply, err error) {
if in.Phone == "" || in.Code == "" {
return nil, errcode.ErrInvalidArgument
}
//手机号验证
matched, err := regexp.MatchString("^1[3456789]{1}\\d{9}$", in.Phone)
if err != nil || !matched {
return nil, errcode.ErrInvalidArgument
}
//账号唯一验证
found := models.sampleAccountExists("phone", in.Phone)
if found {
return nil, errcode.ErrAlreadyExists
}
return Do(in)
}