t-comm
Version:
专业、稳定、纯粹的工具库
178 lines (173 loc) • 4.95 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var tslib_es6 = require('../../tslib.es6-01322ba9.js');
var canvas_multiImg = require('../../canvas/multi-img.js');
var wecomRobot_batchSend = require('../../wecom-robot/batch-send.js');
var tam_img_customEventImg = require('./custom-event-img.js');
var tam_img_summaryImg = require('./summary-img.js');
require('../../canvas/get-canvas.js');
require('../../node-img/img.js');
require('../../wecom-robot/base.js');
require('../../wecom-robot/helper.js');
require('axios');
require('../../wecom-robot/send-img.js');
require('../../canvas/table.js');
require('../../list/list.js');
require('../../time/time.js');
require('../api/custom-event.js');
require('../api/credential.js');
require('../../date/timeStamp.js');
require('../parse/custom-event.js');
require('../../node/fs-util.js');
require('fs');
require('path');
require('../../fs/fs.js');
require('../../number/number.js');
require('../../list/parse-list.js');
require('../parse/header.js');
require('../api/rum-score.js');
require('../../tencent-cloud/base/base.js');
require('../api/summary-score.js');
require('../parse/summary.js');
/**
* 生成多个图片并发送机器人
* @param {object} options 配置
*
* @example
*
* const requestMultiImgDate = Date.now() - 1 * 24 * 60 * 60 * 1000;
*
* const tamGroupIdList = [1, 2, 3];
*
* const summaryScoreTableHeaderMap = {
* ProjectName: {
* name: '项目名称',
* tableWidth: 95,
* },
* PagePv: {
* name: 'PV',
* tableWidth: 65,
* },
* };
*
* const eventProjectMap = {
* 62659: {
* name: 'aaaaa',
* },
* 57706: {
* name: 'bbbbb',
* extraProjectId: 66379,
* },
* };
*
* const eventMap = {
* WX_SUC: {
* // 总和
* type: 'SUMMARY',
* target: ['ENTER_GAME_WX_SUC', 'LAUNCH_GAME_SUC_WX'],
* },
* WX_FAIL: {
* // 总和
* type: 'SUMMARY',
* target: ['ENTER_GAME_WX_FAIL', 'LAUNCH_GAME_FAIL_WX'],
* },
* };
*
* const eventTableHeaderMap = {
* ProjectName: {
* name: '项目名称',
* tableWidth: 95,
* },
* ALL_SUMMARY: {
* name: '拉起总数',
* tableWidth: 65,
* },
* };
*
* await genMultiImgAndSendRobot({
* date: requestMultiImgDate,
* secretInfo: {
* getPwdCode,
* encrypt,
* apiKey: process.env.AEGIS_APP_KEY,
* loginName: 'lee',
* },
* webhookUrl: tamRobotWebhook,
* chatId: tamRobotChatId,
*
* groupIdList: tamGroupIdList,
* eventProjectIdMap: eventProjectMap,
* tableHeaderMap: summaryScoreTableHeaderMap,
*
* eventMap,
* eventTableHeaderMap,
* });
*
*
*/
function genMultiImgAndSendRobot(_a) {
var date = _a.date,
groupIdList = _a.groupIdList,
secretInfo = _a.secretInfo,
_b = _a.extraDataMap,
extraDataMap = _b === void 0 ? {} : _b,
_c = _a.ignoreProjectIdList,
ignoreProjectIdList = _c === void 0 ? [] : _c,
_d = _a.tableHeaderMap,
tableHeaderMap = _d === void 0 ? {} : _d,
webhookUrl = _a.webhookUrl,
chatId = _a.chatId,
_e = _a.env,
env = _e === void 0 ? 'production' : _e,
eventMap = _a.eventMap,
eventProjectIdMap = _a.eventProjectIdMap,
eventTableHeaderMap = _a.eventTableHeaderMap;
return tslib_es6.__awaiter(this, void 0, void 0, function () {
var result, summaryScoreImg, data, launchGameImg, img;
return tslib_es6.__generator(this, function (_f) {
switch (_f.label) {
case 0:
return [4 /*yield*/, tam_img_summaryImg.genSummaryData({
date: date,
groupIdList: groupIdList,
secretInfo: secretInfo,
extraDataMap: extraDataMap,
ignoreProjectIdList: ignoreProjectIdList,
tableHeaderMap: tableHeaderMap
})];
case 1:
result = _f.sent();
if (!result) return [2 /*return*/];
summaryScoreImg = result.img, data = result.data;
return [4 /*yield*/, tam_img_customEventImg.genCustomEventImg({
date: date,
projectIdMap: eventProjectIdMap,
env: env,
secretInfo: secretInfo,
eventMap: eventMap,
tableHeaderMap: eventTableHeaderMap
})];
case 2:
launchGameImg = _f.sent();
if (!launchGameImg) return [2 /*return*/];
return [4 /*yield*/, canvas_multiImg.mergeMultiCanvasPic({
imgs: [summaryScoreImg, launchGameImg]
})];
case 3:
img = _f.sent();
if (!img || !chatId) {
return [2 /*return*/];
}
return [4 /*yield*/, wecomRobot_batchSend.batchSendWxRobotBase64Img({
img: img,
webhookUrl: webhookUrl,
chatId: chatId
})];
case 4:
_f.sent();
return [2 /*return*/, data];
}
});
});
}
exports.genMultiImgAndSendRobot = genMultiImgAndSendRobot;