fonchain-artistinfo/cmd/internal/controller/artisrInfo.go

216 lines
7.3 KiB
Go
Raw Normal View History

2023-01-18 09:03:15 +00:00
package controller
import (
"context"
"fmt"
"github.com/fonchain/fonchain-artistinfo/cmd/model"
db "github.com/fonchain/fonchain-artistinfo/pkg/db"
"gorm.io/gorm"
2023-01-18 09:03:15 +00:00
2023-02-06 01:33:09 +00:00
"github.com/fonchain/fonchain-artistinfo/cmd/internal/logic"
"github.com/fonchain/fonchain-artistinfo/pb/artistinfo"
2023-01-18 09:03:15 +00:00
)
2023-02-17 03:33:56 +00:00
var _ artistinfo.ArtistInfoServer = new(ArtistInfoProvider)
2023-01-18 09:03:15 +00:00
type ArtistInfoProvider struct {
artistinfo.UnimplementedArtistInfoServer
artistInfoLogic *logic.ArtistInfo
}
2023-02-02 06:10:24 +00:00
func (a *ArtistInfoProvider) RegisterUser(ctx context.Context, req *artistinfo.RegisterUserRequest) (rep *artistinfo.RegisterUserRespond, err error) {
2023-01-18 09:03:15 +00:00
fmt.Println("第一处")
// backup := &artistInfo.GetUserInfoRespond{}
if rep, err = a.artistInfoLogic.RegisterUser(req); err != nil {
return nil, err
}
return rep, nil
}
func (a *ArtistInfoProvider) UpdateIdCard(ctx context.Context, in *artistinfo.UpdateIdCardRequest) (rep *artistinfo.CommonNoParams, err error) {
var thisUser model.User
db.DB.Where("mgmt_acc_id = ?", in.MgmtAccId).Preload("RealNameInfo").Find(&thisUser)
if thisUser.RealNameInfo == nil {
thisUser.RealNameInfo = &model.RealName{}
}
if in.Name != "" {
thisUser.RealNameInfo.Name = in.Name
}
if in.IdNum != "" {
thisUser.RealNameInfo.IdNum = in.IdNum
}
if in.Age != 0 {
thisUser.RealNameInfo.Age = int(in.Age)
}
if in.Sex != "" {
thisUser.RealNameInfo.Sex = model.SexType(in.Sex)
}
if in.Address != "" {
thisUser.RealNameInfo.Address = in.Address
}
if in.IdCardFront != "" {
thisUser.RealNameInfo.IdCardFront = in.IdCardFront
}
if in.IdCardBack != "" {
thisUser.RealNameInfo.IdCardBack = in.IdCardBack
}
if in.Birthday != "" {
thisUser.RealNameInfo.Birthday = in.Birthday
}
err = db.DB.Session(&gorm.Session{FullSaveAssociations: true}).Save(&thisUser).Error
return
}
2023-01-18 09:03:15 +00:00
func (a *ArtistInfoProvider) GetUser(ctx context.Context, req *artistinfo.GetUserRequest) (rep *artistinfo.GetUserRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.GetUserInfoRespond{}
if rep, err = a.artistInfoLogic.GetUser(req); err != nil {
return nil, err
}
return rep, nil
}
func (a *ArtistInfoProvider) GetUserById(ctx context.Context, req *artistinfo.GetUserByIdRequest) (rep *artistinfo.GetUserByIdRespond, err error) {
return a.artistInfoLogic.GetUserById(req)
2023-01-18 09:03:15 +00:00
}
//func (a *ArtistInfoProvider) UpdateRealName(ctx context.Context, req *artistinfo.UpdateRealNameRequest) (rep *artistinfo.UpdateRealNameRespond, err error) {
// fmt.Println("第一处")
// // backup := &artistInfo.GetUserInfoRespond{}
// if rep, err = a.artistInfoLogic.UpdateRealName(req); err != nil {
// return nil, err
// }
// return rep, nil
//}
2023-01-18 09:03:15 +00:00
func (a *ArtistInfoProvider) FinishVerify(ctx context.Context, req *artistinfo.FinishVerifyRequest) (rep *artistinfo.FinishVerifyRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.GetUserInfoRespond{}
if rep, err = a.artistInfoLogic.FinishVerify(req); err != nil {
return nil, err
}
return rep, nil
}
func (a *ArtistInfoProvider) CheckUserLock(ctx context.Context, req *artistinfo.CheckUserLockRequest) (rep *artistinfo.CheckUserLockRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.GetUserInfoRespond{}
if rep, err = a.artistInfoLogic.CheckUserLock(req); err != nil {
return nil, err
}
return rep, nil
}
2023-02-02 06:10:24 +00:00
func (a *ArtistInfoProvider) ArtistSupplyList(ctx context.Context, req *artistinfo.ArtistSupplyListRequest) (rep *artistinfo.ArtistSupplyListRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.GetUserInfoRespond{}
if rep, err = a.artistInfoLogic.ArtistSupplyList(req); err != nil {
return nil, err
}
return rep, nil
}
2023-02-15 01:10:11 +00:00
2023-02-15 01:39:14 +00:00
func (a *ArtistInfoProvider) CheckInvitedCode(ctx context.Context, req *artistinfo.CheckInvitedCodeRequest) (rep *artistinfo.GetUserRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.CheckInvitedCodeInfoRespond{}
if rep, err = a.artistInfoLogic.CheckInvitedCode(req); err != nil {
return nil, err
}
return rep, nil
}
func (a *ArtistInfoProvider) UnFinishList(ctx context.Context, req *artistinfo.UnFinishListRequest) (rep *artistinfo.UnFinishListRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.UnFinishListInfoRespond{}
if rep, err = a.artistInfoLogic.UnFinishList(req); err != nil {
return nil, err
}
return rep, nil
}
func (a *ArtistInfoProvider) GetUserMsg(ctx context.Context, req *artistinfo.GetUserMsgRequest) (rep *artistinfo.GetUserMsgRespond, err error) {
fmt.Println("第一处")
// backup := &artistInfo.GetUserMsgInfoRespond{}
if rep, err = a.artistInfoLogic.GetUserMsg(req); err != nil {
return nil, err
}
return rep, nil
}
2023-02-15 01:10:11 +00:00
// 绑定邀请人和受邀请人的账号,并加入到次数统计
func (a *ArtistInfoProvider) BindInviteInvitedAccount(ctx context.Context, in *artistinfo.BindInviteInvitedAccountRequest) (res *artistinfo.BindInviteInvitedAccountRespond, err error) {
2023-02-15 02:03:22 +00:00
if in.UserId == 0 || in.InvitedUserId == 0 {
return nil, err
}
// todo 变量in 参数检测: 邀请码没填的话需要从账号服务获取
// ..
// ..
2023-02-15 01:10:11 +00:00
var data model.Invite
// 只能绑定一个邀请人
if err = db.DB.Where("invited_id = ?", in.InvitedUserId).Find(&data).Error; err != nil {
return nil, err
}
if data.UserId == 0 {
data = model.Invite{
2023-02-16 00:15:44 +00:00
UserId: in.UserId,
InvitedId: in.InvitedUserId,
InvitedCode: in.InvitedCode,
InviteCode: in.InviteCode,
2023-02-15 01:10:11 +00:00
}
2023-02-16 00:15:44 +00:00
if err = db.DB.Create(&data).Error; err != nil {
2023-02-15 01:10:11 +00:00
return nil, err
}
}
// 添加到次数统计
var countData model.UserInvited
if err = db.DB.Where("user_id= ? AND invited_user_id= ?", in.UserId, in.GetInvitedUserId()).Find(&countData).Error; err != nil {
return nil, err
}
if countData.UserId == 0 {
countData = model.UserInvited{
UserId: in.UserId,
InvitedUserId: in.InvitedUserId,
Count: 1,
2023-02-16 00:15:44 +00:00
InvitedCode: in.InvitedCode,
InviteCode: in.InviteCode,
2023-02-15 01:10:11 +00:00
}
if err = db.DB.Create(&countData).Error; err != nil {
return nil, err
}
} else {
countData.Count += 1
if err = db.DB.Model(model.UserInvited{}).Where("id = ?", countData.ID).Updates(&countData).Error; err != nil {
return nil, err
}
}
return nil, err
}
func (a *ArtistInfoProvider) BindArtistId(ctx context.Context, in *artistinfo.BindArtistIdRequest) (*artistinfo.BindArtistIdResp, error) {
var updateData = map[string]any{
2023-02-22 14:13:50 +00:00
"mgmt_artist_id": in.ArtistId,
"mgmt_artist_uid": in.ArtistUid,
"fdd_state": 2,
}
if err := db.DB.Model(model.User{}).Where("mgmt_acc_id = ?", in.UserId).Updates(&updateData).Error; err != nil {
return &artistinfo.BindArtistIdResp{Error: err.Error()}, err
}
return nil, nil
}
2023-02-17 03:33:56 +00:00
func (a *ArtistInfoProvider) FindUser(ctx context.Context, in *artistinfo.FindUserRequest) (*artistinfo.UserInfo, error) {
return a.artistInfoLogic.FindUser(in)
}
func (a *ArtistInfoProvider) UpdateUserData(ctx context.Context, in *artistinfo.UserInfo) (*artistinfo.CommonNoParams, error) {
return a.artistInfoLogic.UpdateUserData(in)
}
2023-02-22 05:37:50 +00:00
func (a *ArtistInfoProvider) PreSaveArtistInfo(ctx context.Context, in *artistinfo.PreSaveArtistInfoData) (res *artistinfo.CommonNoParams, er error) {
return a.artistInfoLogic.PreSaveArtistInfo(in)
}
func (a *ArtistInfoProvider) GetPreSaveArtistInfo(ctx context.Context, in *artistinfo.GetPreSaveArtistInfoRequest) (res *artistinfo.PreSaveArtistInfoData, err error) {
return a.artistInfoLogic.GetPreSaveArtistInfo(in)
}