62 lines
1.4 KiB
Go
62 lines
1.4 KiB
Go
package controller
|
|
|
|
import (
|
|
"net/http"
|
|
"strings"
|
|
"twin-api/app/admin/request"
|
|
"twin-api/app/admin/service"
|
|
"twin-api/base/config"
|
|
|
|
"git.u8t.cn/open/go-server/session"
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/spf13/cast"
|
|
)
|
|
|
|
type Pkg struct{}
|
|
|
|
func (pkg *Pkg) Query(ctx *gin.Context) {
|
|
var req request.PkgGet
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
panic(config.ErrParam.New().Append(err))
|
|
}
|
|
|
|
count, res, err := service.NewPkg().Query(&req)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
ctx.JSON(http.StatusOK, session.NewListRsp(count, res))
|
|
}
|
|
|
|
func (pkg *Pkg) Create(ctx *gin.Context) {
|
|
var req request.PkgCreate
|
|
if err := ctx.ShouldBindJSON(&req); err != nil {
|
|
panic(config.ErrParam.New().Append(err))
|
|
}
|
|
if err := service.NewPkg().Create(&req); err != nil {
|
|
panic(err)
|
|
}
|
|
ctx.JSON(http.StatusOK, session.NewRspOk())
|
|
}
|
|
|
|
func (pkg *Pkg) Update(ctx *gin.Context) {
|
|
var req request.PkgPut
|
|
if err := ctx.ShouldBindJSON(&req); err != nil {
|
|
panic(config.ErrParam.New().Append(err))
|
|
}
|
|
if err := service.NewPkg().Update(&req); err != nil {
|
|
panic(err)
|
|
}
|
|
ctx.JSON(http.StatusOK, session.NewRspOk())
|
|
}
|
|
|
|
func (pkg *Pkg) Delete(ctx *gin.Context) {
|
|
var req request.PkgDelete
|
|
if err := ctx.ShouldBind(&req); err != nil {
|
|
panic(config.ErrParam.New().Append(err))
|
|
}
|
|
if err := service.NewPkg().Delete(cast.ToInt64(strings.TrimSpace(req.Id))); err != nil {
|
|
panic(err)
|
|
}
|
|
ctx.JSON(http.StatusOK, session.NewRspOk())
|
|
}
|