syntax = "v1" info ( title: // TODO: add title desc: // TODO: add description author: "" email: "" ) import "basic.api" service ldap-admin { //获取权限组列表 @handler GetLdapGroupsHandler get /api/ldap-admin/get_ldap_group(GetLdapGroupsReq) returns (response); //获取权限组详情 @handler GetLdapGroupDetailHandler get /api/ldap-admin/get_ldap_group_detail(GetLdapGroupDetailReq) returns (response); //保存权限组 @handler SaveLdapGroupHandler post /api/ldap-admin/save_ldap_group(SaveLdapGroupReq) returns (response); //删除权限组 @handler DeleteLdapGroupHandler post /api/ldap-admin/delete_ldap_group(DeleteLdapGroupReq) returns (response); //权限组授权 @handler SetLdapGroupAuthHandler post /api/ldap-admin/set_ldap_group_auth(SetLdapGroupAuthReq) returns (response); //权限组授权用户 @handler SetLdapGroupUserHandler post /api/ldap-admin/set_ldap_group_user(SetLdapGroupUserReq) returns (response); //获取API列表 @handler GetApisHandler get /api/ldap-admin/get_apis(GetApisReq) returns (response); //保存API @handler SaveApiHandler post /api/ldap-admin/save_api(SaveApiReq) returns (response); //删除API @handler DeleteApiHandler post /api/ldap-admin/delete_api(DeleteApiReq) returns (response); //保存菜单 @handler SaveMenuHandler post /api/ldap-admin/save_menu(SaveMenuReq) returns (response); //删除菜单 @handler DeleteMenuHandler post /api/ldap-admin/delete_menu(DeleteMenuReq) returns (response); //获取菜单详情 @handler GetMenuDetailHandler get /api/ldap-admin/get_menu_detail(GetMenuDetailReq) returns (response); //获取菜单列表 @handler GetMenusHandler get /api/ldap-admin/get_menus(GetMenusReq) returns (response); //获取ldap组织列表 @handler GetLdapOrganizationsHandler get /api/ldap-admin/get_ldap_organizations(request) returns (response); //增加ldap组织 @handler CreateLdapOrganizationHandler post /api/ldap-admin/create_ldap_organization(CreateLdapOrganizationReq) returns (response); //删除ldap组织 @handler DeleteLdapOrganizationHandler post /api/ldap-admin/delete_ldap_organization(DeleteLdapOrganizationReq) returns (response); //修改ldap组织 @handler UpdateLdapOrganizationHandler post /api/ldap-admin/update_ldap_organization(UpdateLdapOrganizationReq) returns (response); //添加ldap用户帐号 @handler CreateLdapUserHandler post /api/ldap-admin/create_ldap_user(CreateLdapUserReq) returns (response); //修改ldap用户信息 @handler UpdateLdapUserHandler post /api/ldap-admin/update_ldap_user(UpdateLdapUserReq) returns (response); //修改ldap用户密码 @handler UpdateLdapUserPwdHandler post /api/ldap-admin/update_ldap_user_pwd(UpdateLdapUserPwdReq) returns (response); //删除ldap用户 @handler DeleteLdapUserHandler post /api/ldap-admin/delete_ldap_user(DeleteLdapUserReq) returns (response); //获取ldap用户信息 @handler GetLdapUserInfoHandler get /api/ldap-admin/get_ldap_user_info(GetLdapUserInfoReq) returns (response); //ldap组织添加成员 @handler AddLdapOrganizationMemberHandler post /api/ldap-admin/add_ldap_organization_member(AddLdapOrganizationMemberReq) returns (response); //ldap组织移除成员 @handler RemoveLdapOrganizationMemberHandler post /api/ldap-admin/remove_ldap_organization_member(RemoveLdapOrganizationMemberReq) returns (response); //获取ldap组织成员列表 @handler GetLdapOrganizationMembersHandler get /api/ldap-admin/get_ldap_organization_members(GetLdapOrganizationMembersReq) returns (response); //创建用户基础组 @handler CreateLdapUserBaseGroupHandler post /api/ldap-admin/create_ldap_user_base_group(request) returns (response); //获取基础用户组中成员列表 @handler GetLdapUsersHandler get /api/ldap-admin/get_ldap_users(GetLdapUsersReq) returns (response); //登录 @handler LdapUserLoginHandler post /api/ldap-admin/ldap_user_login(LdapUserLoginReq) returns (response); } type ( GetLdapGroupDetailReq { Id int64 `form:"id"` } SetLdapGroupAuthReq { GroupId int64 `json:"group_id"` GroupAuth GroupAuth `json:"group_auth"` } GroupAuth { Id int64 `json:"id"` Name string `json:"name"` Type string `json:"type"` Metadata []*GroupAuth `json:"metadata,optional"` } GetLdapGroupsReq { Id int64 `form:"id,optional"` //id Name string `form:"name,optional"` //名称 Keyword string `form:"keyword,optional"` //关键词 Status int64 `form:"status,optional"` // 1正常, 2禁用 Sort string `form:"sort,optional"` CurrentPage int `form:"current_page,optional,default=1"` PerPage int `form:"per_page,optional,default=10"` } SaveLdapGroupReq { Id int64 `json:"id"` //id Type string `json:"type"` //类型 Name string `json:"name"` //名称 Keyword string `json:"keyword"` //关键词 Remark string `json:"remark"` // 备注 Status int64 `json:"status"` // 1正常, 2禁用 Sort int64 `json:"sort"` // 排序 } DeleteLdapGroupReq { Ids []int64 `json:"ids"` //id } DeleteApiReq { Ids []int64 `json:"ids"` //id } SetLdapGroupMenusReq { GroupId int64 `json:"group_id"` MenuIds []int64 `json:"menu_ids"` } SetLdapCasbinRuleReq { GroupId int64 `json:"group_id"` ApIds []int64 `json:"api_ids"` } SetLdapGroupUserReq { GroupId int64 `json:"group_id"` UserId int64 `json:"user_id"` } ) type GetApisReq { Sort string `form:"sort,optional"` CurrentPage int `form:"current_page,optional,default=1"` PerPage int `form:"per_page,optional,default=10"` } type SaveApiReq { Id int64 `json:"id"` Method string `json:"method"` Path string `json:"path"` Category string `json:"category"` Remark string `json:"remark"` } //保存菜单 type SaveMenuReq { Id int64 `json:"id"` Name string `json:"name"` Title string `json:"title"` Icon string `json:"icon"` Path string `json:"path"` Sort int64 `json:"sort"` ParentId int64 `json:"parent_id"` Status int64 `json:"status,options=0|1"` } //删除菜单 type DeleteMenuReq { Id int64 `json:"id"` } //获取菜单详情 type GetMenuDetailReq { Id int64 `form:"id"` } type GetMenuDetailRsp { Id int64 `json:"id"` Name string `json:"name"` Title string `json:"title"` Icon string `json:"icon"` Path string `json:"path"` Sort int64 `json:"sort"` ParentId int64 `json:"parent_id"` Status int64 `json:"status"` } //获取菜单列表 type GetMenusReq { CurrentPage int `form:"current_page,optional"` Name string `form:"name,optional"` Title string `form:"title,optional"` Path string `form:"path,optional"` ParentId *int64 `form:"parent_id,optional"` } type GetMenusRsp { List []MenuItem `json:"list"` Meta Meta `json:"meta"` } type MenuItem { Id int64 `json:"id"` Name string `json:"name"` Title string `json:"title"` Icon string `json:"icon"` Path string `json:"path"` Sort int64 `json:"sort"` ParentId int64 `json:"parent_id"` Status int64 `json:"status"` } //增加ldap组织 type CreateLdapOrganizationReq { OrganizationEnName string `json:"organization_en_name"` //组织英文名 BusinessCategory string `json:"business_category"` //组织类别 ParentOrganizationDN string `json:"parent_organization_dn"` //父级dn } //删除ldap组织 type DeleteLdapOrganizationReq { OrganizationDN string `json:"organization_dn"` //组织dn } //修改ldap组织 type UpdateLdapOrganizationReq { OrganizationDN string `json:"organization_dn"` //组织dn BusinessCategory string `json:"business_category"` //组织分类名称 } //添加ldap用户帐号 type CreateLdapUserReq { 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外包 GroupId int64 `json:"group_id,optional"` //分组id 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离职 EmployeeType int64 `json:"employee_type,options=1|2|3"` //1正式 2实习 3外包 GroupId int64 `json:"group_id,optional"` //权限分组id } //修改用户密码 type UpdateLdapUserPwdReq { UserDN string `json:"user_dn"` //用户dn NewPassword string `json:"new_password"` OldPassword string `json:"old_password"` } //删除ldap用户 type DeleteLdapUserReq { UserDN string `json:"user_dn"` //用户dn } //获取ldap用户信息 type GetLdapUserInfoReq { UserDN string `form:"user_dn"` //用户dn } type GetLdapUserInfoRsp { UserId int64 `json:"user_id"` UserDN string `json:"user_dn"` UserName string `json:"user_name"` //用户名 Email string `json:"email"` //邮箱 Mobile string `json:"mobile"` //手机号 Avatar string `json:"avatar"` //头像地址 EmployeeTpye int64 `json:"employee_tpye"` //雇佣类型 1正式 2实习 3外包 Status int64 `json:"status,options=0|1"` //状态 1正常0离职 } //ldap组织添加成员 type AddLdapOrganizationMemberReq { OrganizationDN string `json:"organization_dn"` //目标组织DN UserDN string `json:"user_dn"` //用户DN } //ldap组织移除成员 type RemoveLdapOrganizationMemberReq { OrganizationDN string `json:"organization_dn"` //目标组织DN UserDN string `json:"user_dn"` //用户DN } //获取ldap组织成员列表 type GetLdapOrganizationMembersReq { OrganizationDN string `form:"organization_dn"` } type GetLdapOrganizationMembersRsp { List []GetLdapOrganizationMembersItem `json:"list"` } type GetLdapOrganizationMembersItem { UserId int64 `json:"userId"` UserDN string `json:"user_dn"` UserName string `json:"user_name"` //用户名 Email string `json:"email"` //邮箱 Mobile string `json:"mobile"` //手机号 Avatar string `json:"avatar"` //头像地址 EmployeeType int64 `json:"employee_type"` Status int64 `json:"status,options=0|1"` //状态 1正常0离职 } //获取基础用户组中成员列表 type GetLdapUsersReq { PageCookie string `form:"page_cookie,optional"` //下一页分页游标,传空/不传就是第一页 } type GetLdapUsersRsp { List []GetLdapUsersItem `json:"list"` PagingCookie string `json:"paging_cookie"` } type GetLdapUsersItem { UserId int64 `json:"userId"` UserDN string `json:"user_dn"` UserName string `json:"user_name"` //用户名 Email string `json:"email"` //邮箱 Mobile string `json:"mobile"` //手机号 Avatar string `json:"avatar"` //头像地址 EmployeeType int64 `json:"employee_type"` Status int64 `json:"status,options=0|1"` //状态 1正常0离职 } //登录 type LdapUserLoginReq { Email string `json:"email"` Password string `json:"password"` } type LdapUserLoginRsp { Token string `json:"token"` }