You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.7 KiB
54 lines
1.7 KiB
package v1
|
|
|
|
import (
|
|
"gin-vue-admin/global"
|
|
"gin-vue-admin/model/request"
|
|
"gin-vue-admin/model/response"
|
|
"gin-vue-admin/service"
|
|
"gin-vue-admin/utils"
|
|
"github.com/gin-gonic/gin"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
// @Tags Casbin
|
|
// @Summary 更新角色api权限
|
|
// @Security ApiKeyAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body request.CasbinInReceive true "权限id, 权限模型列表"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}"
|
|
// @Router /casbin/UpdateCasbin [post]
|
|
func UpdateCasbin(c *gin.Context) {
|
|
var cmr request.CasbinInReceive
|
|
_ = c.ShouldBindJSON(&cmr)
|
|
if err := utils.Verify(cmr, utils.AuthorityIdVerify); err != nil {
|
|
response.FailWithMessage(err.Error(), c)
|
|
return
|
|
}
|
|
if err := service.UpdateCasbin(cmr.AuthorityId, cmr.CasbinInfos); err != nil {
|
|
global.GVA_LOG.Error("更新失败!", zap.Any("err", err))
|
|
response.FailWithMessage("更新失败", c)
|
|
} else {
|
|
response.OkWithMessage("更新成功", c)
|
|
}
|
|
}
|
|
|
|
// @Tags Casbin
|
|
// @Summary 获取权限列表
|
|
// @Security ApiKeyAuth
|
|
// @accept application/json
|
|
// @Produce application/json
|
|
// @Param data body request.CasbinInReceive true "权限id, 权限模型列表"
|
|
// @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
|
|
// @Router /casbin/getPolicyPathByAuthorityId [post]
|
|
func GetPolicyPathByAuthorityId(c *gin.Context) {
|
|
var casbin request.CasbinInReceive
|
|
_ = c.ShouldBindJSON(&casbin)
|
|
if err := utils.Verify(casbin, utils.AuthorityIdVerify); err != nil {
|
|
response.FailWithMessage(err.Error(), c)
|
|
return
|
|
}
|
|
paths := service.GetPolicyPathByAuthorityId(casbin.AuthorityId)
|
|
response.OkWithDetailed(response.PolicyPathResponse{Paths: paths}, "获取成功", c)
|
|
}
|
|
|