您的位置:首页 > 移动开发 > 微信开发

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

2020-09-01 14:34 1371 查看

目标:

通过企业微信成员相关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 "获取":
            //从根部门递归获取成员详情
  
3344
          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**

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: