Files
qitongxue-api/internal/controller/user.go

87 lines
3.0 KiB
Go
Raw Normal View History

2026-09-17 14:42:44 +08:00
package controller
import (
"context"
v1 "tool-api/api/user/v1"
"tool-api/internal/logic"
)
// UserPub 公开接口(免登录)
type cUserPub struct{}
// UserAuth 需要用户登录的接口
type cUserAuth struct{}
var (
UserPub = &cUserPub{}
UserAuth = &cUserAuth{}
)
func (c *cUserPub) WxLogin(ctx context.Context, req *v1.WxLoginReq) (res *v1.WxLoginRes, err error) {
return logic.WxLogin(ctx, req.Code)
}
func (c *cUserPub) DevLogin(ctx context.Context, req *v1.DevLoginReq) (res *v1.DevLoginRes, err error) {
return logic.DevLogin(ctx)
}
func (c *cUserPub) Register(ctx context.Context, req *v1.RegisterReq) (res *v1.RegisterRes, err error) {
return logic.Register(ctx, req.Username, req.Password, req.Nickname)
}
func (c *cUserPub) AccountLogin(ctx context.Context, req *v1.AccountLoginReq) (res *v1.AccountLoginRes, err error) {
return logic.AccountLogin(ctx, req.Username, req.Password)
}
func (c *cUserAuth) BindAccount(ctx context.Context, req *v1.BindAccountReq) (res *v1.BindAccountRes, err error) {
return logic.BindAccount(ctx, req.Username, req.Password)
}
func (c *cUserAuth) ProfileUpdate(ctx context.Context, req *v1.ProfileUpdateReq) (res *v1.ProfileUpdateRes, err error) {
return logic.ProfileUpdate(ctx, req.Nickname, req.AvatarUrl)
}
2026-09-29 10:57:01 +08:00
// AvatarUpload 用户头像上传(multipart/form-data,字段名 file;N3)
func (c *cUserAuth) AvatarUpload(ctx context.Context, req *v1.AvatarUploadReq) (res *v1.AvatarUploadRes, err error) {
return logic.AvatarUploadFromRequest(ctx)
}
2026-09-17 14:42:44 +08:00
func (c *cUserAuth) Level(ctx context.Context, req *v1.LevelReq) (res *v1.LevelRes, err error) {
return logic.UserLevel(ctx)
}
func (c *cUserAuth) UserInfoGet(ctx context.Context, req *v1.UserInfoGetReq) (res *v1.UserInfoGetRes, err error) {
return logic.GetUserInfo(ctx)
}
func (c *cUserAuth) ToolsList(ctx context.Context, req *v1.ToolsListReq) (res *v1.ToolsListRes, err error) {
return logic.ToolsList(ctx)
}
func (c *cUserAuth) ToolsUsed(ctx context.Context, req *v1.ToolsUsedReq) (res *v1.ToolsUsedRes, err error) {
return logic.ToolsUsed(ctx, req.ToolKey)
}
func (c *cUserAuth) WorkbenchGet(ctx context.Context, req *v1.WorkbenchGetReq) (res *v1.WorkbenchGetRes, err error) {
return logic.WorkbenchGet(ctx)
}
func (c *cUserAuth) WorkbenchSave(ctx context.Context, req *v1.WorkbenchSaveReq) (res *v1.WorkbenchSaveRes, err error) {
return logic.WorkbenchSave(ctx, req.ToolKeys)
}
func (c *cUserAuth) FeedbackSubmit(ctx context.Context, req *v1.FeedbackSubmitReq) (res *v1.FeedbackSubmitRes, err error) {
return logic.FeedbackSubmit(ctx, req.Content, req.Contact)
}
2026-09-29 15:48:13 +08:00
// FeedbackMine 我的反馈列表(含官方回复与未读数,红点数据源)
func (c *cUserAuth) FeedbackMine(ctx context.Context, req *v1.FeedbackMineReq) (res *v1.FeedbackMineRes, err error) {
return logic.FeedbackMine(ctx, req.Limit)
}
// FeedbackRead 反馈回复标记已读(清红点)
func (c *cUserAuth) FeedbackRead(ctx context.Context, req *v1.FeedbackReadReq) (res *v1.FeedbackReadRes, err error) {
return logic.FeedbackMarkRead(ctx)
}