40 lines
839 B
Go
40 lines
839 B
Go
package sms
|
|
|
|
import (
|
|
"context"
|
|
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type MockProvider struct {
|
|
log *zap.Logger
|
|
}
|
|
|
|
func NewMockProvider(log *zap.Logger) *MockProvider {
|
|
return &MockProvider{log: log}
|
|
}
|
|
|
|
func (p *MockProvider) SendLoginCode(ctx context.Context, phone string, code string) error {
|
|
if err := ctx.Err(); err != nil {
|
|
return err
|
|
}
|
|
if p.log != nil {
|
|
p.log.Info("本地短信验证码", zap.String("phone", maskPhone(phone)), zap.String("code", code))
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (p *MockProvider) SendTemplate(ctx context.Context, req TemplateRequest) error {
|
|
if err := ctx.Err(); err != nil {
|
|
return err
|
|
}
|
|
if p.log != nil {
|
|
p.log.Info("本地模板短信(未真实发送)",
|
|
zap.String("phone", maskPhone(req.Phone)),
|
|
zap.String("template_code", req.TemplateCode),
|
|
zap.Any("params", req.Params),
|
|
)
|
|
}
|
|
return nil
|
|
}
|