单风机:调整背景图相关内容

设备:量测时间间隔添加1分钟10分钟
This commit is contained in:
高云鹏 2024-11-29 16:28:21 +08:00
parent 4a8bce3b04
commit 2765ed10e2
3 changed files with 180 additions and 124 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 623 KiB

After

Width:  |  Height:  |  Size: 631 KiB

View File

@ -120,23 +120,41 @@
> >
<el-button @click="sendManualCommand(0)" v-else class="control-btn" type="primary">解锁</el-button> <el-button @click="sendManualCommand(0)" v-else class="control-btn" type="primary">解锁</el-button>
</div> </div>
<el-tooltip content="变桨/轮毂系统"> <el-tooltip :content="subSystem[0]">
<div @click="openSubSystem(1)" class="dot index-1"></div> <div @click="openSubSystem(0)" class="dot index-1"></div>
</el-tooltip> </el-tooltip>
<el-tooltip content="轴承/传动链/齿轮箱系统"> <el-tooltip :content="subSystem[1]">
<div @click="openSubSystem(2)" class="dot index-2"></div> <div @click="openSubSystem(1)" class="dot index-2"></div>
</el-tooltip> </el-tooltip>
<el-tooltip content="发电机系统"> <el-tooltip :content="subSystem[2]">
<div @click="openSubSystem(3)" class="dot index-3"></div> <div @click="openSubSystem(2)" class="dot index-3"></div>
</el-tooltip> </el-tooltip>
<el-tooltip content="机舱系统"> <el-tooltip :content="subSystem[3]">
<div @click="openSubSystem(4)" class="dot index-4"></div> <div @click="openSubSystem(3)" class="dot index-4"></div>
</el-tooltip> </el-tooltip>
<el-tooltip content="控制系统"> <el-tooltip :content="subSystem[4]">
<div @click="openSubSystem(5)" class="dot index-5"></div> <div @click="openSubSystem(4)" class="dot index-5"></div>
</el-tooltip> </el-tooltip>
<el-tooltip content="环境/气象系统"> <el-tooltip :content="subSystem[5]">
<div @click="openSubSystem(6)" class="dot index-6"></div> <div @click="openSubSystem(5)" class="dot index-6"></div>
</el-tooltip>
<el-tooltip :content="subSystem[6]">
<div @click="openSubSystem(6)" class="dot index-7"></div>
</el-tooltip>
<el-tooltip :content="subSystem[7]">
<div @click="openSubSystem(7)" class="dot index-8"></div>
</el-tooltip>
<el-tooltip :content="subSystem[8]">
<div @click="openSubSystem(8)" class="dot index-9"></div>
</el-tooltip>
<el-tooltip :content="subSystem[9]">
<div @click="openSubSystem(9)" class="dot index-10"></div>
</el-tooltip>
<el-tooltip :content="subSystem[10]">
<div @click="openSubSystem(10)" class="dot index-11"></div>
</el-tooltip>
<el-tooltip :content="subSystem[11]">
<div @click="openSubSystem(11)" class="dot index-12"></div>
</el-tooltip> </el-tooltip>
</div> </div>
<div class="Parameters"> <div class="Parameters">
@ -999,14 +1017,16 @@ const createRealTimeData = async () => {
const dataFor138And139: { name: string; value: string }[] = [] const dataFor138And139: { name: string; value: string }[] = []
const dataFor140: { name: string; value: string }[] = [] const dataFor140: { name: string; value: string }[] = []
const dataFor199: { name: string; value: string }[] = [] const dataFor199: { name: string; value: string }[] = []
const realDataForSub: any = [ // const realDataForSub: any = [
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
{ type138: [], type140: [], type199: [] }, // { type138: [], type140: [], type199: [] },
] // ]
const realDataForSub: any = subSystem.map(() => ({ type138: [], type140: [], type199: [] }))
modelList.forEach((item: any) => { modelList.forEach((item: any) => {
const realVal = realData[item.attributeCode.toLowerCase()] const realVal = realData[item.attributeCode.toLowerCase()]
let val = getCutDecimalsValue(realVal) let val = getCutDecimalsValue(realVal)
@ -1017,8 +1037,8 @@ const createRealTimeData = async () => {
realTimeDataForSingle.value[item.attributeCode.toLowerCase()] = val === '-' ? val : val realTimeDataForSingle.value[item.attributeCode.toLowerCase()] = val === '-' ? val : val
} }
if (overviewDatakeys.includes(item.attributeCode.toLowerCase())) { if (overviewDatakeys.includes(item.attributeCode.toLowerCase())) {
if (enumStore.keys.includes(item.attributeCode)) { if (enumStore.keys.includes(item.attributeCode)) {
overviewData[item.attributeCode.toLowerCase() as keyof typeof overviewData] = val as string overviewData[item.attributeCode.toLowerCase() as keyof typeof overviewData] = val as string
} else { } else {
overviewData[item.attributeCode.toLowerCase() as keyof typeof overviewData] = val === '-' ? val : val + item.unit overviewData[item.attributeCode.toLowerCase() as keyof typeof overviewData] = val === '-' ? val : val + item.unit
} }
@ -1034,66 +1054,74 @@ const createRealTimeData = async () => {
} else if (item.attributeType === 199) { } else if (item.attributeType === 199) {
dataFor199.push(showData) dataFor199.push(showData)
} }
if (item.subSystem === '变桨系统' || item.subSystem === '轮毂') {
if (item.attributeType === 138 || item.attributeType === 139) { if (subSystem.includes(item.subSystem)) {
realDataForSub[0].type138.push(showData) const index = subSystem.indexOf(item.subSystem)
} else if (item.attributeType === 140) { if (index >= 0) {
realDataForSub[0].type140.push(showData) if (item.attributeType === 138 || item.attributeType === 139) {
} else if (item.attributeType === 199) { realDataForSub[index].type138.push(showData)
realDataForSub[0].type199.push(showData) } else if (item.attributeType === 140) {
} realDataForSub[index].type140.push(showData)
} else if (item.subSystem === '轴承' || item.subSystem === '传动链' || item.subSystem === '齿轮箱') { } else if (item.attributeType === 199) {
if (item.attributeType === 138 || item.attributeType === 139) { realDataForSub[index].type199.push(showData)
realDataForSub[1].type138.push(showData) }
} else if (item.attributeType === 140) {
realDataForSub[1].type140.push(showData)
} else if (item.attributeType === 199) {
realDataForSub[1].type199.push(showData)
}
} else if (item.subSystem === '发电机') {
if (item.attributeType === 138 || item.attributeType === 139) {
realDataForSub[2].type138.push(showData)
} else if (item.attributeType === 140) {
realDataForSub[2].type140.push(showData)
} else if (item.attributeType === 199) {
realDataForSub[2].type199.push(showData)
}
} else if (item.subSystem === '机舱') {
if (item.attributeType === 138 || item.attributeType === 139) {
realDataForSub[3].type138.push(showData)
} else if (item.attributeType === 140) {
realDataForSub[3].type140.push(showData)
} else if (item.attributeType === 199) {
realDataForSub[3].type199.push(showData)
}
} else if (item.subSystem === '控制系统') {
if (item.attributeType === 138 || item.attributeType === 139) {
realDataForSub[4].type138.push(showData)
} else if (item.attributeType === 140) {
realDataForSub[4].type140.push(showData)
} else if (item.attributeType === 199) {
realDataForSub[4].type199.push(showData)
}
} else if (item.subSystem === '环境' || item.subSystem === '气象') {
if (item.attributeType === 138 || item.attributeType === 139) {
realDataForSub[5].type138.push(showData)
} else if (item.attributeType === 140) {
realDataForSub[5].type140.push(showData)
} else if (item.attributeType === 199) {
realDataForSub[5].type199.push(showData)
} }
} }
// if (item.subSystem === '' || item.subSystem === '') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[0].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[0].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[0].type199.push(showData)
// }
// } else if (item.subSystem === '' || item.subSystem === '' || item.subSystem === '齿') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[1].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[1].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[1].type199.push(showData)
// }
// } else if (item.subSystem === '') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[2].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[2].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[2].type199.push(showData)
// }
// } else if (item.subSystem === '') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[3].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[3].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[3].type199.push(showData)
// }
// } else if (item.subSystem === '') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[4].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[4].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[4].type199.push(showData)
// }
// } else if (item.subSystem === '' || item.subSystem === '') {
// if (item.attributeType === 138 || item.attributeType === 139) {
// realDataForSub[5].type138.push(showData)
// } else if (item.attributeType === 140) {
// realDataForSub[5].type140.push(showData)
// } else if (item.attributeType === 199) {
// realDataForSub[5].type199.push(showData)
// }
// }
}) })
overviewSlotData.type138 = dataFor138And139 overviewSlotData.type138 = dataFor138And139
overviewSlotData.type140 = dataFor140 overviewSlotData.type140 = dataFor140
overviewSlotData.type199 = dataFor199 overviewSlotData.type199 = dataFor199
realTimeForSubSystem.type1 = realDataForSub[0] realTimeForSubSystem.value = realDataForSub
realTimeForSubSystem.type2 = realDataForSub[1]
realTimeForSubSystem.type3 = realDataForSub[2]
realTimeForSubSystem.type4 = realDataForSub[3]
realTimeForSubSystem.type5 = realDataForSub[4]
realTimeForSubSystem.type6 = realDataForSub[5]
} catch (err) { } catch (err) {
console.log(err) console.log(err)
} }
@ -1107,47 +1135,18 @@ const handleClose = (done: () => void) => {
} }
const dialogradioactiveName = ref(138) const dialogradioactiveName = ref(138)
const realTimeForSubSystem = reactive<any>({ const realTimeForSubSystem = ref<any>([])
type1: null, const curSubSystem = ref(0)
type2: null,
type3: null,
type4: null,
type5: null,
type6: null,
})
const curSubSystem = ref('type1')
const subSystemDataList = computed(() => { const subSystemDataList = computed(() => {
const type = dialogradioactiveName.value === 138 ? 'type138' : dialogradioactiveName.value === 140 ? 'type140' : 'type199' const type = dialogradioactiveName.value === 138 ? 'type138' : dialogradioactiveName.value === 140 ? 'type140' : 'type199'
return realTimeForSubSystem[curSubSystem.value][type] return realTimeForSubSystem.value[curSubSystem.value][type]
}) })
const subSystem = ['变桨1', '变桨2', '变桨3', '传动链齿轮箱', '发电机', '机舱', '控制系统', '轮毂', '偏航系统', '气象', '塔基', '箱变']
const openSubSystem = (type: number) => { const openSubSystem = (type: number) => {
switch (type) { subSystemName.value = subSystem[type]
case 1: curSubSystem.value = type
subSystemName.value = '变桨/轮毂系统'
curSubSystem.value = 'type1'
break
case 2:
subSystemName.value = '轴承/传动链/齿轮箱系统'
curSubSystem.value = 'type2'
break
case 3:
subSystemName.value = '发电机系统'
curSubSystem.value = 'type3'
break
case 4:
subSystemName.value = '机舱系统'
curSubSystem.value = 'type4'
break
case 5:
subSystemName.value = '控制系统'
curSubSystem.value = 'type5'
break
case 6:
subSystemName.value = '环境/气象系统'
curSubSystem.value = 'type6'
break
}
visible.value = true visible.value = true
} }
@ -1443,6 +1442,7 @@ $labelHeight: 38px;
// overflow-y: auto; // overflow-y: auto;
// overflow-x: hidden; // overflow-x: hidden;
.PitchPart { .PitchPart {
width: calc(100% - 10px);
.Pitchitem { .Pitchitem {
border: 1px solid #e1edf6; border: 1px solid #e1edf6;
display: flex; display: flex;
@ -1607,8 +1607,7 @@ $labelHeight: 38px;
position: absolute; position: absolute;
width: 15px; width: 15px;
height: 15px; height: 15px;
border-radius: 10px; background-color: rgba(255, 255, 255, 0);
background-color: #ff7e00;
&:hover { &:hover {
cursor: pointer; cursor: pointer;
} }
@ -1618,28 +1617,83 @@ $labelHeight: 38px;
} }
} }
.index-1 { .index-1 {
left: 25%; left: 24%;
top: 60%; top: 1%;
width: 12%;
height: 48%;
} }
.index-2 { .index-2 {
left: 52%; left: 30%;
top: 53%; top: 83%;
width: 15%;
height: 16%;
} }
.index-3 { .index-3 {
left: 65%; left: 12.5%;
top: 60%; top: 69%;
width: 4%;
height: 25%;
} }
.index-4 { .index-4 {
left: 83%; left: 46%;
top: 54%; top: 49%;
width: 12%;
height: 15%;
} }
.index-5 { .index-5 {
left: 75%; left: 66%;
top: 28%; top: 35%;
width: 8%;
height: 14%;
transform: rotate(-51deg);
} }
.index-6 { .index-6 {
left: 60%;
top: 63%;
width: 27%;
height: 5%;
transform: rotate(-15deg);
}
.index-7 {
left: 73%; left: 73%;
top: 4%; top: 48%;
width: 7%;
height: 11%;
transform: rotate(-13deg);
}
.index-8 {
left: 23%;
top: 53%;
width: 19%;
height: 26%;
}
.index-9 {
left: 50%;
top: 66%;
width: 9%;
height: 13%;
}
.index-10 {
left: 67%;
top: 1%;
width: 12%;
height: 12%;
}
.index-11 {
right: 16%;
bottom: 3%;
width: 13%;
height: 23%;
}
.index-12 {
right: 2%;
bottom: 3%;
width: 13%;
height: 23%;
} }
} }
.Parameters { .Parameters {

View File

@ -62,7 +62,9 @@
<el-form-item prop="interval" label="时间间隔:"> <el-form-item prop="interval" label="时间间隔:">
<el-select v-model="seachOptions.interval" placeholder="请选择时间间隔" style="width: 100px"> <el-select v-model="seachOptions.interval" placeholder="请选择时间间隔" style="width: 100px">
<el-option label="原始" value="40s"></el-option> <el-option label="原始" value="40s"></el-option>
<el-option label="1分钟" value="1m"></el-option>
<el-option label="5分钟" value="5m"></el-option> <el-option label="5分钟" value="5m"></el-option>
<el-option label="10分钟" value="10m"></el-option>
<el-option label="15分钟" value="15m"></el-option> <el-option label="15分钟" value="15m"></el-option>
<el-option label="1小时" value="1h"></el-option> <el-option label="1小时" value="1h"></el-option>
<el-option label="1天" value="1d"></el-option> <el-option label="1天" value="1d"></el-option>