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.
100 lines
2.4 KiB
100 lines
2.4 KiB
package setting
|
|
|
|
import (
|
|
"base/app/common"
|
|
"base/app/lib/bean"
|
|
"base/app/logic/manage/setting"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
type Role struct {
|
|
}
|
|
type argsRoleLists struct {
|
|
setting.RoleListsSearch
|
|
bean.Page
|
|
}
|
|
|
|
// Lists @Title 角色列表
|
|
func (r *Role) Lists(c *gin.Context) {
|
|
args := argsRoleLists{}
|
|
if err := c.ShouldBind(&args); err != nil {
|
|
bean.Response.ResultFail(c, 10001, common.GetVerErr(err))
|
|
return
|
|
}
|
|
lists, total := setting.RoleLogic.Lists(args.RoleListsSearch, args.Page)
|
|
bean.Response.ResultSuc(c, "操作成功", bean.ResultLists{
|
|
List: lists,
|
|
Total: total,
|
|
})
|
|
}
|
|
|
|
// Add @Title 添加角色
|
|
func (r *Role) Add(c *gin.Context) {
|
|
args := setting.RoleAdd{}
|
|
if err := c.ShouldBind(&args); err != nil {
|
|
bean.Response.ResultFail(c, 10001, common.GetVerErr(err))
|
|
return
|
|
}
|
|
if err := setting.RoleLogic.Add(args); err != nil {
|
|
bean.Response.ResultFail(c, 10002, err.Error())
|
|
return
|
|
}
|
|
bean.Response.ResultSuc(c, "操作成功", nil)
|
|
}
|
|
|
|
type argsRoleInfo struct {
|
|
RoleId uint `binding:"required" label:"角色id"`
|
|
}
|
|
|
|
// Info @Title 角色详情
|
|
func (r *Role) Info(c *gin.Context) {
|
|
args := argsRoleInfo{}
|
|
if err := c.ShouldBind(&args); err != nil {
|
|
bean.Response.ResultFail(c, 10001, common.GetVerErr(err))
|
|
return
|
|
}
|
|
info, err := setting.RoleLogic.Info(args.RoleId)
|
|
if err != nil {
|
|
bean.Response.ResultFail(c, 10002, err.Error())
|
|
return
|
|
}
|
|
bean.Response.ResultSuc(c, "操作成功", info)
|
|
}
|
|
|
|
// Edit @Title 编辑角色
|
|
func (r *Role) Edit(c *gin.Context) {
|
|
args := setting.RoleEdit{}
|
|
if err := c.ShouldBind(&args); err != nil {
|
|
bean.Response.ResultFail(c, 10001, common.GetVerErr(err))
|
|
return
|
|
}
|
|
if err := setting.RoleLogic.Edit(args); err != nil {
|
|
bean.Response.ResultFail(c, 10002, err.Error())
|
|
return
|
|
}
|
|
bean.Response.ResultSuc(c, "操作成功", nil)
|
|
}
|
|
|
|
type argsRoleDelete struct {
|
|
RoleId uint `binding:"required" label:"角色"`
|
|
}
|
|
|
|
// Delete @Title 删除角色
|
|
func (r *Role) Delete(c *gin.Context) {
|
|
args := argsRoleDelete{}
|
|
if err := c.ShouldBind(&args); err != nil {
|
|
bean.Response.ResultFail(c, 10001, common.GetVerErr(err))
|
|
return
|
|
}
|
|
if err := setting.RoleLogic.Delete(args.RoleId); err != nil {
|
|
bean.Response.ResultFail(c, 10002, err.Error())
|
|
return
|
|
}
|
|
bean.Response.ResultSuc(c, "操作成功", nil)
|
|
}
|
|
|
|
// Select @Title 角色筛选
|
|
func (r *Role) Select(c *gin.Context) {
|
|
bean.Response.ResultSuc(c, "操作成功", setting.RoleLogic.Select())
|
|
}
|