用户接口调试

This commit is contained in:
guosl 2024-07-05 13:57:17 +08:00
parent 283d8bee5f
commit c4f066a0d5
5 changed files with 37 additions and 16 deletions

View File

@ -40,8 +40,8 @@ type ModifyInfo struct {
} }
type Query struct { type Query struct {
Page int `form:"page" json:"page" binding:"required"` Page int `form:"page" json:"page" `
PageSize int `form:"page_size" json:"page_size" binding:"required"` PageSize int `form:"page_size" json:"page_size"`
Keyword string `form:"keyword" Json:"keyword"` Keyword string `form:"keyword" Json:"keyword"`
Sort string `form:"sort" json:"sort" binding:"sql_sort"` Sort string `form:"sort" json:"sort" binding:"sql_sort"`
} }
@ -55,3 +55,21 @@ type ResetPwdReq struct {
type GetUserReq struct { type GetUserReq struct {
Account string `form:"account" json:"account" binding:"required"` Account string `form:"account" json:"account" binding:"required"`
} }
func (q *Query) Default() {
if q.Page < 0 {
q.Page = 0
}
if q.PageSize <= 0 {
q.PageSize = 20
}
if len(q.Sort) == 0 {
q.Sort = "created_on desc"
}
}
type Enable struct {
Id uint `json:"id" binding:"required"`
}

View File

@ -10,8 +10,8 @@ type UserService interface {
Login(ctx context.Context, lInfo models.LoginInfo) error Login(ctx context.Context, lInfo models.LoginInfo) error
Logout(ctx context.Context) error Logout(ctx context.Context) error
Modify(ctx context.Context, mInfo *models.ModifyInfo) error Modify(ctx context.Context, mInfo *models.ModifyInfo) error
Disable(ctx context.Context) error Disable(ctx context.Context, req *models.Enable) error
Enable(ctx context.Context) error Enable(ctx context.Context, req *models.Enable) error
Search(ctx context.Context, query *models.Query) ([]models.User, error) Search(ctx context.Context, query *models.Query) ([]models.User, error)
ResetPwd(ctx context.Context, req *models.ResetPwdReq) error ResetPwd(ctx context.Context, req *models.ResetPwdReq) error
GetUser(ctx context.Context, req *models.GetUserReq) (user models.User, err error) GetUser(ctx context.Context, req *models.GetUserReq) (user models.User, err error)

View File

@ -158,9 +158,9 @@ func (u *userService) Modify(ctx context.Context, mInfo *models.ModifyInfo) erro
return u.repo.SaveUser(ctx, user) return u.repo.SaveUser(ctx, user)
} }
func (u *userService) Disable(ctx context.Context) error { func (u *userService) Disable(ctx context.Context, req *models.Enable) error {
// 获取操作用户 // 获取操作用户
session, err := contextUtil.GetSession(ctx) _, err := contextUtil.GetSession(ctx)
if err != nil { if err != nil {
return err return err
} }
@ -168,11 +168,11 @@ func (u *userService) Disable(ctx context.Context) error {
// todo 判断是否有权限 // todo 判断是否有权限
// 修改对应用户状态 // 修改对应用户状态
return u.repo.SetUserStatus(ctx, session.ID, models.DisableUserStatus) return u.repo.SetUserStatus(ctx, req.Id, models.DisableUserStatus)
} }
func (u *userService) Enable(ctx context.Context) error { func (u *userService) Enable(ctx context.Context, req *models.Enable) error {
session, err := contextUtil.GetSession(ctx) _, err := contextUtil.GetSession(ctx)
if err != nil { if err != nil {
return err return err
} }
@ -180,7 +180,7 @@ func (u *userService) Enable(ctx context.Context) error {
// todo 判断是否有权限 // todo 判断是否有权限
// 修改对应用户状态 // 修改对应用户状态
return u.repo.SetUserStatus(ctx, session.ID, models.EnableUserStatus) return u.repo.SetUserStatus(ctx, req.Id, models.EnableUserStatus)
} }
func (u *userService) Search(ctx context.Context, query *models.Query) ([]models.User, error) { func (u *userService) Search(ctx context.Context, query *models.Query) ([]models.User, error) {

View File

@ -7,7 +7,7 @@ import (
) )
var ( var (
sortMatch = regexp.MustCompile("^[a-zA-z0-9_]+") sortMatch = regexp.MustCompile("^[a-zA-z0-9_,]+")
) )
func tableName(fl validator.FieldLevel) bool { func tableName(fl validator.FieldLevel) bool {

View File

@ -37,7 +37,9 @@ func RegisterRoute(api *gin.RouterGroup) {
api.POST("/modify", ginUtil.WrapNoRsp(server.Modify)) api.POST("/modify", ginUtil.WrapNoRsp(server.Modify))
api.GET("/search", ginUtil.Wrap(server.Search)) api.GET("/search", ginUtil.Wrap(server.Search))
api.GET("/user", ginUtil.Wrap(server.GetUser)) api.GET("/user", ginUtil.Wrap(server.GetUser))
api.POST("/reset", ginUtil.Wrap(server.GetUser)) api.POST("/reset", ginUtil.WrapNoRsp(server.ResetPwd))
api.POST("/enable", ginUtil.WrapNoRsp(server.Enable))
api.POST("/disable", ginUtil.WrapNoRsp(server.Disable))
} }
func (u *UserServer) Add(ctx context.Context, req *models.AddInfo) (rsp proto.AddResponse, err error) { func (u *UserServer) Add(ctx context.Context, req *models.AddInfo) (rsp proto.AddResponse, err error) {
@ -73,15 +75,16 @@ func (u *UserServer) Modify(ctx context.Context, req *models.ModifyInfo) error {
return u.userService.Modify(ctx, req) return u.userService.Modify(ctx, req)
} }
func (u *UserServer) Disable(ctx context.Context) error { func (u *UserServer) Disable(ctx context.Context, req *models.Enable) error {
return u.userService.Disable(ctx) return u.userService.Disable(ctx, req)
} }
func (u *UserServer) Enable(ctx context.Context) error { func (u *UserServer) Enable(ctx context.Context, req *models.Enable) error {
return u.userService.Enable(ctx) return u.userService.Enable(ctx, req)
} }
func (u *UserServer) Search(ctx context.Context, query *models.Query) ([]models.User, error) { func (u *UserServer) Search(ctx context.Context, query *models.Query) ([]models.User, error) {
query.Default()
return u.userService.Search(ctx, query) return u.userService.Search(ctx, query)
} }