Files
ArmedPolice/app/api/user.go
2021-11-04 16:44:42 +08:00

97 lines
2.4 KiB
Go

package api
import (
"ArmedPolice/app/controller/user"
"ArmedPolice/app/service"
"github.com/gin-gonic/gin"
)
type User struct{}
/**
* @apiDefine User 用户管理
*/
/**
* @api {get} /api/v1/user/info 用户信息
* @apiVersion 1.0.0
* @apiName UserInfo
* @apiGroup User
*
* @apiHeader {string} x-token token
*
* @apiSuccess (200) {Number} code 成功响应状态码!
* @apiSuccess (200) {String} msg 成功提示
* @apiSuccess (200) {Json} data 数据信息
* @apiSuccess (200) {String} data.name 用户名
* @apiSuccess (200) {String} data.avatar 用户头像
*
* @apiSuccessExample {json} Success response:
* HTTPS 200 OK
* {
* "code": 200
* "msg": "ok"
* "data": {
* "name": "商挈智能",
* "avatar": "",
* }
* }
*/
func (*User) Info(c *gin.Context) {
data := user.NewInstance()(getSession()(c).(*service.Session)).Info()
APIResponse(nil, data)(c)
}
func (*User) Menu(c *gin.Context) {
data, err := user.NewMenu()(getSession()(c).(*service.Session)).Menu()
APIResponse(err, data)(c)
}
func (*User) List(c *gin.Context) {
form := &struct {
Name string `json:"name" form:"name"`
Mobile string `json:"mobile" form:"mobile"`
TenantID uint64 `json:"tenant_id" form:"tenant_id"`
PageForm
}{}
if err := bind(form)(c); err != nil {
APIFailure(err.(error))(c)
return
}
data, err := user.NewInstance()(getSession()(c).(*service.Session)).List(form.Name, form.Mobile, form.TenantID,
form.Page, form.PageSize)
APIResponse(err, data)(c)
}
func (*User) Add(c *gin.Context) {
form := &struct {
Name string `json:"name" form:"name"`
Mobile string `json:"mobile" form:"mobile"`
TenantID uint64 `json:"tenant_id" form:"tenant_id"`
PageForm
}{}
if err := bind(form)(c); err != nil {
APIFailure(err.(error))(c)
return
}
data, err := user.NewInstance()(getSession()(c).(*service.Session)).List(form.Name, form.Mobile, form.TenantID,
form.Page, form.PageSize)
APIResponse(err, data)(c)
}
func (*User) Edit(c *gin.Context) {
form := &struct {
Name string `json:"name" form:"name"`
Mobile string `json:"mobile" form:"mobile"`
TenantID uint64 `json:"tenant_id" form:"tenant_id"`
PageForm
}{}
if err := bind(form)(c); err != nil {
APIFailure(err.(error))(c)
return
}
data, err := user.NewInstance()(getSession()(c).(*service.Session)).List(form.Name, form.Mobile, form.TenantID,
form.Page, form.PageSize)
APIResponse(err, data)(c)
}