diff --git a/src/bean/vo/request/system_access_rule.go b/src/bean/vo/request/system_access_rule.go index 71053c7d68e67001941e2f4b0f8279108fb8de1b..ee1716db1f704e876135fe077da26e77335367ee 100644 --- a/src/bean/vo/request/system_access_rule.go +++ b/src/bean/vo/request/system_access_rule.go @@ -37,8 +37,8 @@ type ListAccessRuleReq struct { type ListRuleUserReq struct { Search string `json:"search" form:"search"` // 关键词搜索 Pagination - Id int `json:"id" form:"id"` // 账号 - IsAdmin int `json:"isAdmin" form:"isAdmin"` // 用户类型(1.业务系统账号 2.组织管理员账号 3.平台用户账号 4.超级管理员) + Id int `json:"id" form:"id"` // 账号 + //IsAdmin int `json:"isAdmin" form:"isAdmin"` // 用户类型(1.业务系统账号 2.组织管理员账号 3.平台用户账号 4.超级管理员) //Name string `json:"name" form:"name"` // 所属组织 OrganizationId string `json:"organizationId" form:"organizationId"` // 组织ID Disp int `json:"disp" form:"disp"` // 展示维度(0:展示访问规则已选用户,1:展示所有用户) diff --git a/src/router/router.go b/src/router/router.go index 8853f88fcea44566573c98cf82962892e6103ae6..950674253000ee392883d4dbaf2ea84208970a21 100644 --- a/src/router/router.go +++ b/src/router/router.go @@ -47,6 +47,8 @@ func Load(r *gin.Engine, middleware ...gin.HandlerFunc) { initDictRoute(r) // 首选项配置相关路由 InitPreferenceConfigRouter(r) + // 初始化访问控制管理路由 + InitAccessRuleRouter(r) // 初始化指标配置路由 InitMetricConfigRouter(r) // 初始化预警规则配置路由 diff --git a/src/router/system_access_rule.go b/src/router/system_access_rule.go index 29e16cec28e80a0ea187cbbb799ae9ae61d9a890..537bd93decf4272b919798482c7c8c7cc2f4cd48 100644 --- a/src/router/system_access_rule.go +++ b/src/router/system_access_rule.go @@ -9,28 +9,16 @@ import ( "gitlab.wodcloud.com/smart-operation/so-operation-api/src/router/middleware/header" ) -// 初始化配置管理路由 +// 初始化访问控制管理路由 func InitAccessRuleRouter(e *gin.Engine) { - sys := e.Group(fmt.Sprintf("%s/sysOptions", conf.Options.Prefix), header.SetContext) - { - sys.GET("", controller.GetSystemOptions) // 获取系统首选项信息 - sys.POST("licenseOpts", controller.SetLicenseOptions) // 设置授权信息 - sys.POST("loginPageOpts", controller.SetLoginPageOptions) // 设置授权信息 - sys.POST("safeOpts", controller.SetSafeOptions) // 设置安全选项 - sys.POST("loginOpts", controller.SetLoginOptions) // 设置登录选项 - sys.GET("checkLicense", controller.CheckLicense) // 校验license是否有效 - sys.POST("reStartConfig", controller.ReStartConfig) // 一键还原受限 - sys.POST("getLicenseInfo", controller.GetLicenseInfo) // 获取license信息 - } - - rule := e.Group(fmt.Sprintf("%s/accessRole", conf.Options.Prefix), header.SetContext) + rule := e.Group(fmt.Sprintf("%s/accessRule", conf.Options.Prefix), header.SetContext) { rule.POST("addAccessRule", controller.AddAccessRule, header.AddLogMiddleware("访问规则管理", "/addAccessRule", constant.OpTypeIntMap[constant.Add])) // 新增访问规则 rule.PUT("updateAccessRule", controller.UpdateAccessRule, header.AddLogMiddleware("访问规则管理", "/updateAccessRule", constant.OpTypeIntMap[constant.Edit])) // 编辑访问规则 rule.DELETE("delAccessRule", controller.DelAccessRule, header.AddLogMiddleware("访问规则管理", "/delAccessRule", constant.OpTypeIntMap[constant.AllDelete])) // 删除访问规则 rule.GET("listAccessRule", controller.ListAccessRule, header.AddLogMiddleware("访问规则管理", "/listAccessRule", constant.OpTypeIntMap[constant.Find])) // 查询访问规则列表 - rule.GET("listRuleUser", controller.ListRuleUser) // 查询用户详情列表 - rule.PUT("updateState", controller.UpdateState) // 修改规则状态 + rule.GET("listRuleUser", controller.ListRuleUser) // 查询用户详情列表 + rule.PUT("updateState", controller.UpdateState) // 修改规则状态 } } diff --git a/src/router/systempreferencerouter.go b/src/router/systempreferencerouter.go index 86a48cce64e8c8c313771acdf8436b34ee90293a..b1ca51b18e7faefc210bf2ed6cd4eebe3196f3cb 100644 --- a/src/router/systempreferencerouter.go +++ b/src/router/systempreferencerouter.go @@ -21,15 +21,4 @@ func InitPreferenceConfigRouter(e *gin.Engine) { sys.POST("reStartConfig", controller.ReStartConfig) // 一键还原受限 sys.POST("getLicenseInfo", controller.GetLicenseInfo) // 获取license信息 } - - //rule := v5.Group("/accessRule", header.SetUserToContext) - //{ - // rule.POST("addAccessRule", controller.AddAccessRule, log.AddLogMiddleware("访问规则管理", "/addAccessRule", constant.OpTypeIntMap[constant.Add])) // 新增访问规则 - // rule.PUT("updateAccessRule", controller.UpdateAccessRule, log.AddLogMiddleware("访问规则管理", "/updateAccessRule", constant.OpTypeIntMap[constant.Edit])) // 编辑访问规则 - // rule.DELETE("delAccessRule", controller.DelAccessRule, log.AddLogMiddleware("访问规则管理", "/delAccessRule", constant.OpTypeIntMap[constant.AllDelete])) // 删除访问规则 - // rule.GET("listAccessRule", controller.ListAccessRule, log.AddLogMiddleware("访问规则管理", "/listAccessRule", constant.OpTypeIntMap[constant.Find])) // 查询访问规则列表 - // rule.GET("listRuleUser", controller.ListRuleUser) // 查询用户详情列表 - // rule.PUT("updateState", controller.UpdateState) // 修改规则状态 - //} - } diff --git a/src/service/system_access_rule.go b/src/service/system_access_rule.go index af557c4d9edc1a3691b2c80042c0154127df8aad..3398de20831a5fc1b7df97304c79aa5728a9a9b7 100644 --- a/src/service/system_access_rule.go +++ b/src/service/system_access_rule.go @@ -237,27 +237,25 @@ func ListRuleUser(params *request.ListRuleUserReq) ([]response.SystemUserAccessR if params.Disp == 0 { //展示已选用户 - modelObj.Join("INNER", "\"system_user\" as su", "sru.system_id = su.system_id"). + modelObj.Join("INNER", "\"system_user\" as su", "sru.user_id = su.id"). Join("INNER", "system_organization as so", "su.organization_id = so.organization_id"). - Select("su.system_account,su.is_admin,su.phone,so.name,sru.system_id,0 as selected") + Select("su.system_account,su.phone,so.name,sru.user_id,0 as selected") modelObj.Where("sar.id = ?", params.Id) } else if params.Disp == 1 { //展示所有用户 - modelObj.Join("RIGHT", "\"system_user\" as su", "sru.system_id = su.system_id"). + modelObj.Join("RIGHT", "\"system_user\" as su", "sru.user_id = su.id"). Join("RIGHT", "system_organization as so", "su.organization_id = so.organization_id"). - Select("su.system_id,su.system_account,su.is_admin,su.phone,so.name," + fmt.Sprintf("( CASE WHEN sar.ID = %v THEN 1 ELSE 0 END ) AS selected", params.Id)) + Select("su.id as user_id,su.system_account,su.phone,so.name," + fmt.Sprintf("( CASE WHEN sar.ID = %v THEN 1 ELSE 0 END ) AS selected", params.Id)) } modelObj.Where("so.is_deleted = 0 and su.is_deleted = 0") if params.Search != "" { keyword := util.SpecialEscape(params.Search) - modelObj.Where("su.system_account ilike ? or su.phone ilike ?", "%"+keyword+"%", "%"+keyword+"%") - } - if params.IsAdmin != 0 { - modelObj.Where("su.is_admin = ?", params.IsAdmin) + modelObj.Where("su.system_account like ? or su.phone like ?", "%"+keyword+"%", "%"+keyword+"%") } + if params.OrganizationId != "" { modelObj.Where("so.organization_id = ?", params.OrganizationId) }