Commit 8033565d authored by 黄智's avatar 黄智

访问规则配置

parent 8067331a
......@@ -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:展示所有用户)
......
......@@ -47,6 +47,8 @@ func Load(r *gin.Engine, middleware ...gin.HandlerFunc) {
initDictRoute(r)
// 首选项配置相关路由
InitPreferenceConfigRouter(r)
// 初始化访问控制管理路由
InitAccessRuleRouter(r)
// 初始化指标配置路由
InitMetricConfigRouter(r)
// 初始化预警规则配置路由
......
......@@ -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) // 修改规则状态
}
}
......@@ -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) // 修改规则状态
//}
}
......@@ -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)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment