在企業級應用開發過程中,針對組織架構中的部門進行操作是非常常見的需求。今天我們要介紹的是釘釘的chooseDepartments
?API,它允許用戶以部門為單位進行選擇,并返回所選部門的相關信息。
📌 功能概述
chooseDepartments
?API主要用于選取企業內部的一個或多個部門,并返回這些部門的詳細信息,包括部門ID、名稱以及該部門下的員工數量等。與以人為維度的選擇不同,此API聚焦于部門層級的操作,非常適合用于權限設置、通知發送等場景。
💻 支持平臺
平臺 | 版本要求 |
---|---|
Android | 6.0.0+ |
iOS | 6.0.0+ |
Harmony | 7.0.0+ |
Mac | 6.0.0+ |
Windows | 6.0.0+ |
注意:網頁應用(原H5微應用)和小程序均從6.0.0版本開始支持此功能。
📲 應用類型支持
- 企業內部應用:支持
- 第三方企業應用:支持
- 第三方個人應用:支持
這意味著無論你是為企業內部定制的應用程序,還是面向外部市場的應用程序,都可以利用這個API來增強你的應用功能。
🔒 鑒權規則
- 在H5應用中,需通過調用
dd.config
完成鑒權后使用。 - 對于小程序應用,可以直接調用無需額外鑒權,簡化了開發流程。
?? 參數說明
繼承通用輸入對象,并擴展以下關鍵參數:
參數名 | 類型 | 必填 | 示例值 | 描述 |
---|---|---|---|---|
title | String | 否 | “標題” | 選擇頁面的標題。 |
multiple | Boolean | 否 | true | 是否允許多選:true - 多選;false - 單選(默認)。 |
limitTips | String | 否 | “選擇數量不能超過20個” | 超過限定數量返回的提示內容。 |
maxDepartments | Number | 否 | 100 | 最大可選部門數。 |
pickedDepartments | Array | 否 | [“deptId0”,“deptId1”] | 已選的部門id列表。 |
disabledDepartments | Array | 否 | [“deptId0”,“deptId1”] | 不可選的部門id列表。 |
requiredDepartments | Array | 否 | [“deptId0”,“deptId1”] | 必選部門(不可取消選中狀態)。 |
appId | String | H5應用必填 | 微應用agentId | H5應用必填。 |
corpId | String | H5應用必填 | 企業的corpId | H5應用必填。 |
📤 返回結果
成功調用后,將返回包含選定部門信息的對象,具體字段如下:
字段名 | 類型 | 示例值 | 描述 |
---|---|---|---|
userCount | Number | 5 | 所選部門下所有員工的數量。 |
departments | Array | [{ “id”: “68094649x”, “name”: “人事部”, “number”: 10 }] | 包含部門ID、名稱及人數的對象數組。 |
departmentsCount | Number | 2 | 所選部門的數量。 |
🛠 使用示例
以下是調用chooseDepartments
的一個簡單示例:
dd.chooseDepartments({appId: 'appId示例值',title: '選擇部門',corpId: 'corpId示例值',multiple: true,limitTips: '選擇數量不能超過20個',maxDepartments: 100,pickedDepartments: ['deptId0', 'deptId1'],disabledDepartments: ['deptId0', 'deptId1'],requiredDepartments: ['deptId0', 'deptId1'],success: (res) => {console.log('選擇的部門:', res);// 輸出格式:// {// userCount: 5,// departments: [{ id: '68094649x', name: '人事部', number: 10 }],// departmentsCount: 2// }},fail: () => {},complete: () => {},
});
希望今天的介紹能幫助你更好地理解和使用chooseDepartments
?API。未來我們將繼續探討更多實用的釘釘API,敬請期待!