修改测试bug
This commit is contained in:
@@ -79,27 +79,34 @@
|
||||
realTimeFlag
|
||||
">
|
||||
<template #select>
|
||||
<el-form-item label="日期" v-show="dataSet.indexOf('_history') != -1">
|
||||
<el-form-item label="日期"
|
||||
v-show="dataSet.includes('_items') || dataSet.indexOf('_history') != -1">
|
||||
<DatePicker ref="datePickerRef"></DatePicker>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据类型" v-if="dataSet.indexOf('_history') == -1">
|
||||
|
||||
<el-select v-model="formInline.targetType">
|
||||
<el-form-item label="数据类型" v-if="!dataSet.includes('_')">
|
||||
<el-select v-model="formInline.targetType" @change="handleTargetTypeChange">
|
||||
<el-option v-for="item in queryList" :key="item.id" :label="item.name"
|
||||
:value="item.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="指标" v-show="!realTimeFlag">
|
||||
<el-input style="width: 160px" v-model="formInline.searchValue" autocomplete="off" clearable
|
||||
placeholder="请输入关键词"></el-input>
|
||||
</el-form-item> -->
|
||||
<el-form-item label="值类型">
|
||||
|
||||
<el-form-item label="值类型" v-if="!dataSet.includes('_items')">
|
||||
<el-select style="min-width: 120px !important" v-model="formInline.dataLevel"
|
||||
:disabled="dataLevel == 'Primary' && deviceType == '0'">
|
||||
<el-option value="Primary" label="一次值"></el-option>
|
||||
<el-option value="Secondary" label="二次值"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="筛选" v-if="!dataSet.includes('_')">
|
||||
<el-input style="width: 160px" v-model="searchValue" autocomplete="off" clearable
|
||||
placeholder="请输入关键词"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="偶数/奇数" v-if="oddAndEvenFlag && !dataSet.includes('_')">
|
||||
<el-select v-model="oddAndEven" style="min-width: 120px !important">
|
||||
<el-option v-for="item in oddAndEvenList" :key="item.value" :label="item.label"
|
||||
:value="item.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</template>
|
||||
<template #operation>
|
||||
<el-button type="primary" icon="el-icon-Search" @click="handleClick">查询</el-button>
|
||||
@@ -138,87 +145,87 @@
|
||||
"
|
||||
></div> -->
|
||||
<!-- v-loading="tableLoading" -->
|
||||
<div :style="{ height: tableHeight }" v-loading="tableLoading" v-if="!dataSet.includes('_')">
|
||||
<div style="overflow: auto" :style="{ height: tableHeight }" v-loading="tableLoading" v-if="
|
||||
dataSet.indexOf('_trenddata') == -1 &&
|
||||
dataSet.indexOf('_realtimedata') == -1 &&
|
||||
dataSet.indexOf('_event') == -1 &&
|
||||
tableData.length != 0
|
||||
">
|
||||
<div class="mb5 mt5" v-if="dataSet.indexOf('_history') == -1">
|
||||
统计时间:{{ tableData[0]?.time || '' }}
|
||||
</div>
|
||||
|
||||
<div style="overflow: auto" :style="{ height: tableHeight }" v-loading="tableLoading" v-if="
|
||||
dataSet.indexOf('_trenddata') == -1 &&
|
||||
dataSet.indexOf('_realtimedata') == -1 &&
|
||||
dataSet.indexOf('_event') == -1 &&
|
||||
tableData.length != 0
|
||||
">
|
||||
<div class="mb5 mt5" v-if="dataSet.indexOf('_history') == -1">
|
||||
统计时间:{{ tableData[0]?.time || '' }}
|
||||
</div>
|
||||
|
||||
<nearRealTimeData ref="nearRealTimeDataRef" v-if="dataSet.indexOf('_history') == -1" />
|
||||
<nearRealTimeData ref="nearRealTimeDataRef" v-if="dataSet.indexOf('_history') == -1" />
|
||||
|
||||
|
||||
<!-- 循环渲染的card 最新数据/历史数据显示 -->
|
||||
<div class="content"
|
||||
v-if="tableData.length != 0 && !tableLoading && dataSet.indexOf('_history') != -1"
|
||||
:style="{ height: tableHeightBox }">
|
||||
<!-- 循环渲染的card 最新数据/历史数据显示 -->
|
||||
<div class="content"
|
||||
v-if="tableData.length != 0 && !tableLoading && dataSet.indexOf('_history') != -1"
|
||||
:style="{ height: tableHeightBox }">
|
||||
|
||||
<el-card class="box-card" :class="dataSet.indexOf('_history') == -1 ? 'box-card-new' : ''"
|
||||
v-for="(item, index) in tableData" :key="index">
|
||||
<template #header>
|
||||
<div class="clearfix">
|
||||
<span style="flex: 1">{{ item.name }}</span>
|
||||
<Icon name="el-icon-TrendCharts" class="ml10" @click="getDeviceDataTrend(item)"
|
||||
style="font-size: 26px; cursor: pointer; color: #fff"></Icon>
|
||||
</div>
|
||||
</template>
|
||||
<el-card class="box-card" :class="dataSet.indexOf('_history') == -1 ? 'box-card-new' : ''"
|
||||
v-for="(item, index) in tableData" :key="index">
|
||||
<template #header>
|
||||
<div class="clearfix">
|
||||
<span style="flex: 1">{{ item.name }}</span>
|
||||
<Icon name="el-icon-TrendCharts" class="ml10" @click="getDeviceDataTrend(item)"
|
||||
style="font-size: 26px; cursor: pointer; color: #fff"></Icon>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<div class="box-card-content" v-if="dataSet.indexOf('_history') == -1">
|
||||
<div class="box-card-div">
|
||||
<div v-for="(child, childIndex) in item.children" :key="childIndex">
|
||||
{{ child.anotherName }}:
|
||||
{{ child.dataValue === 3.1415926 ? '暂无数据' : child.dataValue }}
|
||||
</div>
|
||||
|
||||
<div class="box-card-content" v-if="dataSet.indexOf('_history') == -1">
|
||||
<div class="box-card-div">
|
||||
<div v-for="(child, childIndex) in item.children" :key="childIndex">
|
||||
{{ child.anotherName }}:
|
||||
{{ child.dataValue === 3.1415926 ? '暂无数据' : child.dataValue }}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div v-else-if="item.children.length" class="box-card-div">
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="danger" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
MAX
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].maxValue === 3.1415956 ||
|
||||
typeof item.children[0].maxValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].maxValue
|
||||
}}
|
||||
<div v-else-if="item.children.length" class="box-card-div">
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="danger" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
MAX
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].maxValue === 3.1415956 ||
|
||||
typeof item.children[0].maxValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].maxValue
|
||||
}}
|
||||
</div>
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="success" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
AVG
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].avgValue === 3.1415956 ||
|
||||
typeof item.children[0].avgValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].avgValue
|
||||
}}
|
||||
</div>
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="warning" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
MIN
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].minValue === 3.1415956 ||
|
||||
typeof item.children[0].minValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].minValue
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="success" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
AVG
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].avgValue === 3.1415956 ||
|
||||
typeof item.children[0].avgValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].avgValue
|
||||
}}
|
||||
</div>
|
||||
<div style="display: flex; align-items: center">
|
||||
<el-tag effect="dark" type="warning" style="width: 40px; text-align: center"
|
||||
class="mr10">
|
||||
MIN
|
||||
</el-tag>
|
||||
{{
|
||||
item.children[0].minValue === 3.1415956 ||
|
||||
typeof item.children[0].minValue != 'number'
|
||||
? '暂无数据'
|
||||
: item.children[0].minValue
|
||||
}}
|
||||
</div>
|
||||
</div>
|
||||
</el-card>
|
||||
<el-empty description="暂无数据" v-if="tableData.length === 0"></el-empty>
|
||||
</div>
|
||||
<!-- <div class="content" v-if="tableData.length != 0 && !tableLoading"
|
||||
</el-card>
|
||||
<el-empty description="暂无数据" v-if="tableData.length === 0"></el-empty>
|
||||
</div>
|
||||
<!-- <div class="content" v-if="tableData.length != 0 && !tableLoading"
|
||||
:style="{ height: tableHeightBox }">
|
||||
|
||||
<el-card class="box-card" :class="dataSet.indexOf('_history') == -1 ? 'box-card-new' : ''"
|
||||
@@ -283,6 +290,7 @@
|
||||
</el-card>
|
||||
<el-empty description="暂无数据" v-if="tableData.length === 0"></el-empty>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- <el-pagination v-if="
|
||||
tableData.length &&
|
||||
@@ -296,7 +304,7 @@
|
||||
|
||||
<!-- 趋势数据 -->
|
||||
<div style="height: calc(100vh - 340px)" v-if="dataSet.indexOf('_trenddata') != -1">
|
||||
<Trend ref="trendRef"></Trend>
|
||||
<Trend ref="trendRef" :TrendList="TrendList"></Trend>
|
||||
</div>
|
||||
<!-- 实时数据 -->
|
||||
<div :style="`height: calc(100vh - (${sonTab == 1 ? '378px' : sonTab == 2 ? '340px' : '425px'}))`"
|
||||
@@ -328,9 +336,9 @@
|
||||
<Event ref="eventRef"></Event>
|
||||
</div>
|
||||
<!-- 测试项记录 -->
|
||||
<div style="height: calc(100vh - 340px)" v-if="dataSet.indexOf('_items') != -1"
|
||||
<div style="height: calc(100vh - 395px)" v-if="dataSet.indexOf('_items') != -1"
|
||||
v-loading="tableLoading">
|
||||
<!-- <Event ref="eventRef"></Event> -->
|
||||
<testItemRecords ref="testItemRecordsRef" @onSubmit="handleClick" />
|
||||
</div>
|
||||
<div v-if="!tableData" style="height: 42px"></div>
|
||||
</el-tabs>
|
||||
@@ -356,7 +364,7 @@ import {
|
||||
queryDictType,
|
||||
|
||||
} from '@/api/cs-device-boot/EquipmentDelivery'
|
||||
import { deviceHisData, deviceRtData, realTimeData } from '@/api/cs-device-boot/csGroup'
|
||||
import { deviceHisData, deviceRtData, realTimeData, getTestData } from '@/api/cs-device-boot/csGroup'
|
||||
import { ref, reactive, onMounted, onUnmounted, inject, nextTick, onBeforeUnmount } from 'vue'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import DatePicker from '@/components/form/datePicker/index.vue'
|
||||
@@ -368,6 +376,7 @@ import recordWoves from './tabs/components/recordwoves.vue' //实时数据-实
|
||||
import offLineDataImport from './offLineDataImport/index.vue'
|
||||
import Event from './tabs/event.vue'
|
||||
import nearRealTimeData from './nearRealTimeData.vue'
|
||||
import testItemRecords from './testItemRecords.vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import TableHeader from '@/components/table/header/index.vue'
|
||||
import { useAdminInfo } from '@/stores/adminInfo'
|
||||
@@ -384,14 +393,18 @@ const tableLoading = ref(false)
|
||||
const getGroupLoading = ref(false)
|
||||
const deviceData = ref<any>(null)
|
||||
const dataSet = ref('')
|
||||
const testItemRecordsRef = ref()
|
||||
const nearRealTimeDataRef = ref()
|
||||
const devTypeOptions = ref([])
|
||||
const devModelOptions = ref([])
|
||||
const tableData = ref<any[]>([])
|
||||
const tableHeight = mainHeight(290).height
|
||||
const tableHeightBox = mainHeight(310).height
|
||||
const mangePopup = ref()
|
||||
const datePickerRef = ref()
|
||||
const searchValue = ref('')
|
||||
const TrendList=ref({})
|
||||
const oddAndEven = ref('1')
|
||||
const datePickerRef = ref('1')
|
||||
const oddAndEvenFlag = ref(false)
|
||||
const formInline = reactive({
|
||||
searchValue: '',
|
||||
pageNum: 1,
|
||||
@@ -404,7 +417,21 @@ const formInline = reactive({
|
||||
targetType: '',
|
||||
dataLevel: 'Secondary'
|
||||
})
|
||||
const oddAndEvenList = [
|
||||
{
|
||||
value: '1',
|
||||
label: '奇次',
|
||||
},
|
||||
{
|
||||
value: '2',
|
||||
label: '偶次',
|
||||
},
|
||||
{
|
||||
value: '3',
|
||||
label: '全部',
|
||||
},
|
||||
|
||||
]
|
||||
const detail = ref<any>(null)
|
||||
//是否显示实时数据默认内容
|
||||
const realTimeFlag = ref(true)
|
||||
@@ -567,20 +594,24 @@ const deviceId: any = ref('')
|
||||
const lineId: any = ref('')
|
||||
const dataLevel: any = ref('')
|
||||
const nodeClick = async (e: anyObj) => {
|
||||
searchValue.value = ''
|
||||
await queryDictType({
|
||||
lineId: e?.id
|
||||
}).then(res => {
|
||||
oddAndEvenFlag.value = false
|
||||
queryList.value = res.data
|
||||
formInline.targetType = res.data[0].id
|
||||
})
|
||||
// console.log("🚀 ~ nodeClick ~ e:", e)
|
||||
|
||||
if (e.level == 2) return
|
||||
deviceId.value = e?.pid
|
||||
lineId.value = e?.id
|
||||
TrendList.value=e
|
||||
if (!e) {
|
||||
loading.value = false
|
||||
return
|
||||
}
|
||||
|
||||
//选中设备名称后,点击标签页也能查询数据,要求点击设备名称后,点击标签页默认查询第一个监测点数据
|
||||
if (e.level == 3 || e.level == 2) {
|
||||
loading.value = true
|
||||
@@ -948,15 +979,16 @@ const handleClick = async (tab?: any) => {
|
||||
}
|
||||
//测试项记录
|
||||
if (dataSet.value.includes('_items')) {
|
||||
formInline.startTime = datePickerRef.value && datePickerRef.value.timeValue[0]
|
||||
formInline.endTime = datePickerRef.value && datePickerRef.value.timeValue[1]
|
||||
formInline.id = dataSet.value
|
||||
// await deviceRtData(formInline)
|
||||
await realTimeData(formInline)
|
||||
await getTestData(formInline)
|
||||
.then((res: any) => {
|
||||
tableData.value = res.data
|
||||
formInline.total = res.data.total
|
||||
tableLoading.value = false
|
||||
setTimeout(() => { //targetType
|
||||
nearRealTimeDataRef.value?.setData(res.data, queryList.value.filter((item: any) => item.id == formInline.targetType))
|
||||
testItemRecordsRef.value?.setData(res.data,)
|
||||
}, 500)
|
||||
setTimeout(() => {
|
||||
|
||||
@@ -979,12 +1011,41 @@ const handleClick = async (tab?: any) => {
|
||||
.then((res: any) => {
|
||||
tableData.value = res.data
|
||||
formInline.total = res.data.total
|
||||
tableLoading.value = false
|
||||
let queryListName = queryList.value.filter((item: any) => item.id == formInline.targetType)
|
||||
let list = res.data.filter((item: any) => {
|
||||
if (item.otherName.includes(searchValue.value)) {
|
||||
return item
|
||||
}
|
||||
})
|
||||
if (oddAndEvenFlag.value) {
|
||||
list = list.filter((item: any) => {
|
||||
let str = item.otherName.split("次")[0]
|
||||
queryListName[0].name == '间谐波电压含有率' ? str = str - 0.5 : ''
|
||||
|
||||
if (oddAndEven.value == '1') {
|
||||
// 奇次
|
||||
if (str % 2 != 0) {
|
||||
return item
|
||||
}
|
||||
|
||||
} else if (oddAndEven.value == '2') {
|
||||
// 偶次
|
||||
if (str % 2 == 0) {
|
||||
return item
|
||||
}
|
||||
} else {
|
||||
return item
|
||||
}
|
||||
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
setTimeout(() => { //targetType
|
||||
nearRealTimeDataRef.value?.setData(res.data, queryList.value.filter((item: any) => item.id == formInline.targetType))
|
||||
nearRealTimeDataRef.value?.setData(list, queryListName)
|
||||
tableLoading.value = false
|
||||
}, 500)
|
||||
setTimeout(() => {
|
||||
|
||||
loading.value = false
|
||||
}, 1500)
|
||||
})
|
||||
@@ -1045,6 +1106,14 @@ queryByCode('Device_Type').then(res => {
|
||||
})
|
||||
})
|
||||
})
|
||||
const handleTargetTypeChange = () => {
|
||||
|
||||
if (queryList.value.filter((item: any) => item.id == formInline.targetType)[0].name != '基本数据') {
|
||||
oddAndEvenFlag.value = true
|
||||
} else {
|
||||
oddAndEvenFlag.value = false
|
||||
}
|
||||
}
|
||||
const queryList: any = ref([])
|
||||
|
||||
const echoName = (value: any, arr: any[]) => {
|
||||
|
||||
@@ -22,8 +22,8 @@ const setData = (data: any, targetType: any) => {
|
||||
|
||||
dataList.value = JSON.parse(JSON.stringify(data))
|
||||
|
||||
console.log("🚀 ~ setData ~ targetType:", targetType[0].code)
|
||||
if (targetType[0].code == 'base_data' || targetType[0].code == '1') {
|
||||
|
||||
if (targetType[0].name == '基本数据' ) {
|
||||
column.value = [
|
||||
{ field: 'otherName', title: '名称', },
|
||||
{ field: 'valueA', title: 'A相', },
|
||||
@@ -31,27 +31,7 @@ const setData = (data: any, targetType: any) => {
|
||||
{ field: 'valueC', title: 'C相', },
|
||||
{ field: 'valueM', title: '', },
|
||||
]
|
||||
} else if (targetType[0].code == 'other_data') {
|
||||
let list: any = []
|
||||
data.forEach((item: any, i: any) => {
|
||||
if (i % 2 == 0) {
|
||||
list.push(item)
|
||||
} else {
|
||||
list[list.length - 1].otherName1 = item.otherName
|
||||
list[list.length - 1].valueM1 = item.valueM
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
dataList.value = JSON.parse(JSON.stringify(list))
|
||||
|
||||
column.value = [
|
||||
{ field: 'otherName', title: '名称', },
|
||||
{ field: 'valueM', title: '', },
|
||||
{ field: 'otherName1', title: '名称', },
|
||||
{ field: 'valueM1', title: '', },
|
||||
]
|
||||
} else {
|
||||
} else {
|
||||
column.value = [
|
||||
{ field: 'otherName', title: '谐波次数', },
|
||||
{ field: 'valueA', title: 'A相', },
|
||||
@@ -62,7 +42,7 @@ const setData = (data: any, targetType: any) => {
|
||||
key.value += 1
|
||||
}
|
||||
const formatter = (row: any) => {
|
||||
return row.cellValue || '/'
|
||||
return row.cellValue==null? '/':row.cellValue
|
||||
}
|
||||
|
||||
defineExpose({ setData })
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
<!-- 实时数据 - 谐波频谱页面 -->
|
||||
<template>
|
||||
<div class="realtrend" v-loading="loading">
|
||||
<el-select v-model="selectValue" v-if="!loading" style="width: 100px" class="select">
|
||||
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
<div class="select">
|
||||
<div class="mr10">偶数/奇数 </div>
|
||||
<el-select v-model="selectValue" v-if="!loading" style="width: 100px" >
|
||||
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
|
||||
</el-select>
|
||||
</div>
|
||||
<el-tabs type="border-card" v-if="tabsList.length != 0" v-model="activeName" @tab-click="handleClick">
|
||||
<el-tab-pane v-for="(item, index) in tabsList" :label="item.groupName" :name="index" :key="index">
|
||||
<div>
|
||||
@@ -311,6 +314,9 @@ defineExpose({ open, setRealTrendData, setOverLimitData })
|
||||
.select {
|
||||
position: absolute;
|
||||
top: -40px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.realtrend_top {
|
||||
|
||||
@@ -20,6 +20,14 @@
|
||||
<el-option value="Secondary" label="二次值"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="数据类型">
|
||||
<el-select style="min-width: 120px !important" placeholder="请选择" v-model="searchForm.valueType" clearable>
|
||||
<el-option value="max" label="最大值"></el-option>
|
||||
<el-option value="min" label="最小值"></el-option>
|
||||
<el-option value="avg" label="平均值"></el-option>
|
||||
<el-option value="cp95" label="cp95"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item class="history_count" v-for="(item, index) in countData" :key="index"
|
||||
:label="item.name.includes('次数') ? item.name : item.name + '谐波次数'"
|
||||
@@ -57,6 +65,13 @@ const dictData = useDictData()
|
||||
defineOptions({
|
||||
name: 'govern/device/control'
|
||||
})
|
||||
const props = defineProps({
|
||||
TrendList: {
|
||||
type: Array,
|
||||
}
|
||||
})
|
||||
console.log("🚀 ~ props:", props.TrendList)
|
||||
|
||||
//电压等级
|
||||
const voltageLevelList = dictData.getBasicData('Dev_Voltage_Stand')
|
||||
//接线方式
|
||||
@@ -92,7 +107,8 @@ searchForm.value = {
|
||||
count: '',
|
||||
searchBeginTime: '',
|
||||
searchEndTime: '',
|
||||
dataLevel: 'Primary'
|
||||
dataLevel: 'Primary',
|
||||
valueType:''
|
||||
}
|
||||
//统计指标
|
||||
const indexOptions: any = ref([])
|
||||
@@ -101,7 +117,7 @@ const countOptions: any = ref([])
|
||||
// Harmonic_Type
|
||||
// portable-harmonic
|
||||
const legendDictList: any = ref([])
|
||||
queryByCode('portable-harmonic').then(res => {
|
||||
queryByCode(props?.TrendList?.lineType == 0 ? 'apf-harmonic' : 'portable-harmonic').then(res => {
|
||||
queryCsDictTree(res.data.id).then(item => {
|
||||
//排序
|
||||
indexOptions.value = item.data.sort((a: any, b: any) => {
|
||||
@@ -180,6 +196,7 @@ const init = async () => {
|
||||
list: lists,
|
||||
valueType: searchForm.value.type,
|
||||
dataLevel: searchForm.value.dataLevel,
|
||||
valueType: searchForm.value.valueType,
|
||||
startTime: datePickerRef.value && datePickerRef.value.timeValue[0],
|
||||
endTime: datePickerRef.value && datePickerRef.value.timeValue[1]
|
||||
}
|
||||
|
||||
95
src/views/govern/device/control/testItemRecords.vue
Normal file
95
src/views/govern/device/control/testItemRecords.vue
Normal file
@@ -0,0 +1,95 @@
|
||||
<template>
|
||||
|
||||
<div :style="{ height: height }">
|
||||
<vxe-table height="auto" auto-resize :data="dataList" v-bind="defaultAttribute" :key="key">
|
||||
<vxe-column v-for="item in column" :field="item.field" :title="item.title" :formatter="formatter"
|
||||
:min-width="item.width"></vxe-column>
|
||||
<vxe-column title="操作" fixed="right" width="100">
|
||||
<template v-slot:default="scoped">
|
||||
<el-button link type="danger" @click="remove(scoped.row)">删除</el-button>
|
||||
</template>
|
||||
</vxe-column>
|
||||
|
||||
</vxe-table>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
<script setup lang='ts'>
|
||||
import { mainHeight } from '@/utils/layout'
|
||||
import { ref, reactive } from 'vue'
|
||||
import { defaultAttribute } from '@/components/table/defaultAttribute'
|
||||
import { ElMessageBox, ElMessage } from 'element-plus'
|
||||
import { activateUser, deluser, passwordConfirm } from '@/api/user-boot/user'
|
||||
import { useDictData } from '@/stores/dictData'
|
||||
const dictData = useDictData()
|
||||
const voltageLevelList: any = dictData.getBasicData('Dev_Voltage_Stand')
|
||||
import { deleteItem } from '@/api/cs-device-boot/csGroup'
|
||||
const volConTypeList = dictData.getBasicData('Dev_Connect')
|
||||
const emit = defineEmits(['onSubmit'])
|
||||
const height = mainHeight(325).height
|
||||
const dataList = ref([])
|
||||
const key: any = ref(0)
|
||||
const column: any = ref([
|
||||
{ field: 'itemName', title: '名称', width: '100px' },
|
||||
{ field: 'voltageLevel', title: '电压等级', width: '100px' },
|
||||
{ field: 'volConType', title: ' 电压接线方式', width: '100px' },
|
||||
{ field: 'capacitySi', title: '用户协议容量', width: '100px' },
|
||||
{ field: 'capacitySscb', title: '基准短路容量', width: '100px' },
|
||||
{ field: 'capacitySscmin', title: '最小短路容量', width: '100px' },
|
||||
{ field: 'capacitySt', title: '供电设备容量', width: '100px' },
|
||||
{ field: 'location', title: ' 测试位置', width: '100px' },
|
||||
{ field: 'startTime', title: '数据起始时间', width: '140px' },
|
||||
{ field: 'endTime', title: '数据结束时间', width: '140px' },
|
||||
{ field: 'statisticalInterval', title: '统计间隔', width: '100px' },
|
||||
{ field: 'ct', title: 'CT', width: '70px' },
|
||||
{ field: 'pt', title: 'PT', width: '70px' },
|
||||
|
||||
])
|
||||
const setData = (data: any) => {
|
||||
dataList.value = JSON.parse(JSON.stringify(data))
|
||||
key.value += 1
|
||||
}
|
||||
const formatter = (row: any) => {
|
||||
if (row.column.field == 'voltageLevel') {
|
||||
return row.cellValue == null ? '/' : voltageLevelList.filter((item: any) => item.id == row.cellValue)[0]?.name
|
||||
} else if (row.column.field == 'volConType') {
|
||||
return row.cellValue == null ? '/' : volConTypeList.filter((item: any) => item.id == row.cellValue)[0]?.name
|
||||
} else {
|
||||
return row.cellValue == null ? '/' : row.cellValue
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
// 删除
|
||||
const remove = (row: any) => {
|
||||
ElMessageBox.prompt('二次校验密码确认', '', {
|
||||
confirmButtonText: '确认',
|
||||
cancelButtonText: '取消',
|
||||
customClass: 'customInput',
|
||||
inputType: 'text'
|
||||
}).then(({ value }) => {
|
||||
passwordConfirm(value).then(res => {
|
||||
console.log('密码正确');
|
||||
|
||||
deleteItem({ id: row.id }).then(() => {
|
||||
ElMessage.success('删除成功')
|
||||
emit('onSubmit')
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
defineExpose({ setData })
|
||||
</script>
|
||||
<style lang="scss">
|
||||
.customInput {
|
||||
.el-input__inner {
|
||||
-webkit-text-security: disc !important;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user