sys_api.go 4.6 KB
Newer Older
Mr.奇淼('s avatar
Mr.奇淼( 已提交
1
package v1
Mr.奇淼('s avatar
Mr.奇淼( 已提交
2 3

import (
4
	"gin-vue-admin/global"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
5
	"gin-vue-admin/model"
6
	"gin-vue-admin/model/request"
7
	"gin-vue-admin/model/response"
8
	"gin-vue-admin/service"
9
	"gin-vue-admin/utils"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
10
	"github.com/gin-gonic/gin"
11
	"go.uber.org/zap"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
12 13
)

14
// @Tags SysApi
Mr.奇淼('s avatar
Mr.奇淼( 已提交
15
// @Summary 创建基础api
Mr.奇淼('s avatar
Mr.奇淼( 已提交
16 17 18
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
19 20
// @Param data body model.SysApi true "api路径, api中文描述, api组, 方法"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"创建成功"}"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
21 22
// @Router /api/createApi [post]
func CreateApi(c *gin.Context) {
Mr.奇淼('s avatar
Mr.奇淼( 已提交
23
	var api model.SysApi
24
	_ = c.ShouldBindJSON(&api)
25 26
	if err := utils.Verify(api, utils.ApiVerify); err != nil {
		response.FailWithMessage(err.Error(), c)
27 28
		return
	}
S
songzhibin97 已提交
29
	if err := service.CreateApi(&api); err != nil {
30 31
		global.GVA_LOG.Error("创建失败!", zap.Any("err", err))
		response.FailWithMessage("创建失败", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
32
	} else {
33
		response.OkWithMessage("创建成功", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
34 35 36
	}
}

37
// @Tags SysApi
38
// @Summary 删除api
Mr.奇淼('s avatar
Mr.奇淼( 已提交
39 40 41
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
42 43
// @Param data body model.SysApi true "ID"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
44 45
// @Router /api/deleteApi [post]
func DeleteApi(c *gin.Context) {
46 47 48 49
	var api model.SysApi
	_ = c.ShouldBindJSON(&api)
	if err := utils.Verify(api.GVA_MODEL, utils.IdVerify); err != nil {
		response.FailWithMessage(err.Error(), c)
50 51
		return
	}
S
songzhibin97 已提交
52
	if err := service.DeleteApi(&api); err != nil {
53 54
		global.GVA_LOG.Error("删除失败!", zap.Any("err", err))
		response.FailWithMessage("删除失败", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
55
	} else {
56
		response.OkWithMessage("删除成功", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
57 58
	}
}
59

60
// @Tags SysApi
Mr.奇淼('s avatar
Mr.奇淼( 已提交
61
// @Summary 分页获取API列表
62 63 64
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
Mr.奇淼('s avatar
Mr.奇淼( 已提交
65
// @Param data body request.SearchApiParams true "分页获取API列表"
66
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
67 68
// @Router /api/getApiList [post]
func GetApiList(c *gin.Context) {
69 70 71 72
	var pageInfo request.SearchApiParams
	_ = c.ShouldBindJSON(&pageInfo)
	if err := utils.Verify(pageInfo.PageInfo, utils.PageInfoVerify); err != nil {
		response.FailWithMessage(err.Error(), c)
73 74
		return
	}
S
songzhibin97 已提交
75
	if err, list, total := service.GetAPIInfoList(&pageInfo.SysApi, &pageInfo.PageInfo, pageInfo.OrderKey, pageInfo.Desc); err != nil {
76 77
		global.GVA_LOG.Error("获取失败!", zap.Any("err", err))
		response.FailWithMessage("获取失败", c)
78
	} else {
79
		response.OkWithDetailed(response.PageResult{
Mr.奇淼('s avatar
Mr.奇淼( 已提交
80 81
			List:     list,
			Total:    total,
82 83 84
			Page:     pageInfo.Page,
			PageSize: pageInfo.PageSize,
		}, "获取成功", c)
85
	}
Mr.奇淼('s avatar
Mr.奇淼( 已提交
86
}
Mr.奇淼('s avatar
Mr.奇淼( 已提交
87

88
// @Tags SysApi
Mr.奇淼('s avatar
Mr.奇淼( 已提交
89 90 91 92
// @Summary 根据id获取api
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
Mr.奇淼('s avatar
Mr.奇淼( 已提交
93
// @Param data body request.GetById true "根据id获取api"
94
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
95 96
// @Router /api/getApiById [post]
func GetApiById(c *gin.Context) {
97
	var idInfo request.GetById
98
	_ = c.ShouldBindJSON(&idInfo)
99 100
	if err := utils.Verify(idInfo, utils.IdVerify); err != nil {
		response.FailWithMessage(err.Error(), c)
101 102
		return
	}
103
	err, api := service.GetApiById(idInfo.Id)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
104
	if err != nil {
m0_50812349's avatar
m0_50812349 已提交
105 106
		global.GVA_LOG.Error("获取失败!", zap.Any("err", err))
		response.FailWithMessage("获取失败", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
107
	} else {
108
		response.OkWithData(response.SysAPIResponse{Api: api}, c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
109 110 111
	}
}

112
// @Tags SysApi
Mr.奇淼('s avatar
Mr.奇淼( 已提交
113 114 115 116
// @Summary 创建基础api
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
117 118
// @Param data body model.SysApi true "api路径, api中文描述, api组, 方法"
// @Success 200 {string} string "{"success":true,"data":{},"msg":"修改成功"}"
R
rainyan 已提交
119 120
// @Router /api/updateApi [post]
func UpdateApi(c *gin.Context) {
Mr.奇淼('s avatar
Mr.奇淼( 已提交
121
	var api model.SysApi
122
	_ = c.ShouldBindJSON(&api)
123 124
	if err := utils.Verify(api, utils.ApiVerify); err != nil {
		response.FailWithMessage(err.Error(), c)
125 126
		return
	}
S
songzhibin97 已提交
127
	if err := service.UpdateApi(&api); err != nil {
128 129
		global.GVA_LOG.Error("修改失败!", zap.Any("err", err))
		response.FailWithMessage("修改失败", c)
130
	} else {
131
		response.OkWithMessage("修改成功", c)
132 133
	}
}
Mr.奇淼('s avatar
Mr.奇淼( 已提交
134

135
// @Tags SysApi
Mr.奇淼('s avatar
Mr.奇淼( 已提交
136 137 138 139
// @Summary 获取所有的Api 不分页
// @Security ApiKeyAuth
// @accept application/json
// @Produce application/json
140
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
Mr.奇淼('s avatar
Mr.奇淼( 已提交
141
// @Router /api/getAllApis [post]
142
func GetAllApis(c *gin.Context) {
143 144 145
	if err, apis := service.GetAllApis(); err != nil {
		global.GVA_LOG.Error("获取失败!", zap.Any("err", err))
		response.FailWithMessage("获取失败", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
146
	} else {
147
		response.OkWithDetailed(response.SysAPIListResponse{Apis: apis}, "获取成功", c)
Mr.奇淼('s avatar
Mr.奇淼( 已提交
148
	}
149
}