修改返回值结构,新增角色菜单接口

This commit is contained in:
wucongxing 2023-06-12 09:47:31 +08:00
parent b9b5d726e7
commit 7e4c9b4a30
7 changed files with 35 additions and 22 deletions

View File

@ -3,4 +3,5 @@ package controller
// Api api接口 // Api api接口
type Api struct { type Api struct {
Basic // 基础数据 Basic // 基础数据
Role // 角色数据
} }

View File

@ -40,12 +40,12 @@ func (b *Basic) Login(c *gin.Context) {
} }
// 验证验证码 // 验证验证码
// isValid := utils.VerifyCaptcha(login) isValid := utils.VerifyCaptcha(login)
// if !isValid { if !isValid {
// // 验证码错误 // 验证码错误
// responses.FailWithMessage("验证码错误", c) responses.FailWithMessage("验证码错误", c)
// return return
// } }
// 登陆 // 登陆
Basic := service.Basic{} Basic := service.Basic{}

10
api/controller/role.go Normal file
View File

@ -0,0 +1,10 @@
package controller
import "github.com/gin-gonic/gin"
type Role struct{}
// GetRoleMenuList 获取角色菜单列表
func (r *Role) GetRoleMenuList(c *gin.Context) {
}

View File

@ -7,7 +7,7 @@ type Basic struct {
// Login 登陆 // Login 登陆
type Login struct { type Login struct {
Access string `json:"access" form:"access" validate:"required" label:"用户名"` // 用户名 Access string `json:"access" form:"access" validate:"required" label:"用户名"` // 用户名
Password string `json:"password" form:"password" validate:"required"` // 密码 Password string `json:"password" form:"password" validate:"required" label:"密码"` // 密码
Captcha string `json:"captcha" form:"captcha" validate:"required"` // 验证码 Captcha string `json:"captcha" form:"captcha" validate:"required" label:"验证码"` // 验证码
CaptchaId string `json:"captchaId" form:"captchaId" validate:"required"` // 验证码ID CaptchaId string `json:"captchaId" form:"captchaId" validate:"required"` // 验证码ID
} }

View File

@ -1,4 +1,4 @@
package responses package basicResponse
import "hospital-admin-api/config" import "hospital-admin-api/config"

View File

@ -68,9 +68,11 @@ func publicRouter(r *gin.Engine, api controller.Api) {
// privateRouter 私有路由 // privateRouter 私有路由
func privateRouter(r *gin.Engine, api controller.Api) { func privateRouter(r *gin.Engine, api controller.Api) {
adminGroup := r.Group("/admin") adminGroup := r.Group("/admin")
base1Group := adminGroup.Group("/basic")
// 角色
base1Group := adminGroup.Group("/role")
{ {
// 验证码 // 获取角色菜单列表
base1Group.GET("captcha-test/:id", api.Basic.GetCaptchaTest) base1Group.GET("menu", api.Role.GetRoleMenuList)
} }
} }

View File

@ -6,19 +6,19 @@ import (
"errors" "errors"
"hospital-admin-api/api/dao" "hospital-admin-api/api/dao"
"hospital-admin-api/api/requests" "hospital-admin-api/api/requests"
"hospital-admin-api/api/responses" "hospital-admin-api/api/responses/basicResponse"
"hospital-admin-api/utils" "hospital-admin-api/utils"
) )
type Basic struct{} type Basic struct{}
// Login 登陆 // Login 登陆
func (b *Basic) Login(login requests.Login) (responses.Login, error) { func (b *Basic) Login(login requests.Login) (basicResponse.Login, error) {
// 获取用户信息 // 获取用户信息
AdminUserDao := dao.AdminUser{} AdminUserDao := dao.AdminUser{}
adminUser, err := AdminUserDao.GetAdminUserFirstByAccess(login.Access) adminUser, err := AdminUserDao.GetAdminUserFirstByAccess(login.Access)
if err != nil || adminUser.UserID == 0 { if err != nil || adminUser.UserID == 0 {
return responses.Login{}, errors.New("用户名或密码错误") return basicResponse.Login{}, errors.New("用户名或密码错误")
} }
// 检测用户密码 // 检测用户密码
@ -27,16 +27,16 @@ func (b *Basic) Login(login requests.Login) (responses.Login, error) {
passwordString := hex.EncodeToString(password[:]) passwordString := hex.EncodeToString(password[:])
if passwordString != adminUser.Password { if passwordString != adminUser.Password {
return responses.Login{}, errors.New("用户名或密码错误") return basicResponse.Login{}, errors.New("用户名或密码错误")
} }
// 检测用户状态 // 检测用户状态
if adminUser.IsDeleted == 1 { if adminUser.IsDeleted == 1 {
return responses.Login{}, errors.New("非法用户") return basicResponse.Login{}, errors.New("非法用户")
} }
if adminUser.IsDisabled == 1 { if adminUser.IsDisabled == 1 {
return responses.Login{}, errors.New("您的账号已被禁用,请联系管理员处理") return basicResponse.Login{}, errors.New("您的账号已被禁用,请联系管理员处理")
} }
token := &utils.Token{ token := &utils.Token{
@ -48,11 +48,11 @@ func (b *Basic) Login(login requests.Login) (responses.Login, error) {
jwt, err := token.NewJWT() jwt, err := token.NewJWT()
if err != nil { if err != nil {
return responses.Login{}, errors.New("登陆失败") return basicResponse.Login{}, errors.New("登陆失败")
} }
// 生成jwt // 生成jwt
result := responses.Login{ result := basicResponse.Login{
UserId: adminUser.UserID, UserId: adminUser.UserID,
NickName: adminUser.NickName, NickName: adminUser.NickName,
Avatar: adminUser.Avatar, Avatar: adminUser.Avatar,