gofiber-study/controller/user/user.go

49 lines
1.2 KiB
Go
Raw Normal View History

2022-10-04 14:59:46 +08:00
package user
import (
"github.com/gofiber/fiber/v2"
"gofiber.study.skcks.cn/common/errorx"
"gofiber.study.skcks.cn/common/response"
2022-10-06 16:41:32 +08:00
"gofiber.study.skcks.cn/controller/types"
2022-10-04 14:59:46 +08:00
"gofiber.study.skcks.cn/services/user"
)
2022-10-06 16:41:32 +08:00
type Controller struct {
*types.Controller
}
2022-10-06 16:58:09 +08:00
func (c *Controller) GetRouter() fiber.Router {
return c.Router
2022-10-06 16:41:32 +08:00
}
2022-10-06 16:58:09 +08:00
func NewController(app *fiber.App) *Controller {
return &Controller{
Controller: types.NewController(app, "/user"),
}
2022-10-04 14:59:46 +08:00
}
2022-10-06 16:58:09 +08:00
// GetByAccount 根据 账号 获取用户信息
2022-10-04 14:59:46 +08:00
//
// @Summary 根据 账号 获取用户信息
// @Description 根据 账号 获取用户信息
// @Tags User
// @Accept json
// @Produce json
// @Param account query string true "账号名称"
// @Success 200 {object} response.Response{data=models.User}
// @Failure default {object} errorx.CodeErrorResponse
// @Router /user/account [get]
2022-10-05 14:47:07 +08:00
// @Security Token
2022-10-06 16:58:09 +08:00
func (c *Controller) GetByAccount() {
c.Router.Get("/account", func(ctx *fiber.Ctx) error {
account := ctx.Query("account")
2022-10-04 14:59:46 +08:00
u, err := user.Services.GetUserByAccount(account)
2022-10-06 16:58:09 +08:00
if err != nil {
return ctx.JSON(errorx.NewDefaultError(err.Error()))
}
2022-10-04 14:59:46 +08:00
2022-10-06 16:58:09 +08:00
return ctx.JSON(response.NewResponse(u))
})
2022-10-04 14:59:46 +08:00
}