2021-11-11 15:56:02 +08:00
|
|
|
package router
|
2021-06-07 17:22:07 +08:00
|
|
|
|
|
|
|
|
import (
|
2022-06-02 17:41:11 +08:00
|
|
|
"mayfly-go/internal/sys/api"
|
2024-01-21 22:52:20 +08:00
|
|
|
"mayfly-go/pkg/biz"
|
|
|
|
|
"mayfly-go/pkg/ioc"
|
2023-01-14 16:29:52 +08:00
|
|
|
"mayfly-go/pkg/req"
|
2021-06-07 17:22:07 +08:00
|
|
|
|
|
|
|
|
"github.com/gin-gonic/gin"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func InitAccountRouter(router *gin.RouterGroup) {
|
|
|
|
|
account := router.Group("sys/accounts")
|
2024-01-21 22:52:20 +08:00
|
|
|
a := new(api.Account)
|
|
|
|
|
biz.ErrIsNil(ioc.Inject(a))
|
2023-07-08 20:05:55 +08:00
|
|
|
|
|
|
|
|
addAccountPermission := req.NewPermission("account:add")
|
|
|
|
|
|
|
|
|
|
reqs := [...]*req.Conf{
|
2023-06-17 15:15:03 +08:00
|
|
|
|
2023-04-13 20:11:22 +08:00
|
|
|
// 获取个人账号的权限资源信息
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet("/permissions", a.GetPermissions),
|
|
|
|
|
|
|
|
|
|
req.NewPost("/change-pwd", a.ChangePassword).DontNeedToken().Log(req.NewLogSave("用户修改密码")),
|
2022-07-18 20:36:31 +08:00
|
|
|
|
2021-09-11 14:04:09 +08:00
|
|
|
// 获取个人账号信息
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet("/self", a.AccountInfo),
|
2021-09-11 14:04:09 +08:00
|
|
|
|
|
|
|
|
// 更新个人账号信息
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewPut("/self", a.UpdateAccount),
|
2021-09-11 14:04:09 +08:00
|
|
|
|
|
|
|
|
/** 后台管理接口 **/
|
|
|
|
|
|
2021-06-07 17:22:07 +08:00
|
|
|
// 获取所有用户列表
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet("", a.Accounts),
|
|
|
|
|
|
2024-02-29 22:12:50 +08:00
|
|
|
// 获取用户列表信息(只包含最基础信息)
|
|
|
|
|
req.NewGet("/simple", a.SimpleAccounts),
|
|
|
|
|
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewPost("", a.SaveAccount).Log(req.NewLogSave("保存账号信息")).RequiredPermission(addAccountPermission),
|
|
|
|
|
|
|
|
|
|
req.NewPut("change-status/:id/:status", a.ChangeStatus).Log(req.NewLogSave("修改账号状态")).RequiredPermission(addAccountPermission),
|
|
|
|
|
|
|
|
|
|
req.NewPut(":id/reset-otp", a.ResetOtpSecret).Log(req.NewLogSave("重置OTP密钥")).RequiredPermission(addAccountPermission),
|
|
|
|
|
|
|
|
|
|
req.NewDelete(":id", a.DeleteAccount).Log(req.NewLogSave("删除账号")).RequiredPermissionCode("account:del"),
|
2021-07-28 18:03:19 +08:00
|
|
|
|
2023-12-18 22:39:32 +08:00
|
|
|
// 关联用户角色
|
|
|
|
|
req.NewPost("/roles", a.RelateRole).Log(req.NewLogSave("关联用户角色")).RequiredPermissionCode("account:saveRoles"),
|
2021-06-07 17:22:07 +08:00
|
|
|
|
|
|
|
|
// 获取用户角色
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet(":id/roles", a.AccountRoles),
|
2021-06-07 17:22:07 +08:00
|
|
|
|
|
|
|
|
// 获取用户资源列表
|
2023-07-08 20:05:55 +08:00
|
|
|
req.NewGet(":id/resources", a.AccountResources),
|
2021-06-07 17:22:07 +08:00
|
|
|
}
|
2023-07-08 20:05:55 +08:00
|
|
|
|
|
|
|
|
req.BatchSetGroup(account, reqs[:])
|
2021-06-07 17:22:07 +08:00
|
|
|
}
|