diff --git a/server/ldap-admin/internal/logic/updateldapuserlogic.go b/server/ldap-admin/internal/logic/updateldapuserlogic.go index a26e46c1..ec2a5473 100644 --- a/server/ldap-admin/internal/logic/updateldapuserlogic.go +++ b/server/ldap-admin/internal/logic/updateldapuserlogic.go @@ -40,6 +40,9 @@ func (l *UpdateLdapUserLogic) UpdateLdapUser(req *types.UpdateLdapUserReq, useri req.Password = strings.Trim(req.Password, " ") req.Avatar = strings.Trim(req.Avatar, " ") req.UserName = strings.Trim(req.UserName, " ") + if req.AuthGroupId < 0 { + return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "参数错误,无效的用户权限组id") + } if req.Password != "" { //todo 验证下是不是本人 } @@ -50,13 +53,14 @@ func (l *UpdateLdapUserLogic) UpdateLdapUser(req *types.UpdateLdapUserReq, useri userNamePinyin := chinese_to_pinyin.ChineseToPinyin(req.UserName) ldapServer := ldap_lib.NewLdap(l.svcCtx.Ldap, l.svcCtx.Config.Ldap.BaseDN, l.svcCtx.Config.Ldap.RootDN) err := ldapServer.Update(req.UserDN, map[string][]string{ - "homeDirectory": {"/home/users/" + userNamePinyin}, - "sn": {req.UserName}, - "uid": {userNamePinyin}, - "mobile": {req.Mobile}, - "userPassword": {req.Password}, - "postalAddress": {req.Avatar}, - "postalCode": {fmt.Sprintf("%d", req.Status)}, + "homeDirectory": {"/home/users/" + userNamePinyin}, + "departmentNumber": {fmt.Sprintf("%d", req.AuthGroupId)}, + "sn": {req.UserName}, + "uid": {userNamePinyin}, + "mobile": {req.Mobile}, + "userPassword": {req.Password}, + "postalAddress": {req.Avatar}, + "postalCode": {fmt.Sprintf("%d", req.Status)}, }) if err != nil { logx.Error(err) diff --git a/server/ldap-admin/internal/types/types.go b/server/ldap-admin/internal/types/types.go index 07986686..9d0b3c83 100644 --- a/server/ldap-admin/internal/types/types.go +++ b/server/ldap-admin/internal/types/types.go @@ -136,12 +136,13 @@ type CreateLdapUserReq struct { } type UpdateLdapUserReq struct { - UserDN string `json:"user_dn"` //用户dn - UserName string `json:"user_name"` //用户名 - Password string `json:"password,optional"` //密码 - Mobile string `json:"mobile,optional"` //手机号 - Avatar string `json:"avatar,optional"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + UserDN string `json:"user_dn"` //用户dn + UserName string `json:"user_name"` //用户名 + Password string `json:"password,optional"` //密码 + Mobile string `json:"mobile,optional"` //手机号 + Avatar string `json:"avatar,optional"` //头像地址 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + AuthGroupId int64 `json:"authGroupId"` //权限分组id } type DeleteLdapUserReq struct { diff --git a/server_api/ldap-admin.api b/server_api/ldap-admin.api index c05b2d3d..d65edcc3 100644 --- a/server_api/ldap-admin.api +++ b/server_api/ldap-admin.api @@ -26,7 +26,7 @@ service ldap-admin { //权限组授权接口 @handler SetLdapCasbinRuleHandler post /api/ldap-admin/set_ldap_casbin_rule(SetLdapCasbinRuleReq) returns (response); - + //权限组授权用户 @handler SetLdapGroupUserHandler post /api/ldap-admin/set_ldap_group_user(SetLdapGroupUserReq) returns (response); @@ -211,12 +211,13 @@ type CreateLdapUserReq { } //修改ldap用户信息 type UpdateLdapUserReq { - UserDN string `json:"user_dn"` //用户dn - UserName string `json:"user_name"` //用户名 - Password string `json:"password,optional"` //密码 - Mobile string `json:"mobile,optional"` //手机号 - Avatar string `json:"avatar,optional"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + UserDN string `json:"user_dn"` //用户dn + UserName string `json:"user_name"` //用户名 + Password string `json:"password,optional"` //密码 + Mobile string `json:"mobile,optional"` //手机号 + Avatar string `json:"avatar,optional"` //头像地址 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + AuthGroupId int64 `json:"authGroupId"` //权限分组id } //删除ldap用户 type DeleteLdapUserReq {