# 业务
# 分享
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 不支持 | 不需要 | 
// 全量引入调用方式
yy.biz.util.share({
  type: Number,
  url: String,
  title: String,
  content: String,
  image: String,
  onSuccess: function () {
    // onSuccess 将在调起分享组件成功之后回调
    /**/
  },
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
share({...});
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| type | Number | 分享类型,0:全部组件默认; 1:只能分享到 yach;2:不能分享,只有刷新按钮 | |
| url | String | url 地址 | |
| title | String | 分享标题 | |
| content | String | 分享内容 | |
| image | String | 分享的图片 url 地址 | 
# 返回说明
无
# 调试
biz.util.share   
 # 发票v4.1.0
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 不支持 | 不需要 | 
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| platformType | String('ali'或'wx') | 是 | 调起支付宝管家或微信卡包 | 
# 返回说明
| 参数 | 参数类型 | 说明 | 
|---|---|---|
| data | Object | 根据平台返回数据 | 
// 全量引入调用方式
yy.biz.util.invoice({
  platformType: String,
  onSuccess: function () {
    // onSuccess 将在调起分享组件成功之后回调
    /**/
  },
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
invoice({...});
biz.util.invoice   
 # 工作台消息推送
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
import yy from "yach.open.jssdk";
function ceshi() {
  //处理自己逻辑
}
// 绑定事件
yy.on("pushWorkMsg", ceshi);
// 清除事件
yy.off("pushWorkMsg", ceshi);
on   
 # 打开共创之眼
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
import yy from "yach.open.jssdk";
yy.biz.util.openTogetherEyeWebview({
  id: String, // 位置id
  name: String, // pc必传
});
# 获取共创之眼配置
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
import yy from "yach.open.jssdk";
yy.biz.util.getTogetherConfig({
  id: String, // 位置id
  onSuccess: function (result) {},
  onFail: function () {},
});
# 唤醒第三方应用v4.1.2
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| scheme | String | 是 | 调起第三方应用 | 
// 全量引入调用方式
yy.biz.util.rouseApp({
  scheme: String,
  onSuccess: function () {
    // onSuccess 将在调起分享组件成功之后回调
    /**/
  },
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
rouseApp({...});
biz.util.rouseApp   
 # 投诉 v4.1.4-beta1
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| appName | String | 是 | 应用名称 | 
| contentId | String | 是 | 投诉文章 id | 
| appId | String | 是 | 应用 id | 
| complaintContent | String | 否 | 投诉内容 | 
| complainList | Array | 否 | 投诉选项 [{id: 1001, name: '投诉 1', name_en: 'complain1'}]。 id:选项 id, name:中文选项名称, name_en:英文选项名称  注:中文选项不超过 8 个汉字,英文选项尽量精简  | 
// 全量引入调用方式
yy.biz.util.complain({
  appName: string,          // 应用名称
  contentId: string,        // 投诉文章 id
  appId: string,            // 应用 id
  complainList: [],         // 投诉选项 [{id: 1001, name: '投诉1', name_en: 'complain1'}]
  onSuccess: function () {
    // onSuccess 将在调起分享组件成功之后回调
    /**/
  },
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
rouseApp({...});
biz.util.complain   
 # 选部门组件 v4.1.5-beta1
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 不需要 | 
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| deptId | String | 否 | 部门 id,不传则取当前用户的顶级部门 id | 
| appId | String | 是 | 应用 id | 
// 全量引入调用方式
yy.biz.util.selectDepartment({
  deptId: string,          // 部门 id
  appId: string,        // 应用 id
  onSuccess: function () {
    // onSuccess 返回选择结果
  },
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
rouseApp({...});
# 返回数据
注:数据字段全是后端接口返回
{
    "org": [
    {
        "deptName": "待入职虚拟部门",  // 组织名称
        "deptId": 20373, // 组织id
        "visibleUserNum": 0,
        "userNum": "176",
        "hasSubOg": 0, // 是否有子部门
        "og_order": 18,
    }],
    "condition":
    {
        "user_type": [ // 员工类型
        {
            "id": 1, // 员工类型id
            "name": "全职员工", // 员工类型名称
            "cp_id": 1,
            "is_exclude": 0 // 是否默认选中
        }],
        "user_level": [ // 员工职级
        {
            "id": 4, // 员工职级id
            "name": "4职级", // 员工职级名称
            "cp_id": 1
        }]
    }
}
biz.util.selectDepartment   
 # 创建编辑日程
# 使用说明
创建编辑日程。
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 不支持 | 不支持 | 支持 | 是 | 
// 全量引入调用方式
yy.biz.util.createModifySchedule({
  scheduleId?: string; // 日程 ID,编辑日程时传递
  title?: string; // 日程标题
  start_time?: number; // 起始时间戳
  end_time?: number; // 结束时间戳
  address?: string; // 日程地点
  userIds?: string[]; // 用户列表 uuid(yachid)
  meeting_type?: boolean; // 是否为线上会议
  remark?: string, // 描述
  workbenchInfo: {
    app_id: string; // 利用接口获取 agentId 作为参数传入;
    icon_link?: string; // 自定义按钮链接
    'icon_link_extra[pc]'?: string; // 自定义按钮链接对端兼容,如填写,在各端将对icon_link字段进行覆盖
    'con_link_extra[ios]'?: string;
    'icon_link_extra[android]'?: string;
    tpl_code: string; // 日程模板号
  };
  onSuccess: function (result) {},
  onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
createModifySchedule({...});
# 参数说明
| 参数 | 参数类型 | 必须 | 说明 | 
|---|---|---|---|
| scheduleId | string | 否 | 用于日程编辑使用(注:编辑日程时,需要将创建日程返回的 sid 作为 scheduleId 传入) | 
| title | string | 否 | 日程标题 | 
| start_time | number | 否 | 起始时间戳(秒级) | 
| end_time | number | 否 | 结束时间戳(秒级) | 
| address | string | 否 | 日程地点 | 
| userIds | string[] | 否 | 用户列表 uuid(yachid) | 
| meeting_type | boolean | 否 | 是否为线上会议 | 
| remark | string | 否 | 描述 | 
| workbenchInfo | Object | 是 | |
| tpl_code | 是 | 日程模板 | |
| app_id | 是 | 利用这个接口获取 agentId 作为参数传入(js_config 获取 (opens new window)) | |
| icon_link | 否 | 自定义按钮链接 | |
| icon_link_extra[pc] | 否 | 自定义按钮链接对端兼容,如填写,在各端将对 icon_link 字段进行覆盖 | |
| icon_link_extra[ios] | 否 | 同上 | |
| icon_link_extra[android] | 否 | 同上 | 
# 返回数据
注:数据字段全是后端接口返回
{
  "code":200,
  "msg":"",
  "obj":{
    "sid":"Xs4UYd7kFkM",
    "log_id":"dayu_3c4a57dbc6dee449bafb3ece1cc2738b",
    "title":"测试",
    "start_time":1628753400,
    "end_time":1628757000,
    "address":"海兴",
    "meeting_type": true,
    "user_info": {
      "name":"王其",
      "pic":"https://yach-static.zhiyinlou.com/yach/avatar1/a3e04129108c4682ce516bf4b963180f.jpg",
      "work_code":"302130"
    },
    "meeting_url": "", // 会议链接
    "biz_id": "", // 业务实体对应日程唯一id,可通过其操作开放平台取消接口
    "version":"2.0"
  }
}
# 调试
biz.util.createModifySchedule   
 # 建议反馈 v4.1.22
# 使用说明
创建建议反馈。
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 是 | 
// 全量引入调用方式
yy.biz.util.feedback({
  appId: string; // 微应用的Id
  appKey: string; // 微应用的app key
  title?: string; // 标题
  placeholder?: string; // 输入字段预期值的提示信
  onSuccess: function (result) {}, // 提交成功之后回调
  onFail: function (err) {}, // 提交失败之后回调
});
// 按需加载调用方式,参数与全量引入相同
feedback({...});
# 参数说明
| 参数 | 参数类型 | 必须 | 说明 | 
|---|---|---|---|
| appId | string | 是 | 微应用的Id | 
| appKey | string | 是 | 微应用的app key | 
| title | string | 否 | 标题 | 
| placeholder | string | 否 | 输入字段预期值的提示信息 | 
# 调试
biz.util.feedback   
 # 工作台窗口全屏 v4.1.31-beta1
# 使用说明
工作台窗口全屏。客户端版本 >= 1.7.9
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 不支持 | 不支持 | 支持 | 否 | 
// 全量引入调用方式
yy.primary.fullScreen({
  onSuccess: function (result) {}, // 提交成功之后回调
  onFail: function (err) {}, // 提交失败之后回调
});
// 按需加载调用方式,参数与全量引入相同
fullScreen({...});
# 调试
primary.fullScreen   
 # 工作台窗口退出全屏 v4.1.31-beta1
# 使用说明
工作台窗口退出全屏。客户端版本 >= 1.7.9
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 不支持 | 不支持 | 支持 | 否 | 
// 全量引入调用方式
yy.primary.exitFullScreen({
  onSuccess: function (result) {}, // 提交成功之后回调
  onFail: function (err) {}, // 提交失败之后回调
});
// 按需加载调用方式,参数与全量引入相同
exitFullScreen({...});
# 调试
primary.exitFullScreen   
 # 添加应用至导航 v4.3.7
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持 | 支持 | 支持 | 是 | 
// 全量引入调用方式
yy.biz.util.addAppToNav({
  appId: '111',
  platform: '3',
  onSuccess: function (result) {}, // 提交成功之后回调
  onFail: function (result) {}, // 提交失败之后回调
});
// 按需加载调用方式,参数与全量引入相同
addAppToNav({...});
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| appId | String | 是 | 应用 id | 
| platform | String | 否 | 应用添加到目标平台1-pc、2-移动端、3-两个平台都添加,默认值为3 | 
# 返回说明
| 参数 | 参数类型 | 说明 | 
|---|---|---|
| code | String | 0:成功,-2:失败 | 
| message | String | 提示信息 | 
| data | Object | 上传返回内容 | 
| data[errorCode] | String | 50046 :添加应用超过PC端导航数量限制; 50047: 添加应用超过移动端导航数量限制 50048: 添加应用已经存在PC端 50049: 添加应用已经存在移动端 50050: 应用不存在或用户没有此应用权限  | 
# 调试
biz.util.addAppToNav   
 # 知识空间选择 v4.4.0
# 使用说明
| Android | iOS | PC | 是否需要鉴权 | 
|---|---|---|---|
| 支持v1.9.12 | 支持v1.9.12 | 支持 | 是 | 
// 全量引入调用方式
yy.biz.util.knowledgeBaseSelect({
  isAddToBase: true,
  list: [{'node_name': '知音楼官网', 'node_type': 'custom_link', 'link': 'https://www.zhiyinlou.com'}],
  onSuccess: function (result) {}, // 提交成功之后回调
  onFail: function (result) {}, // 提交失败之后回调
});
// 按需加载调用方式,参数与全量引入相同
knowledgeBaseSelect({...});
# 参数说明
| 参数 | 参数类型 | 必传 | 说明 | 
|---|---|---|---|
| title | string | 否 | 窗口标题 | 
| isAddToBase | boolean | 否 | 是否添加至知识库,true:添加至知识库,false:不添加至知识库,默认值为true | 
| source | string | 是 | 调用来源,建议以各自业务命名 | 
| list | {node_name: '知音楼官网', node_type: 'custom_link', link: 'https://www.zhiyinlou.com'}[] | 否 | 添加到知识库中的内容,node_type 仅支持 custom_link | 
# 返回说明
| 参数 | 参数类型 | 说明 | 
|---|---|---|
| code | String | 0:成功,-2:失败 | 
| message | String | 提示信息 | 
| data | data[space] | 空间信息 | 
| data[node] | 目标节点信息 | |
| data[firstNode] | 添加成功后第一条节点信息 | 
# 调试
biz.util.knowledgeBaseSelect