Commit 6ece8975 authored by 魏灿's avatar 魏灿

Merge remote-tracking branch 'origin/dev' into dev

parents 3a78e176 f2cdf1ec
package entity package entity
import ( import (
"time" "gitlab.wodcloud.com/smart-operation/so-operation-api/src/pkg/beagle/jsontime"
) )
// SystemRole 系统角色 // SystemRole 系统角色
type SystemRole struct { type SystemRole struct {
Id int64 `json:"id" xorm:"pk autoincr"` // id Id int64 `json:"id" xorm:"pk autoincr"` // id
RoleName string `json:"role_name"` // 角色名称 RoleName string `json:"role_name"` // 角色名称
RoleDesc string `json:"role_desc"` // 角色描述 RoleDesc string `json:"role_desc"` // 角色描述
State int `json:"state"` // 状态0禁用1启用 State int `json:"state"` // 状态0禁用1启用
CreatedBy int `json:"created_by"` // 角色创建人 CreatedBy int `json:"created_by"` // 角色创建人
CreatedTime time.Time `json:"created_time"` // 角色创建时间 CreatedTime jsontime.Time `json:"created_time"` // 角色创建时间
UpdatedTime time.Time `json:"updated_time"` // 角色更新时间 UpdatedTime jsontime.Time `json:"updated_time"` // 角色更新时间
UpdatedBy int `json:"updated_by"` // 角色更新人 UpdatedBy int `json:"updated_by"` // 角色更新人
RoleType int `json:"role_type"` // 角色类型(0 普通角色 1 内置角色类型 不能删除和编辑 ) RoleType int `json:"role_type"` // 角色类型(0 普通角色 1 内置角色类型 不能删除和编辑 )
RoleId string `json:"role_id"` // 角色id(uuid) RoleId string `json:"role_id"` // 角色id(uuid)
IsDeleted int `json:"is_deleted" xorm:"is_deleted"` // 是否删除 IsDeleted int `json:"is_deleted" xorm:"is_deleted"` // 是否删除
} }
...@@ -8,8 +8,8 @@ import ( ...@@ -8,8 +8,8 @@ import (
) )
func HostsToJson() (data map[string][]string, err error) { func HostsToJson() (data map[string][]string, err error) {
//f, err := os.Open(`/etc/ansible/hosts`) f, err := os.Open(`/etc/ansible/hosts`)
f, err := os.Open(`D:\work\goWork\智能运维平台\so-operation-api\src\common\tools\hosts`) //f, err := os.Open(`D:\work\goWork\智能运维平台\so-operation-api\src\common\tools\hosts`)
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -37,8 +37,8 @@ func HostsToJson() (data map[string][]string, err error) { ...@@ -37,8 +37,8 @@ func HostsToJson() (data map[string][]string, err error) {
} }
func MapToSaveHosts(data map[string][]string) error { func MapToSaveHosts(data map[string][]string) error {
//f, err := os.OpenFile("/etc/ansible/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777) f, err := os.OpenFile("/etc/ansible/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777)
f, err := os.OpenFile("D:/work/goWork/智能运维平台/so-operation-api/src/common/tools/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777) //f, err := os.OpenFile("D:/work/goWork/智能运维平台/so-operation-api/src/common/tools/hosts", os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC, 0777)
if err != nil { if err != nil {
return err return err
......
...@@ -29,13 +29,13 @@ func OrgUserDetail(c *gin.Context) { ...@@ -29,13 +29,13 @@ func OrgUserDetail(c *gin.Context) {
// 组织添加用户时查询的角色列表 // 组织添加用户时查询的角色列表
func OrgUserRoles(c *gin.Context) { func OrgUserRoles(c *gin.Context) {
isAdmin := c.Query("is_admin") oid := c.Query("oid")
if isAdmin == "" { if oid == "" {
SendJsonResponse(c, resp.InvalidParam.WithMsg("用户类型必填"), nil) SendJsonResponse(c, resp.InvalidParam.WithMsg("组织id必填"), nil)
return return
} }
svc := service.User{} svc := service.User{}
result, err := svc.OrgUserRoles(cast.ToInt(isAdmin)) result, err := svc.OrgUserRoles(cast.ToInt(oid))
if err != nil { if err != nil {
SendJsonResponse(c, err, nil) SendJsonResponse(c, err, nil)
return return
......
...@@ -18,6 +18,9 @@ type Resp struct { ...@@ -18,6 +18,9 @@ type Resp struct {
func (r Resp) WithMsg(msg string) Resp { func (r Resp) WithMsg(msg string) Resp {
r.Msg = msg r.Msg = msg
if r.Data == nil {
r.Data = msg
}
return r return r
} }
......
...@@ -281,19 +281,19 @@ func (o *Organization) OrgDetail(input request.QueryOrgDetailInput) (interface{} ...@@ -281,19 +281,19 @@ func (o *Organization) OrgDetail(input request.QueryOrgDetailInput) (interface{}
for _, v := range orgAdminUsers { for _, v := range orgAdminUsers {
ids = append(ids, v.Id) ids = append(ids, v.Id)
} }
//var systemUserRoles []response.SystemUserRole var systemUserRoles []response.SystemUserRole
//if err := db.Table("system_user_role").Alias("sur").Select("sur.system_id, sr.role_name"). if err := db.Table("system_user_role").Alias("sur").Select("sur.system_id, sr.role_name").
// Join("left", "system_role sr", "sr.role_id = sur.role_id").In("sur.system_id", system_ids).Find(&systemUserRoles); err != nil { Join("left", "system_role sr", "sr.role_id = sur.role_id").In("sur.user_id", ids).Find(&systemUserRoles); err != nil {
// conf.Logger.Error("查询用户角色信息失败", zap.Error(err)) conf.Logger.Error("查询用户角色信息失败", zap.Error(err))
// return nil, res.DbSelectError.ErrorDetail(err) return nil, resp.DbSelectError.ErrorDetail(err)
//} }
//for i, v := range orgAdminUsers { for i, v := range orgAdminUsers {
// for _, s := range systemUserRoles { for _, s := range systemUserRoles {
// if v.SystemId == s.SystemId { if v.Id == s.UserId {
// orgAdminUsers[i].SystemRole = append(orgAdminUsers[i].SystemRole, s.RoleName) orgAdminUsers[i].SystemRole = append(orgAdminUsers[i].SystemRole, s.RoleName)
// } }
// } }
//} }
var orgInfo response.OrgDetail var orgInfo response.OrgDetail
if _, err = db.Table("system_organization").Alias("so"). if _, err = db.Table("system_organization").Alias("so").
......
...@@ -32,8 +32,8 @@ func CreateSystemRole(params request.CreateSystemRoleReq) (resultData int64, err ...@@ -32,8 +32,8 @@ func CreateSystemRole(params request.CreateSystemRoleReq) (resultData int64, err
RoleDesc: params.RoleDesc, RoleDesc: params.RoleDesc,
State: params.State, State: params.State,
CreatedBy: params.CreatedBy, CreatedBy: params.CreatedBy,
CreatedTime: time.Now(), CreatedTime: jsontime.Time(time.Now()),
UpdatedTime: time.Now(), UpdatedTime: jsontime.Time(time.Now()),
UpdatedBy: params.CreatedBy, UpdatedBy: params.CreatedBy,
RoleType: roleTypeNormal, RoleType: roleTypeNormal,
RoleId: roleId, RoleId: roleId,
...@@ -107,7 +107,7 @@ func UpdateSystemRole(params request.UpdateSystemRoleReq) (resultData int64, err ...@@ -107,7 +107,7 @@ func UpdateSystemRole(params request.UpdateSystemRoleReq) (resultData int64, err
RoleName: params.RoleName, RoleName: params.RoleName,
RoleDesc: params.RoleDesc, RoleDesc: params.RoleDesc,
State: params.State, State: params.State,
UpdatedTime: time.Now(), UpdatedTime: jsontime.Time(time.Now()),
UpdatedBy: params.UpdatedBy, UpdatedBy: params.UpdatedBy,
//DataPurview: params.DataPurview, //DataPurview: params.DataPurview,
} }
......
...@@ -49,28 +49,36 @@ func (o *User) OrgUserDetail(id int) (interface{}, error) { ...@@ -49,28 +49,36 @@ func (o *User) OrgUserDetail(id int) (interface{}, error) {
} }
//查询用户角色 //查询用户角色
//var systemUserRoles []response.SystemUserRole var systemUserRoles []response.SystemUserRole
//if err := db.Table("system_user_role").Alias("sur").Select(" sr.role_name"). if err := db.Table("system_user_role").Alias("sur").Select(" sr.role_name").
// Join("left", "system_role sr", "sr.role_id = sur.role_id").Where("sur.user_id = ?", result.Id).Find(&systemUserRoles); err != nil { Join("left", "system_role sr", "sr.role_id = sur.role_id").Where("sur.user_id = ?", result.Id).Find(&systemUserRoles); err != nil {
// conf.Logger.Error("查询用户角色信息失败", zap.Error(err)) conf.Logger.Error("查询用户角色信息失败", zap.Error(err))
// return nil, resp.DbSelectError.ErrorDetail(err) return nil, resp.DbSelectError.ErrorDetail(err)
//} }
//for _, v := range systemUserRoles { for _, v := range systemUserRoles {
// result.SystemRole = append(result.SystemRole, v.RoleName) result.SystemRole = append(result.SystemRole, v.RoleName)
//} }
return result, nil return result, nil
} }
// 组织添加用户时查询角色列表 查询非内置角色 + 平台运营者 // 组织添加用户时查询角色列表 查询非内置角色 + 平台运营者
func (o *User) OrgUserRoles(hasAdmin int) (interface{}, error) { func (o *User) OrgUserRoles(oid int) (interface{}, error) {
db, err := client.GetDbClient() db, err := client.GetDbClient()
if err != nil { if err != nil {
return nil, resp.DbConnectError.ErrorDetail(err) return nil, resp.DbConnectError.ErrorDetail(err)
} }
session := db.Table("system_role").Where("role_type = 0 and is_deleted = 0 and state = 1 ") var org entity.SystemOrganization
if hasAdmin == 1 { _, err = db.Table("system_organization").Where("id = ?", oid).Get(&org)
session.Or("role_type = 1 and is_deleted = 0 and state = 1") if err != nil {
conf.Logger.Error("查询机构信息失败", zap.Error(err))
return nil, resp.DbSelectError.ErrorDetail(err)
}
session := db.Table("system_role").Where(" is_deleted = 0 and state = 1 ")
if org.DataType == 2 {
session.Where("role_type <= 2")
} else {
session.Where("role_type <= 1")
} }
var roles []entity.SystemRole var roles []entity.SystemRole
if err := session.Find(&roles); err != nil { if err := session.Find(&roles); err != nil {
...@@ -137,14 +145,14 @@ func (o *User) OrgAddUser(input request.OrgUserInput) error { ...@@ -137,14 +145,14 @@ func (o *User) OrgAddUser(input request.OrgUserInput) error {
return nil, resp.DbInsertError.ErrorDetail(err) return nil, resp.DbInsertError.ErrorDetail(err)
} }
//var systemUserRoles []entity.SystemUserRole var systemUserRoles []entity.SystemUserRole
//for _, v := range input.SelectRole { for _, v := range input.SelectRole {
// systemUserRoles = append(systemUserRoles, entity.SystemUserRole{SystemId: systemId, RoleId: v}) systemUserRoles = append(systemUserRoles, entity.SystemUserRole{UserId: userModel.Id, RoleId: v})
//} }
//if _, err := s.Table("system_user_role").Insert(&systemUserRoles); err != nil { if _, err := s.Table("system_user_role").Insert(&systemUserRoles); err != nil {
// conf.Logger.Error("创建用户角色失败", zap.Error(err)) conf.Logger.Error("创建用户角色失败", zap.Error(err))
// return nil, res.DbInsertError.ErrorDetail(err) return nil, resp.DbInsertError.ErrorDetail(err)
//} }
return nil, nil return nil, nil
}) })
return err return err
...@@ -234,14 +242,14 @@ func (o *User) DelOrgUser(input request.DelOrgUser) error { ...@@ -234,14 +242,14 @@ func (o *User) DelOrgUser(input request.DelOrgUser) error {
} }
//删除用户关联角色 //删除用户关联角色
//var user_ids []int var user_ids []int
//for _, v := range baseUsers { for _, v := range baseUsers {
// user_ids = append(user_ids, v.Id) user_ids = append(user_ids, v.Id)
//} }
//if _, err := db.Table("system_user_role").In("user_id", user_ids).Delete(&entity.SystemUserRole{}); err != nil { if _, err := db.Table("system_user_role").In("user_id", user_ids).Delete(&entity.SystemUserRole{}); err != nil {
// conf.Logger.Error("删除用户关联角色失败", zap.Error(err)) conf.Logger.Error("删除用户关联角色失败", zap.Error(err))
// return nil, res.DbDeleteError.ErrorDetail(err) return nil, resp.DbDeleteError.ErrorDetail(err)
//} }
return nil, nil return nil, nil
}) })
return err return err
......
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