diff --git a/server/ldap-admin/internal/logic/createldaporganizationlogic.go b/server/ldap-admin/internal/logic/createldaporganizationlogic.go index 6c8850e9..1ccb2624 100644 --- a/server/ldap-admin/internal/logic/createldaporganizationlogic.go +++ b/server/ldap-admin/internal/logic/createldaporganizationlogic.go @@ -36,7 +36,7 @@ func NewCreateLdapOrganizationLogic(ctx context.Context, svcCtx *svc.ServiceCont func (l *CreateLdapOrganizationLogic) CreateLdapOrganization(req *types.CreateLdapOrganizationReq, userinfo *auth.UserInfo) (resp *basic.Response) { req.OrganizationEnName = strings.Trim(req.OrganizationEnName, " ") req.ParentOrganizationDN = strings.Trim(req.ParentOrganizationDN, " ") - req.OrganizationName = strings.Trim(req.OrganizationName, " ") + req.BusinessCategory = strings.Trim(req.BusinessCategory, " ") if len(strings.Split(req.OrganizationEnName, ",")) != 1 { return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "参数错误,组织英文名不符合规范") } @@ -47,17 +47,17 @@ func (l *CreateLdapOrganizationLogic) CreateLdapOrganization(req *types.CreateLd if req.ParentOrganizationDN == "" { return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "参数错误,父级DN不能为空") } - if req.OrganizationName == "" { - return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "参数错误,组织中文名不能为空") + if req.BusinessCategory == "" { + return resp.SetStatusWithMessage(basic.CodeRequestParamsErr, "参数错误,组织分类名不能为空") } //组装organization dn organizationDN := "ou=" + req.OrganizationEnName + "," + req.ParentOrganizationDN ldapServer := ldap_lib.NewLdap(l.svcCtx.Ldap, l.svcCtx.Config.Ldap.BaseDN, l.svcCtx.Config.Ldap.RootDN) err := ldapServer.Create(organizationDN, map[string][]string{ "objectClass": {"top", "groupOfUniqueNames"}, - "cn": {req.OrganizationName}, + "cn": {req.OrganizationEnName}, "ou": {req.OrganizationEnName}, - "businessCategory": {req.OrganizationName}, + "businessCategory": {req.BusinessCategory}, "uniqueMember": {l.svcCtx.Config.Ldap.RootDN}, //创建groupOfUniqueNames对象类型需要至少一个member,把root加进去 }) if err != nil { diff --git a/server/ldap-admin/internal/logic/createldapuserlogic.go b/server/ldap-admin/internal/logic/createldapuserlogic.go index a674649b..cf31476b 100644 --- a/server/ldap-admin/internal/logic/createldapuserlogic.go +++ b/server/ldap-admin/internal/logic/createldapuserlogic.go @@ -74,7 +74,7 @@ func (l *CreateLdapUserLogic) CreateLdapUser(req *types.CreateLdapUserReq, useri "shadowWarning": {"7"}, //固有属性 "loginShell": {"/usr/sbin/nologin"}, //固有属性 "homeDirectory": {"/home/users/" + userNamePinyin}, - "employeeType": {"1"}, //1正式 2实习 3外包 + "employeeType": {fmt.Sprintf("%d", req.EmployeeType)}, //1正式 2实习 3外包 "uidNumber": {fmt.Sprintf("%d", userData.Id)}, "gidNumber": {fmt.Sprintf("%d", userData.Id)}, "uid": {userNamePinyin}, diff --git a/server/ldap-admin/internal/logic/updateldapuserlogic.go b/server/ldap-admin/internal/logic/updateldapuserlogic.go index 3644c393..6a7a2d14 100644 --- a/server/ldap-admin/internal/logic/updateldapuserlogic.go +++ b/server/ldap-admin/internal/logic/updateldapuserlogic.go @@ -62,6 +62,7 @@ func (l *UpdateLdapUserLogic) UpdateLdapUser(req *types.UpdateLdapUserReq, useri "mobile": {req.Mobile}, "postalAddress": {req.Avatar}, "postalCode": {fmt.Sprintf("%d", req.Status)}, + "employeeType": {fmt.Sprintf("%d", req.EmployeeType)}, } err := ldapServer.Update(req.UserDN, attr) if err != nil { diff --git a/server/ldap-admin/internal/types/types.go b/server/ldap-admin/internal/types/types.go index 7f3688ae..f2db0587 100644 --- a/server/ldap-admin/internal/types/types.go +++ b/server/ldap-admin/internal/types/types.go @@ -117,7 +117,7 @@ type MenuItem struct { type CreateLdapOrganizationReq struct { OrganizationEnName string `json:"organization_en_name"` //组织英文名 - OrganizationName string `json:"organization_name"` //组织中文名称 + BusinessCategory string `json:"business_category"` //组织类别 ParentOrganizationDN string `json:"parent_organization_dn"` //父级dn } @@ -131,21 +131,23 @@ type UpdateLdapOrganizationReq struct { } type CreateLdapUserReq struct { - UserName string `json:"user_name"` //用户名 - Email string `json:"email"` //邮箱 - Password string `json:"password"` //密码 - Mobile string `json:"mobile"` //手机号 - Avatar string `json:"avatar"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + UserName string `json:"user_name"` //用户名 + Email string `json:"email"` //邮箱 + Password string `json:"password"` //密码 + Mobile string `json:"mobile"` //手机号 + Avatar string `json:"avatar"` //头像地址 + EmployeeType int64 `json:"employee_type,options=1|2|3"` //1正式 2实习 3外包 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 } type UpdateLdapUserReq struct { - UserDN string `json:"user_dn"` //用户dn - UserName string `json:"user_name"` //用户名 - Mobile string `json:"mobile,optional"` //手机号 - Avatar string `json:"avatar,optional"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 - AuthGroupId int64 `json:"auth_group_id,optional"` //权限分组id + UserDN string `json:"user_dn"` //用户dn + UserName string `json:"user_name"` //用户名 + Mobile string `json:"mobile,optional"` //手机号 + Avatar string `json:"avatar,optional"` //头像地址 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + EmployeeType int64 `json:"employee_type,options=1|2|3"` //1正式 2实习 3外包 + AuthGroupId int64 `json:"auth_group_id,optional"` //权限分组id } type UpdateLdapUserPwdReq struct { diff --git a/server_api/ldap-admin.api b/server_api/ldap-admin.api index 2d0ed7ec..b756c86f 100644 --- a/server_api/ldap-admin.api +++ b/server_api/ldap-admin.api @@ -62,7 +62,7 @@ service ldap-admin { //修改ldap组织 @handler UpdateLdapOrganizationHandler post /api/ldap-admin/update_ldap_organization(UpdateLdapOrganizationReq) returns (response); - //添加ldap用户到员工基本组中 + //添加ldap用户帐号 @handler CreateLdapUserHandler post /api/ldap-admin/create_ldap_user(CreateLdapUserReq) returns (response); //修改ldap用户信息 @@ -198,7 +198,7 @@ type MenuItem { //增加ldap组织 type CreateLdapOrganizationReq { OrganizationEnName string `json:"organization_en_name"` //组织英文名 - OrganizationName string `json:"organization_name"` //组织中文名称 + BusinessCategory string `json:"business_category"` //组织类别 ParentOrganizationDN string `json:"parent_organization_dn"` //父级dn } //删除ldap组织 @@ -210,23 +210,25 @@ type UpdateLdapOrganizationReq { OrganizationDN string `json:"organization_dn"` //组织dn BusinessCategory string `json:"business_category"` //组织分类名称 } -//添加ldap用户到员工基本组中 +//添加ldap用户帐号 type CreateLdapUserReq { - UserName string `json:"user_name"` //用户名 - Email string `json:"email"` //邮箱 - Password string `json:"password"` //密码 - Mobile string `json:"mobile"` //手机号 - Avatar string `json:"avatar"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + UserName string `json:"user_name"` //用户名 + Email string `json:"email"` //邮箱 + Password string `json:"password"` //密码 + Mobile string `json:"mobile"` //手机号 + Avatar string `json:"avatar"` //头像地址 + EmployeeType int64 `json:"employee_type,options=1|2|3"` //1正式 2实习 3外包 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 } //修改ldap用户信息 type UpdateLdapUserReq { - UserDN string `json:"user_dn"` //用户dn - UserName string `json:"user_name"` //用户名 - Mobile string `json:"mobile,optional"` //手机号 - Avatar string `json:"avatar,optional"` //头像地址 - Status int64 `json:"status,options=0|1"` //状态 1正常0离职 - AuthGroupId int64 `json:"auth_group_id,optional"` //权限分组id + UserDN string `json:"user_dn"` //用户dn + UserName string `json:"user_name"` //用户名 + Mobile string `json:"mobile,optional"` //手机号 + Avatar string `json:"avatar,optional"` //头像地址 + Status int64 `json:"status,options=0|1"` //状态 1正常0离职 + EmployeeType int64 `json:"employee_type,options=1|2|3"` //1正式 2实习 3外包 + AuthGroupId int64 `json:"auth_group_id,optional"` //权限分组id } //修改用户密码 type UpdateLdapUserPwdReq {