Commit 23b6bfd5 by linboxuan

lin add .package-lock.json

parent b49dc714
const CtlBase = require("../../ctl.base");
var system = require("../../../system");
class StatisticsCtl extends CtlBase {
constructor() {
super("qifutong", CtlBase.getServiceName(StatisticsCtl));
constructor() {
super("qifutong", CtlBase.getServiceName(StatisticsCtl));
}
// 获取 渠道信息
async getAllChannels(pobj, qobj, req) {
try {
const rs = await this.service.getAllChannels(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 获取 渠道信息
async getAllChannels(pobj, qobj, req) {
try {
const rs = await this.service.getAllChannels(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 获取 渠道信息
async getAllService(pobj, qobj, req) {
try {
const rs = await this.service.getAllService(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 获取 产品信息
async getAllProducts(pobj, qobj, req) {
try {
const rs = await this.service.getAllProducts(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 获取 产品信息
async getAllProducts(pobj, qobj, req) {
try {
const rs = await this.service.getAllProducts(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 获取 pathName
async getPathName(pobj, qobj, req) {
try {
const rs = await this.service.getPathName(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 获取 pathName
async getPathName(pobj, qobj, req) {
try {
const rs = await this.service.getPathName(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 需求渠道分析
async getStatisticsByUappId(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByUappId(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 需求渠道分析
async getStatisticsByUappId(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByUappId(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 订单渠道分析
async getOrderStatisticsByUappId(pobj, qobj, req) {
try {
const rs = await this.service.getOrderStatisticsByUappId(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 订单渠道分析
async getOrderStatisticsByUappId(pobj, qobj, req) {
try {
const rs = await this.service.getOrderStatisticsByUappId(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 需求漏斗图
async getNeedFunnelStatistics(pobj, qobj, req) {
try {
const rs = await this.service.getNeedFunnelStatistics(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 需求漏斗图
async getNeedFunnelStatistics(pobj, qobj, req) {
try {
const rs = await this.service.getNeedFunnelStatistics(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 需求产品分析
async getStatisticsByProduct(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByProduct(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 需求产品分析
async getStatisticsByProduct(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByProduct(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 订单产品分析
async getOrderStatisticsByProduct(pobj, qobj, req) {
try {
const rs = await this.service.getOrderStatisticsByProduct(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 订单产品分析
async getOrderStatisticsByProduct(pobj, qobj, req) {
try {
const rs = await this.service.getOrderStatisticsByProduct(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
// 需求地区分析
async getStatisticsByArea(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByArea(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
// 需求地区分析
async getStatisticsByArea(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsByArea(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
async getNeedComparison(pobj, qobj, req) {
try {
const rs = await this.service.getNeedComparison(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
async getNeedComparison(pobj, qobj, req) {
try {
const rs = await this.service.getNeedComparison(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
async getOrdersComparison(pobj, qobj, req) {
try {
const rs = await this.service.getOrdersComparison(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
async getOrdersComparison(pobj, qobj, req) {
try {
const rs = await this.service.getOrdersComparison(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
async getStatisticsList(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsList(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
async getStatisticsList(pobj, qobj, req) {
try {
const rs = await this.service.getStatisticsList(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
async importTxNeeds(pobj, qobj, req) {
try {
const rs = await this.service.importTxNeeds(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
async importTxNeeds(pobj, qobj, req) {
try {
const rs = await this.service.importTxNeeds(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
async getNeedProductType(pobj, qobj, req) {
try {
const rs = await this.service.getNeedProductType(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
async getNeedProductType(pobj, qobj, req) {
try {
const rs = await this.service.getNeedProductType(pobj);
return system.getResult(rs);
} catch (err) {
return system.getResult(null, err.message)
}
}
}
......
......@@ -4,6 +4,9 @@ class StatisticsService {
async getAllChannels(pobj) {
return ToQiFuTong.getAllChannels();
}
async getAllService(pobj) {
return ToQiFuTong.getAllService();
}
async getAllProducts(pobj) {
return ToQiFuTong.getAllProducts();
}
......
......@@ -6,287 +6,295 @@ const qifutongUrl = settings.QIFUTONG.qifutongUrl();
const { appKey, secret } = settings.QIFUTONG;
class BaseClient {
constructor() {
this.appKey = appKey;
this.secret = secret;
this.instance = null;
}
static getInstance() {
if (!this.instance) {
this.instance = new BaseClient();
}
return this.instance;
}
/**
* 推送到 启服通
* @param {*} user
* @param {*} data
*/
async pushQiFuTong(url, data, user = 'center-manage',) {
const header = await this.getLoginByUserName(user);
return await this.postRequest(`${qifutongUrl}${url}`, data, header);
constructor() {
this.appKey = appKey;
this.secret = secret;
this.instance = null;
}
static getInstance() {
if (!this.instance) {
this.instance = new BaseClient();
}
return this.instance;
}
/**
* 推送到 启服通
* @param {*} user
* @param {*} data
*/
async pushQiFuTong(url, data, user = 'center-manage',) {
const header = await this.getLoginByUserName(user);
return await this.postRequest(`${qifutongUrl}${url}`, data, header);
}
async getLoginByUserName(user) {
const token = await this.getAppTokenByAppKey(this.appKey, this.secret);
const data = await this.postRequest(`${centerChannelUrl}/api/opreceive/accessAuth/springBoard`, {
"actionType": "getLoginByUserName",
"actionBody": {
"channelUserId": user,
"user": user,
"userName": user
}
}, {
token
});
return {
token,
userpin: data.userpin
}
async getLoginByUserName(user) {
const token = await this.getAppTokenByAppKey(this.appKey, this.secret);
const data = await this.postRequest(`${centerChannelUrl}/api/opreceive/accessAuth/springBoard`, {
"actionType": "getLoginByUserName",
"actionBody": {
"channelUserId": user,
"user": user,
"userName": user
}
}, {
token
});
return {
token,
userpin: data.userpin
}
}
async getAppTokenByAppKey(appKey, secret) {
const data = await this.postRequest(`${centerChannelUrl}/api/opreceive/accessAuth/getAppTokenByAppKey`, {
"actionType": "getAppTokenByAppKey",
"actionBody": {
"appkey": appKey,
"secret": secret
}
});
return data.token
}
async getAppTokenByAppKey(appKey, secret) {
const data = await this.postRequest(`${centerChannelUrl}/api/opreceive/accessAuth/getAppTokenByAppKey`, {
"actionType": "getAppTokenByAppKey",
"actionBody": {
"appkey": appKey,
"secret": secret
}
});
return data.token
}
async postRequest(url, data, headers = {}) {
try {
console.log(` ${url} : 请求信息 ------- `);
console.log(JSON.stringify(data))
console.log(JSON.stringify(headers))
let result = await axios.post(`${url}`, data, {
headers: {
'Content-Type': 'application/json',
...headers
}
});
result = result.data;
console.log(` ${url} : 返回信息 ------- `);
console.log(result);
if (result.status === 0) {
return result.data
} else {
throw new Error(result.msg)
}
} catch (err) {
console.log(` ${url} : 返回错误信息 ------- `);
console.log(err)
throw (err)
async postRequest(url, data, headers = {}) {
try {
console.log(` ${url} : 请求信息 ------- `);
console.log(JSON.stringify(data))
console.log(JSON.stringify(headers))
let result = await axios.post(`${url}`, data, {
headers: {
'Content-Type': 'application/json',
...headers
}
});
result = result.data;
console.log(` ${url} : 返回信息 ------- `);
console.log(result);
if (result.status === 0) {
return result.data
} else {
throw new Error(result.msg)
}
} catch (err) {
console.log(` ${url} : 返回错误信息 ------- `);
console.log(err)
throw (err)
}
}
async getAllChannels() {
const data = await this.pushQiFuTong('/web/auth/accessAuth/springBoard', {
"actionType": "getAllChannels",
"actionBody": {
}
});
return data;
}
async getAllProducts() {
const data = await this.pushQiFuTong('/web/action/product/springBoard', {
"actionType": "getAllProducts",
"actionBody": {
}
});
return data;
}
async getPathName() {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getPathName",
"actionBody": {
}
});
return data;
}
async getNeedProductType() {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedProductType",
"actionBody": {
}
});
return data;
}
async getStatisticsByUappId(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByUappId",
"actionBody": pobj
});
return data;
}
async getOrderStatisticsByUappId(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrderStatisticsByUappId",
"actionBody": pobj
});
return data;
}
async getNeedFunnelStatistics(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedFunnelStatistics",
"actionBody": pobj
});
return data;
}
async getStatisticsByProduct(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByProduct",
"actionBody": pobj
});
return data;
}
async getOrderStatisticsByProduct(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrderStatisticsByProduct",
"actionBody": pobj
});
return data;
}
async getStatisticsByArea(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByArea",
"actionBody": pobj
});
return data;
}
async getNeedComparison(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedComparison",
"actionBody": pobj
});
return data;
}
async getOrdersComparison(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrdersComparison",
"actionBody": pobj
});
return data;
}
async getAllChannels() {
const data = await this.pushQiFuTong('/web/auth/accessAuth/springBoard', {
"actionType": "getAllChannels",
"actionBody": {
}
});
return data;
}
async getAllService() {
const data = await this.pushQiFuTong('/web/auth/accessAuth/springBoard', {
"actionType": "getAllService",
"actionBody": {
}
});
return data;
}
async getAllProducts() {
const data = await this.pushQiFuTong('/web/action/product/springBoard', {
"actionType": "getAllProducts",
"actionBody": {
}
});
return data;
}
async getPathName() {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getPathName",
"actionBody": {
}
});
return data;
}
async getNeedProductType() {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedProductType",
"actionBody": {
}
});
return data;
}
async getStatisticsByUappId(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByUappId",
"actionBody": pobj
});
return data;
}
async getOrderStatisticsByUappId(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrderStatisticsByUappId",
"actionBody": pobj
});
return data;
}
async getNeedFunnelStatistics(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedFunnelStatistics",
"actionBody": pobj
});
return data;
}
async getStatisticsByProduct(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByProduct",
"actionBody": pobj
});
return data;
}
async getOrderStatisticsByProduct(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrderStatisticsByProduct",
"actionBody": pobj
});
return data;
}
async getStatisticsByArea(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getStatisticsByArea",
"actionBody": pobj
});
return data;
}
async getNeedComparison(pobj) {
const data = await this.pushQiFuTong('/web/action/opNeed/springBoard', {
"actionType": "getNeedComparison",
"actionBody": pobj
});
return data;
}
async getOrdersComparison(pobj) {
const data = await this.pushQiFuTong('/web/opaction/order/springBoard', {
"actionType": "getOrdersComparison",
"actionBody": pobj
});
return data;
}
async getStatisticsList(pobj) {
let url;
let query;
switch (pobj.listType) {
case "business":
delete pobj.listType;
url = '/web/action/opNeed/springBoard'
query = {
"actionType": "getNeedComparisonList",
"actionBody": {
...pobj,
tag: "need"
}
}
break
case "businessToOrder":
delete pobj.listType;
url = '/web/action/opNeed/springBoard'
query = {
"actionType": "getNeedComparisonList",
"actionBody": {
...pobj,
tag: "needToOrder"
}
}
break
case "order":
delete pobj.listType;
pobj.status = Number(pobj.status)
url = '/web/opaction/order/springBoard'
query = {
"actionType": "getOrdersComparisonList",
"actionBody": pobj
}
break
async getStatisticsList(pobj) {
let url;
let query;
switch (pobj.listType) {
case "business":
delete pobj.listType;
url = '/web/action/opNeed/springBoard'
query = {
"actionType": "getNeedComparisonList",
"actionBody": {
...pobj,
tag: "need"
}
}
const data = await this.pushQiFuTong(url, query);
return data;
break
case "businessToOrder":
delete pobj.listType;
url = '/web/action/opNeed/springBoard'
query = {
"actionType": "getNeedComparisonList",
"actionBody": {
...pobj,
tag: "needToOrder"
}
}
break
case "order":
delete pobj.listType;
pobj.status = Number(pobj.status)
url = '/web/opaction/order/springBoard'
query = {
"actionType": "getOrdersComparisonList",
"actionBody": pobj
}
break
}
const data = await this.pushQiFuTong(url, query);
return data;
}
async importTxNeeds(pobj) {
let url;
let query;
switch (pobj.type) {
case "biz":
url = '/web/opreceive/need/springBoard'
query = {
"actionType": "importNeeds",
"actionBody": {
"uapp_id": "53",
"needsArr": pobj.list
}
}
break
case "order":
url = '/web/opaction/order/springBoard'
query = {
"actionType": "importOrders",
"actionBody": {
"uapp_id": "53",
"ordersArr": pobj.list
}
}
break
async importTxNeeds(pobj) {
let url;
let query;
switch (pobj.type) {
case "biz":
url = '/web/opreceive/need/springBoard'
query = {
"actionType": "importNeeds",
"actionBody": {
"uapp_id": "53",
"needsArr": pobj.list
}
}
break
case "order":
url = '/web/opaction/order/springBoard'
query = {
"actionType": "importOrders",
"actionBody": {
"uapp_id": "53",
"ordersArr": pobj.list
}
}
const data = await this.pushQiFuTong(url, query);
return data;
break
}
const data = await this.pushQiFuTong(url, query);
return data;
}
async getPushFailLogList(pobj) {
const data = await this.pushQiFuTong('/web/action/opLog/getPushFailLogList', {
"actionType": "getPushFailLogList",
"actionBody": pobj
});
return data;
}
async getPushFailLogList(pobj) {
const data = await this.pushQiFuTong('/web/action/opLog/getPushFailLogList', {
"actionType": "getPushFailLogList",
"actionBody": pobj
});
return data;
}
async failLogrePush(pobj) {
const data = await this.pushQiFuTong('/web/action/opLog/rePush', {
"actionType": "rePush",
"actionBody": pobj
});
return data;
}
async failLogrePush(pobj) {
const data = await this.pushQiFuTong('/web/action/opLog/rePush', {
"actionType": "rePush",
"actionBody": pobj
});
return data;
}
// 获取一段时间内的所有日期
getAllDate(begin, end) {
let data = [];
begin = Moment(begin).format("YYYY-MM-DD");
end = Moment(end).format("YYYY-MM-DD");
if (begin == end) {
return [begin]
}
if ((new Date(end).getTime() - new Date(begin).getTime()) == 86400000) {
return [begin, end]
}
let ab = begin.split("-");
let ae = end.split("-");
let db = new Date();
db.setUTCFullYear(ab[0], ab[1] - 1, ab[2]);
let de = new Date();
de.setUTCFullYear(ae[0], ae[1] - 1, ae[2]);
let unixDb = db.getTime();
let unixDe = de.getTime();
data.push(begin);
for (let k = unixDb + 24 * 60 * 60 * 1000; k < unixDe;) {
data.push(Moment(new Date(parseInt(k))).format("YYYY-MM-DD"));
k = k + 24 * 60 * 60 * 1000;
}
data.push(end);
return data;
// 获取一段时间内的所有日期
getAllDate(begin, end) {
let data = [];
begin = Moment(begin).format("YYYY-MM-DD");
end = Moment(end).format("YYYY-MM-DD");
if (begin == end) {
return [begin]
}
if ((new Date(end).getTime() - new Date(begin).getTime()) == 86400000) {
return [begin, end]
}
judgeSize(a, b) {
return a >= b ? (a == b ? "rgba(0, 0, 0, 0.45)" : "red") : "green"
let ab = begin.split("-");
let ae = end.split("-");
let db = new Date();
db.setUTCFullYear(ab[0], ab[1] - 1, ab[2]);
let de = new Date();
de.setUTCFullYear(ae[0], ae[1] - 1, ae[2]);
let unixDb = db.getTime();
let unixDe = de.getTime();
data.push(begin);
for (let k = unixDb + 24 * 60 * 60 * 1000; k < unixDe;) {
data.push(Moment(new Date(parseInt(k))).format("YYYY-MM-DD"));
k = k + 24 * 60 * 60 * 1000;
}
data.push(end);
return data;
}
judgeSize(a, b) {
return a >= b ? (a == b ? "rgba(0, 0, 0, 0.45)" : "red") : "green"
}
}
module.exports = BaseClient;
\ No newline at end of file
......@@ -174,15 +174,14 @@
}
},
"ajv": {
"version": "5.5.2",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
"integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
"optional": true,
"version": "6.12.6",
"resolved": "https://registry.npm.taobao.org/ajv/download/ajv-6.12.6.tgz",
"integrity": "sha1-uvWmLoArB9l3A0WG+MO69a3ybfQ=",
"requires": {
"co": "^4.6.0",
"fast-deep-equal": "^1.0.0",
"fast-deep-equal": "^3.1.1",
"fast-json-stable-stringify": "^2.0.0",
"json-schema-traverse": "^0.3.0"
"json-schema-traverse": "^0.4.1",
"uri-js": "^4.2.2"
}
},
"ali-oss": {
......@@ -532,14 +531,23 @@
"asn1": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
"optional": true
"integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
},
"asn1.js": {
"version": "5.4.1",
"resolved": "https://registry.npm.taobao.org/asn1.js/download/asn1.js-5.4.1.tgz",
"integrity": "sha1-EamAuE67kXgc41sP3C7ilON4Pwc=",
"requires": {
"bn.js": "^4.0.0",
"inherits": "^2.0.1",
"minimalistic-assert": "^1.0.0",
"safer-buffer": "^2.1.0"
}
},
"assert-plus": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
"optional": true
"integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
},
"assign-symbols": {
"version": "1.0.0",
......@@ -578,14 +586,12 @@
"asynckit": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
"optional": true
"integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
},
"aws-sign2": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
"integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
"optional": true
"resolved": "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.7.0.tgz",
"integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
},
"aws4": {
"version": "1.7.0",
......@@ -1011,6 +1017,11 @@
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
"integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA=="
},
"bn.js": {
"version": "4.12.0",
"resolved": "https://registry.npm.taobao.org/bn.js/download/bn.js-4.12.0.tgz",
"integrity": "sha1-d1s/J477uXGO7HNh9IP7Nvu/6og="
},
"body-parser": {
"version": "1.18.3",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz",
......@@ -1273,9 +1284,8 @@
},
"caseless": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
"integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
"optional": true
"resolved": "https://registry.npm.taobao.org/caseless/download/caseless-0.12.0.tgz",
"integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
},
"caw": {
"version": "2.0.1",
......@@ -1529,7 +1539,6 @@
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
"integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
"optional": true,
"requires": {
"delayed-stream": "~1.0.0"
}
......@@ -1600,6 +1609,11 @@
"proto-list": "~1.2.1"
}
},
"connect-history-api-fallback": {
"version": "1.6.0",
"resolved": "https://registry.npm.taobao.org/connect-history-api-fallback/download/connect-history-api-fallback-1.6.0.tgz",
"integrity": "sha1-izIIk1kwjRERFdgcrT/Oq4iPl7w="
},
"connect-redis": {
"version": "3.3.3",
"resolved": "https://registry.npmjs.org/connect-redis/-/connect-redis-3.3.3.tgz",
......@@ -1743,9 +1757,9 @@
"integrity": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig=="
},
"crypto-js": {
"version": "3.1.9-1",
"resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-3.1.9-1.tgz",
"integrity": "sha1-/aGedh/Ad+Af+/3G6f38WeiAbNg="
"version": "3.3.0",
"resolved": "https://registry.npm.taobao.org/crypto-js/download/crypto-js-3.3.0.tgz",
"integrity": "sha1-hG3RzOL2iqz6FWyFePkmpgm3l2s="
},
"css-select": {
"version": "2.1.0",
......@@ -1817,7 +1831,6 @@
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
"integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
"optional": true,
"requires": {
"assert-plus": "^1.0.0"
}
......@@ -2163,8 +2176,7 @@
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
"optional": true
"integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
},
"denque": {
"version": "1.2.3",
......@@ -3065,8 +3077,7 @@
"extsprintf": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
"optional": true
"integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
},
"fancy-log": {
"version": "1.3.2",
......@@ -3092,10 +3103,9 @@
}
},
"fast-deep-equal": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
"integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
"optional": true
"version": "3.1.3",
"resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-3.1.3.tgz?cache=0&sync_timestamp=1591599675178&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-deep-equal%2Fdownload%2Ffast-deep-equal-3.1.3.tgz",
"integrity": "sha1-On1WtVnWy8PrUSMlJE5hmmXGxSU="
},
"fast-glob": {
"version": "3.1.0",
......@@ -3156,10 +3166,9 @@
}
},
"fast-json-stable-stringify": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
"integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
"optional": true
"version": "2.1.0",
"resolved": "https://registry.npm.taobao.org/fast-json-stable-stringify/download/fast-json-stable-stringify-2.1.0.tgz",
"integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM="
},
"fast-levenshtein": {
"version": "2.0.6",
......@@ -3274,8 +3283,7 @@
"forever-agent": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
"integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
"optional": true
"integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
},
"fork-stream": {
"version": "0.0.4",
......@@ -3287,7 +3295,6 @@
"version": "2.3.2",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
"integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
"optional": true,
"requires": {
"asynckit": "^0.4.0",
"combined-stream": "1.0.6",
......@@ -3446,7 +3453,6 @@
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
"integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
"optional": true,
"requires": {
"assert-plus": "^1.0.0"
}
......@@ -3876,17 +3882,15 @@
},
"har-schema": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
"integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
"optional": true
"resolved": "https://registry.npm.taobao.org/har-schema/download/har-schema-2.0.0.tgz",
"integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
},
"har-validator": {
"version": "5.0.3",
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
"integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
"optional": true,
"version": "5.1.5",
"resolved": "https://registry.npm.taobao.org/har-validator/download/har-validator-5.1.5.tgz?cache=0&sync_timestamp=1596084327526&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhar-validator%2Fdownload%2Fhar-validator-5.1.5.tgz",
"integrity": "sha1-HwgDufjLIMD6E4It8ezds2veHv0=",
"requires": {
"ajv": "^5.1.0",
"ajv": "^6.12.3",
"har-schema": "^2.0.0"
}
},
......@@ -4043,9 +4047,8 @@
},
"http-signature": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
"resolved": "https://registry.npm.taobao.org/http-signature/download/http-signature-1.2.0.tgz?cache=0&sync_timestamp=1600868483922&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.2.0.tgz",
"integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
"optional": true,
"requires": {
"assert-plus": "^1.0.0",
"jsprim": "^1.2.2",
......@@ -4582,8 +4585,7 @@
"is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
"optional": true
"integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo="
},
"is-utf8": {
"version": "0.2.1",
......@@ -4721,20 +4723,17 @@
"json-schema": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz",
"integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=",
"optional": true
"integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM="
},
"json-schema-traverse": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz",
"integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=",
"optional": true
"version": "0.4.1",
"resolved": "https://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz",
"integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA="
},
"json-stringify-safe": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
"optional": true
"integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus="
},
"jsonfile": {
"version": "4.0.0",
......@@ -4791,7 +4790,6 @@
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz",
"integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=",
"optional": true,
"requires": {
"assert-plus": "1.0.0",
"extsprintf": "1.3.0",
......@@ -4975,9 +4973,9 @@
}
},
"lodash": {
"version": "4.17.10",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
"integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg=="
"version": "4.17.21",
"resolved": "https://registry.npm.taobao.org/lodash/download/lodash-4.17.21.tgz?cache=0&sync_timestamp=1613835838133&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Flodash%2Fdownload%2Flodash-4.17.21.tgz",
"integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw="
},
"lodash._basecopy": {
"version": "3.0.1",
......@@ -5542,6 +5540,11 @@
"integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
"dev": true
},
"minimalistic-assert": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/minimalistic-assert/download/minimalistic-assert-1.0.1.tgz",
"integrity": "sha1-LhlN4ERibUoQ5/f7wAznPoPk1cc="
},
"minimist": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
......@@ -5563,9 +5566,9 @@
}
},
"moment": {
"version": "2.22.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.22.1.tgz",
"integrity": "sha512-shJkRTSebXvsVqk56I+lkb2latjBs8I+pc2TzWc545y2iFnSjm7Wg0QMh+ZWcdSLQyGEau5jI8ocnmkyTgr9YQ=="
"version": "2.29.1",
"resolved": "https://registry.npm.taobao.org/moment/download/moment-2.29.1.tgz",
"integrity": "sha1-sr52n6MZQL6e7qZGnAdeNQBvo9M="
},
"moment-timezone": {
"version": "0.5.17",
......@@ -6318,6 +6321,14 @@
"resolved": "https://registry.npmjs.org/pdfcrowd/-/pdfcrowd-4.3.1.tgz",
"integrity": "sha1-26C9qLJ3GJa8KUu4bD/CZGssULw="
},
"pem-jwk": {
"version": "2.0.0",
"resolved": "https://registry.npm.taobao.org/pem-jwk/download/pem-jwk-2.0.0.tgz",
"integrity": "sha1-HFuyZGEvw5E0CQf1wd5gwG0i8IU=",
"requires": {
"asn1.js": "^5.0.1"
}
},
"pend": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
......@@ -6326,9 +6337,8 @@
},
"performance-now": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
"optional": true
"resolved": "https://registry.npm.taobao.org/performance-now/download/performance-now-2.1.0.tgz",
"integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns="
},
"picomatch": {
"version": "2.1.1",
......@@ -6525,6 +6535,11 @@
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
"integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM="
},
"psl": {
"version": "1.8.0",
"resolved": "https://registry.npm.taobao.org/psl/download/psl-1.8.0.tgz",
"integrity": "sha1-kyb4vPsBOtzABf3/BWrM4CDlHCQ="
},
"pump": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
......@@ -6719,31 +6734,79 @@
"dev": true
},
"request": {
"version": "2.87.0",
"resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz",
"integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==",
"optional": true,
"version": "2.88.2",
"resolved": "https://registry.npm.taobao.org/request/download/request-2.88.2.tgz",
"integrity": "sha1-1zyRhzHLWofaBH4gcjQUb2ZNErM=",
"requires": {
"aws-sign2": "~0.7.0",
"aws4": "^1.6.0",
"aws4": "^1.8.0",
"caseless": "~0.12.0",
"combined-stream": "~1.0.5",
"extend": "~3.0.1",
"combined-stream": "~1.0.6",
"extend": "~3.0.2",
"forever-agent": "~0.6.1",
"form-data": "~2.3.1",
"har-validator": "~5.0.3",
"form-data": "~2.3.2",
"har-validator": "~5.1.3",
"http-signature": "~1.2.0",
"is-typedarray": "~1.0.0",
"isstream": "~0.1.2",
"json-stringify-safe": "~5.0.1",
"mime-types": "~2.1.17",
"oauth-sign": "~0.8.2",
"mime-types": "~2.1.19",
"oauth-sign": "~0.9.0",
"performance-now": "^2.1.0",
"qs": "~6.5.1",
"safe-buffer": "^5.1.1",
"tough-cookie": "~2.3.3",
"qs": "~6.5.2",
"safe-buffer": "^5.1.2",
"tough-cookie": "~2.5.0",
"tunnel-agent": "^0.6.0",
"uuid": "^3.1.0"
"uuid": "^3.3.2"
},
"dependencies": {
"aws4": {
"version": "1.11.0",
"resolved": "https://registry.npm.taobao.org/aws4/download/aws4-1.11.0.tgz?cache=0&sync_timestamp=1604101421225&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Faws4%2Fdownload%2Faws4-1.11.0.tgz",
"integrity": "sha1-1h9G2DslGSUOJ4Ta9bCUeai0HFk="
},
"extend": {
"version": "3.0.2",
"resolved": "https://registry.npm.taobao.org/extend/download/extend-3.0.2.tgz",
"integrity": "sha1-+LETa0Bx+9jrFAr/hYsQGewpFfo="
},
"mime-db": {
"version": "1.47.0",
"resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.47.0.tgz?cache=0&sync_timestamp=1617306118828&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-db%2Fdownload%2Fmime-db-1.47.0.tgz",
"integrity": "sha1-jLMT5Zll08Bc+/iYkVomevRqM1w="
},
"mime-types": {
"version": "2.1.30",
"resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.30.tgz?cache=0&sync_timestamp=1617340124913&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-types%2Fdownload%2Fmime-types-2.1.30.tgz",
"integrity": "sha1-bnvotMR5gl+F7WMmaV23P5MF1i0=",
"requires": {
"mime-db": "1.47.0"
}
},
"oauth-sign": {
"version": "0.9.0",
"resolved": "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz",
"integrity": "sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU="
},
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz",
"integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew="
},
"tough-cookie": {
"version": "2.5.0",
"resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.5.0.tgz?cache=0&sync_timestamp=1584647110516&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftough-cookie%2Fdownload%2Ftough-cookie-2.5.0.tgz",
"integrity": "sha1-zZ+yoKodWhK0c72fuW+j3P9lreI=",
"requires": {
"psl": "^1.1.28",
"punycode": "^2.1.1"
}
},
"uuid": {
"version": "3.4.0",
"resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz",
"integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4="
}
}
},
"requestretry": {
......@@ -7490,7 +7553,6 @@
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.1.tgz",
"integrity": "sha1-Ew9Zde3a2WPx1W+SuaxsUfqfg+s=",
"optional": true,
"requires": {
"asn1": "~0.2.3",
"assert-plus": "^1.0.0",
......@@ -8150,6 +8212,21 @@
}
}
},
"uri-js": {
"version": "4.4.1",
"resolved": "https://registry.npm.taobao.org/uri-js/download/uri-js-4.4.1.tgz?cache=0&sync_timestamp=1610237812324&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Furi-js%2Fdownload%2Furi-js-4.4.1.tgz",
"integrity": "sha1-mxpSWVIlhZ5V9mnZKPiMbFfyp34=",
"requires": {
"punycode": "^2.1.0"
},
"dependencies": {
"punycode": {
"version": "2.1.1",
"resolved": "https://registry.npm.taobao.org/punycode/download/punycode-2.1.1.tgz",
"integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew="
}
}
},
"url-parse-lax": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz",
......@@ -8245,7 +8322,6 @@
"version": "1.10.0",
"resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
"integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
"optional": true,
"requires": {
"assert-plus": "^1.0.0",
"core-util-is": "1.0.2",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment