106 lines
2.4 KiB
Go
106 lines
2.4 KiB
Go
package app
|
|
|
|
import (
|
|
"git.echol.cn/loser/lckt/global"
|
|
"git.echol.cn/loser/lckt/model/app"
|
|
"git.echol.cn/loser/lckt/model/app/request"
|
|
r "git.echol.cn/loser/lckt/model/common/response"
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
type DomainApi struct{}
|
|
|
|
// Create 创建域名
|
|
func (d *DomainApi) Create(ctx *gin.Context) {
|
|
var p app.Domain
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("新建域名参数有误", zap.Error(err))
|
|
r.FailWithMessage("参数有误", ctx)
|
|
return
|
|
}
|
|
|
|
err := domainService.Create(p)
|
|
if err != nil {
|
|
r.FailWithMessage("创建域名失败", ctx)
|
|
return
|
|
}
|
|
|
|
r.OkWithMessage("创建域名成功", ctx)
|
|
|
|
}
|
|
|
|
// GetList 获取域名列表
|
|
func (d *DomainApi) GetList(ctx *gin.Context) {
|
|
var p request.GetDomainList
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("获取域名列表参数有误", zap.Error(err))
|
|
r.FailWithMessage("参数有误", ctx)
|
|
return
|
|
}
|
|
|
|
list, total, err := domainService.GetList(p)
|
|
if err != nil {
|
|
r.FailWithMessage("获取域名列表失败", ctx)
|
|
return
|
|
}
|
|
|
|
r.OkWithDetailed(r.PageResult{
|
|
List: list,
|
|
Total: total,
|
|
Page: p.Page,
|
|
PageSize: p.PageSize,
|
|
}, "获取域名列表成功", ctx)
|
|
}
|
|
|
|
// Update 更新域名
|
|
func (d *DomainApi) Update(ctx *gin.Context) {
|
|
var p app.Domain
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("更新域名参数有误", zap.Error(err))
|
|
r.FailWithMessage("参数有误", ctx)
|
|
return
|
|
}
|
|
|
|
err := domainService.Update(p)
|
|
if err != nil {
|
|
r.FailWithMessage("更新域名失败", ctx)
|
|
return
|
|
}
|
|
r.OkWithMessage("更新域名成功", ctx)
|
|
}
|
|
|
|
// Delete 删除域名
|
|
func (d *DomainApi) Delete(ctx *gin.Context) {
|
|
var p app.Domain
|
|
if err := ctx.ShouldBind(&p); err != nil {
|
|
global.GVA_LOG.Error("删除域名参数有误", zap.Error(err))
|
|
r.FailWithMessage("参数有误", ctx)
|
|
return
|
|
}
|
|
|
|
err := domainService.Delete(p.ID)
|
|
if err != nil {
|
|
r.FailWithMessage("删除域名失败", ctx)
|
|
return
|
|
}
|
|
r.OkWithMessage("删除域名成功", ctx)
|
|
}
|
|
|
|
// GetByID 根据ID获取域名
|
|
func (d *DomainApi) GetByID(ctx *gin.Context) {
|
|
id := ctx.Param("id")
|
|
if id == "" {
|
|
global.GVA_LOG.Error("获取域名详情参数错误: ID不能为空")
|
|
r.FailWithMessage("获取域名详情参数错误: ID不能为空", ctx)
|
|
return
|
|
}
|
|
|
|
domain, err := domainService.GetByID(id)
|
|
if err != nil {
|
|
r.FailWithMessage("获取域名失败", ctx)
|
|
return
|
|
}
|
|
r.OkWithDetailed(domain, "获取域名成功", ctx)
|
|
}
|