async function run($input, $output, $modules = modules) {
let commonWelcomeQuery = await modules.data.queryData("5f4647d829fa640a919d57ff", { "5f464815e233c00a9094345e": "通用" });
if (commonWelcomeQuery.length > 0) {
//初始化为通用欢迎语
let welcome = commonWelcomeQuery[0];
//根据userid查询成员的欢迎语
let welcomeQuery = await modules.data.queryData("5f4647d829fa640a919d57ff", { "5f46482d29fa640a919d5801": $input.userid });
welcome = welcomeQuery.length > 0 ? welcomeQuery[0] : welcome;
let nowTime = new Date().getTime();
//欢迎语初始化为发送文本内容
let msgData = {
welcome_code: $input.welcomeCode,
text: {
content: welcome["5f46483929fa640a919d5802"]
}
};
let create_at = "";
let isExpired = false;
let media_id = "";
switch (welcome["5f464af329fa640a919d5809"]) {//欢迎语类型
case "图片":
create_at = new Number(welcome["5f464de7e233c00a9094346e"] + "000");
isExpired = (nowTime - create_at) > 3 * 24 * 60 * 60 * 1000;//素材超过3天失效
media_id = welcome["5f464dc0e233c00a9094346d"];
if (isExpired) {
//重新上传图片
let mediaName = new Date().getTime() + ".png";
let getMediaId = await modules.wxworkApi.uploadMediaByUrl(welcome["5f464dc0e233c00a9094346d"], "image", mediaName);
media_id = getMediaId.media_id;
//更新图片素材
let form = {
"5f464dc0e233c00a9094346d": getMediaId.media_id,
"5f464de7e233c00a9094346e": getMediaId.created_at
}
modules.data.updateData("5f4647d829fa640a919d57ff", welcome._id, form);
}
//文本+图片
msgData = {
welcome_code: $input.welcomeCode,
text: {
content: welcome["5f46483929fa640a919d5802"]
},
image: {
media_id: media_id
}
};
break;
case "图文":
//文本+图文
msgData = {
welcome_code: $input.welcomeCode,
text: {
content: welcome["5f46483929fa640a919d5802"]
},
link: {
title: welcome["5f46486329fa640a919d5804"],
picurl: welcome["5f46487029fa640a919d5805"],
desc: welcome["5f464878e233c00a90943460"],
url: welcome["5f464881e233c00a90943461"]
}
};
break;
case "小程序":
create_at = new Number(welcome["5f464e10e233c00a90943472"] + "000");
isExpired = (nowTime - create_at) > 3 * 24 * 60 * 60 * 1000;//临时素材超过3天失效
media_id = welcome["5f464e06e233c00a90943471"];
if (isExpired) {
//重新上传封面
let mediaName = new Date().getTime() + ".png";
let getMediaId = await modules.wxworkApi.uploadMediaByUrl(welcome["5f4722b4e233c00a90943587"], "image", mediaName);
media_id = getMediaId.media_id;
//更新小程序封面素材
let form = {
"5f464e06e233c00a90943471": getMediaId.media_id,
"5f464e10e233c00a90943472": getMediaId.created_at
}
modules.data.updateData("5f4647d829fa640a919d57ff", welcome._id, form)
}
//文本+小程序
msgData = {
welcome_code: $input.welcomeCode,
text: {
content: welcome["5f46483929fa640a919d5802"]
},
miniprogram: {
title: welcome["5f464891e233c00a90943462"],
pic_media_id: media_id,
appid: welcome["5f4648a4e233c00a90943463"],
page: welcome["5f4648afe233c00a90943464"]
}
};
break;
}
//发送欢迎语
modules.wxworkApi.request(
{
method: 'post',
url: 'externalcontact/send_welcome_msg',
data: msgData
}
)
}
}