56 lines
1.7 KiB
Go
56 lines
1.7 KiB
Go
|
package grpcserver
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
grpcproto "git.coopgo.io/coopgo-apps/silvermobi/servers/grpcapi/proto"
|
||
|
"time"
|
||
|
)
|
||
|
|
||
|
func (s SilvermobiGRPCService) SetPhoneNumber(ctx context.Context, req *grpcproto.SetPhoneNumberRequest) (res *grpcproto.SetPhoneNumberResponse, err error) {
|
||
|
if err = s.Handler.UpdatePhoneNumber(
|
||
|
context.Background(),
|
||
|
req.Email,
|
||
|
req.PhoneNumber,
|
||
|
); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
|
||
|
return &grpcproto.SetPhoneNumberResponse{Ok: true}, nil
|
||
|
}
|
||
|
|
||
|
func (s SilvermobiGRPCService) VerifyPhoneNumber(ctx context.Context, req *grpcproto.VerifyPhoneNumberRequest) (res *grpcproto.VerifyPhoneNumberResponse, err error) {
|
||
|
|
||
|
if err = s.Handler.VerifyPhoneNumber(
|
||
|
context.Background(),
|
||
|
req.Email,
|
||
|
req.PhoneNumber,
|
||
|
req.VerificationCode,
|
||
|
); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
|
||
|
return &grpcproto.VerifyPhoneNumberResponse{Ok: true}, nil
|
||
|
}
|
||
|
|
||
|
func (s SilvermobiGRPCService) SetBirthDate(ctx context.Context, req *grpcproto.BirthDateRequest) (res *grpcproto.BirthDateResponse, err error) {
|
||
|
birthdate := time.Unix(req.Birthdate.Seconds, int64(req.Birthdate.Nanos)).UTC()
|
||
|
birthdateString := birthdate.Format("2006-01-02T15:04:05Z")
|
||
|
if err = s.Handler.UpdateBirthDate(ctx, req.Email, birthdateString); err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return &grpcproto.BirthDateResponse{
|
||
|
Ok: true,
|
||
|
}, nil
|
||
|
}
|
||
|
|
||
|
func (s SilvermobiGRPCService) GetValidation(ctx context.Context, req *grpcproto.ValidationRequest) (res *grpcproto.ValidationResponse, err error) {
|
||
|
phone_validation, birth_validation, err := s.Handler.CheckValidation(ctx, req.Email)
|
||
|
if err != nil {
|
||
|
return nil, err
|
||
|
}
|
||
|
return &grpcproto.ValidationResponse{
|
||
|
Phone: phone_validation,
|
||
|
Birthdate: birth_validation,
|
||
|
}, nil
|
||
|
}
|