<!-- source: https://weapp.eteams.cn/build/techdoc/wdoc/index.html#/public/repository/b7c818b1-9132-46a7-bfaf-78fc6747791a/doc/265558855092535296 -->

window.sjrProjectSDK

1、获取全局基础配置

window.sjrProjectSDK.getBaseConfig()

2、左侧 树组件

window.sjrProjectSDK.ProjectOrgTreePlugin 组织维度

```javascript
//使用方法
const DemoPlugin = window.sjrProjectSDK.ProjectOrgTreePlugin //全局ecode

window.weappUtils.eventEmitter.on('@weapp/designer', 'plugin_center.ready.compId', ({ registerPlugin }) => {
  if (DemoPlugin) {
    registerPlugin(new DemoPlugin());
  }
});
```

3、左侧 项目树任务树 加载完成后

projectTaskTreeLoadClickFirst

```typescript
// config {delay: 200} 延迟200ms轮询查
window.sjrProjectSDK.projectTaskTreeLoadClickFirst(pageId,compId, config)
```

4、eb 页面内部传参（不走路由填充数据， eb页面筛选可以通过类似 {demoParams}）

setPageCompParams

```typescript
/*
pageId 页面id
urlParams 保存参数
config overwrite 参入参数是否保留 默认保留， overwrite: true时会替换所有参数
*/
window.sjrProjectSDK.setPageCompParams(pageId, urlParams,config:{overwrite})
//sjrProjectSDK.setPageCompParams(page,{demoParams:1})
```

5、九宫格字段自定义渲染（针对项目树任务树 进度条和状态和紧急程度等效果基于接口请求配置自定义渲染）

appendRegField

```typescript
// 自定义渲染方法
window.sjrProjectSDK.appendRegField(COMPID, fieldName);

// 参数描述
// COMPID - 组件ID，可在EB页面中选中组件后复制ID获取
// fieldName - 需要走统一自定义渲染逻辑的字段名称，可传string或string[]
// 支持的字段和渲染效果可于本文档中 “EB项目搭建字段配置建议” 查询

// example - 我的项目页面紧急程度、项目状态自定义渲染、如上图二
// 含义：对于组件ID为c92fe1f7df5248e38b64523a686f8356的组件，将对应字段为项目表中紧急程度、项目类型、项目状态的字段，使用统一自定义渲染逻辑进行处理
window.sjrProjectSDK.appendRegField('c92fe1f7df5248e38b64523a686f8356', ['projectBasePriority', 'projectBaseType', 'projectBaseStatus']);
```

6、id查询项目任务基本信息

```typescript
getProjectSimpleConfig({ projectId = '', projectTypeId = '' },cb, errCb)
getProjectConfig({ projectId = '' }, cb, errCb)
getTaskSimpleConfig({ taskId = '', taskTypeId = '' }, cb, errCb)
getTaskConfig({ taskId = '' }, cb, errCb)（暂未提供）
```

7、EB页面调用表单页，在表单页获取字段方式

![image.png](../_assets/265558855092535296/001-ad1cc2f230.png)

```javascript
//EB表单获取配置方式
const cardSdk = ebdfpageSDK.getCardSDK()
const projectId = cardSdk.getBaseInfo()?.projectId //projectIds是页面传过来的数据
```

8、lincese权限判断

TEAMS.licenseModules.indexOf('project-sjr')

9、getLinkFormPageButtonReleParam 获取关联页面 打开对应表单页面 打开按钮时获取传入关联的参数

```javascript
sjrProjectSDK.getLinkFormPageButtonReleParam()
```

9、customRenderEmptyComp 自定义渲染空数据展示效果

```javascript
sjrProjectSDK.customRenderEmptyComp({compId = ''})
```

10、表单页面按钮中间打开弹窗高度配置

![recording.gif](../_assets/265558855092535296/002-7fed1c1322.gif)

```javascript
const data = {
  formId:'1020319921372479524', //formId看gif图
  dialogConfig:{
    height: '500px', //弹窗高度
    width: '30%' //弹窗宽度
  } 
}
window.sjrProjectSDK.customFormDialogPropsConfig(data)
```
