修改
This commit is contained in:
parent
6149b83ce4
commit
661ea9dee0
File diff suppressed because it is too large
Load Diff
@ -66,6 +66,8 @@ service AccountFiee {
|
||||
rpc SendNationMsg (SendNationMsgRequest) returns (SendMsgStatusResponse) {} //发送境外国际短信验证码 --艺术商城
|
||||
rpc VerifySliderStatus(VerifySliderStatusRequest) returns (VerifySliderStatusResponse) {}// 验证滑块验证码状态
|
||||
rpc SendNationTemplateMsg (SendNationMsgRequest) returns (SendMsgStatusResponse) {} //发送境外国际短信验证码 --艺术商城
|
||||
rpc GetInviterInfo(InviterInfoRequest) returns(InviterInfoResponse) {} //获取邀请人信息
|
||||
rpc GetInviterList(InviterListRequest) returns(InviterListResponse) {} //获取邀请人信息
|
||||
|
||||
|
||||
rpc CreateUserAndRealName (CreateUserAndRealNameRequest) returns (CreateUserAndRealNameResponse) {}// 创建用户并实名, 自动导入
|
||||
@ -101,7 +103,21 @@ service AccountFiee {
|
||||
rpc GetChatAutoReplyRulerDetail ( GetChatAutoReplyRulerByIdRequest )returns( ChatAutoReplyRulerData ){} //查询自动回复规则详情
|
||||
rpc GetChatAutoReplyRulerList ( GetChatAutoReplyRulerListRequest )returns( GetChatAutoReplyRulerListResp ){} //查询自动回复规则列表
|
||||
}
|
||||
|
||||
message InviterListRequest{
|
||||
repeated uint64 ids =1;
|
||||
}
|
||||
message InviterListResponse{
|
||||
repeated InviterInfoResponse list = 1;
|
||||
}
|
||||
message InviterInfoRequest{
|
||||
string code = 1;
|
||||
}
|
||||
message InviterInfoResponse{
|
||||
uint64 id = 1;
|
||||
string code = 2;
|
||||
string name = 3;
|
||||
string telNum = 4;
|
||||
}
|
||||
message VerifySliderStatusRequest {
|
||||
string nonceStr = 1;
|
||||
}
|
||||
@ -186,6 +202,8 @@ message UserListInfo{
|
||||
string email = 24;
|
||||
string AbroadTelAreaCode = 25;
|
||||
string AbroadTel = 26;
|
||||
string inviterName = 27;
|
||||
string inviterCode = 28;
|
||||
}
|
||||
message UserListRequest{
|
||||
string domain = 1;
|
||||
@ -227,6 +245,7 @@ message UserInfoResponse{
|
||||
string email = 22;
|
||||
string AbroadTelAreaCode = 23;
|
||||
string AbroadTel = 24;
|
||||
uint64 inviterId = 25;
|
||||
|
||||
}
|
||||
message RealNameResponse{
|
||||
@ -642,6 +661,8 @@ message RegistRequest {
|
||||
string telAreaCode = 5;
|
||||
string language = 6;
|
||||
string nickName = 7;
|
||||
uint64 inviterID = 8;
|
||||
string inviterCode = 9;
|
||||
}
|
||||
|
||||
message LoginRequest {
|
||||
|
||||
@ -17,6 +17,25 @@ var _ = proto.Marshal
|
||||
var _ = fmt.Errorf
|
||||
var _ = math.Inf
|
||||
|
||||
func (this *InviterListRequest) Validate() error {
|
||||
return nil
|
||||
}
|
||||
func (this *InviterListResponse) Validate() error {
|
||||
for _, item := range this.List {
|
||||
if item != nil {
|
||||
if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil {
|
||||
return github_com_mwitkow_go_proto_validators.FieldError("List", err)
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
func (this *InviterInfoRequest) Validate() error {
|
||||
return nil
|
||||
}
|
||||
func (this *InviterInfoResponse) Validate() error {
|
||||
return nil
|
||||
}
|
||||
func (this *VerifySliderStatusRequest) Validate() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -70,6 +70,8 @@ type AccountFieeClient interface {
|
||||
SendNationMsg(ctx context.Context, in *SendNationMsgRequest, opts ...grpc_go.CallOption) (*SendMsgStatusResponse, common.ErrorWithAttachment)
|
||||
VerifySliderStatus(ctx context.Context, in *VerifySliderStatusRequest, opts ...grpc_go.CallOption) (*VerifySliderStatusResponse, common.ErrorWithAttachment)
|
||||
SendNationTemplateMsg(ctx context.Context, in *SendNationMsgRequest, opts ...grpc_go.CallOption) (*SendMsgStatusResponse, common.ErrorWithAttachment)
|
||||
GetInviterInfo(ctx context.Context, in *InviterInfoRequest, opts ...grpc_go.CallOption) (*InviterInfoResponse, common.ErrorWithAttachment)
|
||||
GetInviterList(ctx context.Context, in *InviterListRequest, opts ...grpc_go.CallOption) (*InviterListResponse, common.ErrorWithAttachment)
|
||||
CreateUserAndRealName(ctx context.Context, in *CreateUserAndRealNameRequest, opts ...grpc_go.CallOption) (*CreateUserAndRealNameResponse, common.ErrorWithAttachment)
|
||||
// submit info
|
||||
SaveSubmitInfo(ctx context.Context, in *SubmitInfoRequest, opts ...grpc_go.CallOption) (*CommonResponse, common.ErrorWithAttachment)
|
||||
@ -148,6 +150,8 @@ type AccountFieeClientImpl struct {
|
||||
SendNationMsg func(ctx context.Context, in *SendNationMsgRequest) (*SendMsgStatusResponse, error)
|
||||
VerifySliderStatus func(ctx context.Context, in *VerifySliderStatusRequest) (*VerifySliderStatusResponse, error)
|
||||
SendNationTemplateMsg func(ctx context.Context, in *SendNationMsgRequest) (*SendMsgStatusResponse, error)
|
||||
GetInviterInfo func(ctx context.Context, in *InviterInfoRequest) (*InviterInfoResponse, error)
|
||||
GetInviterList func(ctx context.Context, in *InviterListRequest) (*InviterListResponse, error)
|
||||
CreateUserAndRealName func(ctx context.Context, in *CreateUserAndRealNameRequest) (*CreateUserAndRealNameResponse, error)
|
||||
SaveSubmitInfo func(ctx context.Context, in *SubmitInfoRequest) (*CommonResponse, error)
|
||||
CreateChatUser func(ctx context.Context, in *ChatUserData) (*CreateChatUserResp, error)
|
||||
@ -436,6 +440,18 @@ func (c *accountFieeClient) SendNationTemplateMsg(ctx context.Context, in *SendN
|
||||
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SendNationTemplateMsg", in, out)
|
||||
}
|
||||
|
||||
func (c *accountFieeClient) GetInviterInfo(ctx context.Context, in *InviterInfoRequest, opts ...grpc_go.CallOption) (*InviterInfoResponse, common.ErrorWithAttachment) {
|
||||
out := new(InviterInfoResponse)
|
||||
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
|
||||
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetInviterInfo", in, out)
|
||||
}
|
||||
|
||||
func (c *accountFieeClient) GetInviterList(ctx context.Context, in *InviterListRequest, opts ...grpc_go.CallOption) (*InviterListResponse, common.ErrorWithAttachment) {
|
||||
out := new(InviterListResponse)
|
||||
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
|
||||
return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetInviterList", in, out)
|
||||
}
|
||||
|
||||
func (c *accountFieeClient) CreateUserAndRealName(ctx context.Context, in *CreateUserAndRealNameRequest, opts ...grpc_go.CallOption) (*CreateUserAndRealNameResponse, common.ErrorWithAttachment) {
|
||||
out := new(CreateUserAndRealNameResponse)
|
||||
interfaceKey := ctx.Value(constant.InterfaceKey).(string)
|
||||
@ -650,6 +666,8 @@ type AccountFieeServer interface {
|
||||
SendNationMsg(context.Context, *SendNationMsgRequest) (*SendMsgStatusResponse, error)
|
||||
VerifySliderStatus(context.Context, *VerifySliderStatusRequest) (*VerifySliderStatusResponse, error)
|
||||
SendNationTemplateMsg(context.Context, *SendNationMsgRequest) (*SendMsgStatusResponse, error)
|
||||
GetInviterInfo(context.Context, *InviterInfoRequest) (*InviterInfoResponse, error)
|
||||
GetInviterList(context.Context, *InviterListRequest) (*InviterListResponse, error)
|
||||
CreateUserAndRealName(context.Context, *CreateUserAndRealNameRequest) (*CreateUserAndRealNameResponse, error)
|
||||
// submit info
|
||||
SaveSubmitInfo(context.Context, *SubmitInfoRequest) (*CommonResponse, error)
|
||||
@ -811,6 +829,12 @@ func (UnimplementedAccountFieeServer) VerifySliderStatus(context.Context, *Verif
|
||||
func (UnimplementedAccountFieeServer) SendNationTemplateMsg(context.Context, *SendNationMsgRequest) (*SendMsgStatusResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method SendNationTemplateMsg not implemented")
|
||||
}
|
||||
func (UnimplementedAccountFieeServer) GetInviterInfo(context.Context, *InviterInfoRequest) (*InviterInfoResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method GetInviterInfo not implemented")
|
||||
}
|
||||
func (UnimplementedAccountFieeServer) GetInviterList(context.Context, *InviterListRequest) (*InviterListResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method GetInviterList not implemented")
|
||||
}
|
||||
func (UnimplementedAccountFieeServer) CreateUserAndRealName(context.Context, *CreateUserAndRealNameRequest) (*CreateUserAndRealNameResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method CreateUserAndRealName not implemented")
|
||||
}
|
||||
@ -2112,6 +2136,64 @@ func _AccountFiee_SendNationTemplateMsg_Handler(srv interface{}, ctx context.Con
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _AccountFiee_GetInviterInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(InviterInfoRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
base := srv.(dubbo3.Dubbo3GrpcService)
|
||||
args := []interface{}{}
|
||||
args = append(args, in)
|
||||
md, _ := metadata.FromIncomingContext(ctx)
|
||||
invAttachment := make(map[string]interface{}, len(md))
|
||||
for k, v := range md {
|
||||
invAttachment[k] = v
|
||||
}
|
||||
invo := invocation.NewRPCInvocation("GetInviterInfo", args, invAttachment)
|
||||
if interceptor == nil {
|
||||
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
|
||||
return result, result.Error()
|
||||
}
|
||||
info := &grpc_go.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
|
||||
return result, result.Error()
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _AccountFiee_GetInviterList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(InviterListRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
base := srv.(dubbo3.Dubbo3GrpcService)
|
||||
args := []interface{}{}
|
||||
args = append(args, in)
|
||||
md, _ := metadata.FromIncomingContext(ctx)
|
||||
invAttachment := make(map[string]interface{}, len(md))
|
||||
for k, v := range md {
|
||||
invAttachment[k] = v
|
||||
}
|
||||
invo := invocation.NewRPCInvocation("GetInviterList", args, invAttachment)
|
||||
if interceptor == nil {
|
||||
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
|
||||
return result, result.Error()
|
||||
}
|
||||
info := &grpc_go.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string),
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
result := base.XXX_GetProxyImpl().Invoke(ctx, invo)
|
||||
return result, result.Error()
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _AccountFiee_CreateUserAndRealName_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(CreateUserAndRealNameRequest)
|
||||
if err := dec(in); err != nil {
|
||||
@ -3095,6 +3177,14 @@ var AccountFiee_ServiceDesc = grpc_go.ServiceDesc{
|
||||
MethodName: "SendNationTemplateMsg",
|
||||
Handler: _AccountFiee_SendNationTemplateMsg_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "GetInviterInfo",
|
||||
Handler: _AccountFiee_GetInviterInfo_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "GetInviterList",
|
||||
Handler: _AccountFiee_GetInviterList_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "CreateUserAndRealName",
|
||||
Handler: _AccountFiee_CreateUserAndRealName_Handler,
|
||||
|
||||
17
pkg/model/inviter.go
Normal file
17
pkg/model/inviter.go
Normal file
@ -0,0 +1,17 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"gorm.io/plugin/soft_delete"
|
||||
)
|
||||
|
||||
type Inviter struct {
|
||||
ID uint `gorm:"primarykey"`
|
||||
CreatedAt time.Time
|
||||
UpdatedAt time.Time
|
||||
DeletedAt soft_delete.DeletedAt `gorm:"column:deleted_at;type:int(11)"`
|
||||
Code string `gorm:"column:code;comment:邀请码" json:"code"`
|
||||
Name string `gorm:"column:name;comment:姓名" json:"name"`
|
||||
TelNum string `gorm:"column:tel_num;comment:手机号" json:"telNum"`
|
||||
}
|
||||
@ -25,6 +25,7 @@ func migration() {
|
||||
AddTable(&User{})
|
||||
AddTable(&RefreshToken{})
|
||||
AddTable(&SubmitInfo{})
|
||||
AddTable(&Inviter{})
|
||||
|
||||
AddColumn(&User{}, "nickname")
|
||||
AddColumn(&User{}, "language")
|
||||
@ -32,6 +33,7 @@ func migration() {
|
||||
AddColumn(&User{}, "abroad_tel")
|
||||
AddColumn(&User{}, "abroad_tel_area_code")
|
||||
AddColumn(&User{}, "email")
|
||||
AddColumn(&User{}, "inviter_id")
|
||||
AddColumn(&RealName{}, "id_number")
|
||||
AddColumn(&RealName{}, "date_of_birth")
|
||||
}
|
||||
|
||||
@ -56,6 +56,8 @@ type User struct {
|
||||
Email string `gorm:"column:email;comment:邮箱" json:"email"`
|
||||
AbroadTel string `gorm:"column:abroad_tel;comment:国外手机号" json:"abroadTel"`
|
||||
AbroadTelAreaCode string `gorm:"column:abroad_tel_area_code;comment:国外手机区号" json:"abroadTelAreaCode"`
|
||||
InviterID uint
|
||||
Inviter *Inviter `gorm:"foreignKey:InviterID" json:"inviter"`
|
||||
}
|
||||
|
||||
const (
|
||||
|
||||
@ -89,6 +89,13 @@ func BuildUserList(user []*model.User) []*account.UserListInfo {
|
||||
DateOfBirth: "",
|
||||
}
|
||||
}
|
||||
inviter := i.Inviter
|
||||
if inviter == nil {
|
||||
inviter = &model.Inviter{
|
||||
Name: "",
|
||||
Code: "",
|
||||
}
|
||||
}
|
||||
userList = append(userList, &account.UserListInfo{
|
||||
Id: uint64(i.ID),
|
||||
Status: int32(i.Status),
|
||||
@ -116,6 +123,8 @@ func BuildUserList(user []*model.User) []*account.UserListInfo {
|
||||
Email: i.Email,
|
||||
AbroadTelAreaCode: i.AbroadTelAreaCode,
|
||||
AbroadTel: i.AbroadTel,
|
||||
InviterName: inviter.Name,
|
||||
InviterCode: inviter.Code,
|
||||
})
|
||||
}
|
||||
return userList
|
||||
|
||||
@ -542,6 +542,7 @@ func (a *AccountFieeProvider) Register(_ context.Context, in *account.RegistRequ
|
||||
SubscriberNumber: SubscriberNumber,
|
||||
Language: in.Language,
|
||||
Nickname: in.NickName,
|
||||
InviterID: uint(in.InviterID),
|
||||
}
|
||||
if err = model.DB.Create(&user).Error; err != nil {
|
||||
return &account.RegisterResponse{Status: 0}, err
|
||||
@ -570,7 +571,48 @@ func (a *AccountFieeProvider) CheckPwd(_ context.Context, in *account.CheckPwdRe
|
||||
|
||||
return response, nil
|
||||
}
|
||||
func (a *AccountFieeProvider) GetInviterInfo(_ context.Context, in *account.InviterInfoRequest) (*account.InviterInfoResponse, error) {
|
||||
if in.Code == "" {
|
||||
return &account.InviterInfoResponse{}, errors.New("邀请码不能为空")
|
||||
}
|
||||
var Inviter model.Inviter
|
||||
if err := model.DB.Where(&model.Inviter{Code: in.Code}).First(&Inviter).Error; err != nil {
|
||||
return &account.InviterInfoResponse{}, err
|
||||
}
|
||||
return &account.InviterInfoResponse{
|
||||
Id: uint64(Inviter.ID),
|
||||
Code: Inviter.Code,
|
||||
Name: Inviter.Name,
|
||||
TelNum: Inviter.TelNum,
|
||||
}, nil
|
||||
}
|
||||
func (a *AccountFieeProvider) GetInviterList(_ context.Context, in *account.InviterListRequest) (*account.InviterListResponse, error) {
|
||||
if len(in.Ids) == 0 {
|
||||
return &account.InviterListResponse{}, errors.New("邀请人ID不能为空")
|
||||
}
|
||||
var inviters []*model.Inviter
|
||||
if err := model.DB.Model(&model.Inviter{}).
|
||||
Where("id IN (?)", in.Ids).
|
||||
Find(&inviters).Error; err != nil {
|
||||
return &account.InviterListResponse{}, err
|
||||
}
|
||||
// 初始化响应对象
|
||||
res := &account.InviterListResponse{
|
||||
List: make([]*account.InviterInfoResponse, 0, len(inviters)),
|
||||
}
|
||||
// 转换数据
|
||||
for _, v := range inviters {
|
||||
info := &account.InviterInfoResponse{
|
||||
Id: uint64(v.ID),
|
||||
Code: v.Code,
|
||||
Name: v.Name,
|
||||
TelNum: v.TelNum,
|
||||
}
|
||||
res.List = append(res.List, info)
|
||||
}
|
||||
|
||||
return res, nil
|
||||
}
|
||||
func (a *AccountFieeProvider) Authentication(_ context.Context, in *account.AuthenticationRequest) (*account.RequestStatus, error) {
|
||||
claims, err := jwt.ParseToken(in.Token, m.JWTSecret)
|
||||
if err != nil {
|
||||
@ -703,7 +745,7 @@ func (a *AccountFieeProvider) UserList(ctx context.Context, in *account.UserList
|
||||
if in.Page > 0 && in.PageSize > 0 {
|
||||
modelObj.Limit(int(in.PageSize)).Offset(page.GetOffset(in.Page, in.PageSize))
|
||||
}
|
||||
modelObj.Preload("RealName").Find(&users)
|
||||
modelObj.Preload("RealName").Preload("Inviter").Find(&users)
|
||||
|
||||
response := &account.UserListResponse{}
|
||||
|
||||
@ -1001,6 +1043,7 @@ func (a *AccountFieeProvider) UserByTel(_ context.Context, in *account.UserByTel
|
||||
Domain: *user.Domain,
|
||||
SubscriberNumber: user.SubscriberNumber,
|
||||
IdNumber: realName.IdNumber,
|
||||
InviterId: uint64(user.InviterID),
|
||||
}
|
||||
return response, nil
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user