59 lines
1.5 KiB
Go
59 lines
1.5 KiB
Go
package logic
|
|
|
|
import (
|
|
"context"
|
|
"errors"
|
|
"fusenapi/server/home-user-auth/internal/svc"
|
|
"fusenapi/server/home-user-auth/internal/types"
|
|
"fusenapi/utils/auth"
|
|
"fusenapi/utils/basic"
|
|
|
|
"gorm.io/gorm"
|
|
|
|
"github.com/zeromicro/go-zero/core/logx"
|
|
)
|
|
|
|
type UserBasicInfoLogic struct {
|
|
logx.Logger
|
|
ctx context.Context
|
|
svcCtx *svc.ServiceContext
|
|
}
|
|
|
|
func NewUserBasicInfoLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserBasicInfoLogic {
|
|
return &UserBasicInfoLogic{
|
|
Logger: logx.WithContext(ctx),
|
|
ctx: ctx,
|
|
svcCtx: svcCtx,
|
|
}
|
|
}
|
|
|
|
func (l *UserBasicInfoLogic) UserBasicInfo(req *types.Request, userinfo *auth.UserInfo) (resp *basic.Response) {
|
|
|
|
if !userinfo.IsUser() {
|
|
// 返回未授权
|
|
return resp.SetStatus(basic.CodeUnAuth)
|
|
}
|
|
|
|
m := l.svcCtx.AllModels.FsUser
|
|
|
|
user, err := m.FindUserById(l.ctx, userinfo.UserId)
|
|
if err != nil {
|
|
if errors.Is(err, gorm.ErrRecordNotFound) {
|
|
return resp.SetStatusWithMessage(basic.CodeDbRecordNotFoundErr, "user is not exists")
|
|
}
|
|
logx.Error(err)
|
|
return resp.SetStatus(basic.CodeServiceErr)
|
|
}
|
|
|
|
return resp.SetStatus(basic.CodeOK, types.DataUserBasicInfo{
|
|
Type: *user.Type,
|
|
// IsOrderStatusEmail: *user.IsOrderStatusEmail,
|
|
// IsEmailAdvertisement: *user.IsEmailAdvertisement,
|
|
// IsOrderStatusPhone: *user.IsOrderStatusPhone,
|
|
// IsPhoneAdvertisement: *user.IsPhoneAdvertisement,
|
|
// IsOpenRender: *user.IsOpenRender,
|
|
// IsLowRendering: *user.IsLowRendering,
|
|
// IsRemoveBg: *user.IsRemoveBg,
|
|
})
|
|
}
|