Commit 5051f51e by 孙香冬

no message

parent 11a6dc83
import moment = require("moment");
import { getKeyValueNumberOutData, getChartOutData, getKeyValueNotNumberOutData, getListOutData, getScatterFigureOutData, getStringOutData } from "../cal/out";
import { get监管服务能力_企业测试分析 } from "../data/analysisExcelData";
......@@ -14,25 +15,93 @@ export function getData(req, res) {
res.send(ret);
}
export function getInterfaceData(req, res) {
let ret:any = {};
//获取企业日里程接口 startTime endTime
let result = [{time_day:"2022-07-28", enterprise:"奔驰", total_mileage:11}, {time_day:"2022-07-27", enterprise:"宝马", total_mileage:11}];
//月度测试
let {newDateArr, whereDateArr} = getPreMonthDay(12);
let mileageInfo;
let timeInfo;
let dataArr;
for( let i = 0; i < 12; i++) {
dataArr = newDateArr[i];
let yearDate = whereDateArr[i]; //2207
let st = yearDate + '01';
let et = yearDate + '31';
mileageInfo = getmileageInfo(1, st, et, yearDate); //企业日里程
}
let 月度测试里程分布Data = {测试: {unit:'km', dataInfo: mileageInfo}, 功能测试: {unit:'km', dataInfo: timeInfo}}
ret["api5"] = getChartOutData("月度测试里程分布", 月度测试里程分布Data);
//企业测试
let corporateDayMileage:any = `http://10.51.50.136:8090/sql/execute?index=1&st=220701&et=220731`;
let corporateDayMileageData = corporateDayMileage.result;
let enterpriseData;//企业里程
let enterpriseInfo;
let mileageData;
corporateDayMileageData.forEach( element => {
let {time_day, enterprise, total_mileage} = element; //日 企业 总里程
mileageData += total_mileage;
enterpriseInfo = {key: enterprise, value: mileageData};
})
enterpriseData.push(enterpriseInfo);
let 企业测试里程分布Data = {测试: {unit:'km', dataInfo: enterpriseData}, 功能测试: {unit:'km', dataInfo: timeInfo}}
ret["api6"] = getChartOutData("企业测试里程分布", 企业测试里程分布Data);
let 企业测试分析 = [];
result.forEach(element => {
});
//企业脱离自动驾驶比率
let st = moment().subtract(1, "days").format("YYMMDD"+" 00:00:00");
let et = moment().subtract(1, "days").format("YYMMDD"+" 24:00:00");
let businessDisengagementRate:any = `http://10.51.50.136:8090/sql/execute?index=13&st=${st}&et=${et}`;
let businessDisengagementRateData = businessDisengagementRate.result;
let businessDisengagement = {};
businessDisengagementRateData.forEach( enterpriseInfo => {
let {enterprise, auto_mileage, disengagement} = enterpriseInfo;
businessDisengagement[enterprise] = disengagement + "/" + auto_mileage;
})
ret["api7"] = getKeyValueNumberOutData("企业脱离自动驾驶比率", businessDisengagement);
// ret["api1"] = getKeyValueNumberOutData("企业测试分析", excelData.企业测试分析 );// {}
// ret["api2"] = getChartOutData("各企业测试里程和时长分析", excelData.各企业测试里程和时长分析 );
// ret["api3"] = getKeyValueNumberOutData("功能测试总和", excelData.功能测试总和 );
// ret["api4"] = getChartOutData("各企业功能测试里程碑和时长分析", excelData.各企业功能测试里程碑和时长分析 );
res.send(ret);
}
ret["api1"] = getKeyValueNumberOutData("企业测试分析", excelData.企业测试分析 );// {}
ret["api2"] = getChartOutData("各企业测试里程和时长分析", excelData.各企业测试里程和时长分析 );
ret["api3"] = getKeyValueNumberOutData("功能测试总和", excelData.功能测试总和 );
ret["api4"] = getChartOutData("各企业功能测试里程碑和时长分析", excelData.各企业功能测试里程碑和时长分析 );
function getmileageInfo(index, st, et, ...yearDate) {
let mileageInfo; //月度测试里程
let mileageData;//月里程
let time_month;
//获取企业日里程接口 index st et
let corporateDayMileage:any = `http://10.51.50.136:8090/sql/execute?index=${index}&st=${st}&et=${et}`; //[{},...] 接口数据
let corporateDayMileageData = corporateDayMileage.result;
//月度测试
corporateDayMileageData.forEach(element => {
let {time_day, enterprise, total_mileage} = element; //日 企业 总里程
mileageData += total_mileage;
});
res.send(ret);
mileageInfo.push({key: yearDate, value: mileageData});
return mileageInfo;
}
/**
* 获取几个月前的日期
* @param monthNum 月数
* @returns
*/
function getPreMonthDay(monthNum) {
let whereDateArr = [];
let newDateArr = [];
for (let i = 1; i <= monthNum; i++) {
let whereDate = moment().subtract(i, "months").format("YYMM");
whereDateArr.push(whereDate);
let newDate = moment().subtract(i, "months").format("YYYY.MM");
newDateArr.push(newDate);
}
return {newDateArr, whereDateArr};
}
\ No newline at end of file
......@@ -3,7 +3,7 @@ import * as fs from "fs";
import { BizError } from "../util/bizError";
import { analysisXml } from "../util/myXML";
export let port = Number(process.env.PORT) || Number(process.argv[3]) || 7576; //如果xml里面没有配置 就会使用到这里的端口
export let port = Number(process.env.PORT) || Number(process.argv[3]) || 30001; //如果xml里面没有配置 就会使用到这里的端口
export let dbConfig;
......
import { initConfig, port } from "./config/serverConfig";
import { httpServer } from "./net/http_server";
async function lanuch() {
await initConfig();
// await initConfig();
httpServer.createServer(port);
console.log('This indicates that the server is started successfully.');
}
......
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