t-comm
Version:
专业、稳定、纯粹的工具库
126 lines (125 loc) • 3.91 kB
TypeScript
import type { IRumSecretItem, SecretInfoType } from '../types';
/**
* 生成TAM汇总数据图
* @ignore
* @param {object} options 配置
* @param {string} options.date 日期,yyyyMMdd格式
* @param {Array<number>} options.groupIdList groupId列表
*
* @param {object} options.secretInfo 密钥信息
* @param {string} options.secretInfo.apiKey apiKey
* @param {string} options.secretInfo.loginName loginName
* @param {Function} options.secretInfo.getPwdCode getPwdCode
* @param {Function} options.secretInfo.encrypt encrypt
*
* @param {object} options.extraDataMap 额外数据Map
* @param {object} options.ignoreProjectIdList 忽略的projectIdList
*
* @param {object} options.tableHeaderMap 表格头部Map
* @returns {string} 图片base64
* @example
* const requestSummaryScoreDate = Date.now() - 1 * 24 * 60 * 60 * 1000;
*
* const tamGroupIdList = [1, 2, 3];
*
* const summaryScoreTableHeaderMap = {
* ProjectName: {
* name: '项目名称',
* tableWidth: 95,
* },
* PagePv: {
* name: 'PV',
* tableWidth: 65,
* },
* };
*
* await genSummaryData({
* date: requestSummaryScoreDate,
* groupIdList: tamGroupIdList,
* secretInfo: {
* getPwdCode,
* encrypt,
* apiKey: process.env.AEGIS_APP_KEY,
* loginName: 'lee',
* },
* tableHeaderMap: summaryScoreTableHeaderMap,
* });
*/
export declare function genSummaryData({ date, groupIdList, secretInfo, extraDataMap, ignoreProjectIdList, tableHeaderMap, rumSecretList, }: {
date: number | string | Date;
groupIdList: Array<number>;
secretInfo: SecretInfoType;
extraDataMap: any;
ignoreProjectIdList: Array<string | number>;
tableHeaderMap: Record<string, any>;
rumSecretList?: Array<IRumSecretItem>;
}): Promise<{
img: string;
data: {
data: import("../types").ScoreInfoType[];
projectIdList: number[];
};
} | undefined>;
/**
* 生成TAM汇总数据并发送到机器人
* @param {object} options 配置
* @param {string} options.date 日期,yyyyMMdd格式
* @param {Array<number>} options.groupIdList groupId列表
*
* @param {object} options.secretInfo 密钥信息
* @param {string} options.secretInfo.apiKey apiKey
* @param {string} options.secretInfo.loginName loginName
* @param {Function} options.secretInfo.getPwdCode getPwdCode
* @param {Function} options.secretInfo.encrypt encrypt
*
* @param {object} options.extraDataMap 额外数据Map
* @param {object} options.ignoreProjectIdList 忽略的projectIdList
* @param {object} options.tableHeaderMap 表格头部Map
*
* @param {object} options.webhookUrl 机器人回调地址
* @param {object} options.chatId 会话Id
*
* @example
* const requestSummaryScoreDate = Date.now() - 1 * 24 * 60 * 60 * 1000;
*
* const tamGroupIdList = [1, 2, 3];
*
* const summaryScoreTableHeaderMap = {
* ProjectName: {
* name: '项目名称',
* tableWidth: 95,
* },
* PagePv: {
* name: 'PV',
* tableWidth: 65,
* },
* };
*
* await genSummaryDataAndSendRobot({
* date: requestSummaryScoreDate,
* groupIdList: tamGroupIdList,
* secretInfo: {
* getPwdCode,
* encrypt,
* apiKey: process.env.AEGIS_APP_KEY,
* loginName: 'lee',
* },
* webhookUrl: tamRobotWebhook,
* chatId: tamRobotChatId,
* tableHeaderMap: summaryScoreTableHeaderMap,
* });
*/
export declare function genSummaryDataAndSendRobot({ date, groupIdList, secretInfo, extraDataMap, ignoreProjectIdList, tableHeaderMap, webhookUrl, chatId, rumSecretList, }: {
date: number;
groupIdList: Array<number>;
secretInfo: SecretInfoType;
extraDataMap?: {};
ignoreProjectIdList?: Array<string>;
tableHeaderMap?: {};
webhookUrl: string;
chatId: string;
rumSecretList?: Array<IRumSecretItem>;
}): Promise<{
data: import("../types").ScoreInfoType[];
projectIdList: number[];
} | undefined>;