Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
bi
Project
Project
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
张苑
bi
Commits
56017eec
Commit
56017eec
authored
Sep 28, 2021
by
莫坚培
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 增加变量值缓存
parent
3f349bc5
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
258 additions
and
184 deletions
+258
-184
dashboard.js
js/dashboard.js
+257
-183
tokenSetting.js
js/tokenSetting.js
+1
-1
No files found.
js/dashboard.js
View file @
56017eec
...
@@ -32,6 +32,10 @@ let requestLoopWaitingTime = 1000 // 每一个请求的间隔时间,减轻服
...
@@ -32,6 +32,10 @@ let requestLoopWaitingTime = 1000 // 每一个请求的间隔时间,减轻服
let
requestLoopGroupSliceNum
=
30
// 请求池requestLoopDataPool分组,每组多少个
let
requestLoopGroupSliceNum
=
30
// 请求池requestLoopDataPool分组,每组多少个
let
requestLoopGroupSliceRes
=
[]
// 分组结果
let
requestLoopGroupSliceRes
=
[]
// 分组结果
let
requestLoopVaribleCache
=
{}
// 每一批(一批多组)轮询的变量数据缓存。
// 背景是同一个变量,可能会在多个组都有请求,后面的请求拿到的结果可能跟前面拿到的结果不一致,导致明明同一个变量,但是显示不同的值
// 这里的处理是同一批次的请求,每个变量只取第一次的结果
// 添加定时器
// 添加定时器
var
timer1
=
null
var
timer1
=
null
var
app
=
{
var
app
=
{
...
@@ -938,6 +942,7 @@ function startRequestLoop() {
...
@@ -938,6 +942,7 @@ function startRequestLoop() {
}
}
// 每一轮都把标记清除
// 每一轮都把标记清除
requestLoopVaribleCache
=
{}
Object
.
values
(
Controls
.
dataPoolMap
).
forEach
(
item
=>
{
Object
.
values
(
Controls
.
dataPoolMap
).
forEach
(
item
=>
{
item
.
isHasMeetVariable
=
false
item
.
isHasMeetVariable
=
false
})
})
...
@@ -1072,6 +1077,15 @@ function loopRenderBarchart(poolData, resData, resCode) {
...
@@ -1072,6 +1077,15 @@ function loopRenderBarchart(poolData, resData, resCode) {
return
i
return
i
})
})
// 取对应变量缓存过的值
let
cacheKey
=
`
${
k
.
CheckData
.
equipmentId
||
k
.
CheckData
.
equipmentid
}
-
${
k
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
dataList
}
else
{
console
.
log
(
'柱状图缓存'
,
requestLoopVaribleCache
[
cacheKey
])
dataList
=
requestLoopVaribleCache
[
cacheKey
]
}
let
obj
=
{
let
obj
=
{
name
:
variablesList
[
ki
].
DimensionName
,
name
:
variablesList
[
ki
].
DimensionName
,
data
:
dataList
,
data
:
dataList
,
...
@@ -1160,6 +1174,15 @@ function loopRenderLinechart(poolData, resData, resCode) {
...
@@ -1160,6 +1174,15 @@ function loopRenderLinechart(poolData, resData, resCode) {
return
item1
return
item1
})
})
// 取对应变量缓存过的值
let
cacheKey
=
`
${
k
.
CheckData
.
equipmentId
||
k
.
CheckData
.
equipmentid
}
-
${
k
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
dataList
}
else
{
console
.
log
(
'折线图缓存'
,
requestLoopVaribleCache
[
cacheKey
])
dataList
=
requestLoopVaribleCache
[
cacheKey
]
}
serireData
.
push
({
serireData
.
push
({
name
:
chartOption
.
legend
[
0
].
data
[
ki
],
name
:
chartOption
.
legend
[
0
].
data
[
ki
],
data
:
dataList
,
data
:
dataList
,
...
@@ -1192,6 +1215,33 @@ function loopRenderLinechart(poolData, resData, resCode) {
...
@@ -1192,6 +1215,33 @@ function loopRenderLinechart(poolData, resData, resCode) {
}
}
}
}
// 把折线图、柱状图的请求数据推到请求池
function
handleRequestDataLineAndBar
(
label
,
item
,
index
)
{
let
lineAndBarItem
=
Controls
.
Data
[
label
].
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
lineAndBarItem
&&
lineAndBarItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
list
=
lineAndBarItem
.
option
?.
Variables
||
[]
requestLoopDataPool
.
push
({
urlType
:
'limit'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
limitData
:
{
limit
:
lineAndBarItem
.
DataCount
,
variableSearchList
:
list
.
map
(
lItem
=>
{
return
{
deviceId
:
lItem
.
CheckData
.
equipmentId
||
lItem
.
CheckData
.
equipmentid
,
variableId
:
lItem
.
CheckData
.
id
,
variableName
:
lItem
.
CheckData
.
name
}
})
}
})
Controls
.
dataPoolMap
[
index
]
=
lineAndBarItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 渲染仪表盘
// 渲染仪表盘
function
loopRenderDashboardchart
(
poolData
,
resData
,
resCode
)
{
function
loopRenderDashboardchart
(
poolData
,
resData
,
resCode
)
{
// 清空数据
// 清空数据
...
@@ -1215,6 +1265,15 @@ function loopRenderDashboardchart(poolData, resData, resCode) {
...
@@ -1215,6 +1265,15 @@ function loopRenderDashboardchart(poolData, resData, resCode) {
if
(
resValue
)
{
if
(
resValue
)
{
let
value
=
resValue
[
variableInfo
.
CheckData
.
equipmentId
||
variableInfo
.
CheckData
.
equipmenid
][
variableInfo
.
CheckData
.
name
]
let
value
=
resValue
[
variableInfo
.
CheckData
.
equipmentId
||
variableInfo
.
CheckData
.
equipmenid
][
variableInfo
.
CheckData
.
name
]
// 取对应变量缓存过的值
let
cacheKey
=
`
${
variableInfo
.
CheckData
.
equipmentId
||
variableInfo
.
CheckData
.
equipmentid
}
-
${
variableInfo
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
value
}
else
{
console
.
log
(
'仪表盘缓存'
,
requestLoopVaribleCache
[
cacheKey
])
value
=
requestLoopVaribleCache
[
cacheKey
]
}
serireData
.
push
({
serireData
.
push
({
value
value
})
})
...
@@ -1227,6 +1286,28 @@ function loopRenderDashboardchart(poolData, resData, resCode) {
...
@@ -1227,6 +1286,28 @@ function loopRenderDashboardchart(poolData, resData, resCode) {
}
}
}
}
// 把仪表盘的请求数据推到请求池
function
handleRequestDataDashboard
(
item
,
index
)
{
let
dashboardItem
=
Controls
.
Data
.
DashBoardChartItemList
.
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
dashboardItem
&&
dashboardItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
VariableCheckDataObj
=
dashboardItem
.
option
?.
Variable
?.
CheckData
||
{}
requestLoopDataPool
.
push
({
urlType
:
'pieChartOrPanel'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
pieChartOrPanel
:
[{
deviceId
:
VariableCheckDataObj
.
equipmentId
||
VariableCheckDataObj
.
equipmentid
,
variableId
:
VariableCheckDataObj
.
id
,
variableCode
:
VariableCheckDataObj
.
name
}]
})
Controls
.
dataPoolMap
[
index
]
=
dashboardItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 渲染饼图
// 渲染饼图
function
loopRenderPiechart
(
poolData
,
resData
,
resCode
)
{
function
loopRenderPiechart
(
poolData
,
resData
,
resCode
)
{
// 清空数据
// 清空数据
...
@@ -1246,12 +1327,21 @@ function loopRenderPiechart(poolData, resData, resCode) {
...
@@ -1246,12 +1327,21 @@ function loopRenderPiechart(poolData, resData, resCode) {
}
}
let
resValue
=
JSON
.
parse
(
resData
[
key
])
let
resValue
=
JSON
.
parse
(
resData
[
key
])
if
(
resValue
)
{
if
(
resValue
)
{
let
variablesList
=
poolData
.
option
.
Variables
let
variablesList
=
poolData
.
option
.
Variables
variablesList
.
forEach
((
vItem
,
vIndex
)
=>
{
variablesList
.
forEach
((
vItem
,
vIndex
)
=>
{
let
value
=
resValue
[
vItem
.
CheckData
.
equipmentId
||
vItem
.
CheckData
.
equipmentid
][
vItem
.
CheckData
.
name
]
let
value
=
resValue
[
vItem
.
CheckData
.
equipmentId
||
vItem
.
CheckData
.
equipmentid
][
vItem
.
CheckData
.
name
]
value
&&
(
value
=
value
.
toFixed
(
vItem
.
d
||
0
))
value
&&
(
value
=
value
.
toFixed
(
vItem
.
d
||
0
))
// 取对应变量缓存过的值
let
cacheKey
=
`
${
vItem
.
CheckData
.
equipmentId
||
vItem
.
CheckData
.
equipmentid
}
-
${
vItem
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
value
}
else
{
console
.
log
(
'饼图缓存'
,
requestLoopVaribleCache
[
cacheKey
])
value
=
requestLoopVaribleCache
[
cacheKey
]
}
serireData
.
push
({
serireData
.
push
({
value
,
value
,
name
:
chartOption
.
legend
[
0
].
data
[
vIndex
],
name
:
chartOption
.
legend
[
0
].
data
[
vIndex
],
...
@@ -1271,6 +1361,33 @@ function loopRenderPiechart(poolData, resData, resCode) {
...
@@ -1271,6 +1361,33 @@ function loopRenderPiechart(poolData, resData, resCode) {
}
}
}
}
// 把饼图的请求数据推到请求池
function
handleRequestDataPie
(
item
,
index
)
{
let
pieItem
=
Controls
.
Data
.
PieChartItemList
.
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
pieItem
&&
pieItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
list
=
pieItem
.
option
?.
Variables
||
[]
let
pieChartOrPanel
=
list
.
map
(
variableItem
=>
{
let
vc
=
variableItem
.
CheckData
return
{
deviceId
:
vc
.
equipmentId
||
vc
.
equipmentid
,
variableId
:
vc
.
id
,
variableCode
:
vc
.
name
}
})
requestLoopDataPool
.
push
({
urlType
:
'pieChartOrPanel'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
pieChartOrPanel
})
Controls
.
dataPoolMap
[
index
]
=
pieItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 渲染动态图片、动态文本
// 渲染动态图片、动态文本
function
loopRenderImage
(
poolData
,
resData
,
label
)
{
function
loopRenderImage
(
poolData
,
resData
,
label
)
{
if
(
poolData
.
isHasMeetVariable
)
{
if
(
poolData
.
isHasMeetVariable
)
{
...
@@ -1281,30 +1398,39 @@ function loopRenderImage(poolData, resData, label) {
...
@@ -1281,30 +1398,39 @@ function loopRenderImage(poolData, resData, label) {
image
:
'presetText'
image
:
'presetText'
}
}
let
flagItem
=
poolData
.
DataList
.
find
((
item
,
index
)
=>
{
let
flagItem
=
null
poolData
.
DataList
.
forEach
((
dlItem
,
dlIndex
)
=>
{
// 拼装跟返回的数据一样的key,然后找到对应的数据
// 拼装跟返回的数据一样的key,然后找到对应的数据
let
key
=
`
${
poolData
.
dataPoolMapIndex
}
-
${
index
}
-
${
i
tem
.
variable
}
`
let
key
=
`
${
poolData
.
dataPoolMapIndex
}
-
${
dlIndex
}
-
${
dlI
tem
.
variable
}
`
if
(
!
resData
.
hasOwnProperty
(
key
)
||
Object
.
prototype
.
toString
.
call
(
JSON
.
parse
(
resData
[
key
]))
!==
'[object Object]'
)
{
if
(
!
resData
.
hasOwnProperty
(
key
)
||
Object
.
prototype
.
toString
.
call
(
JSON
.
parse
(
resData
[
key
]))
!==
'[object Object]'
)
{
return
false
return
false
}
}
let
itemResData
=
JSON
.
parse
(
resData
[
key
])
let
itemResData
=
JSON
.
parse
(
resData
[
key
])
let
itemValue
=
itemResData
[
item
.
variable
]
let
itemValue
=
itemResData
&&
itemResData
[
dlItem
.
variable
]
let
flag
=
transFlag
(
item
.
flag
)
if
(
!
itemResData
)
{
// 取对应变量缓存过的值
return
false
let
cacheKey
=
`
${
dlItem
.
CheckData
.
equipmentId
||
dlItem
.
CheckData
.
equipmentid
}
-
${
dlItem
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
itemValue
}
else
{
itemValue
=
requestLoopVaribleCache
[
cacheKey
]
}
}
return
(
let
flag
=
transFlag
(
dlItem
.
flag
)
(
flag
===
'='
&&
itemValue
==
item
[
labelMap
[
label
]])
||
let
isMeet
=
(
(
flag
===
'>='
&&
itemValue
>=
item
[
labelMap
[
label
]])
||
(
flag
===
'='
&&
itemValue
==
dlItem
[
labelMap
[
label
]])
||
(
flag
===
'<='
&&
itemValue
<=
item
[
labelMap
[
label
]])
||
(
flag
===
'>='
&&
itemValue
>=
dlItem
[
labelMap
[
label
]])
||
(
flag
===
'>'
&&
itemValue
>
item
[
labelMap
[
label
]])
||
(
flag
===
'<='
&&
itemValue
<=
dlItem
[
labelMap
[
label
]])
||
(
flag
===
'<'
&&
itemValue
<
item
[
labelMap
[
label
]])
||
(
flag
===
'>'
&&
itemValue
>
dlItem
[
labelMap
[
label
]])
||
(
flag
===
'!='
&&
itemValue
!=
item
[
labelMap
[
label
]])
(
flag
===
'<'
&&
itemValue
<
dlItem
[
labelMap
[
label
]])
||
(
flag
===
'!='
&&
itemValue
!=
dlItem
[
labelMap
[
label
]])
)
)
if
(
isMeet
&&
!
flagItem
)
{
flagItem
=
dlItem
}
})
})
if
(
!
flagItem
)
{
if
(
!
flagItem
)
{
...
@@ -1318,6 +1444,7 @@ function loopRenderImage(poolData, resData, label) {
...
@@ -1318,6 +1444,7 @@ function loopRenderImage(poolData, resData, label) {
}
}
return
return
}
}
// 只要有一个满足条件,则渲染该条件
// 只要有一个满足条件,则渲染该条件
if
(
label
===
'image'
)
{
if
(
label
===
'image'
)
{
$
(
`#image-img
${
poolData
.
dataPoolMapIndex
}
`
).
attr
(
'src'
,
flagItem
.
img
)
$
(
`#image-img
${
poolData
.
dataPoolMapIndex
}
`
).
attr
(
'src'
,
flagItem
.
img
)
...
@@ -1326,18 +1453,120 @@ function loopRenderImage(poolData, resData, label) {
...
@@ -1326,18 +1453,120 @@ function loopRenderImage(poolData, resData, label) {
$
(
`#dynamictext-text
${
poolData
.
dataPoolMapIndex
}
`
).
text
(
flagItem
.
presetText
)
$
(
`#dynamictext-text
${
poolData
.
dataPoolMapIndex
}
`
).
text
(
flagItem
.
presetText
)
$
(
`#dynamictext-text
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
flagItem
.
backColor
)
$
(
`#dynamictext-text
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
flagItem
.
backColor
)
}
}
poolData
.
isHasMeetVariable
=
true
poolData
.
isHasMeetVariable
=
true
}
}
// 渲染
数值显示、读写框
// 渲染
矩形、圆形状态灯 label: commonlamp矩形状态灯 ellipselamp圆形状态灯
function
loopRender
Datatextblock
(
poolData
,
resData
,
label
)
{
function
loopRender
Lamp
(
poolData
,
resData
,
label
)
{
if
(
poolData
.
isHasMeetVariable
)
{
if
(
poolData
.
isHasMeetVariable
)
{
return
return
}
}
let
flagItem
=
null
let
isSameGroup
=
true
poolData
.
DataList
.
forEach
((
dlItem
,
dlIndex
)
=>
{
let
key
=
`
${
poolData
.
dataPoolMapIndex
}
-
${
dlIndex
}
-
${
dlItem
.
variable
}
`
// 只要DataList中有一个变量没有在resData找到对应的key,则说明这个组件的请求数据不是在同一组的
if
(
!
resData
.
hasOwnProperty
(
key
)
||
Object
.
prototype
.
toString
.
call
(
JSON
.
parse
(
resData
[
key
]))
!==
'[object Object]'
)
{
isSameGroup
=
false
return
}
let
itemResData
=
JSON
.
parse
(
resData
[
key
])
let
itemValue
=
itemResData
&&
itemResData
[
dlItem
.
variable
]
// 取对应变量缓存过的值
let
cacheKey
=
`
${
dlItem
.
CheckData
.
equipmentId
||
dlItem
.
CheckData
.
equipmentid
}
-
${
dlItem
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
itemValue
}
else
{
itemValue
=
requestLoopVaribleCache
[
cacheKey
]
}
let
flag
=
transFlag
(
dlItem
.
flag
)
let
isMeet
=
(
(
flag
===
'='
&&
itemValue
==
dlItem
.
num
)
||
(
flag
===
'>='
&&
itemValue
>=
dlItem
.
num
)
||
(
flag
===
'<='
&&
itemValue
<=
dlItem
.
num
)
||
(
flag
===
'>'
&&
itemValue
>
dlItem
.
num
)
||
(
flag
===
'<'
&&
itemValue
<
dlItem
.
num
)
||
(
flag
===
'!='
&&
itemValue
!=
dlItem
.
num
)
)
if
(
isMeet
&&
!
flagItem
)
{
flagItem
=
dlItem
}
})
if
(
!
flagItem
)
{
// 给默认颜色、闪烁
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'background-color'
,
poolData
.
DefaultColor
)
if
(
poolData
.
DefaultFlashing
)
{
// 默认闪烁
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
addClass
(
'animated-flash'
)
}
else
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
removeClass
(
'animated-flash'
)
}
return
}
// 只要有一个满足条件,则渲染该条件的颜色
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'background-color'
,
flagItem
.
backColor
)
if
(
flagItem
.
flashing
)
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
addClass
(
'animated-flash'
)
}
else
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
removeClass
(
'animated-flash'
)
}
poolData
.
isHasMeetVariable
=
true
}
// 把有DataList的组件的请求数据推到请求池
function
handleRequestDataDataList
(
item
,
index
)
{
Controls
.
dataPoolMap
[
index
]
=
item
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
item
.
DataList
.
forEach
((
dlItem
,
dlIndex
)
=>
{
if
(
dlItem
.
variable
!==
'选择'
&&
dlItem
.
CheckData
)
{
requestLoopDataPool
.
push
({
urlType
:
'status'
,
assemblyKey
:
`
${
index
}
-
${
dlIndex
}
-
${
dlItem
.
CheckData
.
name
}
`
,
statusDataDTO
:
{
deviceId
:
dlItem
.
CheckData
.
equipmentId
||
dlItem
.
CheckData
.
equipmentid
,
variableId
:
dlItem
.
CheckData
.
id
,
variableCode
:
dlItem
.
CheckData
.
name
}
})
}
})
}
// 渲染数值显示、读写框
function
loopRenderDatatextblock
(
poolData
,
resData
,
label
)
{
let
dight
=
poolData
.
DecimalDigits
===
null
?
0
:
poolData
.
DecimalDigits
let
dight
=
poolData
.
DecimalDigits
===
null
?
0
:
poolData
.
DecimalDigits
let
valueInfo
=
JSON
.
parse
(
resData
[
Object
.
keys
(
resData
)[
0
]])
let
valueInfo
=
JSON
.
parse
(
resData
[
Object
.
keys
(
resData
)[
0
]])
let
resDataValue
=
valueInfo
[
poolData
.
CheckData
.
name
]
let
resDataValue
=
valueInfo
[
poolData
.
CheckData
.
name
]
// 取对应变量缓存过的值
let
cacheKey
=
`
${
poolData
.
CheckData
.
equipmentId
||
poolData
.
CheckData
.
equipmentid
}
-
${
poolData
.
CheckData
.
id
}
`
if
(
requestLoopVaribleCache
[
cacheKey
]
===
undefined
)
{
requestLoopVaribleCache
[
cacheKey
]
=
resDataValue
}
else
{
resDataValue
=
requestLoopVaribleCache
[
cacheKey
]
}
// 给读写框赋值、默认颜色
if
(
label
===
'datatextblock'
)
{
resDataValue
=
resDataValue
.
toFixed
(
Number
(
dight
))
$
(
`#datatextblock
${
poolData
.
dataPoolMapIndex
}
`
).
text
(
resDataValue
)
$
(
`#datatextblock
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
'#000'
)
}
else
{
$
(
`#rwtextbox-text
${
poolData
.
dataPoolMapIndex
}
`
).
val
(
resDataValue
)
$
(
`#rwtextbox-text
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
'#000'
)
}
if
(
!
[
'number'
,
'string'
].
includes
(
typeof
resDataValue
))
{
if
(
!
[
'number'
,
'string'
].
includes
(
typeof
resDataValue
))
{
return
return
...
@@ -1356,70 +1585,29 @@ function loopRenderDatatextblock(poolData, resData, label) {
...
@@ -1356,70 +1585,29 @@ function loopRenderDatatextblock(poolData, resData, label) {
})
})
if
(
!
flagItem
)
{
if
(
!
flagItem
)
{
// 给读写框赋值、默认颜色
if
(
label
===
'datatextblock'
)
{
resDataValue
=
resDataValue
.
toFixed
(
Number
(
dight
))
$
(
`#datatextblock
${
poolData
.
dataPoolMapIndex
}
`
).
text
(
resDataValue
)
$
(
`#datatextblock
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
'#000'
)
}
else
{
$
(
`#rwtextbox-text
${
poolData
.
dataPoolMapIndex
}
`
).
val
(
resDataValue
)
$
(
`#rwtextbox-text
${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
'#000'
)
}
return
return
}
}
// 只要有一个满足条件,则渲染该条件的颜色
// 只要有一个满足条件,则渲染该条件的颜色
if
(
flagItem
&&
poolData
.
conCheck
)
{
if
(
flagItem
&&
poolData
.
conCheck
)
{
$
(
`#
${
label
===
'datatextblock'
?
'datatextblock'
:
'rwtextbox-text'
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
flagItem
.
backColor
)
$
(
`#
${
label
===
'datatextblock'
?
'datatextblock'
:
'rwtextbox-text'
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'color'
,
flagItem
.
backColor
)
poolData
.
isHasMeetVariable
=
true
}
}
}
}
// 渲染矩形、圆形状态灯 label: commonlamp矩形状态灯 ellipselamp圆形状态灯
// 把有读写框、数值显示的请求数据推到请求池
function
loopRenderLamp
(
poolData
,
resData
,
label
)
{
function
handleRequestDataText
(
item
,
index
)
{
if
(
poolData
.
isHasMeetVariable
)
{
requestLoopDataPool
.
push
({
return
urlType
:
'status'
,
}
assemblyKey
:
`
${
index
}
-
${
item
.
CheckData
.
name
}
`
,
statusDataDTO
:
{
let
flagItem
=
poolData
.
DataList
.
find
((
item
,
index
)
=>
{
deviceId
:
item
.
CheckData
.
equipmentId
||
item
.
CheckData
.
equipmentid
,
let
key
=
`
${
poolData
.
dataPoolMapIndex
}
-
${
index
}
-
${
item
.
variable
}
`
variableId
:
item
.
CheckData
.
id
,
variableCode
:
item
.
CheckData
.
name
if
(
!
resData
.
hasOwnProperty
(
key
)
||
Object
.
prototype
.
toString
.
call
(
JSON
.
parse
(
resData
[
key
]))
!==
'[object Object]'
)
{
return
false
}
}
let
itemResData
=
JSON
.
parse
(
resData
[
key
])
let
itemValue
=
itemResData
[
item
.
variable
]
let
flag
=
transFlag
(
item
.
flag
)
return
(
(
flag
===
'='
&&
itemValue
==
item
.
num
)
||
(
flag
===
'>='
&&
itemValue
>=
item
.
num
)
||
(
flag
===
'<='
&&
itemValue
<=
item
.
num
)
||
(
flag
===
'>'
&&
itemValue
>
item
.
num
)
||
(
flag
===
'<'
&&
itemValue
<
item
.
num
)
||
(
flag
===
'!='
&&
itemValue
!=
item
.
num
)
)
})
})
if
(
!
flagItem
)
{
Controls
.
dataPoolMap
[
index
]
=
item
// 给默认颜色、闪烁
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'background-color'
,
poolData
.
DefaultColor
)
if
(
poolData
.
DefaultFlashing
)
{
// 默认闪烁
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
addClass
(
'animated-flash'
)
}
else
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
removeClass
(
'animated-flash'
)
}
return
}
// 只要有一个满足条件,则渲染该条件的颜色
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
css
(
'background-color'
,
flagItem
.
backColor
)
if
(
flagItem
.
flashing
)
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
addClass
(
'animated-flash'
)
}
else
{
$
(
`#
${
label
}${
poolData
.
dataPoolMapIndex
}
`
).
removeClass
(
'animated-flash'
)
}
poolData
.
isHasMeetVariable
=
true
}
}
// 整合所有组件的请求数据,放到一个数组里
// 整合所有组件的请求数据,放到一个数组里
...
@@ -1453,120 +1641,6 @@ function collectRequestLoopData() {
...
@@ -1453,120 +1641,6 @@ function collectRequestLoopData() {
})
})
}
}
// 把有读写框、数值显示的请求数据推到请求池
function
handleRequestDataText
(
item
,
index
)
{
requestLoopDataPool
.
push
({
urlType
:
'status'
,
assemblyKey
:
`
${
index
}
-
${
item
.
CheckData
.
name
}
`
,
statusDataDTO
:
{
deviceId
:
item
.
CheckData
.
equipmentId
?
item
.
CheckData
.
equipmentId
:
item
.
CheckData
.
equipmentid
,
variableId
:
item
.
CheckData
.
id
,
variableCode
:
item
.
CheckData
.
name
}
})
Controls
.
dataPoolMap
[
index
]
=
item
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
// 把有DataList的组件的请求数据推到请求池
function
handleRequestDataDataList
(
item
,
index
)
{
Controls
.
dataPoolMap
[
index
]
=
item
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
item
.
DataList
.
forEach
((
dlItem
,
dlIndex
)
=>
{
if
(
dlItem
.
variable
!==
'选择'
&&
dlItem
.
CheckData
)
{
requestLoopDataPool
.
push
({
urlType
:
'status'
,
assemblyKey
:
`
${
index
}
-
${
dlIndex
}
-
${
dlItem
.
CheckData
.
name
}
`
,
statusDataDTO
:
{
deviceId
:
dlItem
.
CheckData
.
equipmentId
?
dlItem
.
CheckData
.
equipmentId
:
dlItem
.
CheckData
.
equipmentid
,
variableId
:
dlItem
.
CheckData
.
id
,
variableCode
:
dlItem
.
CheckData
.
name
}
})
}
})
}
// 把饼图的请求数据推到请求池
function
handleRequestDataPie
(
item
,
index
)
{
let
pieItem
=
Controls
.
Data
.
PieChartItemList
.
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
pieItem
&&
pieItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
list
=
pieItem
.
option
?.
Variables
||
[]
let
pieChartOrPanel
=
list
.
map
(
variableItem
=>
{
let
vc
=
variableItem
.
CheckData
return
{
deviceId
:
vc
.
equipmentId
?
vc
.
equipmentId
:
vc
.
equipmentid
,
variableId
:
vc
.
id
,
variableCode
:
vc
.
name
}
})
requestLoopDataPool
.
push
({
urlType
:
'pieChartOrPanel'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
pieChartOrPanel
})
Controls
.
dataPoolMap
[
index
]
=
pieItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 把仪表盘的请求数据推到请求池
function
handleRequestDataDashboard
(
item
,
index
)
{
let
dashboardItem
=
Controls
.
Data
.
DashBoardChartItemList
.
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
dashboardItem
&&
dashboardItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
VariableCheckDataObj
=
dashboardItem
.
option
?.
Variable
?.
CheckData
||
{}
requestLoopDataPool
.
push
({
urlType
:
'pieChartOrPanel'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
pieChartOrPanel
:
[{
deviceId
:
VariableCheckDataObj
.
equipmentId
?
VariableCheckDataObj
.
equipmentId
:
VariableCheckDataObj
.
equipmentid
,
variableId
:
VariableCheckDataObj
.
id
,
variableCode
:
VariableCheckDataObj
.
name
}]
})
Controls
.
dataPoolMap
[
index
]
=
dashboardItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 把折线图、柱状图的请求数据推到请求池
function
handleRequestDataLineAndBar
(
label
,
item
,
index
)
{
let
lineAndBarItem
=
Controls
.
Data
[
label
].
find
(
dItem
=>
dItem
.
name
===
item
.
Name
)
if
(
lineAndBarItem
&&
lineAndBarItem
.
defaultDataConfig
.
datatype
===
'实时数据'
)
{
let
list
=
lineAndBarItem
.
option
?.
Variables
||
[]
requestLoopDataPool
.
push
({
urlType
:
'limit'
,
assemblyKey
:
`
${
index
}
-
${
item
.
Name
}
`
,
limitData
:
{
limit
:
lineAndBarItem
.
DataCount
,
variableSearchList
:
list
.
map
(
lItem
=>
{
return
{
deviceId
:
lItem
.
CheckData
.
equipmentId
?
lItem
.
CheckData
.
equipmentId
:
lItem
.
CheckData
.
equipmentid
,
variableId
:
lItem
.
CheckData
.
id
,
variableName
:
lItem
.
CheckData
.
name
}
})
}
})
Controls
.
dataPoolMap
[
index
]
=
lineAndBarItem
Controls
.
dataPoolMap
[
index
].
ControlType
=
item
.
ControlType
Controls
.
dataPoolMap
[
index
].
dataPoolMapIndex
=
index
}
}
// 对requestLoopDataPool进行分组
// 对requestLoopDataPool进行分组
function
sliceRequestLoopData
(
num
)
{
function
sliceRequestLoopData
(
num
)
{
requestLoopGroupSliceRes
=
[]
requestLoopGroupSliceRes
=
[]
...
...
js/tokenSetting.js
View file @
56017eec
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
* @description: 文件描述
* @description: 文件描述
* @Date: 2021-09-16 18:33:55
* @Date: 2021-09-16 18:33:55
* @LastEditors: 莫靓仔
* @LastEditors: 莫靓仔
* @LastEditTime: 2021-09-28 1
0:24:42
* @LastEditTime: 2021-09-28 1
4:57:07
*/
*/
let
setObj
=
{
let
setObj
=
{
// 厂家大佬
// 厂家大佬
...
...
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