Node.JS调用企业微信API:成员的增删查改

时间:2020-09-14 19:12:24   收藏:0   阅读:18
目标:

通过企业微信成员相关API实现成员的查询、新增、修改、删除功能

实现环境:

白码低代码平台(该平台提供企业微信API,可直接调用,减少前期配置调试工作)

平台语言:

使用node.js开发。

准备工作:

准备一个企业微信管理员账号。

实现步骤:

1、选择企业微信API模板创建云函数

技术图片

2、登录企业微信后台开启通讯录同步。

技术图片

3、配置API参数:corpid(我的企业->企业id)、corpsecret(通讯录同步->secret)

技术图片

4、代码

async?function?run($input,?$output,?$modules?=?modules)?{
????let?type?=?$input.type;
????//成员性别
????let?genderMap?=?{
????????0:?"未知",
????????1:?"男",
????????2:?"女",
????????"未知":?0,
????????"男":?1,
????????"女":?2
????}

????
????switch?(type)?{
????????case?"获取":
????????????//从根部门递归获取成员详情
????????????let?getUserList?=?await?modules.wxworkApi.getDepartmentUserList(1,?1);
//成员状态
????         let?statusMap?=?{
??????          ??1:?"已激活",
??????          ??2:?"已禁用",
???????          ?4:?"未激活",
???????          ?5:?"退出企业"
????         }

????????????//存储到数据表中
????????????let?userList?=?getUserList.userlist;
????????????for?(let?i?=?0;?i?<?userList.length;?i++)?{
????????????????let?user?=?userList[i];
????????????????let?form?=?{
????????????????????"5f48e1dfd875b26465c383e0":?user.userid,//userid
????????????????????"5f48e1e6d875b26465c383e1":?user.name,//姓名
????????????????????"5f48e2a5d875b26465c383e4":?user.avatar,//头像
????????????????????"5f48e2699e2f9f645fec477a":?user.main_department,//主部门
????????????????????"5f48e235d875b26465c383e3":?genderMap[user.gender],//性别
????????????????????"5f48e2509e2f9f645fec4779":?user.mobile,//手机号
????????????????????"5f48e2c1d875b26465c383e5":?statusMap[user.status]//状态
????????????????}
????????????????modules.data.saveData("5f48e1d9d875b26465c383df",?form);
????????????}

????????????break;
????????case?"新增":
????????????let?user?=?await?modules.data.getData("5f48e1d9d875b26465c383df",?$input.user_id);
????????????let?data?=?{
????????????????userid:?user["5f48e1dfd875b26465c383e0"],//userid
????????????????name:?user["5f48e1e6d875b26465c383e1"],//姓名
????????????????awatar:?user["5f48e2a5d875b26465c383e4"],//头像
????????????????main_department:?user["5f48e2699e2f9f645fec477a"],//主部门
????????????????gender:?genderMap[user["5f48e235d875b26465c383e3"]],//性别
????????????????mobile:?user["5f48e2509e2f9f645fec4779"]//手机号
????????????}
????????????//在企业微信创建成员
????????????modules.wxworkApi.createUser(data);
????????????break;

????????case?"修改":
????????????let?user?=?await?modules.data.getData("5f48e1d9d875b26465c383df",?$input.user_id);
????????????let?userid?=?user["5f48e1dfd875b26465c383e0"];
????????????let?data?=?{
????????????????userid:?userid,//userid
????????????????name:?user["5f48e1e6d875b26465c383e1"],//姓名
????????????????awatar:?user["5f48e2a5d875b26465c383e4"],//头像
????????????????main_department:?user["5f48e2699e2f9f645fec477a"],//主部门
????????????????gender:?genderMap[user["5f48e235d875b26465c383e3"]],//性别
????????????????mobile:?user["5f48e2509e2f9f645fec4779"]//手机号
????????????}
????????????//更新成员
????????????modules.wxworkApi.updateUser(userid,?data);
????????????break;

????????case?"删除":
????????????let?user?=?await?modules.data.getData("5f48e1d9d875b26465c383df",?$input.user_id);
????????????let?userid?=?user["5f48e1dfd875b26465c383e0"];
????????????//删除成员
????????????modules.wxworkApi.deleteUser(userid);
????????????break;
????}
}

5、写完后在功能添加API步骤调用,即可通过点击功能按钮触发此API。

技术图片
技术图片

企业微信官方API:https://work.weixin.qq.com/api/doc/90000/90135/90664

白码使用的API库:https://github.com/liwenyue/co-wxwork-api**

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!