Commit bc3697bf by lixinming

no message

parent 7b74c544
<config> <config>
<port>30003</port> <portConfig>30001</portConfig>
<sockentPort>30002</sockentPort> <socketPortConfig>30002</socketPortConfig>
<rightView>http://10.51.50.136:8090/sql/execute</rightView> <rightView>http://10.51.50.136:8090/sql/execute</rightView>
<leftView> <leftView>
<cloudResource>http://10.51.50.140:8080/api/static/PrivateCloudUsageStatics</cloudResource> <cloudResource>http://10.51.50.140:8080/api/static/PrivateCloudUsageStatics</cloudResource>
......
import { getChartOutData, getKeyValueNumberOutData, getListOutData } from "../../cal/out"; import { getChartOutData, getKeyValueNumberOutData, getListOutData } from "../../cal/out";
import { separateDataAndUint } from "../../cal/privateTools"; import { separateDataAndUint } from "../../cal/privateTools";
import { getHardware } from "../../data/interface/hardwareData"; import { getHardware } from "../../data/interface/hardwareData";
import { getCsgkBasicData, getDetachmentRatio, getTestAnalysis, getTestLicense, getTestTotalTime } from "../../data/interface/interfaceService"; import { getCsgkData, getDetachmentRatio, getTestAnalysis, getTestTotalTime } from "../../data/interface/interfaceService";
import { getMap } from "../../data/interface/mapInterfaceData"; import { getMap } from "../../data/interface/mapInterfaceData";
import { getOnlieCarCount } from "../../data/interface/wsData";
//云资源 //云资源
...@@ -27,56 +28,22 @@ export async function getYZY(req, res) { ...@@ -27,56 +28,22 @@ export async function getYZY(req, res) {
export async function getCSGK(req, res) { export async function getCSGK(req, res) {
let ret:any = {}; let ret:any = {};
let 基础数据data = [ let {测试牌照分布data, result, 今日数据, 今日测试, 今日功能测试} = await getCsgkData();
{key:"测试企业数", value:"128家", icon: "http://192.168.0.117:30001/csgk/1.png"},
{key:"企业牌照数", value:"1456个", icon:"http://192.168.0.117:30001/csgk/2.png"},
{key:"测试总里程", value:"1876km", icon:"http://192.168.0.117:30001/csgk/3.png"},
{key:"测试总时长", value:"462h", icon:"http://192.168.0.117:30001/csgk/4.png"},
{key:"功能测试总里程", value:"3105km", icon:"http://192.168.0.117:30001/csgk/5.png"},
{key:"功能测试总时长", value:"5635h", icon:"http://192.168.0.117:30001/csgk/6.png"},
];
let 测试概况基础数据 = await getCsgkBasicData();
let 基础数据 = [];
for (let key in 测试概况基础数据) {
let index = 1;
基础数据.push({key, value: 测试概况基础数据[key], icon: `http://192.168.0.117:30001/csgk/${index}.png`});
index++;
}
let 基础数据Info = []; let 基础数据Info = [];
基础数据.forEach(info => { result.forEach((info, index) => {
let {key, value, icon} = info; let {key, value} = info;
let {dataNum, dataUnit} = separateDataAndUint(value); let {dataNum, dataUnit} = separateDataAndUint(value);
基础数据Info.push({key, value:dataNum, icon, unit:dataUnit}); 基础数据Info.push({key, value:dataNum, unit:dataUnit, icon:`http://192.168.0.117:30001/csgk/${index+1}.png`});
}) });
ret["api1"] = ({title:"基础数据", dataList: 基础数据Info}); ret["api1"] = ({title:"基础数据", dataList: 基础数据Info});
let 今日数据data = {"在线车辆数":"5625辆"}; let 今日数据data = {"在线车辆数":`${getOnlieCarCount()}辆`};
ret["api2"] = getKeyValueNumberOutData("今日数据", 今日数据data); ret["api2"] = getKeyValueNumberOutData("今日数据", 今日数据data);
ret["api3"] = getKeyValueNumberOutData("今日测试", 今日测试);
let 今日测试data = {"里程":"4118km", "时长":"184.2h"}; ret["api4"] = getKeyValueNumberOutData("今日功能测试", 今日功能测试);
ret["api3"] = getKeyValueNumberOutData("今日测试", 今日测试data);
let 今日功能测试data = {"里程":"1478km", "时长":"421.3h"};
ret["api4"] = getKeyValueNumberOutData("今日功能测试", 今日功能测试data);
// let 测试牌照分布data = {"http://192.168.0.117:30001/img/AutoX.png":"61辆", "http://192.168.0.117:30001/img/阿利昂斯.png":"45辆",
// "http://192.168.0.117:30001/img/百度.png":"31辆", "http://192.168.0.117:30001/img/宝马.png":"47辆",
// "http://192.168.0.117:30001/img/初速度.png":"65辆", "http://192.168.0.117:30001/img/滴滴.png":"71辆",
// "http://192.168.0.117:30001/img/丰田.png":"18辆", "http://192.168.0.117:30001/img/华为.png":"23辆",
// "http://192.168.0.117:30001/img/吉利汽车.png":"33辆", "http://192.168.0.117:30001/img/商汤.png":"16辆",
// "http://192.168.0.117:30001/img/上汽大通.png":"22辆", "http://192.168.0.117:30001/img/上汽大众.png":"69辆",
// "http://192.168.0.117:30001/img/上汽红岩.png":"11辆", "http://192.168.0.117:30001/img/上汽赛可.png":"36辆",
// "http://192.168.0.117:30001/img/上汽通用.png":"16辆", "http://192.168.0.117:30001/img/上汽通用车.png":"73辆",
// "http://192.168.0.117:30001/img/深兰.png":"51辆", "http://192.168.0.117:30001/img/通用中国.png":"56辆",
// "http://192.168.0.117:30001/img/图森未来.png":"33辆", "http://192.168.0.117:30001/img/蔚来.png":"67辆",
// "http://192.168.0.117:30001/img/仙途智能.png":"19辆", "http://192.168.0.117:30001/img/小马智行.png":"46辆",
// "http://192.168.0.117:30001/img/依行科技.png":"30辆", "http://192.168.0.117:30001/img/中车.png":"71辆",
// "http://192.168.0.117:30001/img/中智行.png":"21辆"};
let 测试牌照分布data = await getTestLicense();
ret["api5"] = getKeyValueNumberOutData("测试牌照分布", 测试牌照分布data); ret["api5"] = getKeyValueNumberOutData("测试牌照分布", 测试牌照分布data);
let 路侧监控视频data = {"src":"http://10.51.50.53:8278/live/13060200882000000001@31011402601318800184@34020000001320000001.m3u8?vhost=bduv0utmss4c3nzidjn.a.e-web.com.cn", "type": 'application/x-mpegURL'}; let 路侧监控视频data = {"src":"http://10.51.50.53:8278/live/13060200882000000001@31011402601318800184@34020000001320000001.m3u8?vhost=bduv0utmss4c3nzidjn.a.e-web.com.cn", "type": 'application/x-mpegURL'};
......
...@@ -4,8 +4,8 @@ import { BizError, SysError } from "../util/bizError"; ...@@ -4,8 +4,8 @@ import { BizError, SysError } from "../util/bizError";
import { analysisXml } from "../util/myXML"; import { analysisXml } from "../util/myXML";
import { SYSTEMERRORENUM } from "./errorEnum"; import { SYSTEMERRORENUM } from "./errorEnum";
export let port = Number(process.env.PORT) || Number(process.argv[3]) || 30003; export let port;
export let sockentPort; export let socketPort;
export let dbConfig; export let dbConfig;
export let appConfig = { export let appConfig = {
...@@ -25,9 +25,9 @@ export async function initConfig() { ...@@ -25,9 +25,9 @@ export async function initConfig() {
let configInfo:any = await analysisXml(configStr); let configInfo:any = await analysisXml(configStr);
if (!configInfo || !configInfo.config) console.log("xml中无配置加载"); if (!configInfo || !configInfo.config) console.log("xml中无配置加载");
else { else {
let {port, sockentPort, rightView, leftView, mapView} = configInfo.config; let {portConfig, socketPortConfig, rightView, leftView, mapView} = configInfo.config;
if ( !getConf(port)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 port'); if ( !getConf(portConfig)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 port');
if ( !getConf(sockentPort)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 sockentPort'); if ( !getConf(socketPortConfig)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 sockentPort');
if ( !getConf(rightView)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 rightView'); if ( !getConf(rightView)) throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 rightView');
if ( !getConf(leftView) || !getConf(leftView[0].cloudResource) || !getConf(leftView[0].physicalResource) ) { if ( !getConf(leftView) || !getConf(leftView[0].cloudResource) || !getConf(leftView[0].physicalResource) ) {
throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 leftView 或 physicalResource || cloudResource'); throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 leftView 或 physicalResource || cloudResource');
...@@ -36,6 +36,8 @@ export async function initConfig() { ...@@ -36,6 +36,8 @@ export async function initConfig() {
throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 mapView 或 online || broken || token'); throw new SysError(SYSTEMERRORENUM.初始化配置失败, 'serverConfig.xml中 缺少 mapView 或 online || broken || token');
} }
port = portConfig[0];
socketPort = socketPortConfig[0];
//左屏 //左屏
appConfig.cloudResource = leftView[0].cloudResource[0]; appConfig.cloudResource = leftView[0].cloudResource[0];
appConfig.physicalResource = leftView[0].physicalResource[0]; appConfig.physicalResource = leftView[0].physicalResource[0];
......
import * as WebSocket from "ws" import * as WebSocket from "ws"
import { sendMsg } from "../../biz/jgfwnl/wsData";
//在线车辆
let vehicleList:any = [];
//连接锁 //连接锁
let lockReconnect = false; let lockReconnect = false;
...@@ -97,19 +95,18 @@ export async function initWSData() { ...@@ -97,19 +95,18 @@ export async function initWSData() {
await createSocket(); await createSocket();
} }
//在线车辆
let distinctMap = {};//{id:1}
export function stats(data) { export function stats(data) {
let count = 0; let {vehicleid, latitude, longitude} = data;
vehicleList.push(data); distinctMap[vehicleid] = 1;
//记录车辆
let map = new Map(); sendMsg({lng:longitude, lat:latitude, vehicleid});
for(let item of vehicleList) { }
if (!map.has(item.vehicleid)) {
map.set(item.vehicleid, item); export function getOnlieCarCount() {
count++; return Object.keys(distinctMap).length;
}
}
// let vehicleQueue = [...map.values()];
return count;
} }
/* data 数据长这样 /* data 数据长这样
......
import { initSocketServer } from "./biz/jgfwnl/wsData"; import { initSocketServer } from "./biz/jgfwnl/wsData";
import { initConfig, port, sockentPort } from "./config/serverConfig"; import { initConfig, port, socketPort } from "./config/serverConfig";
import { initData } from "./data/interface/interfaceService"; import { initData } from "./data/interface/interfaceService";
import { httpServer } from "./net/http_server"; import { httpServer } from "./net/http_server";
async function lanuch() { async function lanuch() {
await initConfig();//初始化配置解析 await initConfig();//初始化配置解析
httpServer.createServer(port); httpServer.createServer(port);
await initSocketServer(sockentPort); await initSocketServer(socketPort);
await initData(); await initData();
console.log('This indicates that the server is started successfully.'); console.log('This indicates that the server is started successfully.');
} }
......
...@@ -30,7 +30,8 @@ export class SysError extends Error { ...@@ -30,7 +30,8 @@ export class SysError extends Error {
reqErrorMsg = msg; reqErrorMsg = msg;
logErrorMsg = msg; logErrorMsg = msg;
} else { } else {
logErrorMsg += ` | ${msgs[i]} `; if (typeof msgs[i] == 'object') logErrorMsg += ` | ${JSON.stringify(msgs[i])} `;
else logErrorMsg += ` | ${msgs[i]} `;
} }
} }
......
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