mirror of
https://github.com/silenceper/wechat.git
synced 2026-02-08 06:32:27 +08:00
improve comment ,参考:https://github.com/huacnlee/autocorrect
This commit is contained in:
@@ -9,7 +9,7 @@ import (
|
||||
const (
|
||||
// departmentCreateURL 创建部门
|
||||
departmentCreateURL = "https://qyapi.weixin.qq.com/cgi-bin/department/create?access_token=%s"
|
||||
// departmentSimpleListURL 获取子部门ID列表
|
||||
// departmentSimpleListURL 获取子部门 ID 列表
|
||||
departmentSimpleListURL = "https://qyapi.weixin.qq.com/cgi-bin/department/simplelist?access_token=%s&id=%d"
|
||||
// departmentListURL 获取部门列表
|
||||
departmentListURL = "https://qyapi.weixin.qq.com/cgi-bin/department/list?access_token=%s"
|
||||
@@ -33,12 +33,12 @@ type (
|
||||
ID int `json:"id"`
|
||||
}
|
||||
|
||||
// DepartmentSimpleListResponse 获取子部门ID列表响应
|
||||
// DepartmentSimpleListResponse 获取子部门 ID 列表响应
|
||||
DepartmentSimpleListResponse struct {
|
||||
util.CommonError
|
||||
DepartmentID []*DepartmentID `json:"department_id"`
|
||||
}
|
||||
// DepartmentID 子部门ID
|
||||
// DepartmentID 子部门 ID
|
||||
DepartmentID struct {
|
||||
ID int `json:"id"`
|
||||
ParentID int `json:"parentid"`
|
||||
@@ -52,12 +52,12 @@ type (
|
||||
}
|
||||
// Department 部门列表数据
|
||||
Department struct {
|
||||
ID int `json:"id"` // 创建的部门id
|
||||
ID int `json:"id"` // 创建的部门 id
|
||||
Name string `json:"name"` // 部门名称
|
||||
NameEn string `json:"name_en"` // 英文名称
|
||||
DepartmentLeader []string `json:"department_leader"` // 部门负责人的UserID
|
||||
ParentID int `json:"parentid"` // 父部门id。根部门为1
|
||||
Order int `json:"order"` // 在父部门中的次序值。order值大的排序靠前
|
||||
DepartmentLeader []string `json:"department_leader"` // 部门负责人的 UserID
|
||||
ParentID int `json:"parentid"` // 父部门 id。根部门为 1
|
||||
Order int `json:"order"` // 在父部门中的次序值。order 值大的排序靠前
|
||||
}
|
||||
// DepartmentGetResponse 获取单个部门详情
|
||||
DepartmentGetResponse struct {
|
||||
@@ -85,7 +85,7 @@ func (r *Client) DepartmentCreate(req *DepartmentCreateRequest) (*DepartmentCrea
|
||||
return result, err
|
||||
}
|
||||
|
||||
// DepartmentSimpleList 获取子部门ID列表
|
||||
// DepartmentSimpleList 获取子部门 ID 列表
|
||||
// see https://developer.work.weixin.qq.com/document/path/95350
|
||||
func (r *Client) DepartmentSimpleList(departmentID int) ([]*DepartmentID, error) {
|
||||
var (
|
||||
@@ -112,13 +112,13 @@ func (r *Client) DepartmentList() ([]*Department, error) {
|
||||
|
||||
// DepartmentListByID 获取部门列表
|
||||
//
|
||||
// departmentID 部门id。获取指定部门及其下的子部门(以及子部门的子部门等等,递归)
|
||||
// departmentID 部门 id。获取指定部门及其下的子部门(以及子部门的子部门等等,递归)
|
||||
//
|
||||
// @desc https://developer.work.weixin.qq.com/document/path/90208
|
||||
func (r *Client) DepartmentListByID(departmentID int) ([]*Department, error) {
|
||||
var formatURL string
|
||||
|
||||
// 获取accessToken
|
||||
// 获取 accessToken
|
||||
accessToken, err := r.GetAccessToken()
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -130,7 +130,7 @@ func (r *Client) DepartmentListByID(departmentID int) ([]*Department, error) {
|
||||
formatURL = fmt.Sprintf(departmentListURL, accessToken)
|
||||
}
|
||||
|
||||
// 发起http请求
|
||||
// 发起 http 请求
|
||||
response, err := util.HTTPGet(formatURL)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
|
||||
@@ -83,12 +83,12 @@ type ExtattrItem struct {
|
||||
Web ExtattrItemWeb `json:"web,omitempty"`
|
||||
}
|
||||
|
||||
// ExtattrItemText 互联企业成员详细信息自定义属性(文本)
|
||||
// ExtattrItemText 互联企业成员详细信息自定义属性 (文本)
|
||||
type ExtattrItemText struct {
|
||||
Value string `json:"value"`
|
||||
}
|
||||
|
||||
// ExtattrItemWeb 互联企业成员详细信息自定义属性(网页)
|
||||
// ExtattrItemWeb 互联企业成员详细信息自定义属性 (网页)
|
||||
type ExtattrItemWeb struct {
|
||||
URL string `json:"url"`
|
||||
Title string `json:"title"`
|
||||
|
||||
@@ -16,11 +16,11 @@ const (
|
||||
userGetURL = "https://qyapi.weixin.qq.com/cgi-bin/user/get"
|
||||
// userDeleteURL 删除成员
|
||||
userDeleteURL = "https://qyapi.weixin.qq.com/cgi-bin/user/delete"
|
||||
// userListIDURL 获取成员ID列表
|
||||
// userListIDURL 获取成员 ID 列表
|
||||
userListIDURL = "https://qyapi.weixin.qq.com/cgi-bin/user/list_id"
|
||||
// convertToOpenIDURL userID转openID
|
||||
// convertToOpenIDURL userID 转 openID
|
||||
convertToOpenIDURL = "https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_openid"
|
||||
// convertToUserIDURL openID转userID
|
||||
// convertToUserIDURL openID 转 userID
|
||||
convertToUserIDURL = "https://qyapi.weixin.qq.com/cgi-bin/user/convert_to_userid"
|
||||
)
|
||||
|
||||
@@ -157,23 +157,23 @@ func (r *Client) UserCreate(req *UserCreateRequest) (*UserCreateResponse, error)
|
||||
// UserGetResponse 获取部门成员响应
|
||||
type UserGetResponse struct {
|
||||
util.CommonError
|
||||
UserID string `json:"userid"` // 成员UserID。对应管理端的帐号,企业内必须唯一。不区分大小写,长度为1~64个字节;第三方应用返回的值为open_userid
|
||||
Name string `json:"name"` // 成员名称;第三方不可获取,调用时返回userid以代替name;代开发自建应用需要管理员授权才返回;对于非第三方创建的成员,第三方通讯录应用也不可获取;未返回name的情况需要通过通讯录展示组件来展示名字
|
||||
Department []int `json:"department"` // 成员所属部门id列表,仅返回该应用有查看权限的部门id;成员授权模式下,固定返回根部门id,即固定为1。对授权了“组织架构信息”权限的第三方应用,返回成员所属的全部部门id
|
||||
Order []int `json:"order"` // 部门内的排序值,默认为0。数量必须和department一致,数值越大排序越前面。值范围是[0, 2^32)。成员授权模式下不返回该字段
|
||||
UserID string `json:"userid"` // 成员 UserID。对应管理端的帐号,企业内必须唯一。不区分大小写,长度为 1~64 个字节;第三方应用返回的值为 open_userid
|
||||
Name string `json:"name"` // 成员名称;第三方不可获取,调用时返回 userid 以代替 name;代开发自建应用需要管理员授权才返回;对于非第三方创建的成员,第三方通讯录应用也不可获取;未返回 name 的情况需要通过通讯录展示组件来展示名字
|
||||
Department []int `json:"department"` // 成员所属部门 id 列表,仅返回该应用有查看权限的部门 id;成员授权模式下,固定返回根部门 id,即固定为 1。对授权了“组织架构信息”权限的第三方应用,返回成员所属的全部部门 id
|
||||
Order []int `json:"order"` // 部门内的排序值,默认为 0。数量必须和 department 一致,数值越大排序越前面。值范围是 [0, 2^32)。成员授权模式下不返回该字段
|
||||
Position string `json:"position"` // 职务信息;代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Mobile string `json:"mobile"` // 手机号码,代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Gender string `json:"gender"` // 性别。0表示未定义,1表示男性,2表示女性。代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段。注:不可获取指返回值0
|
||||
Email string `json:"email"` // 邮箱,代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
BizMail string `json:"biz_mail"` // 企业邮箱,代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
IsLeaderInDept []int `json:"is_leader_in_dept"` // 表示在所在的部门内是否为部门负责人,数量与department一致;第三方通讯录应用或者授权了“组织架构信息-应用可获取企业的部门组织架构信息-部门负责人”权限的第三方应用可获取;对于非第三方创建的成员,第三方通讯录应用不可获取;上游企业不可获取下游企业成员该字段
|
||||
DirectLeader []string `json:"direct_leader"` // 直属上级UserID,返回在应用可见范围内的直属上级列表,最多有五个直属上级;第三方通讯录应用或者授权了“组织架构信息-应用可获取可见范围内成员组织架构信息-直属上级”权限的第三方应用可获取;对于非第三方创建的成员,第三方通讯录应用不可获取;上游企业不可获取下游企业成员该字段;代开发自建应用不可获取该字段
|
||||
Avatar string `json:"avatar"` // 头像url。 代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
ThumbAvatar string `json:"thumb_avatar"` // 头像缩略图url。第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Mobile string `json:"mobile"` // 手机号码,代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Gender string `json:"gender"` // 性别。0 表示未定义,1 表示男性,2 表示女性。代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段。注:不可获取指返回值 0
|
||||
Email string `json:"email"` // 邮箱,代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
BizMail string `json:"biz_mail"` // 企业邮箱,代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
IsLeaderInDept []int `json:"is_leader_in_dept"` // 表示在所在的部门内是否为部门负责人,数量与 department 一致;第三方通讯录应用或者授权了“组织架构信息 - 应用可获取企业的部门组织架构信息 - 部门负责人”权限的第三方应用可获取;对于非第三方创建的成员,第三方通讯录应用不可获取;上游企业不可获取下游企业成员该字段
|
||||
DirectLeader []string `json:"direct_leader"` // 直属上级 UserID,返回在应用可见范围内的直属上级列表,最多有五个直属上级;第三方通讯录应用或者授权了“组织架构信息 - 应用可获取可见范围内成员组织架构信息 - 直属上级”权限的第三方应用可获取;对于非第三方创建的成员,第三方通讯录应用不可获取;上游企业不可获取下游企业成员该字段;代开发自建应用不可获取该字段
|
||||
Avatar string `json:"avatar"` // 头像 url。代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
ThumbAvatar string `json:"thumb_avatar"` // 头像缩略图 url。第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Telephone string `json:"telephone"` // 座机。代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Alias string `json:"alias"` // 别名;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Address string `json:"address"` // 地址。代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
OpenUserid string `json:"open_userid"` // 全局唯一。对于同一个服务商,不同应用获取到企业内同一个成员的open_userid是相同的,最多64个字节。仅第三方应用可获取
|
||||
Address string `json:"address"` // 地址。代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
OpenUserid string `json:"open_userid"` // 全局唯一。对于同一个服务商,不同应用获取到企业内同一个成员的 open_userid 是相同的,最多 64 个字节。仅第三方应用可获取
|
||||
MainDepartment int `json:"main_department"` // 主部门,仅当应用对主部门有查看权限时返回。
|
||||
Extattr struct {
|
||||
Attrs []struct {
|
||||
@@ -188,9 +188,9 @@ type UserGetResponse struct {
|
||||
} `json:"web,omitempty"`
|
||||
} `json:"attrs"`
|
||||
} `json:"extattr"` // 扩展属性,代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Status int `json:"status"` // 激活状态: 1=已激活,2=已禁用,4=未激活,5=退出企业。 已激活代表已激活企业微信或已关注微信插件(原企业号)。未激活代表既未激活企业微信又未关注微信插件(原企业号)。
|
||||
QrCode string `json:"qr_code"` // 员工个人二维码,扫描可添加为外部联系人(注意返回的是一个url,可在浏览器上打开该url以展示二维码);代开发自建应用需要管理员授权且成员oauth2授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
ExternalPosition string `json:"external_position"` // 对外职务,如果设置了该值,则以此作为对外展示的职务,否则以position来展示。代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
Status int `json:"status"` // 激活状态:1=已激活,2=已禁用,4=未激活,5=退出企业。已激活代表已激活企业微信或已关注微信插件(原企业号)。未激活代表既未激活企业微信又未关注微信插件(原企业号)。
|
||||
QrCode string `json:"qr_code"` // 员工个人二维码,扫描可添加为外部联系人 (注意返回的是一个 url,可在浏览器上打开该 url 以展示二维码);代开发自建应用需要管理员授权且成员 oauth2 授权获取;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
ExternalPosition string `json:"external_position"` // 对外职务,如果设置了该值,则以此作为对外展示的职务,否则以 position 来展示。代开发自建应用需要管理员授权才返回;第三方仅通讯录应用可获取;对于非第三方创建的成员,第三方通讯录应用也不可获取;上游企业不可获取下游企业成员该字段
|
||||
ExternalProfile struct {
|
||||
ExternalCorpName string `json:"external_corp_name"`
|
||||
WechatChannels struct {
|
||||
@@ -275,26 +275,26 @@ func (r *Client) UserDelete(userID string) (*UserDeleteResponse, error) {
|
||||
return result, err
|
||||
}
|
||||
|
||||
// UserListIDRequest 获取成员ID列表请求
|
||||
// UserListIDRequest 获取成员 ID 列表请求
|
||||
type UserListIDRequest struct {
|
||||
Cursor string `json:"cursor"`
|
||||
Limit int `json:"limit"`
|
||||
}
|
||||
|
||||
// UserListIDResponse 获取成员ID列表响应
|
||||
// UserListIDResponse 获取成员 ID 列表响应
|
||||
type UserListIDResponse struct {
|
||||
util.CommonError
|
||||
NextCursor string `json:"next_cursor"`
|
||||
DeptUser []*DeptUser `json:"dept_user"`
|
||||
}
|
||||
|
||||
// DeptUser 用户-部门关系
|
||||
// DeptUser 用户 - 部门关系
|
||||
type DeptUser struct {
|
||||
UserID string `json:"userid"`
|
||||
Department int `json:"department"`
|
||||
}
|
||||
|
||||
// UserListID 获取成员ID列表
|
||||
// UserListID 获取成员 ID 列表
|
||||
// see https://developer.work.weixin.qq.com/document/path/96067
|
||||
func (r *Client) UserListID(req *UserListIDRequest) (*UserListIDResponse, error) {
|
||||
var (
|
||||
@@ -319,19 +319,19 @@ func (r *Client) UserListID(req *UserListIDRequest) (*UserListIDResponse, error)
|
||||
}
|
||||
|
||||
type (
|
||||
// convertToOpenIDRequest userID转openID请求
|
||||
// convertToOpenIDRequest userID 转 openID 请求
|
||||
convertToOpenIDRequest struct {
|
||||
UserID string `json:"userid"`
|
||||
}
|
||||
|
||||
// convertToOpenIDResponse userID转openID响应
|
||||
// convertToOpenIDResponse userID 转 openID 响应
|
||||
convertToOpenIDResponse struct {
|
||||
util.CommonError
|
||||
OpenID string `json:"openid"`
|
||||
}
|
||||
)
|
||||
|
||||
// ConvertToOpenID userID转openID
|
||||
// ConvertToOpenID userID 转 openID
|
||||
// see https://developer.work.weixin.qq.com/document/path/90202
|
||||
func (r *Client) ConvertToOpenID(userID string) (string, error) {
|
||||
var (
|
||||
@@ -359,19 +359,19 @@ func (r *Client) ConvertToOpenID(userID string) (string, error) {
|
||||
}
|
||||
|
||||
type (
|
||||
// convertToUserIDRequest openID转userID请求
|
||||
// convertToUserIDRequest openID 转 userID 请求
|
||||
convertToUserIDRequest struct {
|
||||
OpenID string `json:"openid"`
|
||||
}
|
||||
|
||||
// convertToUserIDResponse openID转userID响应
|
||||
// convertToUserIDResponse openID 转 userID 响应
|
||||
convertToUserIDResponse struct {
|
||||
util.CommonError
|
||||
UserID string `json:"userid"`
|
||||
}
|
||||
)
|
||||
|
||||
// ConvertToUserID openID转userID
|
||||
// ConvertToUserID openID 转 userID
|
||||
// see https://developer.work.weixin.qq.com/document/path/90202
|
||||
func (r *Client) ConvertToUserID(openID string) (string, error) {
|
||||
var (
|
||||
|
||||
Reference in New Issue
Block a user