故障诊断页面
This commit is contained in:
parent
548f66b281
commit
5302d8208b
@ -2,6 +2,6 @@ window.webConfig = {
|
|||||||
"webApiBaseUrl": "http://192.168.1.20:8090/",
|
"webApiBaseUrl": "http://192.168.1.20:8090/",
|
||||||
"wsApiBaseUrl": "ws://192.168.1.20:8090/",
|
"wsApiBaseUrl": "ws://192.168.1.20:8090/",
|
||||||
"webApiMonitorUrl": "http://192.168.1.20:18080",
|
"webApiMonitorUrl": "http://192.168.1.20:18080",
|
||||||
"answeringUrl":"http://121.37.111.42:8083/ui/chat/431e83302d0bbfbe",
|
"answeringUrl":"http://121.37.111.42:8080/ui/chat/a9d56e68484c5594",
|
||||||
"webSystemTitle":"标题"
|
"webSystemTitle":"标题"
|
||||||
}
|
}
|
42
riis-web/src/api/question/index.ts
Normal file
42
riis-web/src/api/question/index.ts
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
import request from '@/utils/request';
|
||||||
|
|
||||||
|
//获取所有角色
|
||||||
|
export function getAlgorithmClassTree(params:any){
|
||||||
|
return request({
|
||||||
|
url: '/algorithm/algorithm-class/getAlgorithmClassTree' ,
|
||||||
|
method: 'get',
|
||||||
|
params: params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//查询算法部件的参数
|
||||||
|
export function getAlgorithmDeviceParams(params:any){
|
||||||
|
return request({
|
||||||
|
url: '/algorithm/algorithm-device/getAlgorithmDeviceParams' ,
|
||||||
|
method: 'post',
|
||||||
|
params: params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//查询算法部件的参数曲线
|
||||||
|
export function getAlgorithmDeviceCurve(params:any){
|
||||||
|
return request({
|
||||||
|
url: '/algorithm/algorithm-device/getAlgorithmDeviceCurve' ,
|
||||||
|
method: 'post',
|
||||||
|
params: params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//根据算法id过去参数名称
|
||||||
|
export function getAlgorithmParamsNameList(params:any){
|
||||||
|
return request({
|
||||||
|
url: '/algorithm/algorithm-params/getAlgorithmParamsNameList' ,
|
||||||
|
method: 'get',
|
||||||
|
params: params
|
||||||
|
});
|
||||||
|
}
|
||||||
|
//调用算法分析
|
||||||
|
export function callAlgorithmAnalyse(params:any){
|
||||||
|
return request({
|
||||||
|
url: '/algorithm/algorithm-params/callAlgorithmAnalyse' ,
|
||||||
|
method: 'post',
|
||||||
|
params: params
|
||||||
|
});
|
||||||
|
}
|
BIN
riis-web/src/assets/navigation/110tu.png
Normal file
BIN
riis-web/src/assets/navigation/110tu.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.6 KiB |
@ -60,7 +60,7 @@ const props = defineProps({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
const pcode = ref(10)
|
const pcode = ref(10)
|
||||||
const inputgo = ref()
|
const inputgo = ref(1)
|
||||||
const arr_product = ref([
|
const arr_product = ref([
|
||||||
{
|
{
|
||||||
lable: 10,
|
lable: 10,
|
||||||
|
@ -404,7 +404,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</Eldialog>
|
</Eldialog>
|
||||||
<!-- 关联弹框 -->
|
<!-- 关联弹框 -->
|
||||||
<Eldialog v-if="association" :title="associationTitle" :zIndex="2000" :width="'1200px'" :height="'800px'"
|
<Eldialog v-if="association" :title="associationTitle" :zIndex="2000" :width="'1400px'" :height="'800px'"
|
||||||
@before-close="association = false">
|
@before-close="association = false">
|
||||||
<template v-slot:PopFrameContent>
|
<template v-slot:PopFrameContent>
|
||||||
<div class="mt-[15px]" style="display: flex;align-items: center; justify-content: space-between;">
|
<div class="mt-[15px]" style="display: flex;align-items: center; justify-content: space-between;">
|
||||||
@ -427,6 +427,16 @@
|
|||||||
v-if="selType == '02' || lineDrapStart == true || isUAVdropLine == true">
|
v-if="selType == '02' || lineDrapStart == true || isUAVdropLine == true">
|
||||||
<el-input class="!w-[170px] mr-2" v-model="deviceName" clearable placeholder="请输入点位名称" @clear="getDevice()"
|
<el-input class="!w-[170px] mr-2" v-model="deviceName" clearable placeholder="请输入点位名称" @clear="getDevice()"
|
||||||
@keyup.enter="getDevice()" />
|
@keyup.enter="getDevice()" />
|
||||||
|
<el-select v-model="deviceInfo.mainDeviceId" class="mr-2 selType" placeholder="区域" clearable
|
||||||
|
@change="getDevice" :teleported="false" :popper-append-to-body="false">
|
||||||
|
<el-option v-for="item in deviceMain" :key="item.mainDeviceId" :label="item.mainDeviceName"
|
||||||
|
:value="item.mainDeviceId" />
|
||||||
|
</el-select>
|
||||||
|
<el-select v-model="deviceInfo.mainDeviceId" class="mr-2 selType" placeholder="间隔" clearable
|
||||||
|
@change="getDevice" :teleported="false" :popper-append-to-body="false">
|
||||||
|
<el-option v-for="item in deviceMain" :key="item.mainDeviceId" :label="item.mainDeviceName"
|
||||||
|
:value="item.mainDeviceId" />
|
||||||
|
</el-select>
|
||||||
<el-select v-model="deviceInfo.mainDeviceId" class="mr-2 selType" placeholder="主设备" clearable
|
<el-select v-model="deviceInfo.mainDeviceId" class="mr-2 selType" placeholder="主设备" clearable
|
||||||
@change="getDevice" :teleported="false" :popper-append-to-body="false">
|
@change="getDevice" :teleported="false" :popper-append-to-body="false">
|
||||||
<el-option v-for="item in deviceMain" :key="item.mainDeviceId" :label="item.mainDeviceName"
|
<el-option v-for="item in deviceMain" :key="item.mainDeviceId" :label="item.mainDeviceName"
|
||||||
@ -5666,7 +5676,7 @@ ws1.onclose = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.selType {
|
.selType {
|
||||||
width: 240px;
|
width: 210px;
|
||||||
|
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
|
@ -179,7 +179,7 @@ function confirmClick(formEl: any) {
|
|||||||
console.log(res)
|
console.log(res)
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
algorithmible.value = false
|
algorithmible.value = false
|
||||||
ElMessage.success('添加成功')
|
ElMessage.success('更改成功')
|
||||||
gettreedata()
|
gettreedata()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -233,8 +233,11 @@ function handleClose1() {
|
|||||||
}
|
}
|
||||||
function replace() {
|
function replace() {
|
||||||
meterdata.value.forEach((item: any) => {
|
meterdata.value.forEach((item: any) => {
|
||||||
item.paramId = item.id
|
// item.paramId = item.id
|
||||||
|
item.componentId = componentId.value
|
||||||
|
// item.algorithmId=
|
||||||
})
|
})
|
||||||
|
console.log(meterdata.value)
|
||||||
batchAddAlgorithmDevice(meterdata.value).then((res: any) => {
|
batchAddAlgorithmDevice(meterdata.value).then((res: any) => {
|
||||||
if (res.code == 0) {
|
if (res.code == 0) {
|
||||||
mainble.value = false
|
mainble.value = false
|
||||||
@ -320,7 +323,8 @@ const mainble = ref()
|
|||||||
function editmain(row: any) {
|
function editmain(row: any) {
|
||||||
mainble.value = true
|
mainble.value = true
|
||||||
meterloding.value = true
|
meterloding.value = true
|
||||||
getAlgorithmParamsList({ algorithmId: row.algorithmId }).then((res: any) => {
|
componentId.value= row.componentId
|
||||||
|
getAlgorithmParamsList({ algorithmId: row.algorithmId,componentId: componentId.value}).then((res: any) => {
|
||||||
meterdata.value = res.data
|
meterdata.value = res.data
|
||||||
meterloding.value = false
|
meterloding.value = false
|
||||||
})
|
})
|
||||||
@ -333,6 +337,7 @@ const sourceType = ref(1)
|
|||||||
const cnshuId = ref('')
|
const cnshuId = ref('')
|
||||||
const tableref = ref()
|
const tableref = ref()
|
||||||
const deviceId = ref('')
|
const deviceId = ref('')
|
||||||
|
const componentId = ref('')
|
||||||
function selentDevide(row: any) {
|
function selentDevide(row: any) {
|
||||||
cnshuId.value = row.id
|
cnshuId.value = row.id
|
||||||
if (row.deviceId) {
|
if (row.deviceId) {
|
||||||
@ -358,77 +363,27 @@ function suredevice() {
|
|||||||
if (sourceType.value == 1) {
|
if (sourceType.value == 1) {
|
||||||
item.deviceId = deviceIdList.value.deviceId
|
item.deviceId = deviceIdList.value.deviceId
|
||||||
item.deviceName = deviceIdList.value.deviceName
|
item.deviceName = deviceIdList.value.deviceName
|
||||||
item.componentId = deviceIdList.value.componentId
|
// item.componentId = deviceIdList.value.componentId
|
||||||
|
item.paramValue = deviceIdList.value.deviceName
|
||||||
} else if (sourceType.value == 2) {
|
} else if (sourceType.value == 2) {
|
||||||
item.deviceId = deviceIdList.value.signalId
|
item.deviceId = deviceIdList.value.signalId
|
||||||
item.deviceName = deviceIdList.value.signalName
|
item.deviceName = deviceIdList.value.signalName
|
||||||
item.componentId = deviceIdList.value.mainComponentId
|
// item.componentId = deviceIdList.value.mainComponentId
|
||||||
|
item.paramValue = deviceIdList.value.signalName
|
||||||
}
|
}
|
||||||
item.sourceType = sourceType.value
|
item.sourceType = sourceType.value
|
||||||
|
|
||||||
}
|
}
|
||||||
// item.paramId = deviceIdList.value.paramId
|
// item.paramId = deviceIdList.value.paramId
|
||||||
})
|
})
|
||||||
|
console.log( meterdata.value)
|
||||||
}
|
}
|
||||||
function typeChange(val: any) {
|
function typeChange(val: any) {
|
||||||
sourceType.value = val
|
sourceType.value = val
|
||||||
if (sourceType.value == 1) {
|
getdevicedata1()
|
||||||
getdeviceTree()
|
|
||||||
} else if (sourceType.value == 2) {
|
|
||||||
getsignaltree()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
//////
|
//////
|
||||||
const devicetree = ref([])
|
|
||||||
const deviceloading = ref(false)
|
|
||||||
const deviceref = ref()
|
|
||||||
const bayId = ref('')
|
const bayId = ref('')
|
||||||
const currentNodeKey1 = ref()
|
|
||||||
function getdeviceTree() {
|
|
||||||
const params = {
|
|
||||||
stationId: userStore.stationId
|
|
||||||
}
|
|
||||||
deviceloading.value = true
|
|
||||||
getTreelist(params).then((res: any) => {
|
|
||||||
devicetree.value = res.data
|
|
||||||
deviceloading.value = false
|
|
||||||
bayId.value = res.data[0].children[0].children[0].bayId
|
|
||||||
getdevicedata1()
|
|
||||||
nextTick(() => {
|
|
||||||
deviceref.value?.setCurrentKey(bayId.value);
|
|
||||||
});
|
|
||||||
})
|
|
||||||
.catch((error: any) => {
|
|
||||||
treeloading.value = false
|
|
||||||
})
|
|
||||||
|
|
||||||
}
|
|
||||||
function handledeviceClick(data: any, node: any) {
|
|
||||||
if (sourceType.value == 1) {
|
|
||||||
if (data.children) {
|
|
||||||
node.isCurrent = false
|
|
||||||
currentNodeKey1.value = ""
|
|
||||||
nextTick(() => {
|
|
||||||
currentNodeKey1.value = bayId.value
|
|
||||||
})
|
|
||||||
} else {
|
|
||||||
bayId.value = data.bayId;
|
|
||||||
// treeloading.value = true
|
|
||||||
getdevicedata1()
|
|
||||||
}
|
|
||||||
} else if (sourceType.value == 2) {
|
|
||||||
if (data.children.length > 0) {
|
|
||||||
nextTick(() => {
|
|
||||||
deviceref.value?.setCurrentKey(currentNodeid.value);
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
currentNodeid.value = data.id
|
|
||||||
getdevicedata1();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
const devicedataloading = ref(false)
|
const devicedataloading = ref(false)
|
||||||
const devicetaotal = ref()
|
const devicetaotal = ref()
|
||||||
const devicedata = ref([])
|
const devicedata = ref([])
|
||||||
@ -436,12 +391,13 @@ const paramstable: any = ref({
|
|||||||
size: 10,
|
size: 10,
|
||||||
current: 1,
|
current: 1,
|
||||||
deviceName: '',
|
deviceName: '',
|
||||||
mainDeviceId: '',
|
|
||||||
componentId: ''
|
componentId: ''
|
||||||
})
|
})
|
||||||
function getdevicedata1() {
|
function getdevicedata1() {
|
||||||
|
|
||||||
if (sourceType.value == 1) {
|
if (sourceType.value == 1) {
|
||||||
paramstable.value.bayId = bayId.value
|
paramstable.value.bayId = bayId.value
|
||||||
|
paramstable.value.componentId = componentId.value
|
||||||
getdevicedata(paramstable.value).then((res: any) => {
|
getdevicedata(paramstable.value).then((res: any) => {
|
||||||
devicedata.value = res.data.records
|
devicedata.value = res.data.records
|
||||||
devicetaotal.value = res.data.total
|
devicetaotal.value = res.data.total
|
||||||
@ -457,7 +413,7 @@ function getdevicedata1() {
|
|||||||
|
|
||||||
})
|
})
|
||||||
} else if (sourceType.value == 2) {
|
} else if (sourceType.value == 2) {
|
||||||
paramstable.value.mainComponentId = currentNodeid.value
|
paramstable.value.mainComponentId = componentId.value
|
||||||
queryDeviceSignal(paramstable.value).then((res: any) => {
|
queryDeviceSignal(paramstable.value).then((res: any) => {
|
||||||
devicedata.value = res.data.records
|
devicedata.value = res.data.records
|
||||||
devicetaotal.value = res.data.total
|
devicetaotal.value = res.data.total
|
||||||
@ -531,19 +487,6 @@ function notification() {
|
|||||||
}
|
}
|
||||||
//////
|
//////
|
||||||
/////
|
/////
|
||||||
const currentNodeid = ref('')
|
|
||||||
function getsignaltree() {
|
|
||||||
deviceloading.value = true
|
|
||||||
getDeviceTree({ componentName: '', stationCode: userStore.stationCode }).then((res: any) => {
|
|
||||||
devicetree.value = publicTree(res.data, '')
|
|
||||||
currentNodeid.value = res.data[0].children[0].children[0].children[0].id
|
|
||||||
nextTick(() => {
|
|
||||||
deviceref.value?.setCurrentKey(currentNodeid.value);
|
|
||||||
});
|
|
||||||
deviceloading.value = false
|
|
||||||
getdevicedata1()
|
|
||||||
})
|
|
||||||
}
|
|
||||||
const typeoptions: any = ref([])
|
const typeoptions: any = ref([])
|
||||||
function isykyttype(val: any) {
|
function isykyttype(val: any) {
|
||||||
let name: any = ''
|
let name: any = ''
|
||||||
@ -641,7 +584,7 @@ onMounted(() => {
|
|||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span
|
<span
|
||||||
style="display: flex;display: -webkit-flex;justify-content: space-around;-webkit-justify-content: space-around; ">
|
style="display: flex;display: -webkit-flex;justify-content: space-around;-webkit-justify-content: space-around; ">
|
||||||
<img src="@/assets/newimg/ht_xg.png" alt="" title="修改" @click="editmain(scope.row)"
|
<img src="@/assets/newimg/ht_xg.png" alt="" title="关联" @click="editmain(scope.row)"
|
||||||
style="cursor: pointer;">
|
style="cursor: pointer;">
|
||||||
<img src="@/assets/newimg/ht_sc.png" alt="" title="删除" @click="delmain(scope.row)"
|
<img src="@/assets/newimg/ht_sc.png" alt="" title="删除" @click="delmain(scope.row)"
|
||||||
style="cursor: pointer;">
|
style="cursor: pointer;">
|
||||||
@ -738,7 +681,7 @@ onMounted(() => {
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="paramFixed" label="是否关联点位" width="100" align="center">
|
<el-table-column prop="paramFixed" label="是否固定参数" width="100" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<div style="height:35px;padding: 2px 0px;">
|
<div style="height:35px;padding: 2px 0px;">
|
||||||
<el-select v-if="scope.row.algor" v-model="scope.row.paramFixed" placeholder=" ">
|
<el-select v-if="scope.row.algor" v-model="scope.row.paramFixed" placeholder=" ">
|
||||||
@ -835,12 +778,12 @@ onMounted(() => {
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="paramRange" label="范围" width="70" align="center"></el-table-column>
|
<el-table-column prop="paramRange" label="范围" width="70" align="center"></el-table-column>
|
||||||
<el-table-column prop="paramValue" label="参数值" width="100" align="center">
|
<el-table-column prop="paramValue" label="参数值" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<div style="height:35px;padding: 2px 0px;">
|
<div style="padding: 2px 0px;">
|
||||||
<el-input v-if="scope.row.paramFixed == 0" v-model="scope.row.paramValue"
|
<el-input v-if="scope.row.paramFixed == 1" v-model="scope.row.paramValue"
|
||||||
style="width: 100%" clearable />
|
style="width: 100%" clearable />
|
||||||
<span v-else>--</span>
|
<span v-else-if="scope.row.paramFixed == 0">{{ scope.row.paramValue }}</span>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -850,7 +793,7 @@ onMounted(() => {
|
|||||||
style="display: flex;display: -webkit-flex;justify-content: space-around;-webkit-justify-content: space-around; ">
|
style="display: flex;display: -webkit-flex;justify-content: space-around;-webkit-justify-content: space-around; ">
|
||||||
<!-- 0 否 1是 -->
|
<!-- 0 否 1是 -->
|
||||||
<el-button size="small" class="searchButton" type="primary"
|
<el-button size="small" class="searchButton" type="primary"
|
||||||
:disabled="scope.row.paramFixed == 0"
|
:disabled="scope.row.paramFixed == 1"
|
||||||
@click="selentDevide(scope.row)">选择点位</el-button>
|
@click="selentDevide(scope.row)">选择点位</el-button>
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
@ -871,28 +814,7 @@ onMounted(() => {
|
|||||||
<div :class="sourceType == 2 ? 'bianhua' : ''" @click="typeChange(2)">关联信号</div>
|
<div :class="sourceType == 2 ? 'bianhua' : ''" @click="typeChange(2)">关联信号</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="faulttemplate-box1">
|
<div class="faulttemplate-box1">
|
||||||
<div class="silderLeft1">
|
|
||||||
<div class="displayflex" style="margin: 10px 0px 5px 0px;padding-left: 8px;height: 30px;">
|
|
||||||
<div class="line"></div>
|
|
||||||
<div class="title" style="font-size: 14px;">分类导航</div>
|
|
||||||
</div>
|
|
||||||
<el-scrollbar height="calc(58vh)" style="width:100%">
|
|
||||||
<el-tree v-if="sourceType == 1" ref="deviceref" @node-click="handledeviceClick"
|
|
||||||
node-key="bayId" :data="devicetree" :current-node-key="currentNodeKey1"
|
|
||||||
:highlight-current="true" :props="defaultProps1" v-loading="deviceloading">
|
|
||||||
<template #default="{ node }">
|
|
||||||
<span>{{ node.label }}</span>
|
|
||||||
</template>
|
|
||||||
</el-tree>
|
|
||||||
<el-tree v-if="sourceType == 2" ref="deviceref" @node-click="handledeviceClick"
|
|
||||||
node-key="id" :data="devicetree" :current-node-key="currentNodeKey1"
|
|
||||||
:highlight-current="true" :props="defaultProps1" v-loading="deviceloading">
|
|
||||||
<template #default="{ node }">
|
|
||||||
<span>{{ node.label }}</span>
|
|
||||||
</template>
|
|
||||||
</el-tree>
|
|
||||||
</el-scrollbar>
|
|
||||||
</div>
|
|
||||||
<div class="silderRight1">
|
<div class="silderRight1">
|
||||||
<div
|
<div
|
||||||
style="display: flex;display: -webkit-flex; justify-content: space-between; -webkit-justify-content: space-between; margin:15px 0px">
|
style="display: flex;display: -webkit-flex; justify-content: space-between; -webkit-justify-content: space-between; margin:15px 0px">
|
||||||
@ -904,16 +826,6 @@ onMounted(() => {
|
|||||||
<el-input v-if="sourceType == 2" v-model="paramstable.signalName"
|
<el-input v-if="sourceType == 2" v-model="paramstable.signalName"
|
||||||
placeholder="请输入信号名称" @clear="getdevicedata1()" @change="getdevicedata1()"
|
placeholder="请输入信号名称" @clear="getdevicedata1()" @change="getdevicedata1()"
|
||||||
style="margin-right:15px ;width: 185px;" clearable />
|
style="margin-right:15px ;width: 185px;" clearable />
|
||||||
<el-select v-if="sourceType == 1" clearable v-model="paramstable.mainDeviceId"
|
|
||||||
placeholder="所属主设备" style="margin-right:15px ;" @change="getdevicedata1()">
|
|
||||||
<el-option v-for="item in mainEquipment" :key="item.mainDeviceId"
|
|
||||||
:label="item.mainDeviceName" :value="item.mainDeviceId" />
|
|
||||||
</el-select>
|
|
||||||
<el-select v-if="sourceType == 1" clearable v-model="paramstable.componentId"
|
|
||||||
placeholder="所属部件" style="margin-right:15px ;" @change="getdevicedata1()">
|
|
||||||
<el-option v-for="item in getacaTypeBayId" :key="item.componentId"
|
|
||||||
:label="item.componentName" :value="item.componentId" />
|
|
||||||
</el-select>
|
|
||||||
<el-button class="searchButton" type="primary"
|
<el-button class="searchButton" type="primary"
|
||||||
@click="getdevicedata1()">搜索</el-button>
|
@click="getdevicedata1()">搜索</el-button>
|
||||||
<el-button class="searchButton" @click="resetting()">重置</el-button>
|
<el-button class="searchButton" @click="resetting()">重置</el-button>
|
||||||
|
@ -107,7 +107,7 @@ function getsignadata() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
function gettabledata() {
|
function gettabledata() {
|
||||||
if (detaall.value.length > 0) {
|
if (detaall.value) {
|
||||||
tableform.value.startDate = formatDate(detaall.value[0])
|
tableform.value.startDate = formatDate(detaall.value[0])
|
||||||
tableform.value.endDate = formatDate(detaall.value[1])
|
tableform.value.endDate = formatDate(detaall.value[1])
|
||||||
} else {
|
} else {
|
||||||
@ -278,7 +278,7 @@ function gettoday() {
|
|||||||
:row-class-name="tableRowClassName"
|
:row-class-name="tableRowClassName"
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="index" label="序号" width="50px" align="center" />
|
<el-table-column type="index" label="序号" width="50px" align="center" />
|
||||||
<el-table-column label="采集时间" prop="startTime" width="160" align="center"></el-table-column>
|
<el-table-column label="采集时间" prop="startTime" align="center"></el-table-column>
|
||||||
<el-table-column label="监测数值" prop="value" align="center"></el-table-column>
|
<el-table-column label="监测数值" prop="value" align="center"></el-table-column>
|
||||||
<el-table-column label="单位" prop="unit" align="center"></el-table-column>
|
<el-table-column label="单位" prop="unit" align="center"></el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@ -342,7 +342,7 @@ function gettoday() {
|
|||||||
|
|
||||||
.text_top {
|
.text_top {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin-top:20px ;
|
margin-top:30px ;
|
||||||
|
|
||||||
.text_top_title {
|
.text_top_title {
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -377,24 +377,24 @@ function gettoday() {
|
|||||||
align-items: center;
|
align-items: center;
|
||||||
.content_one_title {
|
.content_one_title {
|
||||||
width: 114px;
|
width: 114px;
|
||||||
height: 75px;
|
height: 50px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 75px;
|
line-height: 50px;
|
||||||
border-top: 1px solid #00397c;
|
border-top: 1px solid #00397c;
|
||||||
border-left: 1px solid #00397c;
|
border-left: 1px solid #00397c;
|
||||||
background-color: #002562;
|
background-color: #002562;
|
||||||
font-size: 16px;
|
font-size: 14px;
|
||||||
color: #B5D7FF;
|
color: #B5D7FF;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content_one_text {
|
.content_one_text {
|
||||||
width: 267px;
|
width: 267px;
|
||||||
height: 75px;
|
height: 50px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
line-height: 75px;
|
line-height: 50px;
|
||||||
border-top: 1px solid #00397c;
|
border-top: 1px solid #00397c;
|
||||||
border-left: 1px solid #00397c;
|
border-left: 1px solid #00397c;
|
||||||
font-size: 16px;
|
font-size: 14px;
|
||||||
color: #B5D7FF;
|
color: #B5D7FF;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,6 +47,7 @@ const hutotal: any = ref('')
|
|||||||
const environment_data = ref([])
|
const environment_data = ref([])
|
||||||
// const treeloading = ref(false)
|
// const treeloading = ref(false)
|
||||||
function getEnvironment() {
|
function getEnvironment() {
|
||||||
|
treeloading.value = true
|
||||||
|
|
||||||
if (tableData.value) {
|
if (tableData.value) {
|
||||||
environment_params.value.startDate = tableData.value[0]
|
environment_params.value.startDate = tableData.value[0]
|
||||||
@ -57,6 +58,7 @@ function getEnvironment() {
|
|||||||
}
|
}
|
||||||
environment_params.value.signalId = signalId.value
|
environment_params.value.signalId = signalId.value
|
||||||
getdeviceworkdata(environment_params.value).then((res: any) => {
|
getdeviceworkdata(environment_params.value).then((res: any) => {
|
||||||
|
treeloading.value = false
|
||||||
environment_data.value = res.data.records
|
environment_data.value = res.data.records
|
||||||
environment_params.value.size = res.data.size
|
environment_params.value.size = res.data.size
|
||||||
environment_params.value.current = res.data.current
|
environment_params.value.current = res.data.current
|
||||||
@ -65,7 +67,7 @@ function getEnvironment() {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
function environmentReset() {
|
function environmentReset() {
|
||||||
environmentInfo
|
// environmentInfo
|
||||||
if (tableData.value) {
|
if (tableData.value) {
|
||||||
tableData.value.length = 0
|
tableData.value.length = 0
|
||||||
}
|
}
|
||||||
@ -121,12 +123,14 @@ const environmentInfo: any = ref([])
|
|||||||
|
|
||||||
// }
|
// }
|
||||||
function getInit() {
|
function getInit() {
|
||||||
|
|
||||||
let params = {
|
let params = {
|
||||||
stationId: userStore.stationId
|
stationId: userStore.stationId
|
||||||
}
|
}
|
||||||
getDeviceWorkData(params).then((res: any) => {
|
getDeviceWorkData(params).then((res: any) => {
|
||||||
|
|
||||||
environmentInfo.value = res.data
|
environmentInfo.value = res.data
|
||||||
|
signalId.value = res.data[0].signalId
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -152,8 +156,9 @@ function currency(list: any, itemcode: any) {
|
|||||||
const EquipmentType: any = ref([])
|
const EquipmentType: any = ref([])
|
||||||
function gettype() {
|
function gettype() {
|
||||||
getDeviceByType({ dictcode: 'system' }).then((res: any) => {
|
getDeviceByType({ dictcode: 'system' }).then((res: any) => {
|
||||||
|
// debugger
|
||||||
EquipmentType.value = res.data
|
EquipmentType.value = res.data
|
||||||
signalId.value = res.data[0].signalId
|
|
||||||
getEnvironment()
|
getEnvironment()
|
||||||
getechartdata()
|
getechartdata()
|
||||||
})
|
})
|
||||||
@ -240,14 +245,14 @@ function getechartdata() {
|
|||||||
<el-button class="searchButton" @click="environmentReset()">重置</el-button>
|
<el-button class="searchButton" @click="environmentReset()">重置</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-table :data="environment_data" :row-class-name="tableRowClassName" class="PatrolMonitoring"
|
<el-table :data="environment_data" :row-class-name="tableRowClassName" v-loading="treeloading"
|
||||||
v-loading="treeloading" element-loading-background="rgb(11, 40, 34)" highlight-current-row
|
element-loading-background="rgb(11, 40, 34)" highlight-current-row
|
||||||
style="width: 100%;margin:auto;position: relative;margin-top: 15px; height:calc(56vh); overflow: auto "
|
style="width: 100%;margin:auto;position: relative;margin-top: 15px; height:calc(56vh); overflow: auto "
|
||||||
:header-cell-style="{ background: '#253b51', color: '#b5d7ff', height: '50px' }">
|
:header-cell-style="{ background: '#253b51', color: '#b5d7ff', height: '50px' }">
|
||||||
<el-table-column type="index" label="序号" width="80px" align="center" />
|
<el-table-column type="index" label="序号" width="80px" align="center" />
|
||||||
<el-table-column property="signalName" label="气象参数名称" align="center" />
|
<el-table-column property="signalName" label="气象参数名称" align="center" />
|
||||||
<el-table-column property="startTime" label="采集时间" align="center" width="160px" />
|
<el-table-column property="startTime" label="采集时间" align="center" />
|
||||||
<el-table-column property="taskName" label="监测数值" align="center" width="100px">
|
<el-table-column property="taskName" label="监测数值" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<div v-if="scope.row.value">{{ scope.row.value }}{{ scope.row.unit }}</div>
|
<div v-if="scope.row.value">{{ scope.row.value }}{{ scope.row.unit }}</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -12,6 +12,12 @@ import Page from '@/components/Pagination/page.vue'
|
|||||||
import { useUserStore } from '@/store/modules/user';
|
import { useUserStore } from '@/store/modules/user';
|
||||||
import Eldialog from '@/components/seccmsdialog/eldialog.vue';
|
import Eldialog from '@/components/seccmsdialog/eldialog.vue';
|
||||||
import wavEcharts from '@/components/wavEcharts/index.vue';
|
import wavEcharts from '@/components/wavEcharts/index.vue';
|
||||||
|
import dayjs from 'dayjs'
|
||||||
|
function today(){
|
||||||
|
let startTime = dayjs().startOf('day').format('YYYY-MM-DD HH:mm:ss')
|
||||||
|
let endTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
|
||||||
|
tableData.value = [startTime,endTime]
|
||||||
|
}
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const url = userStore.webApiBaseUrl;
|
const url = userStore.webApiBaseUrl;
|
||||||
function getData() {
|
function getData() {
|
||||||
@ -78,9 +84,10 @@ onBeforeUnmount(() => {
|
|||||||
})
|
})
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getInit()
|
getInit()
|
||||||
|
today()
|
||||||
})
|
})
|
||||||
|
|
||||||
const tableData = ref([])
|
const tableData:any = ref([])
|
||||||
const treeloading = ref(false)
|
const treeloading = ref(false)
|
||||||
const environment_data = ref([
|
const environment_data = ref([
|
||||||
|
|
||||||
@ -95,7 +102,8 @@ const params: any = ref({
|
|||||||
endDate: '',
|
endDate: '',
|
||||||
})
|
})
|
||||||
function getdata() {
|
function getdata() {
|
||||||
if (tableData.value.length != 0) {
|
console.log(tableData.value)
|
||||||
|
if (tableData.value) {
|
||||||
params.value.startDate = tableData.value[0]
|
params.value.startDate = tableData.value[0]
|
||||||
params.value.endDate = tableData.value[1]
|
params.value.endDate = tableData.value[1]
|
||||||
} else {
|
} else {
|
||||||
@ -233,7 +241,7 @@ function open(row: any) {
|
|||||||
<img src="@/assets/tank/line2.png" alt="">
|
<img src="@/assets/tank/line2.png" alt="">
|
||||||
<div class="bottom_table">
|
<div class="bottom_table">
|
||||||
<div class="screenHomepage">
|
<div class="screenHomepage">
|
||||||
<el-date-picker class="screenHomepage" popper-class="elDatePicker" @change=""
|
<el-date-picker class="screenHomepage" popper-class="elDatePicker" @change="getdata()"
|
||||||
style="width: 300px; margin-right: 10px;" v-model="tableData" type="daterange"
|
style="width: 300px; margin-right: 10px;" v-model="tableData" type="daterange"
|
||||||
range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
|
range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
|
||||||
value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
|
value-format="YYYY-MM-DD" format="YYYY-MM-DD" />
|
||||||
@ -253,15 +261,15 @@ function open(row: any) {
|
|||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="index" label="序号" width="80px" align="center" />
|
<el-table-column type="index" label="序号" width="80px" align="center" />
|
||||||
<el-table-column property="fileName" label="文件名称" align="center" />
|
<el-table-column property="fileName" label="文件名称" align="center" />
|
||||||
<el-table-column property="duration" label="时长" align="center">
|
<el-table-column property="duration" label="时长" width="60px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.duration }}s</span>
|
<span>{{ scope.row.duration }}s</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column property="patroldeviceName" label="监测设备" align="center">
|
<el-table-column property="patroldeviceName" width="160px" label="监测设备" align="center">
|
||||||
|
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column property="date" label="录制时间" align="center" />
|
<el-table-column property="date" label="录制时间" width="160px" align="center" />
|
||||||
<el-table-column property="name" label="操作" align="center" width="80px">
|
<el-table-column property="name" label="操作" align="center" width="80px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button class="searchButton" @click="open(scope.row)"
|
<el-button class="searchButton" @click="open(scope.row)"
|
||||||
|
@ -358,19 +358,20 @@ const tableRowClassName = ({
|
|||||||
@selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
|
@selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="selection" align="center" width="55" />
|
<el-table-column type="selection" align="center" width="55" />
|
||||||
<el-table-column label="序号" type="index" width="50" />
|
<el-table-column label="序号" align="center" type="index" width="50" />
|
||||||
<el-table-column label="设备编号" prop="deviceCode" width="80" />
|
<el-table-column label="设备编号" align="center" prop="deviceCode" width="80" />
|
||||||
<el-table-column label="设备名称" prop="deviceName" />
|
<el-table-column label="设备名称" align="left" prop="deviceName" width="120" />
|
||||||
<el-table-column label="设备类型" prop="deviceTypeName" width="170" />
|
<el-table-column label="设备类型" align="center" prop="deviceTypeName" width="170" />
|
||||||
<el-table-column label="设备型号" prop="deviceModel" width="170" />
|
<el-table-column label="设备型号" align="center" prop="deviceModel" width="120" />
|
||||||
<el-table-column label="出厂编号" prop="productionNum" width="150" />
|
<el-table-column label="出厂编号" align="center" prop="productionNum" width="100" />
|
||||||
<el-table-column label="出厂日期" prop="productionDate" width="160">
|
<el-table-column label="出厂日期" align="center" prop="productionDate" width="160">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ dateFormat(scope.row.productionDate) }}</span>
|
<span>{{ dateFormat(scope.row.productionDate) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="安装位置" prop="place" />
|
<el-table-column label="网关设备IP" align="center" prop="netdeviceIp" width="120" />
|
||||||
<el-table-column label="网关设备IP" prop="netdeviceIp" width="120" />
|
<el-table-column label="安装位置" align="left" prop="place" />
|
||||||
|
|
||||||
<el-table-column fixed="right" label="操作" width="80">
|
<el-table-column fixed="right" label="操作" width="80">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span
|
<span
|
||||||
|
@ -85,6 +85,8 @@ onMounted(() => {
|
|||||||
getDeviceByType({ dictcode: 'ykytType' }).then((ress: any) => {
|
getDeviceByType({ dictcode: 'ykytType' }).then((ress: any) => {
|
||||||
typeoptions.value = ress.data
|
typeoptions.value = ress.data
|
||||||
})
|
})
|
||||||
|
gettype()
|
||||||
|
getmeterDeviceId()
|
||||||
init()
|
init()
|
||||||
})
|
})
|
||||||
const CameraName = ref('')
|
const CameraName = ref('')
|
||||||
@ -113,13 +115,17 @@ function isykyttype(val: any) {
|
|||||||
}
|
}
|
||||||
return name
|
return name
|
||||||
}
|
}
|
||||||
|
const systemcode = ref('')
|
||||||
|
const meterDeviceId = ref('')
|
||||||
function getData() {
|
function getData() {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
const params = {
|
const params = {
|
||||||
current: queryInfo.value.current,
|
current: queryInfo.value.current,
|
||||||
size: queryInfo.value.size,
|
size: queryInfo.value.size,
|
||||||
signalName: signalName.value,
|
signalName: signalName.value,
|
||||||
mainComponentId: currentNodeid.value
|
mainComponentId: currentNodeid.value,
|
||||||
|
systemcode: systemcode.value,
|
||||||
|
meterDeviceId:meterDeviceId.value
|
||||||
}
|
}
|
||||||
queryDeviceSignal(params).then((res: any) => {
|
queryDeviceSignal(params).then((res: any) => {
|
||||||
tableData.value = res.data.records
|
tableData.value = res.data.records
|
||||||
@ -130,7 +136,6 @@ function getData() {
|
|||||||
function editclick(row: any) {
|
function editclick(row: any) {
|
||||||
signalform.value = JSON.parse(JSON.stringify(row))
|
signalform.value = JSON.parse(JSON.stringify(row))
|
||||||
getmeterDeviceId()
|
getmeterDeviceId()
|
||||||
gettype()
|
|
||||||
if (signalform.value.normalRange !== '' && signalform.value.normalRange !== undefined && signalform.value.normalRange !== null) {
|
if (signalform.value.normalRange !== '' && signalform.value.normalRange !== undefined && signalform.value.normalRange !== null) {
|
||||||
signalrangestart.value = signalform.value.normalRange.match(/(\S*)~/)[1]
|
signalrangestart.value = signalform.value.normalRange.match(/(\S*)~/)[1]
|
||||||
signalrangeend.value = signalform.value.normalRange.match(/~(\S*)/)[1]
|
signalrangeend.value = signalform.value.normalRange.match(/~(\S*)/)[1]
|
||||||
@ -196,8 +201,15 @@ function getmeterDeviceId() {
|
|||||||
eterDevice.value = res.data
|
eterDevice.value = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
function getmeterDeviceId1(){
|
||||||
|
if(!systemcode.value){
|
||||||
|
meterDeviceId.value = ''
|
||||||
|
}
|
||||||
|
getmeterDeviceId()
|
||||||
|
getData()
|
||||||
|
}
|
||||||
|
|
||||||
function addclick() {
|
function addclick() {
|
||||||
gettype()
|
|
||||||
if (ruleFormRef.value != null) ruleFormRef.value.resetFields();
|
if (ruleFormRef.value != null) ruleFormRef.value.resetFields();
|
||||||
isSwitch.value = false
|
isSwitch.value = false
|
||||||
signalform.value = {}
|
signalform.value = {}
|
||||||
@ -311,6 +323,24 @@ const tableRowClassName = ({
|
|||||||
}
|
}
|
||||||
return ''
|
return ''
|
||||||
}
|
}
|
||||||
|
function currency(list: any, itemcode: any) {
|
||||||
|
let dictname = ''
|
||||||
|
list.forEach((element: any) => {
|
||||||
|
if (element.itemcode == itemcode) {
|
||||||
|
dictname = element.dictname
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return dictname
|
||||||
|
}
|
||||||
|
function currency1(list: any, itemcode: any) {
|
||||||
|
let dictname = ''
|
||||||
|
list.forEach((element: any) => {
|
||||||
|
if (element. deviceId== itemcode) {
|
||||||
|
dictname = element.deviceName
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return dictname
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<div class="faulttemplate-box">
|
<div class="faulttemplate-box">
|
||||||
@ -337,8 +367,18 @@ const tableRowClassName = ({
|
|||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div
|
<div
|
||||||
style="margin-bottom:10px;display: flex;display: -webkit-flex; justify-content: space-between;-webkit-justify-content: space-between; width: 100%;">
|
style="margin-bottom:10px;display: flex;display: -webkit-flex; justify-content: space-between;-webkit-justify-content: space-between; width: 100%;">
|
||||||
<div>
|
<div style="display: flex;align-items: center;">
|
||||||
<el-input v-model="signalName" placeholder="请输入信号名称" style="width: 220px;" clearable />
|
<el-input v-model="signalName" placeholder="请输入信号名称" @change="getData" style="width: 220px;margin-right: 10px;" clearable />
|
||||||
|
<el-select v-model="systemcode" placeholder="请选择所属系统" clearable
|
||||||
|
style="width: 220px;margin-right: 10px;" @change="getmeterDeviceId1">
|
||||||
|
<el-option v-for="item in belonging" :key="item.itemcode" :label="item.dictname"
|
||||||
|
:value="item.itemcode" />
|
||||||
|
</el-select>
|
||||||
|
<el-select v-model="meterDeviceId" placeholder="请选择辅控设备" clearable @change="getData"
|
||||||
|
style="width: 220px;" :disabled="!systemcode">
|
||||||
|
<el-option v-for="item in eterDevice" :key="item.deviceId" :label="item.deviceName"
|
||||||
|
:value="item.deviceId" />
|
||||||
|
</el-select>
|
||||||
<el-button class="searchButton" type="primary" style="margin-left: 10px;"
|
<el-button class="searchButton" type="primary" style="margin-left: 10px;"
|
||||||
@click="getData">搜索</el-button>
|
@click="getData">搜索</el-button>
|
||||||
</div>
|
</div>
|
||||||
@ -357,26 +397,35 @@ const tableRowClassName = ({
|
|||||||
@selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
|
@selection-change="handleSelectionChange" :row-class-name="tableRowClassName"
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="selection" align="center" width="55" />
|
<el-table-column type="selection" align="center" width="55" />
|
||||||
<el-table-column label="序号" type="index" width="50" />
|
<el-table-column label="序号" align="center" type="index" width="50" />
|
||||||
<el-table-column label="信号编号" prop="signalCode" width="100" />
|
<el-table-column label="信号编号" align="center" prop="signalCode" width="100" />
|
||||||
<el-table-column label="信号名称" prop="signalName" min-width="140" />
|
<el-table-column label="信号名称" align="left" prop="signalName" width="140" />
|
||||||
<el-table-column label="信号单位" prop="signalUnit" width="80" />
|
<el-table-column label="信号单位" align="center" prop="signalUnit" width="80" />
|
||||||
<el-table-column label="遥控遥调类型" prop="ykytType" width="150">
|
<el-table-column label="遥控遥调类型" align="center" prop="ykytType" width="150">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ isykyttype(scope.row.ykytType) }}</span>
|
<span>{{ isykyttype(scope.row.ykytType) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="是否告警信号" prop="signalType" width="100">
|
<el-table-column label="是否告警信号" align="center" prop="signalType" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.signalType === '1'">是</span>
|
<span v-if="scope.row.signalType === '1'">是</span>
|
||||||
<span v-else>否</span>
|
<span v-else>否</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
<el-table-column label="所属系统" align="center" prop="systemcode" width="80">
|
||||||
<el-table-column label="遥信地址(yx)" prop="yxAddr" />
|
<template #default="scope">
|
||||||
<el-table-column label="遥测地址(yc)" prop="ycAddr" />
|
<span>{{ currency(belonging,scope.row.systemcode) }}</span>
|
||||||
<el-table-column label="遥控地址(yk)" prop="ykAddr" />
|
</template>
|
||||||
<el-table-column label="遥调地址(yt)" prop="ytAddr" />
|
</el-table-column>
|
||||||
|
<el-table-column label="辅控设备" align="center" prop="meterDeviceId" width="80">
|
||||||
|
<template #default="scope">
|
||||||
|
<span>{{ currency1(eterDevice,scope.row.meterDeviceId) }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="遥信地址(yx)" align="left" prop="yxAddr" />
|
||||||
|
<el-table-column label="遥测地址(yc)" align="left" prop="ycAddr" />
|
||||||
|
<el-table-column label="遥控地址(yk)" align="left" prop="ykAddr" />
|
||||||
|
<el-table-column label="遥调地址(yt)" align="left" prop="ytAddr" />
|
||||||
<!-- <el-table-column label="数据地址" prop="reportAddr" /> -->
|
<!-- <el-table-column label="数据地址" prop="reportAddr" /> -->
|
||||||
<el-table-column fixed="right" label="操作" width="100">
|
<el-table-column fixed="right" label="操作" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
@ -1765,17 +1765,17 @@ const isGaoliang: any = ref("")
|
|||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px'}">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px'}">
|
||||||
<el-table-column type="selection" width="30" align="center" :selectable="checkSelectable" />
|
<el-table-column type="selection" width="30" align="center" :selectable="checkSelectable" />
|
||||||
<el-table-column type="index" label="序号" width="50px" align="center" />
|
<el-table-column type="index" label="序号" width="50px" align="center" />
|
||||||
<el-table-column label="设备编码" prop="patroldeviceCode"></el-table-column>
|
<el-table-column label="设备编码" prop="patroldeviceCode" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备名称" prop="patroldeviceName" ></el-table-column>
|
<el-table-column label="设备名称" prop="patroldeviceName" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备类型" prop="typeName" width="80"></el-table-column>
|
<el-table-column label="设备类型" prop="typeName" width="80" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备型号" prop="deviceModel" ></el-table-column>
|
<el-table-column label="设备型号" prop="deviceModel" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备来源" prop="deviceSource" width="80"></el-table-column>
|
<el-table-column label="设备来源" prop="deviceSource" align="center" width="80"></el-table-column>
|
||||||
<el-table-column label="生产厂家" prop="manufacturer" width="80">
|
<el-table-column label="生产厂家" prop="manufacturer" align="center" width="80">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
{{ currency(manufacturerList, scope.row.manufacturer) }}
|
{{ currency(manufacturerList, scope.row.manufacturer) }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="安装位置" prop="place" width="80"></el-table-column>
|
<el-table-column label="安装位置" prop="place" width="80" align="center" ></el-table-column>
|
||||||
<el-table-column label="实时状态" width="100" prop="datastatus" align="center">
|
<el-table-column label="实时状态" width="100" prop="datastatus" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<!-- <span v-if="scope.row.typeName == '硬盘录像机'">
|
<!-- <span v-if="scope.row.typeName == '硬盘录像机'">
|
||||||
|
@ -334,21 +334,21 @@ const tableRowClassName = ({
|
|||||||
:row-class-name="tableRowClassName"
|
:row-class-name="tableRowClassName"
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="selection" align="center" width="55" />
|
<el-table-column type="selection" align="center" width="55" />
|
||||||
<el-table-column label="序号" type="index" width="50" />
|
<el-table-column label="序号" align="center" type="index" width="50" />
|
||||||
<el-table-column label="设备编号" prop="deviceCode" width="100" />
|
<el-table-column label="设备编号" align="center" prop="deviceCode" width="80" />
|
||||||
<el-table-column label="设备名称" prop="deviceName" min-width="100" />
|
<el-table-column label="设备名称" align="center" prop="deviceName" width="180" />
|
||||||
<el-table-column label="设备类型" prop="deviceType" min-width="80">
|
<el-table-column label="设备类型" align="center" prop="deviceType" width="160">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ currency(EquipmentType, scope.row.deviceType) }}</span>
|
<span>{{ currency(EquipmentType, scope.row.deviceType) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="中文描述" prop="deviceDesc" min-width="100" />
|
<el-table-column label="中文描述" align="left" prop="deviceDesc" min-width="100" />
|
||||||
<el-table-column label="设备型号" prop="deviceModel" width="100" />
|
<el-table-column label="设备型号" align="center" prop="deviceModel" width="100" />
|
||||||
<el-table-column label="出厂编号" prop="productionNum" width="100" />
|
<el-table-column label="出厂编号" align="center" prop="productionNum" width="100" />
|
||||||
<el-table-column label="出厂日期" prop="productionDate" width="100" align="center" />
|
<el-table-column label="出厂日期" prop="productionDate" width="100" align="center" />
|
||||||
<el-table-column label="生产厂家" prop="manufacturer" min-width="100" />
|
<el-table-column label="生产厂家" align="center" width="100" prop="manufacturer" min-width="100" />
|
||||||
<el-table-column label="生产国家" prop="madein" width="100" align="center" />
|
<el-table-column label="生产国家" prop="madein" width="100" align="center" />
|
||||||
<el-table-column label="以太网IP地址" prop="ipAddr" width="150" />
|
<el-table-column label="以太网IP地址" align="center" prop="ipAddr" width="150" />
|
||||||
<el-table-column prop="status" label="设备状态" width="100" align="center">
|
<el-table-column prop="status" label="设备状态" width="100" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.status === '00'" style="font-size: 14px;color:#FF3300;">停用</span>
|
<span v-if="scope.row.status === '00'" style="font-size: 14px;color:#FF3300;">停用</span>
|
||||||
@ -356,7 +356,7 @@ const tableRowClassName = ({
|
|||||||
<span v-else-if="scope.row.status === '02'" style="font-size: 14px;color: #FFCC00;">离线</span>
|
<span v-else-if="scope.row.status === '02'" style="font-size: 14px;color: #FFCC00;">离线</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column fixed="right" label="操作" width="110">
|
<el-table-column align="center" fixed="right" label="操作" width="110">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span
|
<span
|
||||||
style="display: flex;display: -webkit-flex;justify-content: space-around; -webkit-justify-content: space-around; ">
|
style="display: flex;display: -webkit-flex;justify-content: space-around; -webkit-justify-content: space-around; ">
|
||||||
|
@ -716,17 +716,17 @@ function GetArea() {
|
|||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
||||||
<el-table-column type="selection" width="30" align="center" :selectable="checkSelectable" />
|
<el-table-column type="selection" width="30" align="center" :selectable="checkSelectable" />
|
||||||
<el-table-column type="index" label="序号" width="50px" align="center" />
|
<el-table-column type="index" label="序号" width="50px" align="center" />
|
||||||
<el-table-column label="设备编码" prop="patroldeviceCode"></el-table-column>
|
<el-table-column label="设备编码" prop="patroldeviceCode" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备名称" prop="patroldeviceName"></el-table-column>
|
<el-table-column label="设备名称" prop="patroldeviceName" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备型号" prop="deviceModel"></el-table-column>
|
<el-table-column label="设备型号" prop="deviceModel" align="center" ></el-table-column>
|
||||||
<el-table-column label="设备来源" prop="deviceSource" width="110"></el-table-column>
|
<el-table-column label="设备来源" prop="deviceSource" align="center" width="110"></el-table-column>
|
||||||
<el-table-column label="生产厂家" prop="manufacturer" width="110">
|
<el-table-column label="生产厂家" prop="manufacturer" align="center" width="110">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
{{ currency(manufacturerList, scope.row.manufacturer) }}
|
{{ currency(manufacturerList, scope.row.manufacturer) }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="安装位置" prop="place"></el-table-column>
|
<el-table-column label="安装位置" prop="place" align="center" ></el-table-column>
|
||||||
<el-table-column label="实时状态" width="100" prop="datastatus">
|
<el-table-column label="实时状态" width="100" align="center" prop="datastatus">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.datastatus == 1" style="color:rgb(0, 204, 102)"><img
|
<span v-if="scope.row.datastatus == 1" style="color:rgb(0, 204, 102)"><img
|
||||||
src="@/assets/newimg/u387.png" alt=""
|
src="@/assets/newimg/u387.png" alt=""
|
||||||
@ -736,7 +736,7 @@ function GetArea() {
|
|||||||
style="display: inline-block; margin: 0px 5px; ">离线</span>
|
style="display: inline-block; margin: 0px 5px; ">离线</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="状态" width="120" prop="datastatus">
|
<el-table-column label="状态" width="120" align="center" prop="datastatus">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-switch v-model="scope.row.datastatus" active-value="1" inactive-value="0"
|
<el-switch v-model="scope.row.datastatus" active-value="1" inactive-value="0"
|
||||||
@change="switchChange(scope.row)" style="margin-right: 4px"></el-switch>
|
@change="switchChange(scope.row)" style="margin-right: 4px"></el-switch>
|
||||||
|
@ -3,14 +3,11 @@ import { ref, onMounted, reactive, nextTick } from 'vue'
|
|||||||
import Page from '@/components/Pagination/page.vue'
|
import Page from '@/components/Pagination/page.vue'
|
||||||
import { ElMessageBox, ElMessage, ElTable, FormRules, ElTree } from 'element-plus'
|
import { ElMessageBox, ElMessage, ElTable, FormRules, ElTree } from 'element-plus'
|
||||||
import { getDeviceByType } from '@/api/device'
|
import { getDeviceByType } from '@/api/device'
|
||||||
import { queryDevice, addDevice, updateDevice, deleteDeviceById, deleteDeviceByIds, updateDeviceByIds } from '@/api/auxiliarymanage/index';
|
|
||||||
import { getGatewayList } from '@/api/systemmanage'
|
|
||||||
import { getdevicedata } from "@/api/device";
|
|
||||||
import Eldialog from '@/components/seccmsdialog/eldialog.vue'
|
import Eldialog from '@/components/seccmsdialog/eldialog.vue'
|
||||||
import { useUserStore } from '@/store/modules/user';
|
import { useUserStore } from '@/store/modules/user';
|
||||||
import {
|
import * as echarts from 'echarts'
|
||||||
getBayTree,
|
import { getAlgorithmClassTree, getAlgorithmDeviceParams, getAlgorithmDeviceCurve, getAlgorithmParamsNameList, callAlgorithmAnalyse } from '@/api/question';
|
||||||
} from "@/api/makeTask";
|
import { fa } from 'element-plus/es/locale'
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
//树形控件类型定义
|
//树形控件类型定义
|
||||||
interface Tree {
|
interface Tree {
|
||||||
@ -35,244 +32,212 @@ const vMove = {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const tableRowClassName = ({
|
const defaultProps = { label: "name" };
|
||||||
row,
|
|
||||||
rowIndex,
|
|
||||||
}: {
|
|
||||||
row: any
|
|
||||||
rowIndex: number
|
|
||||||
}) => {
|
|
||||||
if (rowIndex % 2 === 0) {
|
|
||||||
return 'warning-row'
|
|
||||||
} else if (rowIndex % 2 === 1) {
|
|
||||||
return 'success-row'
|
|
||||||
}
|
|
||||||
return ''
|
|
||||||
}
|
|
||||||
const defaultProps = { label: "dictname" };
|
|
||||||
const defaultProps1 = {
|
|
||||||
children: "children",
|
|
||||||
label: "name"
|
|
||||||
};
|
|
||||||
const checktreenode: any = ref({})
|
|
||||||
const handleNodeClick = (data: Tree) => {
|
|
||||||
|
|
||||||
};
|
|
||||||
const treeRef = ref<InstanceType<typeof ElTree>>()
|
const treeRef = ref<InstanceType<typeof ElTree>>()
|
||||||
const treeData: any = ref([])
|
const treeData: any = ref([])
|
||||||
const treeloading = ref(false)
|
const treeloading = ref(false)
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
init()
|
init()
|
||||||
})
|
})
|
||||||
|
const algorithmClassName = ref('')
|
||||||
|
const algorithmId = ref('')
|
||||||
|
const componentId = ref('')
|
||||||
function init() {
|
function init() {
|
||||||
const params = {
|
const params = {
|
||||||
dictcode: 'FaultDiagnosisType'
|
algorithmClassName: algorithmClassName.value
|
||||||
}
|
}
|
||||||
treeloading.value = true
|
treeloading.value = true
|
||||||
getDeviceByType(params).then((res: any) => {
|
getAlgorithmClassTree(params).then((res: any) => {
|
||||||
if (res.data.length !== 0 && res.data !== null) {
|
if (res.data.length !== 0 && res.data !== null) {
|
||||||
treeData.value = res.data
|
treeData.value = res.data
|
||||||
treeloading.value = false
|
treeloading.value = false
|
||||||
if (res.data.length !== 0 && res.data !== null) {
|
if (res.data.length !== 0 && res.data !== null) {
|
||||||
nextTick(() => {
|
componentId.value = res.data[0].children[0].id
|
||||||
treeRef.value?.setCurrentKey(res.data[0].id);
|
algorithmId.value = res.data[0].children[0].parentId
|
||||||
checktreenode.value.code = res.data[0].itemcode
|
|
||||||
checktreenode.value.name = res.data[0].dictname
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
function handleClose() {
|
|
||||||
serviceOpen.value = false
|
|
||||||
tieupswitch.value = false
|
|
||||||
}
|
|
||||||
//维护按钮
|
|
||||||
const serviceOpen = ref(true)
|
|
||||||
function uphold() {
|
|
||||||
serviceOpen.value = true
|
|
||||||
}
|
|
||||||
//表格数据
|
|
||||||
const tableData = ref([])
|
|
||||||
const loading = ref(false)
|
|
||||||
|
|
||||||
//绑定
|
|
||||||
const title = ref('')
|
|
||||||
const tieupswitch = ref(false)
|
|
||||||
function tieupdevice(row: any) {
|
|
||||||
title.value = '关联' + row
|
|
||||||
tieupswitch.value = true
|
|
||||||
getbaytree()
|
|
||||||
}
|
|
||||||
//维护添加绑定数据
|
|
||||||
//左侧树
|
|
||||||
const treedata = ref([])
|
|
||||||
const treeRefbay: any = ref(null)
|
|
||||||
const weitreeloading = ref(false)
|
|
||||||
const bayId = ref('')
|
|
||||||
function getbaytree() {
|
|
||||||
const params = {
|
|
||||||
stationId: userStore.stationId
|
|
||||||
}
|
|
||||||
weitreeloading.value = true
|
|
||||||
getBayTree(params).then((res: any) => {
|
|
||||||
if (res.data.length == 0) {
|
|
||||||
weitableData.value.length = 0
|
|
||||||
}
|
|
||||||
weitreeloading.value = false
|
|
||||||
treedata.value = res.data
|
|
||||||
bayId.value = res.data[0].children[0].children[0].bayId
|
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
treeRefbay.value?.setCurrentKey(bayId.value);
|
treeRef.value?.setCurrentKey(componentId.value);
|
||||||
});
|
});
|
||||||
// getPointsData()
|
gatdata()
|
||||||
|
getecharts()
|
||||||
|
getfenList()
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
//导航树点击事件
|
function handleNodeClick(data: any, node: any) {
|
||||||
const currentNodeKeybay = ref("")
|
if (data.children.length != 0) {
|
||||||
function handClick(data: Tree, node: any) {
|
|
||||||
if (data.children) {
|
|
||||||
node.isCurrent = false
|
node.isCurrent = false
|
||||||
currentNodeKeybay.value = ""
|
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
currentNodeKeybay.value = bayId.value
|
treeRef.value?.setCurrentKey(componentId.value);
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
bayId.value = data.bayId;
|
componentId.value = data.id
|
||||||
|
algorithmId.value = data.parentId
|
||||||
|
gatdata()
|
||||||
|
getecharts()
|
||||||
|
getfenList()
|
||||||
|
canshuList.value = ''
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//右侧表格
|
const parameter: any = ref([])
|
||||||
const weitableData = ref([])
|
function gatdata() {
|
||||||
const tableloading = ref(false)
|
fixloading.value = true
|
||||||
const bayName = ref('')
|
getAlgorithmDeviceParams({ algorithmId: algorithmId.value, componentId: componentId.value }).then((res: any) => {
|
||||||
// const componentIds = ref('')
|
parameter.value = res.data
|
||||||
// const mainDeviceIds = ref('')
|
fixloading.value = false
|
||||||
function getPointsData() {
|
|
||||||
tableloading.value = true
|
|
||||||
const params = {
|
|
||||||
bayId: bayId.value,
|
|
||||||
// componentId: componentIds.value,
|
|
||||||
// mainDeviceId: mainDeviceIds.value,
|
|
||||||
status: 0,
|
|
||||||
// patrolDeviceCode: info.value.robotCode,
|
|
||||||
deviceName: bayName.value
|
|
||||||
}
|
|
||||||
getdevicedata(params).then((res: any) => {
|
|
||||||
tableloading.value = false
|
|
||||||
weitableData.value = res.data.records
|
|
||||||
res.data.records.forEach((res: any) => {
|
|
||||||
res['id'] = res.deviceId
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
function handPointsChange(val: any) {
|
//echarts
|
||||||
|
const eacherslist: any = ref([1, 2, 3, 4])
|
||||||
|
function getecharts() {
|
||||||
|
checloading.value = true
|
||||||
|
getAlgorithmDeviceCurve({ algorithmId: algorithmId.value, componentId: componentId.value }).then((res: any) => {
|
||||||
|
checloading.value = false
|
||||||
|
eacherslist.value = res.data
|
||||||
|
setTimeout(() => {
|
||||||
|
eacherslist.value.forEach((item: any, index: any) => {
|
||||||
|
drawEchart(item, index)
|
||||||
|
})
|
||||||
|
}, 100);
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
function drawEchart(item: any, index: any) {
|
||||||
|
// debugger
|
||||||
|
const dynamicColor = `fff`;
|
||||||
|
let myChart = echarts.init(document.getElementById(("deviceEachers" + index)) as HTMLDivElement);
|
||||||
|
myChart.setOption({
|
||||||
|
tooltip: {
|
||||||
|
trigger: 'axis'
|
||||||
|
},
|
||||||
|
legend: {
|
||||||
|
data: [item.series[0].name],
|
||||||
|
textStyle: { color: dynamicColor, fontSize: 14 }
|
||||||
|
},
|
||||||
|
grid: {
|
||||||
|
left: '3%',
|
||||||
|
right: '4%',
|
||||||
|
bottom: '3%',
|
||||||
|
top: '18%',
|
||||||
|
containLabel: true
|
||||||
|
},
|
||||||
|
|
||||||
|
xAxis: item.xAxis,
|
||||||
|
yAxis: item.yAxis,
|
||||||
|
series: item.series,
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
//fenxi
|
||||||
|
const checloading = ref(false)
|
||||||
|
const fixloading = ref(false)
|
||||||
|
const fenloading = ref(false)
|
||||||
|
const fenList: any = ref([])
|
||||||
|
function getfenList() {
|
||||||
|
fenloading.value = true
|
||||||
|
getAlgorithmParamsNameList({ algorithmId: algorithmId.value, componentId: componentId.value }).then((res: any) => {
|
||||||
|
fenList.value = res.data
|
||||||
|
fenloading.value = false
|
||||||
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
function resetComponent() {
|
const canshuList: any = ref()
|
||||||
bayId.value = ''
|
const mapList: any = ref()
|
||||||
getPointsData()
|
function analysis() {
|
||||||
|
fenloading.value = true
|
||||||
|
callAlgorithmAnalyse({ id: algorithmId.value, componentId: componentId.value }).then((res: any) => {
|
||||||
|
fenloading.value = false
|
||||||
|
if (res.data.code == -2) {
|
||||||
|
ElMessage.warning(res.data.msg)
|
||||||
|
} else {
|
||||||
|
ElMessage.success('分析成功')
|
||||||
|
mapList.value = res.data.mapList
|
||||||
|
canshuList.value = res.data.result.description
|
||||||
|
getovercanshu()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
|
function getovercanshu() {
|
||||||
|
mapList.value.forEach((item: any) => {
|
||||||
|
fenList.value.forEach((items: any) => {
|
||||||
|
if (item.paramId == items.id) {
|
||||||
|
items.paramValue = item.paramValue
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
<template>
|
<template>
|
||||||
<div class="faulttemplate-box">
|
<div class="faulttemplate-box">
|
||||||
<aside id="silderLeft">
|
<aside id="silderLeft">
|
||||||
|
<div class="tree_title">
|
||||||
|
<img src="@/assets/navigation/ty_bq.png" alt="">
|
||||||
|
<div>算法分类</div>
|
||||||
|
</div>
|
||||||
|
<el-input v-model="algorithmClassName" clearable placeholder="请输入名称" @change="init"
|
||||||
|
style="width:100%;margin-top: 10px;" class="videomonitor-input">
|
||||||
|
<template #suffix>
|
||||||
|
<img src="@/assets/videoimg/u2937.png" style="cursor:pointer ;" @click="init">
|
||||||
|
</template>
|
||||||
|
</el-input>
|
||||||
<el-tree v-loading="treeloading" ref="treeRef" node-key="id" :data="treeData" :highlight-current="true"
|
<el-tree v-loading="treeloading" ref="treeRef" node-key="id" :data="treeData" :highlight-current="true"
|
||||||
:props="defaultProps" :expand-on-click-node="false" @node-click="handleNodeClick"
|
:props="defaultProps" :expand-on-click-node="false" @node-click="handleNodeClick"
|
||||||
style="height: calc(87vh); overflow: auto;margin-top: 10px;">
|
style="height: calc(80vh); overflow: auto;margin-top: 10px;">
|
||||||
</el-tree>
|
</el-tree>
|
||||||
<div class="moveBtn" v-move>
|
<div class="moveBtn" v-move>
|
||||||
<div class="moveBtn-line"></div>
|
<div class="moveBtn-line"></div>
|
||||||
</div>
|
</div>
|
||||||
</aside>
|
</aside>
|
||||||
<section class="silderRight1">
|
<section class="silderRight1">
|
||||||
<div class="right_yop">
|
<div class="right_center" v-loading="checloading">
|
||||||
<div class="right_button"><el-button class="searchButton" type="primary" @click="uphold">维护</el-button>
|
<div class="tree_title">
|
||||||
|
<img src="@/assets/navigation/ty_bq.png" alt="">
|
||||||
|
<div>信号/点位折线图</div>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<el-scrollbar height="440px">
|
||||||
|
<div class="echarts_box">
|
||||||
|
<div v-for="(item, index) in eacherslist" :id="'deviceEachers' + index"
|
||||||
|
:style="{ width: '100%', height: '160px' }"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
<div></div>
|
|
||||||
</section>
|
|
||||||
<Eldialog v-if="serviceOpen" :title="'维护'" :zIndex="2000" :width="'60%'" @before-close="handleClose">
|
|
||||||
<template v-slot:PopFrameContent>
|
|
||||||
<div>
|
|
||||||
<div>
|
|
||||||
<el-button class="searchButton" type="primary" @click="tieupdevice('点位')">关联点位</el-button>
|
|
||||||
<el-button class="searchButton" type="primary" @click="tieupdevice('信号')">关联信号</el-button>
|
|
||||||
</div>
|
|
||||||
<div class="tieup">
|
|
||||||
<div class="tieup_title">
|
|
||||||
<div class="tieup_title_line"></div>
|
|
||||||
<div class="tieup_title_text">关联结果</div>
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<el-table ref="multipleTableRef" :data="tableData" :row-class-name="tableRowClassName"
|
|
||||||
:v-loading="loading"
|
|
||||||
style="width: 100%;margin-bottom: 20px;height: calc(35vh);overflow: auto;" row-key="id"
|
|
||||||
default-expand-all
|
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
|
||||||
<el-table-column label="序号" type="index" width="50" />
|
|
||||||
<el-table-column label="设备编号" prop="deviceCode" />
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
<span class="dialog-footer"
|
|
||||||
style="width: 95%;margin: auto; display: flex;display: -webkit-flex; justify-content: center;-webkit-justify-content: center;margin-top: 10px;">
|
|
||||||
<div class="details-button" @click="handleClose">取消</div>
|
|
||||||
<div class="details-button" @click="">保存</div>
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</Eldialog>
|
|
||||||
<Eldialog v-if="tieupswitch" :title="title" :zIndex="2000" :width="'80%'" @before-close="handleClose">
|
|
||||||
<template v-slot:PopFrameContent>
|
|
||||||
<div class="faulttemplate-box1">
|
|
||||||
<aside id="silderLeft1">
|
|
||||||
<div class="displayflex">
|
|
||||||
<div class="line"></div>
|
|
||||||
<div class="title" style="font-size: 14px;color: #fff;">数据列表</div>
|
|
||||||
</div>
|
|
||||||
<el-scrollbar>
|
|
||||||
<el-tree ref="treeRefbay" node-key="bayId" :data="treedata"
|
|
||||||
:current-node-key="currentNodeKeybay" v-loading="weitreeloading"
|
|
||||||
:highlight-current="true" :props="defaultProps1" @node-click="handClick">
|
|
||||||
</el-tree>
|
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
|
|
||||||
</aside>
|
|
||||||
<section class="silderRightDialog">
|
|
||||||
<div
|
|
||||||
style="display: flex;display: -webkit-flex; justify-content: space-between; -webkit-justify-content: space-between; margin:5px">
|
|
||||||
<div style="display: flex;display: -webkit-flex; align-items: center;width: 80%;">
|
|
||||||
|
|
||||||
<el-input v-model="bayName" placeholder="请输入巡视点位名称" clearable @clear="getPointsData()"
|
|
||||||
@change="getPointsData()" style="margin-right:15px ;width: 30%;" />
|
|
||||||
<el-button class="searchButton" @click="getPointsData()">搜索</el-button>
|
|
||||||
<el-button class="searchButton" @click="resetComponent()">重置</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
<div><el-button class="searchButton" @click="">添加</el-button></div>
|
<div class="right_yop" v-loading="fixloading">
|
||||||
|
<div class="tree_title">
|
||||||
|
<img src="@/assets/navigation/ty_bq.png" alt="">
|
||||||
|
<div>固定参数</div>
|
||||||
|
</div>
|
||||||
|
<el-scrollbar height="60px">
|
||||||
|
<div class="fixed_params">
|
||||||
|
<div v-for="item in parameter" class="fixed_params_item">
|
||||||
|
<div>{{ item.paramName }}:<span>{{ item.paramValue }}</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-scrollbar>
|
||||||
|
</div>
|
||||||
|
<div class="right_bottom" v-loading="fenloading">
|
||||||
|
<div class="tree_title">
|
||||||
|
<img src="@/assets/navigation/ty_bq.png" alt="">
|
||||||
|
<div>分析结果</div>
|
||||||
|
</div>
|
||||||
|
<el-button class="searchButton" type="primary" style="margin: 10px 0px;"
|
||||||
|
@click="analysis()">开始分析</el-button>
|
||||||
|
<el-scrollbar height="80px">
|
||||||
|
<div class="fixed_params">
|
||||||
|
<div v-for="item in fenList" class="fixed_params_item">
|
||||||
|
<div>{{ item.paramName }}:<span>{{ item.paramValue ? item.paramValue : '--' }}</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-scrollbar>
|
||||||
|
<div class="right_botom">
|
||||||
|
分析结果:<span v-if="!canshuList">--</span><span v-else>{{ canshuList }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="draggable">
|
|
||||||
<el-table ref="multipleTableRef" :data="weitableData" :row-class-name="tableRowClassName"
|
|
||||||
:v-loading="loading"
|
|
||||||
style="width: 100%;margin-bottom: 20px;height: calc(35vh);overflow: auto;" row-key="id"
|
|
||||||
default-expand-all
|
|
||||||
:header-cell-style="{ background: '#002b6a', color: '#B5D7FF', height: '50px' }">
|
|
||||||
<el-table-column type="selection" width="30" align="center" />
|
|
||||||
<el-table-column label="序号" type="index" width="50"></el-table-column>
|
|
||||||
<el-table-column label="巡视点位名称" prop="deviceName"></el-table-column>
|
|
||||||
<el-table-column label="所属主设备" prop="mainDeviceName"></el-table-column>
|
|
||||||
<el-table-column label="所属部件" prop="componentName"></el-table-column>
|
|
||||||
</el-table>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</Eldialog>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -292,9 +257,22 @@ function resetComponent() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.tree_title {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-size: 16px;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: bold;
|
||||||
|
|
||||||
|
img {
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#silderLeft {
|
#silderLeft {
|
||||||
width: 300px;
|
width: 300px;
|
||||||
padding: 5px 0px 10px;
|
padding: 10px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
position: relative;
|
position: relative;
|
||||||
@ -306,6 +284,8 @@ function resetComponent() {
|
|||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 拖动条 */
|
/* 拖动条 */
|
||||||
@ -330,146 +310,114 @@ function resetComponent() {
|
|||||||
.silderRight1 {
|
.silderRight1 {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: calc(100vh - 160px);
|
height: calc(90vh);
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
background-color: rgba(255, 255, 255, 0);
|
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
margin-left: 15px;
|
margin-left: 15px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
.right_yop {
|
.right_yop {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: calc(60vh);
|
height: 110px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 15px;
|
||||||
|
background: url(@/assets/navigation/110tu.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
|
||||||
|
.fixed_params {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: 'Arial Normal', 'Arial';
|
||||||
|
font-weight: 400;
|
||||||
|
color: #FFFFFF;
|
||||||
|
font-size: 14px;
|
||||||
|
|
||||||
|
.fixed_params_item {
|
||||||
|
margin-right: 20px;
|
||||||
|
|
||||||
|
span {
|
||||||
|
font-family: 'Arial Negreta', 'Arial Normal', 'Arial';
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #00FFFF
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.right_center {
|
||||||
|
width: 100%;
|
||||||
|
height: 500px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
background: url(@/assets/navigation/sw1.png);
|
background: url(@/assets/navigation/sw1.png);
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
|
|
||||||
.right_button {
|
.echarts_box {
|
||||||
display: flex;
|
|
||||||
justify-content: end;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//关联
|
|
||||||
.tieup {
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.tieup_title {
|
.right_bottom {
|
||||||
|
width: 100%;
|
||||||
|
height: 220px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 15px;
|
||||||
|
background: url(@/assets/navigation/sw.png);
|
||||||
|
background-size: 100% 100%;
|
||||||
|
|
||||||
|
.fixed_params {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
color: #fff;
|
font-family: 'Arial Normal', 'Arial';
|
||||||
font-size: 18px;
|
font-weight: 400;
|
||||||
margin: 10px 0px;
|
color: #FFFFFF;
|
||||||
|
font-size: 14px;
|
||||||
|
|
||||||
.tieup_title_line {
|
.fixed_params_item {
|
||||||
width: 6px;
|
|
||||||
height: 16px;
|
|
||||||
background-color: #009bff;
|
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
|
|
||||||
|
span {
|
||||||
|
font-family: 'Arial Negreta', 'Arial Normal', 'Arial';
|
||||||
|
font-weight: 700;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #00FFFF
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////
|
.right_botom {
|
||||||
///
|
|
||||||
///
|
|
||||||
.faulttemplate-box1 {
|
|
||||||
height: 100%;
|
|
||||||
display: flex;
|
|
||||||
display: -webkit-flex;
|
|
||||||
padding-top: 15px;
|
|
||||||
|
|
||||||
#silderLeft1 {
|
|
||||||
width: 300px;
|
|
||||||
padding: 10px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
background-image: url(@/assets/navigation/ty_260x988.png);
|
|
||||||
background-size: 100% 100%;
|
|
||||||
height: calc(70vh);
|
|
||||||
overflow: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.silderRightDialog {
|
|
||||||
flex: 1;
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: calc(70vh);
|
font-family: 'Arial Normal', 'Arial';
|
||||||
overflow: auto;
|
font-weight: 400;
|
||||||
// background-color: rgba(255, 255, 255, 1); navigation/ty_260x988.png riis-web/src/assets/navigation/ty_1614x988.png
|
font-style: normal;
|
||||||
border-radius: 3px;
|
font-size: 16px;
|
||||||
box-sizing: border-box;
|
color: #FFFFFF;
|
||||||
margin-left: 15px;
|
|
||||||
background: url(@/assets/navigation/ty_1614x988.png);
|
|
||||||
background-size: 100% 100%;
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.displayflex {
|
span {
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
|
|
||||||
.line {
|
|
||||||
width: 5px;
|
|
||||||
height: 14px;
|
|
||||||
background: #0099ff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
padding-left: 10px;
|
|
||||||
font-family: 'Arial Negreta', 'Arial Normal', 'Arial';
|
font-family: 'Arial Negreta', 'Arial Normal', 'Arial';
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-size: 16px;
|
font-size: 24px;
|
||||||
color: #303133;
|
letter-spacing: normal;
|
||||||
text-decoration: none !important;
|
color: #009900;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-tree-node.is-current>.el-tree-node__content) {
|
|
||||||
width: 100%;
|
|
||||||
height: 40px;
|
|
||||||
// color: #fff !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-tree) {
|
|
||||||
background-color: #ffffff00 !important;
|
|
||||||
--el-tree-node-hover-bg-color: #0099ff09;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-tree-node__content) {
|
|
||||||
width: 100% !important;
|
|
||||||
height: 40px !important;
|
|
||||||
margin: auto !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-table:not(.el-table--border) .el-table__cell) {
|
|
||||||
border: none;
|
|
||||||
color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-tree) {
|
|
||||||
background-color: #ffffff00 !important;
|
|
||||||
--el-tree-node-hover-bg-color: #0099ff09;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-input) {
|
|
||||||
--el-input-bg-color: #ffffff00 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-input-group__append) {
|
|
||||||
background: #ffffff00 !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
:deep(.el-input .el-input__count .el-input__count-inner) {
|
|
||||||
background-color: rgba(240, 248, 255, 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
:deep(.el-scrollbar) {
|
:deep(.el-scrollbar) {
|
||||||
height: 95% !important;
|
height: 80px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
@ -582,12 +582,7 @@ const isVideo = ref(false)
|
|||||||
<el-table-column prop="patroldeviceName" label="设备名称" align="center" />
|
<el-table-column prop="patroldeviceName" label="设备名称" align="center" />
|
||||||
<el-table-column prop="componentName" label="部件名称" align="center" />
|
<el-table-column prop="componentName" label="部件名称" align="center" />
|
||||||
<el-table-column prop="deviceName" label="点位名称" align="center" />
|
<el-table-column prop="deviceName" label="点位名称" align="center" />
|
||||||
<el-table-column prop="materialId" label="实物ID" align="center">
|
|
||||||
<template #default="scope">
|
|
||||||
<span v-if="scope.row.materialId">{{ scope.row.materialId }}</span>
|
|
||||||
<span v-else>--</span>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="点位分类" prop="appearanceType" align="center">
|
<el-table-column label="点位分类" prop="appearanceType" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.pointType == 1">Ⅰ类</span>
|
<span v-if="scope.row.pointType == 1">Ⅰ类</span>
|
||||||
@ -595,7 +590,7 @@ const isVideo = ref(false)
|
|||||||
<span v-if="scope.row.pointType == 3">Ⅲ类</span>
|
<span v-if="scope.row.pointType == 3">Ⅲ类</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="taskAlarmType" label="告警来源" width="80px" align="center">
|
<el-table-column prop="taskAlarmType" label="告警来源" width="100px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ currency(AlarmSourceList, scope.row.taskAlarmType) }}</span>
|
<span>{{ currency(AlarmSourceList, scope.row.taskAlarmType) }}</span>
|
||||||
</template>
|
</template>
|
||||||
@ -620,7 +615,7 @@ const isVideo = ref(false)
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="custom2" label="缺陷类别" width="90px" align="center">
|
<el-table-column prop="custom2" label="缺陷类别" width="90px" align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="alarmDate" label="告警时间" width="110px" align="center" />
|
<el-table-column prop="alarmDate" label="告警时间" width="100px" align="center" />
|
||||||
<el-table-column prop="checkFlag" label="状态" width="70px" align="center">
|
<el-table-column prop="checkFlag" label="状态" width="70px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ currency(checkFlagList, scope.row.checkFlag) }}</span>
|
<span>{{ currency(checkFlagList, scope.row.checkFlag) }}</span>
|
||||||
|
@ -2179,15 +2179,15 @@ const open = () => {
|
|||||||
v-loading="treeloading">
|
v-loading="treeloading">
|
||||||
<el-table-column type="selection" width="30" align="center" />
|
<el-table-column type="selection" width="30" align="center" />
|
||||||
<el-table-column type="index" label="序号" width="50px" align="center" />
|
<el-table-column type="index" label="序号" width="50px" align="center" />
|
||||||
<el-table-column property="stationName" label="变电站名称">
|
<el-table-column property="stationName" label="变电站名称" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ scope.row.stationName }} <span style="display: inline-block;color: #409EFF;"
|
<span>{{ scope.row.stationName }} <span style="display: inline-block;color: #409EFF;"
|
||||||
v-if="scope.row.isStationFlag == '1'">(边缘节点)</span></span>
|
v-if="scope.row.isStationFlag == '1'">(边缘节点)</span></span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column property="taskCode" label="任务编码" />
|
<el-table-column property="taskCode" label="任务编码" align="center" />
|
||||||
<el-table-column property="taskName" label="任务名称" />
|
<el-table-column property="taskName" label="任务名称" align="center" />
|
||||||
<el-table-column property="taskType" label="任务类型" width="130px">
|
<el-table-column property="taskType" label="任务类型" width="130px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.taskType == 1">站端日常巡视任务</span>
|
<span v-if="scope.row.taskType == 1">站端日常巡视任务</span>
|
||||||
<span v-else-if="scope.row.taskType == 2">上级系统控制</span>
|
<span v-else-if="scope.row.taskType == 2">上级系统控制</span>
|
||||||
@ -2850,7 +2850,7 @@ const open = () => {
|
|||||||
</Eldialog>
|
</Eldialog>
|
||||||
<Eldialog v-if="control" :title="'二次密码验证'" :zIndex="2000" :width="'400px'" @before-close="inputCLOse">
|
<Eldialog v-if="control" :title="'二次密码验证'" :zIndex="2000" :width="'400px'" @before-close="inputCLOse">
|
||||||
<template v-slot:PopFrameContent>
|
<template v-slot:PopFrameContent>
|
||||||
<el-input v-model="password" placeholder="请输入账号密码" style="margin-top:30px;width: 100%;" type="password"
|
<el-input v-model="password" autocomplete="new-password" :name="'pwd-'+Date.now()" placeholder="请输入账号密码" style="margin-top:30px;width: 100%;" type="password"
|
||||||
show-password />
|
show-password />
|
||||||
<div style="padding:5px 0">
|
<div style="padding:5px 0">
|
||||||
<div v-if="inputTrue" style="color:red;">密码错误,请重新输入</div>
|
<div v-if="inputTrue" style="color:red;">密码错误,请重新输入</div>
|
||||||
|
@ -763,10 +763,10 @@ function retrunClick() {
|
|||||||
@cell-mouse-leave="hoverTableLeave" :row-class-name="tableRowClassName"
|
@cell-mouse-leave="hoverTableLeave" :row-class-name="tableRowClassName"
|
||||||
style="width: 98%;margin:auto;position: relative;margin: 15px 10px;height:calc(100%); ">
|
style="width: 98%;margin:auto;position: relative;margin: 15px 10px;height:calc(100%); ">
|
||||||
<el-table-column type="index" align="center" label="序号" width="60px" />
|
<el-table-column type="index" align="center" label="序号" width="60px" />
|
||||||
<el-table-column prop="mainDeviceName" label="设备名称" />
|
<el-table-column prop="mainDeviceName" align="center" width="130px" label="设备名称" />
|
||||||
<el-table-column prop="componentName" label="部件名称" />
|
<el-table-column prop="componentName" align="center" width="130px" label="部件名称" />
|
||||||
<el-table-column prop="deviceName" label="点位名称" width="160px" />
|
<el-table-column prop="deviceName" align="center" label="点位名称" width="160px" />
|
||||||
<el-table-column prop="meterType" label="表计类型">
|
<el-table-column prop="meterType" align="center" label="表计类型">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span
|
<span
|
||||||
v-if="currency(MeterTypeList, scope.row.meterType) != undefined && currency(MeterTypeList, scope.row.meterType) != ''">{{
|
v-if="currency(MeterTypeList, scope.row.meterType) != undefined && currency(MeterTypeList, scope.row.meterType) != ''">{{
|
||||||
@ -792,14 +792,14 @@ function retrunClick() {
|
|||||||
<span v-else>--</span>
|
<span v-else>--</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column> -->
|
</el-table-column> -->
|
||||||
<el-table-column prop="desc" label="识别类型" width="140px">
|
<el-table-column prop="desc" label="识别类型" width="140px" align="center" >
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.desc != null && scope.row.desc != ''">{{ scope.row.desc
|
<span v-if="scope.row.desc != null && scope.row.desc != ''">{{ scope.row.desc
|
||||||
}}</span>
|
}}</span>
|
||||||
<span v-else>--</span>
|
<span v-else>--</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="识别值" width="100px">
|
<el-table-column label="识别值" width="100px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span
|
<span
|
||||||
v-if="scope.row.valueType == 'meter' || scope.row.valueType == 'infrared' || scope.row.valueType == 'sound'">
|
v-if="scope.row.valueType == 'meter' || scope.row.valueType == 'infrared' || scope.row.valueType == 'sound'">
|
||||||
|
@ -475,7 +475,7 @@ function removePercentSign(str:any) {
|
|||||||
style="width: 99%;margin:auto;position: relative; height:calc(79vh); overflow: auto;margin-top: 10px; "
|
style="width: 99%;margin:auto;position: relative; height:calc(79vh); overflow: auto;margin-top: 10px; "
|
||||||
stripe :header-cell-style="tableBg">
|
stripe :header-cell-style="tableBg">
|
||||||
<el-table-column type="index" align="center" label="序号" width="60px" />
|
<el-table-column type="index" align="center" label="序号" width="60px" />
|
||||||
<el-table-column prop="taskName" label="任务名称" min-width="140px" align="left" />
|
<el-table-column prop="taskName" label="任务名称" min-width="140px" align="center" />
|
||||||
<el-table-column prop="taskType" label="任务类型" width="100px" align="center">
|
<el-table-column prop="taskType" label="任务类型" width="100px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span v-if="scope.row.type == 1">例行巡视</span>
|
<span v-if="scope.row.type == 1">例行巡视</span>
|
||||||
|
@ -283,8 +283,8 @@ onMounted(() => {
|
|||||||
@selection-change="handleSelectionChange">
|
@selection-change="handleSelectionChange">
|
||||||
<el-table-column type="selection" width="30" align="center" />
|
<el-table-column type="selection" width="30" align="center" />
|
||||||
<el-table-column type="index" align="center" label="序号" width="50px" />
|
<el-table-column type="index" align="center" label="序号" width="50px" />
|
||||||
<el-table-column prop="taskName" label="任务名称" />
|
<el-table-column prop="taskName" label="任务名称" align="center" />
|
||||||
<el-table-column prop="type" label="任务类型" width="140px">
|
<el-table-column prop="type" label="任务类型" align="center" width="140px">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<span>{{ currency(InspectionType, scope.row.type) }}</span>
|
<span>{{ currency(InspectionType, scope.row.type) }}</span>
|
||||||
<!-- <span v-if="scope.row.type == 1">例行巡视</span>
|
<!-- <span v-if="scope.row.type == 1">例行巡视</span>
|
||||||
@ -302,9 +302,9 @@ onMounted(() => {
|
|||||||
scope.row.result.abnormalCount }}</span>
|
scope.row.result.abnormalCount }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="startTime" label="巡视开始时间" />
|
<el-table-column prop="startTime" label="巡视开始时间" align="center" />
|
||||||
<el-table-column prop="endTime" label="巡视结束时间" />
|
<el-table-column prop="endTime" label="巡视结束时间" align="center" />
|
||||||
<el-table-column prop="cexamineUserName" label="审核人" width="100px"/>
|
<el-table-column prop="cexamineUserName" label="审核人" width="100px" align="center"/>
|
||||||
<el-table-column prop="examineDate" label="审核时间" width="170px" align="center" />
|
<el-table-column prop="examineDate" label="审核时间" width="170px" align="center" />
|
||||||
<el-table-column label="操作" width="120px" align="center">
|
<el-table-column label="操作" width="120px" align="center">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
|
Loading…
Reference in New Issue
Block a user