acme-mana-server-go/handler/acme_user.go
ZhuoQinghui 61a17cfa5e feat(user): 新增 acme 用户相关功能
- 添加 acme_user 模型和相关数据库迁移- 实现 acme 用户的 CRUD 功能
- 新增 acme 用户相关的 handler 和 service
-优化 domain 模型,移除冗余字段
- 更新全局异常处理,增加日志记录
2025-05-05 12:24:09 +08:00

73 lines
1.5 KiB
Go

package handler
import (
"acme-mana-server-go/model"
"acme-mana-server-go/service"
"acme-mana-server-go/vo"
"github.com/gin-gonic/gin"
"strconv"
)
var acmeUserService = &service.AcmeUserService{}
type AcmeUserHandler struct {
}
func (a *AcmeUserHandler) Register(r *gin.RouterGroup) {
group := r.Group("/acme_user")
group.GET("/", a.List)
group.POST("/", a.Add)
group.GET("/:id", a.Get)
group.DELETE("/:id", a.Delete)
group.POST("/page", a.Page)
}
func (a *AcmeUserHandler) List(c *gin.Context) {
acmeUsers := acmeUserService.List()
c.JSON(200, vo.Success(acmeUsers))
}
func (a *AcmeUserHandler) Add(c *gin.Context) {
acmeUser := &model.AcmeUser{}
err := c.BindJSON(acmeUser)
if err != nil {
panic(err)
}
acmeUser = acmeUserService.Add(acmeUser)
c.JSON(200, vo.Success(acmeUser))
}
func (a *AcmeUserHandler) Get(c *gin.Context) {
idStr := c.Param("id")
id, err := strconv.Atoi(idStr)
if err != nil {
panic(err)
}
acmeUser := acmeUserService.Get(id)
c.JSON(200, vo.Success(acmeUser))
}
func (a *AcmeUserHandler) Delete(c *gin.Context) {
idStr := c.Param("id")
id, err := strconv.Atoi(idStr)
if err != nil {
panic(err)
}
acmeUserService.Delete(id)
c.JSON(200, vo.Success(""))
}
func (a *AcmeUserHandler) Page(c *gin.Context) {
req := &vo.AcmeUserPageReq{}
err := c.BindJSON(req)
if err != nil {
panic(err)
}
total, acmeUsers := acmeUserService.Page(req)
result := vo.PageResult{
Total: total,
List: acmeUsers,
}
c.JSON(200, vo.Success(&result))
}