Commit e2d1dfd4 authored by 莫坚培's avatar 莫坚培

feat: 动态图片、文本渲染完成

parent 27929dfc
...@@ -979,10 +979,72 @@ function renderRequestLoopData(poolData, resData) { ...@@ -979,10 +979,72 @@ function renderRequestLoopData(poolData, resData) {
commonlamp: () => loopRenderLamp(poolData, resData, 'commonlamp'), commonlamp: () => loopRenderLamp(poolData, resData, 'commonlamp'),
// 圆形状态灯 // 圆形状态灯
ellipselamp: () => loopRenderLamp(poolData, resData, 'ellipselamp'), ellipselamp: () => loopRenderLamp(poolData, resData, 'ellipselamp'),
// 动态图片
image: () => loopRenderImage(poolData, resData, 'image'),
// 动态文本
dynamictext: () => loopRenderImage(poolData, resData, 'dynamictext'),
// 饼图
piechart: () => loopRenderImage(poolData, resData),
// 仪表板
dashboardchart: () => loopRenderImage(poolData, resData),
// 折线图
linechart: () => loopRenderImage(poolData, resData),
// 柱状图
barchart: () => loopRenderImage(poolData, resData)
} }
ControlTypeMap[poolData.ControlType] && ControlTypeMap[poolData.ControlType]() ControlTypeMap[poolData.ControlType] && ControlTypeMap[poolData.ControlType]()
} }
// 渲染动态图片、动态文本
function loopRenderImage(poolData, resData, label) {
// 给默认值
if (label === 'image') {
$(`#image-img${poolData.dataPoolMapIndex}`).attr('src', poolData.DefaultImg)
}
if (label === 'dynamictext') {
$(`#dynamictext-text${poolData.dataPoolMapIndex}`).text(poolData.DefaultText)
$(`#dynamictext-text${poolData.dataPoolMapIndex}`).css('color', poolData.DefaultColor)
}
let labelMap = {
dynamictext: 'num',
image: 'presetText'
}
let flagItem = poolData.DataList.find((item, index) => {
// 拼装跟返回的数据一样的key,然后找到对应的数据
let key = `${poolData.dataPoolMapIndex}-${index}-${item.variable}`
let itemResData = JSON.parse(resData[key])
let itemValue = itemResData[item.variable]
let flag = transFlag(item.flag)
if(!itemResData) {
return false
}
return (
(flag === '=' && itemValue == item[labelMap[label]]) ||
(flag === '>=' && itemValue >= item[labelMap[label]]) ||
(flag === '<=' && itemValue <= item[labelMap[label]]) ||
(flag === '>' && itemValue > item[labelMap[label]]) ||
(flag === '<' && itemValue < item[labelMap[label]]) ||
(flag === '!=' && itemValue != item[labelMap[label]])
)
})
if (!flagItem) {
return
}
// 只要有一个满足条件,则渲染该条件
if (label === 'image') {
$(`#image-img${poolData.dataPoolMapIndex}`).attr('src', flagItem.img)
}
if (label === 'dynamictext') {
$(`#dynamictext-text${poolData.dataPoolMapIndex}`).text(flagItem.presetText)
$(`#dynamictext-text${poolData.dataPoolMapIndex}`).css('color', flagItem.backColor)
}
}
// 渲染数值显示、读写框 // 渲染数值显示、读写框
function loopRenderDatatextblock(poolData, resData, label) { function loopRenderDatatextblock(poolData, resData, label) {
let dight = poolData.DecimalDigits === null ? 0 : poolData.DecimalDigits let dight = poolData.DecimalDigits === null ? 0 : poolData.DecimalDigits
...@@ -1050,7 +1112,7 @@ function loopRenderLamp(poolData, resData, label) { ...@@ -1050,7 +1112,7 @@ function loopRenderLamp(poolData, resData, label) {
(flag === '<=' && itemValue <= item.num) || (flag === '<=' && itemValue <= item.num) ||
(flag === '>' && itemValue > item.num) || (flag === '>' && itemValue > item.num) ||
(flag === '<' && itemValue < item.num) || (flag === '<' && itemValue < item.num) ||
(flag === '!=' && item.num != itemValue) (flag === '!=' && itemValue != item.num)
) )
}) })
......
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