package enterprise_wechat import ( "errors" "git.rosy.net.cn/baseapi/utils" "net/http" ) // 创建成员,将门店老板创建为京西员工 func (a *API) CreateBoss2JxStaff(param *CreateBoos2JXStaffReq) error { a.CheckAccessTokenExpiresIn() result, err := a.AccessAPI(WeChatBaseApi, CreateBoosToJxStaff, http.MethodPost, utils.Struct2FlatMap(param)) if err != nil { return err } errResult := &Err{} if err := utils.Map2StructByJson(result, errResult, false); err != nil { return err } if errResult.ErrCode != 0 { return errors.New(errResult.ErrMsg) } return nil } // 创建会话群聊 // 只允许企业自建应用调用,且应用的可见范围必须是根部门; // 群成员人数不可超过管理端配置的“群成员人数上限”,且最大不可超过2000人; // 每企业创建群数不可超过1000/天; func (a *API) CreateAppChat(param *CreateAppChatParamReq) error { a.CheckAccessTokenExpiresIn() data, err := a.AccessAPI(WeChatBaseApi, CreateAppChat, http.MethodPost, utils.Struct2FlatMap(param)) if err != nil { return err } errResult := &Err{} if err := utils.Map2StructByJson(data, errResult, false); err != nil { return err } if errResult.ErrCode != 0 { return errors.New(errResult.ErrMsg) } return nil } // 获取所有的部门列表 func (a *API) GetAllDepartmentList() ([]*Department, error) { a.CheckAccessTokenExpiresIn() param := map[string]interface{}{"access_token": a.accessToken} data, err := a.AccessAPI(WeChatBaseApi, GetAllDepartmentListById, http.MethodGet, param) if err != nil { return nil, err } result := &GetAllDepartmentListRes{} if err := utils.Map2StructByJson(data, result, false); err != nil { return nil, err } if result.ErrCode != 0 { return nil, errors.New(result.ErrMsg) } return result.Department, nil } // 通过手机号获取用户消息 func (a *API) GetUserIdByMobile(mobile string) (string, error) { a.CheckAccessTokenExpiresIn() data, err := a.AccessAPI(WeChatBaseApi, GetUserByMobileUrl, http.MethodPost, map[string]interface{}{"mobile": mobile}) if err != nil { return "", err } result := &GetUserByMobileRes{} if err := utils.Map2StructByJson(data, result, false); err != nil { return "", err } if result.ErrCode != 0 { return "", errors.New(result.ErrMsg) } return result.UserId, nil }