Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
motorCity
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
node_server
motorCity
Commits
bc3697bf
Commit
bc3697bf
authored
Aug 18, 2022
by
lixinming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
7b74c544
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
36 additions
and
69 deletions
+36
-69
serverConfig.xml
serverConfig.xml
+2
-2
data.ts
src/biz/jgfwnl/data.ts
+11
-44
serverConfig.ts
src/config/serverConfig.ts
+7
-5
interfaceService.ts
src/data/interface/interfaceService.ts
+0
-0
wsData.ts
src/data/interface/wsData.ts
+12
-15
main.ts
src/main.ts
+2
-2
bizError.ts
src/util/bizError.ts
+2
-1
No files found.
serverConfig.xml
View file @
bc3697bf
<config>
<config>
<port
>
30003
</port
>
<port
Config>
30001
</portConfig
>
<socke
ntPort>
30002
</sockentPort
>
<socke
tPortConfig>
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>
...
...
src/biz/jgfwnl/data.ts
View file @
bc3697bf
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
{
getCsgk
BasicData
,
getDetachmentRatio
,
getTestAnalysis
,
getTestLicense
,
getTestTotalTime
}
from
"../../data/interface/interfaceService"
;
import
{
getCsgk
Data
,
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'
};
...
...
src/config/serverConfig.ts
View file @
bc3697bf
...
@@ -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
socke
n
tPort
;
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
{
port
Config
,
socketPortConfig
,
rightView
,
leftView
,
mapView
}
=
configInfo
.
config
;
if
(
!
getConf
(
port
))
throw
new
SysError
(
SYSTEMERRORENUM
.
初始化配置失败
,
'serverConfig.xml中 缺少 port'
);
if
(
!
getConf
(
port
Config
))
throw
new
SysError
(
SYSTEMERRORENUM
.
初始化配置失败
,
'serverConfig.xml中 缺少 port'
);
if
(
!
getConf
(
socke
ntPort
))
throw
new
SysError
(
SYSTEMERRORENUM
.
初始化配置失败
,
'serverConfig.xml中 缺少 sockentPort'
);
if
(
!
getConf
(
socke
tPortConfig
))
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
];
...
...
src/data/interface/interfaceService.ts
View file @
bc3697bf
This diff is collapsed.
Click to expand it.
src/data/interface/wsData.ts
View file @
bc3697bf
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 数据长这样
...
...
src/main.ts
View file @
bc3697bf
import
{
initSocketServer
}
from
"./biz/jgfwnl/wsData"
;
import
{
initSocketServer
}
from
"./biz/jgfwnl/wsData"
;
import
{
initConfig
,
port
,
socke
n
tPort
}
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
(
socke
n
tPort
);
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.'
);
}
}
...
...
src/util/bizError.ts
View file @
bc3697bf
...
@@ -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
]}
`
;
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment