UserInformationHelper
UserInformationHelper 提供批量添加和编辑人员信息的能力,适用于人员导入、批量更新等场景。
API 方法
BatchAddUserInformationsAsync — 批量添加人员
批量新增人员信息记录。
Task BatchAddUserInformationsAsync(List<ObjectData> list);
示例:
// 批量导入新员工
var users = new List<ObjectData>
{
new ObjectData
{
{ "name", "张三" },
{ "number", "EMP001" },
{ "email", "zhangsan@example.com" },
{ "department", "技术部" }
},
new ObjectData
{
{ "name", "李四" },
{ "number", "EMP002" },
{ "email", "lisi@example.com" },
{ "department", "产品部" }
}
};
await sdk.UserInformationHelper.BatchAddUserInformationsAsync(users);
BatchEditUserInformationsAsync — 批量编辑人员
批量修改已有人员的信息。
Task BatchEditUserInformationsAsync(List<ObjectData> list);
示例:
// 批量更新员工联系方式
var updates = new List<ObjectData>
{
new ObjectData { { "id", "user-001" }, { "phone", "13800138000" } },
new ObjectData { { "id", "user-002" }, { "phone", "13900139000" } }
};
await sdk.UserInformationHelper.BatchEditUserInformationsAsync(updates);
典型场景
数据导入后创建人员
public async Task<object> ExecuteAsync(ComponentContext context, ChameleonSDK sdk)
{
// 解析导入文件
var importedUsers = ParseImportFile(importContent);
// 转换为 ObjectData 列表
var userList = importedUsers.Select(u => new ObjectData
{
{ "name", u.Name },
{ "number", u.EmployeeNo },
{ "email", u.Email },
{ "mobilePhone", u.Phone }
}).ToList();
// 批量添加
await sdk.UserInformationHelper.BatchAddUserInformationsAsync(userList);
return new { success = true, count = userList.Count };
}
注意事项
ObjectData的字段名需与人员实体中定义的字段编码一致- 批量操作会一次性提交所有数据,注意单次数据量不宜过大
- 编辑时需要传入记录的
id字段以定位要更新的记录
相关文档
- AccountHelper — 人员的身份和角色管理
- 添加编辑人员示例 — 完整的 C# 脚本示例