修改测试问题

This commit is contained in:
guanj
2026-01-07 21:01:28 +08:00
parent 02a95c1dcd
commit 545e3836d1
24 changed files with 969 additions and 568 deletions

View File

@@ -89,6 +89,7 @@
:rules="{ required: true, message: '请输入设备名称', trigger: 'blur' }"
>
<el-select
clearable
filterable
v-model="project[2].name"
:disabled="true"
@@ -108,11 +109,12 @@
id="id200"
class="form-item"
label="省:"
prop="engineeringParam.province"
prop="engineeringParam.province"
v-if="nodeLevel > 0 || pageStatus == 2"
:rules="{ required: true, message: '请选择省', trigger: 'change' }"
>
<el-select
clearable
filterable
v-model="formData.engineeringParam.province"
:disabled="
@@ -134,11 +136,12 @@
id="id200"
class="form-item"
label="市:"
prop="engineeringParam.city"
prop="engineeringParam.city"
v-if="nodeLevel > 0 || pageStatus == 2"
:rules="{ required: true, message: '请选择市', trigger: 'change' }"
>
<el-select
clearable
filterable
v-model="formData.engineeringParam.city"
:disabled="
@@ -158,12 +161,11 @@
id="id300"
class="form-item"
label="工程名称:"
v-if="nodeLevel > 0 || pageStatus == 2"
prop="engineeringParam.name"
:rules="{ required: true, message: '请输入工程名称', trigger: 'blur' }"
>
<el-input
<el-input clearable
v-model="formData.engineeringParam.name"
placeholder="请输入工程名称"
:disabled="
@@ -175,10 +177,10 @@
id="id300"
class="form-item"
label="描述:"
prop="engineeringParam.description"
prop="engineeringParam.description"
v-if="nodeLevel > 0 || pageStatus == 2"
>
<el-input
<el-input clearable
v-model="formData.engineeringParam.description"
placeholder="请输入描述"
:disabled="
@@ -211,7 +213,7 @@
{ required: true, message: '请输入项目名称', trigger: 'blur' }
]"
>
<el-input
<el-input clearable
v-model="item.name"
placeholder="请输入项目名称"
:disabled="
@@ -229,7 +231,7 @@
:prop="'projectInfoList[' + index + '].area'"
:rules="[{ required: true, message: '请输入地市', trigger: 'blur' }]"
>
<el-input
<el-input clearable
v-model="item.area"
placeholder="请输入地市"
:disabled="
@@ -247,7 +249,7 @@
:prop="'projectInfoList[' + index + '].description'"
:rules="[{ required: true, message: '请输入描述', trigger: 'blur' }]"
>
<el-input
<el-input clearable
v-model="item.description"
placeholder="请输入描述"
:disabled="
@@ -292,7 +294,7 @@
{ required: true, message: '请输入装置名称', trigger: 'blur' }
]"
>
<el-input
<el-input clearable
v-model="busItem.name"
placeholder="请输入装置名称"
:disabled="
@@ -308,12 +310,13 @@
id="id200"
class="form-item"
label="装置类型:"
:prop="'deviceInfoList[' + bIndex + '].devType'"
:prop="'deviceInfoList[' + bIndex + '].devType'"
:rules="[
{ required: true, message: '请选择装置类型', trigger: 'change' }
]"
>
<el-select
clearable
filterable
v-model="busItem.devType"
placeholder="请选择装置类型"
@@ -338,12 +341,13 @@
id="id200"
class="form-item"
label="装置型号:"
:prop="'deviceInfoList[' + bIndex + '].devModel'"
:prop="'deviceInfoList[' + bIndex + '].devModel'"
:rules="[
{ required: true, message: '请选择装置型号', trigger: 'change' }
]"
>
<el-select
clearable
filterable
v-model="busItem.devModel"
placeholder="请选择装置型号"
@@ -368,12 +372,13 @@
id="id200"
class="form-item"
label="装置接入方式:"
:prop="'deviceInfoList[' + bIndex + '].devAccessMethod'"
:prop="'deviceInfoList[' + bIndex + '].devAccessMethod'"
:rules="[
{ required: true, message: '请选择装置接入方式', trigger: 'change' }
]"
>
<el-select
clearable
filterable
v-model="busItem.devAccessMethod"
placeholder="请选择装置接入方式"
@@ -393,7 +398,7 @@
<el-form-item
class="form-item"
label="装置mac地址:"
:prop="'deviceInfoList[' + bIndex + '].mac'"
:prop="'deviceInfoList[' + bIndex + '].mac'"
:rules="{
required: true,
message: '请输入装置mac地址',
@@ -411,14 +416,18 @@
:rules="[{ required: true, message: '请输入网络设备ID', trigger: 'blur' }]"
>
<el-input
<el-input clearable
v-model="busItem.ndid"
disabled
placeholder="请输入网络设备ID"
></el-input>
</el-form-item> -->
<el-form-item class="form-item" label="合同号:" :prop="'deviceInfoList[' + bIndex + '].cntractNo'">
<el-input
<el-form-item
class="form-item"
label="合同号:"
:prop="'deviceInfoList[' + bIndex + '].cntractNo'"
>
<el-input clearable
v-model="busItem.cntractNo"
placeholder="请输入合同号"
:disabled="
@@ -433,12 +442,13 @@
<el-form-item
class="form-item"
label="所属前置机:"
:prop="'deviceInfoList[' + bIndex + '].nodeId'"
:prop="'deviceInfoList[' + bIndex + '].nodeId'"
:rules="[
{ required: true, message: '请选择所属前置机', trigger: 'change' }
]"
>
<el-select
clearable
filterable
v-model="busItem.nodeId"
placeholder="请选择所属前置机"
@@ -452,8 +462,12 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item class="form-item" label="进程号:" :prop="'deviceInfoList[' + bIndex + '].nodeProcess'">
<el-input
<el-form-item
class="form-item"
label="进程号:"
:prop="'deviceInfoList[' + bIndex + '].nodeProcess'"
>
<el-input clearable
v-model="busItem.nodeProcess"
placeholder="自动分配"
:disabled="true"
@@ -466,7 +480,7 @@
:prop="'deviceInfoList[' + bIndex + '].sort'"
:rules="[{ required: true, message: '请输入排序', trigger: 'blur' }]"
>
<el-input
<el-input clearable
v-model="busItem.sort"
placeholder="请输入排序"
:disabled="
@@ -513,7 +527,7 @@
trigger: 'blur'
}"
>
<el-input
<el-input clearable
v-model="lineItem.name"
placeholder="请输入监测点名称"
:disabled="
@@ -536,6 +550,7 @@
}"
>
<el-select
clearable
filterable
v-model="lineItem.lineNo"
placeholder="请选择线路号"
@@ -562,6 +577,7 @@
:rules="{ required: true, message: '请选择接线方式', trigger: 'blur' }"
>
<el-select
clearable
filterable
v-model="lineItem.conType"
placeholder="请选择接线方式"
@@ -588,6 +604,7 @@
:rules="{ required: true, message: '请选择统计间隔', trigger: 'blur' }"
>
<el-select
clearable
filterable
v-model="lineItem.lineInterval"
placeholder="请选择统计间隔"
@@ -614,7 +631,7 @@
:rules="{ required: true, message: '请输入pt', trigger: 'blur' }"
>
<div style="width: 100%; display: flex; justify-content: space-between">
<el-input-number
<el-input clearable-number
:controls="false"
:min="1"
style="width: 48%"
@@ -627,7 +644,7 @@
pageStatus == 2)
)
"
></el-input-number>
></el-input>
<span
style="
display: flex;
@@ -637,7 +654,7 @@
>
:
</span>
<el-input-number
<el-input clearable-number
:controls="false"
:min="1"
style="width: 48%"
@@ -650,17 +667,17 @@
pageStatus == 2)
)
"
></el-input-number>
></el-input>
</div>
</el-form-item>
<el-form-item
class="form-item"
label="CT变比:"
:prop="'lineInfoList[' + lIndex + '].ctRatio'"
:prop="'lineInfoList[' + lIndex + '].ctRatio'"
:rules="{ required: true, message: '请输入ct', trigger: 'blur' }"
>
<div style="width: 100%; display: flex; justify-content: space-between">
<el-input-number
<el-input clearable-number
:controls="false"
:min="1"
style="width: 48%"
@@ -673,7 +690,7 @@
pageStatus == 2)
)
"
></el-input-number>
></el-input>
<span
style="
display: flex;
@@ -683,7 +700,7 @@
>
:
</span>
<el-input-number
<el-input clearable-number
:controls="false"
:min="1"
style="width: 48%"
@@ -696,12 +713,17 @@
pageStatus == 2)
)
"
></el-input-number>
></el-input>
</div>
</el-form-item>
<el-form-item class="form-item" label="基准容量(MVA):" :prop="'lineInfoList[' + lIndex + '].basicCapacity'" :rules="{ required: true, message: '请输入基准容量', trigger: 'blur' }">
<el-input-number
<el-form-item
class="form-item"
label="基准容量(MVA):"
:prop="'lineInfoList[' + lIndex + '].basicCapacity'"
:rules="{ required: true, message: '请输入基准容量', trigger: 'blur' }"
>
<el-input clearable-number
:controls="false"
:min="0"
style="width: 100%"
@@ -714,15 +736,15 @@
)
"
placeholder="请输入基准容量(MVA)"
></el-input-number>
></el-input>
</el-form-item>
<el-form-item
class="form-item"
label="短路容量(MVA):"
:prop="'lineInfoList[' + lIndex + '].shortCircuitCapacity'"
:prop="'lineInfoList[' + lIndex + '].shortCircuitCapacity'"
:rules="{ required: true, message: '请输入短路容量', trigger: 'blur' }"
>
<el-input-number
<el-input clearable-number
:controls="false"
:min="0"
style="width: 100%"
@@ -735,15 +757,15 @@
)
"
placeholder="请输入短路容量(MVA)"
></el-input-number>
></el-input>
</el-form-item>
<el-form-item
class="form-item"
label="设备容量(MW):"
:prop="'lineInfoList[' + lIndex + '].devCapacity'"
:prop="'lineInfoList[' + lIndex + '].devCapacity'"
:rules="{ required: true, message: '请输入设备容量', trigger: 'blur' }"
>
<el-input-number
<el-input clearable-number
:controls="false"
:min="0"
style="width: 100%"
@@ -756,15 +778,15 @@
)
"
placeholder="请输入设备容量(MVA)"
></el-input-number>
></el-input>
</el-form-item>
<el-form-item
class="form-item"
label="协议容量(MW):"
:prop="'lineInfoList[' + lIndex + '].protocolCapacity'"
:prop="'lineInfoList[' + lIndex + '].protocolCapacity'"
:rules="{ required: true, message: '请输入协议容量', trigger: 'blur' }"
>
<el-input-number
<el-input clearable-number
:controls="false"
:min="0"
style="width: 100%"
@@ -777,16 +799,17 @@
)
"
placeholder="请输入协议容量(MW)"
></el-input-number>
></el-input>
</el-form-item>
<el-form-item
class="form-item"
label="电压等级:"
:prop="'lineInfoList[' + lIndex + '].volGrade'"
:prop="'lineInfoList[' + lIndex + '].volGrade'"
:rules="{ required: true, message: '请选择电压等级', trigger: 'blur' }"
>
<el-select
clearable
filterable
v-model="lineItem.volGrade"
placeholder="请选择电压等级"
@@ -806,13 +829,9 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item
class="form-item"
label="用户对象:"
:prop="'lineInfoList[' + lIndex + '].monitorUser'"
:rules="{ required: true, message: '请选择用户对象', trigger: 'blur' }"
>
<el-form-item class="form-item" label="用户对象:">
<el-select
clearable
filterable
v-model="lineItem.monitorUser"
placeholder="请选择用户对象"
@@ -835,7 +854,7 @@
<el-form-item
class="form-item"
label="监测对象类型:"
:prop="'lineInfoList[' + lIndex + '].monitorObj'"
:prop="'lineInfoList[' + lIndex + '].monitorObj'"
:rules="{
required: true,
message: '请选择监测对象类型',
@@ -843,6 +862,7 @@
}"
>
<el-select
clearable
filterable
v-model="lineItem.monitorObj"
placeholder="请选择监测对象类型"
@@ -862,13 +882,45 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item
class="form-item"
label="监测位置:"
:prop="'lineInfoList[' + lIndex + '].position'"
:rules="{
required: true,
message: '请选择监测位置',
trigger: 'blur'
}"
>
<el-select
clearable
filterable
v-model="lineItem.position"
placeholder="请选择监测位置"
:disabled="
!(
(nodeLevel == 4 && pageStatus == 3) ||
((nodeLevel == 3 || (nodeLevel == 2 && pageStatus == 2)) &&
pageStatus == 2)
)
"
>
<el-option
v-for="option in linePosition"
:key="option.id"
:label="option.name"
:value="option.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item
class="form-item"
label="是否治理:"
:prop="'lineInfoList[' + lIndex + '].govern'"
:prop="'lineInfoList[' + lIndex + '].govern'"
:rules="{ required: true, message: '请选择是否治理', trigger: 'blur' }"
>
<el-select
clearable
filterable
v-model="lineItem.govern"
placeholder="请选择是否治理"
@@ -890,8 +942,9 @@
:prop="'lineInfoList[' + lIndex + '].runStatus'"
:rules="{ required: true, message: '请选择运行状态', trigger: 'blur' }"
>
<!-- 0运行1检修2停运3调试4退运 -->
<!-- 0运行1检修2停运3调试4退运 -->
<el-select
clearable
filterable
v-model="lineItem.runStatus"
placeholder="请选择运行状态"
@@ -1035,6 +1088,7 @@ const busBarId: any = ref('0')
const lineId: any = ref('0')
const userList: any = ref([])
const monitorObjList: any = ref([])
const linePosition: any = ref([])
const currentGdName: any = ref('')
const affiliatiedFrontArr: any = ref([])
@@ -1046,19 +1100,17 @@ const treeClickCount = ref(0)
const areaTree: any = tree
const formData = ref({
lineInfoList: [] as LineInfo[],
projectInfoList:[] as ProjectInfo[],
deviceInfoList :[] as DeviceInfo[],
engineeringParam: {
city: '',
description: '',
name: '',
province: ''
}
lineInfoList: [] as LineInfo[],
projectInfoList: [] as ProjectInfo[],
deviceInfoList: [] as DeviceInfo[],
engineeringParam: {
city: '',
description: '',
name: '',
province: ''
}
})
const project = ref([
{ name: '治理设备', value: '治理设备' },
{ name: '便携式设备', value: '便携式设备' },
@@ -1127,6 +1179,7 @@ interface LineInfo {
devMac: string
monitorUser: string
monitorObj: string
position: string
govern: string | number
runStatus: string | number
basicCapacity: number
@@ -1506,6 +1559,7 @@ const add = () => {
monitorUser: '',
devMac: '',
monitorObj: '',
position: '',
govern: 0,
runStatus: 0,
basicCapacity: 0,
@@ -1682,8 +1736,9 @@ const updateLineFunc = (id: any) => {
ct2Ratio: currentLine.ct2Ratio || 1,
monitorUser: currentLine.monitorUser || '',
monitorObj: currentLine.monitorObj || '',
govern: currentLine.govern ,
runStatus: currentLine.runStatus ,
position: currentLine.position || '',
govern: currentLine.govern,
runStatus: currentLine.runStatus,
basicCapacity: currentLine.basicCapacity || 0,
shortCircuitCapacity: currentLine.shortCircuitCapacity || 0,
devCapacity: currentLine.devCapacity || 0,
@@ -1878,6 +1933,7 @@ const next = async () => {
monitorUser: '',
devMac: '',
monitorObj: '',
position: '',
govern: 0,
runStatus: 0,
basicCapacity: 0,
@@ -1900,7 +1956,6 @@ const next = async () => {
}
}
})
}
// 撤销
@@ -1925,21 +1980,21 @@ const black = () => {
const onsubmit = async () => {
await mainForm.value.validate((valid: any) => {
if (valid) {
if (pageStatus.value == 2) {
// 新增
// 检查是否是多层级新增还是单层级新增
if (
tempAllLevelData.value.engineering !== null ||
tempAllLevelData.value.projects.length > 0 ||
tempAllLevelData.value.devices.length > 0 ||
tempAllLevelData.value.lines.length > 0
) {
// 多层级新增,一次性提交所有数据
submitAllLevelData()
} else {
// 单层级新增,使用原有的提交方式
submitData()
}
if (pageStatus.value == 2) {
// 新增
// 检查是否是多层级新增还是单层级新增
if (
tempAllLevelData.value.engineering !== null ||
tempAllLevelData.value.projects.length > 0 ||
tempAllLevelData.value.devices.length > 0 ||
tempAllLevelData.value.lines.length > 0
) {
// 多层级新增,一次性提交所有数据
submitAllLevelData()
} else {
// 单层级新增,使用原有的提交方式
submitData()
}
} else if (pageStatus.value == 3) {
// 修改
switch (nodeLevel.value) {
@@ -1958,7 +2013,6 @@ const onsubmit = async () => {
}
}
}
})
}
@@ -2003,7 +2057,9 @@ const submitAllLevelData = async () => {
case 2: // 工程 + 项目 + 设备
// 工程信息
const engineeringData2 = tempAllLevelData.value.engineering || { ...formData.value.engineeringParam }
const engineeringData2 = tempAllLevelData.value.engineering || {
...formData.value.engineeringParam
}
// 项目信息
const projectData2 =
tempAllLevelData.value.projects.length > 0
@@ -2059,7 +2115,9 @@ const submitAllLevelData = async () => {
case 3: // 工程 + 项目 + 设备 + 监测点
case 4:
// 工程信息
const engineeringData3 = tempAllLevelData.value.engineering || { ...formData.value.engineeringParam }
const engineeringData3 = tempAllLevelData.value.engineering || {
...formData.value.engineeringParam
}
// 项目信息
const projectData3 =
@@ -2255,10 +2313,8 @@ const submitAllLevelData = async () => {
}
}, 100)
})
}
})
}
/**
* 重置所有表单
@@ -2302,6 +2358,7 @@ const resetAllForms = () => {
line.volGrade = ''
line.monitorUser = ''
line.monitorObj = ''
line.position = ''
line.govern = 0
line.runStatus = 0
line.basicCapacity = 0
@@ -2469,6 +2526,7 @@ const submitData = () => {
ct2Ratio: currentLine.ct2Ratio,
monitorUser: currentLine.monitorUser,
monitorObj: currentLine.monitorObj,
position: currentLine.position,
govern: currentLine.govern,
runStatus: currentLine.runStatus,
basicCapacity: currentLine.basicCapacity,
@@ -2620,7 +2678,9 @@ const handleBusBarTabsEdit = (targetName: any, action: any) => {
} else {
// 如果是新增模式下删除未保存的设备
formData.value.deviceInfoList.splice(busBarIndex.value, 1)
busBarIndex.value = formData.value.deviceInfoList.length ? (formData.value.deviceInfoList.length - 1).toString() : '0'
busBarIndex.value = formData.value.deviceInfoList.length
? (formData.value.deviceInfoList.length - 1).toString()
: '0'
lineIndex.value = '0'
ElMessage({
type: 'success',
@@ -2656,6 +2716,7 @@ const handleLineTabsEdit = (targetName: any, action: any) => {
devMac: '',
monitorUser: '',
monitorObj: '',
position: '',
govern: 0,
runStatus: 0,
basicCapacity: 0,
@@ -2682,14 +2743,18 @@ const handleLineTabsEdit = (targetName: any, action: any) => {
// 从列表中移除
formData.value.lineInfoList.splice(lineIndex.value, 1)
// 重新设置当前选中的tab
lineIndex.value = formData.value.lineInfoList.length ? (formData.value.lineInfoList.length - 1).toString() : '0'
lineIndex.value = formData.value.lineInfoList.length
? (formData.value.lineInfoList.length - 1).toString()
: '0'
pageStatus.value = 1
treedata()
})
} else {
// 如果是新增模式下删除未保存的监测点
formData.value.lineInfoList.splice(lineIndex.value, 1)
lineIndex.value = formData.value.lineInfoList.length ? (formData.value.lineInfoList.length - 1).toString() : '0'
lineIndex.value = formData.value.lineInfoList.length
? (formData.value.lineInfoList.length - 1).toString()
: '0'
ElMessage({
type: 'success',
message: '删除成功'
@@ -2777,6 +2842,9 @@ const area = () => {
getDicDataByTypeCode({ dictTypeCode: 'M_Obj_Types' }).then(res => {
monitorObjList.value = res.data
})
getDicDataByTypeCode({ dictTypeCode: 'Line_Position' }).then(res => {
linePosition.value = res.data
})
}
onMounted(() => {

View File

@@ -4,8 +4,8 @@
<div class="device-manage-right" :style="{ height: pageHeight.height }">
<el-descriptions title="用户基本信息" class="mb10" :column="2" border>
<template #extra>
<el-button type="primary" icon="el-icon-Plus" @click="getMarketEnginner">
添加工程
<el-button type="primary" icon="el-icon-Sort" @click="getMarketEnginner">
绑定工程
</el-button>
</template>
<el-descriptions-item label="名称">
@@ -29,7 +29,7 @@
</vxe-table>
</div>
</div>
<el-dialog v-model.trim="dialogVisible" title="添加工程" class="cn-operate-dialog" :close-on-click-modal="false">
<el-dialog v-model.trim="dialogVisible" title="绑定工程" class="cn-operate-dialog" :close-on-click-modal="false">
<el-input maxlength="32" show-word-limit v-model.trim="filterText" icon="el-icon-Search" placeholder="请输入内容"
clearable style="margin-bottom: 10px">
<template #prefix>

View File

@@ -3,7 +3,7 @@
<OfficialUserTree @node-click="selectUser" @selectUser="selectUser"></OfficialUserTree>
<div class="device-manage-right" :style="{ height: pageHeight.height }">
<div class="el-descriptions__header">
<el-button type="primary" @click="getEnginnerDev">添加工程 / 设备</el-button>
<el-button type="primary" icon="el-icon-Sort" @click="getEnginnerDev">绑定工程 / 设备</el-button>
</div>
<!-- 使用flex布局平均分配高度 -->
@@ -41,7 +41,7 @@
<el-dialog
v-model.trim="dialogVisible"
draggable
title="添加工程 / 设备"
title="绑定工程 / 设备"
class="cn-operate-dialog"
:close-on-click-modal="false"

View File

@@ -1,48 +1,48 @@
<template>
<div class="default-main">
<TableHeader datePicker></TableHeader>
<Table ref="tableRef" :isGroup="true" />
</div>
</template>
<script setup lang="ts">
import { Plus } from '@element-plus/icons-vue'
import { ref, onMounted, provide } from 'vue'
import TableStore from '@/utils/tableStore'
import Table from '@/components/table/index.vue'
import TableHeader from '@/components/table/header/index.vue'
defineOptions({
name: 'govern/log/operation'
})
const tableStore = new TableStore({
url: '/cs-device-boot/cslog/queryLog',
method: 'POST',
column: [
{ title: '操作日期', field: 'createTime', align: 'center', sortable: true },
{ title: '操作描述', field: 'operate', align: 'center', width: '300' },
{ title: '用户名称', field: 'userName', align: 'center' },
{ title: '更新时间', field: 'updateTime', align: 'center', sortable: true },
{ title: '失败原因', field: 'failReason', align: 'center' },
{ title: '状态', field: 'result', align: 'center' },
{ title: '登录名', field: 'loginName', align: 'center' }
],
loadCallback: () => {
tableStore.table.data.forEach((item: any) => {
item.failReason = item.failReason || '/'
item.result = item.result === 1 ? '成功' : '失败'
item.loginName = item.loginName || '/'
})
}
})
provide('tableStore', tableStore)
tableStore.table.params.searchState = 0
tableStore.table.params.sortBy = ''
tableStore.table.params.orderBy = ''
onMounted(() => {
tableStore.index()
})
const addMenu = () => {}
</script>
<template>
<div class="default-main">
<TableHeader datePicker></TableHeader>
<Table ref="tableRef" :isGroup="true" />
</div>
</template>
<script setup lang="ts">
import { Plus } from '@element-plus/icons-vue'
import { ref, onMounted, provide } from 'vue'
import TableStore from '@/utils/tableStore'
import Table from '@/components/table/index.vue'
import TableHeader from '@/components/table/header/index.vue'
defineOptions({
name: 'govern/log/operation'
})
const tableStore = new TableStore({
url: '/cs-device-boot/cslog/queryLog',
method: 'POST',
column: [
{ title: '操作日期', field: 'createTime', align: 'center', sortable: true, minWidth: '150' },
{ title: '操作描述', field: 'operate', align: 'center', minWidth: '300' },
{ title: '用户名称', field: 'userName', align: 'center', minWidth: '130' },
{ title: '更新时间', field: 'updateTime', align: 'center', sortable: true, minWidth: '150' },
{ title: '失败原因', field: 'failReason', align: 'center', minWidth: '200' },
{ title: '状态', field: 'result', align: 'center', minWidth: '120' },
{ title: '登录名', field: 'loginName', align: 'center', minWidth: '120' }
],
loadCallback: () => {
tableStore.table.data.forEach((item: any) => {
item.failReason = item.failReason || '/'
item.result = item.result === 1 ? '成功' : '失败'
item.loginName = item.loginName || '/'
})
}
})
provide('tableStore', tableStore)
tableStore.table.params.searchState = 0
tableStore.table.params.sortBy = ''
tableStore.table.params.orderBy = ''
onMounted(() => {
tableStore.index()
})
const addMenu = () => {}
</script>

View File

@@ -88,7 +88,7 @@
></el-input>
</el-form-item>
</el-form>
<el-form :model="form" label-width="100px" class="mt10">
<el-form :model="form" label-width="100px" class="mt10 form-one" >
<el-form-item label="描述:" prop="description">
<el-input
maxlength="300"
@@ -258,16 +258,14 @@ const open = (text: string, data?: anyObj) => {
})
}
const submit = () => {
if (fileList.value.length == 0) {
ElMessage.warning('请上传升级文件')
return
}
// console.log(formRef)
formRef.value.validate(async (valid: boolean) => {
// console.log(valid)
if (valid) {
if (fileList.value.length == 0) {
ElMessage.warning('请上传升级文件')
return
}
let submitForm = new FormData()
for (let key in form) {
submitForm.append(key, form[key])

View File

@@ -79,6 +79,7 @@ import DatePicker from '@/components/form/datePicker/time.vue'
import { Splitpanes, Pane } from 'splitpanes'
import CloudDeviceEntryTree from '@/components/tree/govern/cloudDeviceEntryTreeZL.vue'
import { getListByIds } from '@/api/harmonic-boot/cockpit/cockpit'
import { ElMessage } from 'element-plus'
// import data from './123.json'
defineOptions({
name: 'govern/reportCore/statisticsWx/indexZL'
@@ -101,9 +102,12 @@ const tableStore = new TableStore({
beforeSearchFun: () => {
tableStore.table.params.tempId = Template.value.id
tableStore.table.params.lineId = dotList.value.id
tableStore.table.params.sensitiveUserId = dotList.value.id
tableStore.table.params.sensitiveUserId = dotList.value.id
// ;(tableStore.table.params.startTime = datePickerRef.value.timeValue[0]),
// (tableStore.table.params.endTime = datePickerRef.value.timeValue[1]),
if (!tableStore.table.params.tempId) {
return ElMessage.warning('请选择模板')
}
delete tableStore.table.params.searchBeginTime
delete tableStore.table.params.searchEndTime
delete tableStore.table.params.timeFlag

View File

@@ -1,6 +1,6 @@
<template>
<el-dialog class="cn-operate-dialog" width="600px" v-model.trim="dialogVisible" :title="title">
<el-form :model="form" label-width="auto" ref="formRef" :rules="rules">
<el-form :model="form" class="form-one" label-width="auto" ref="formRef" :rules="rules">
<el-form-item label="所属厂站名称" prop="substationName">
<el-input v-model.trim="form.substationName" placeholder="请输入所属厂站名称"></el-input>
</el-form-item>
@@ -18,13 +18,13 @@
</el-select>
</el-form-item>
<el-form-item label="用户协议容量(MVA)" prop="userAgreementCapacity">
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.trim="form.userAgreementCapacity" placeholder="请输入用户协议容量"></el-input-number>
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.number="form.userAgreementCapacity" placeholder="请输入用户协议容量"></el-input-number>
</el-form-item>
<el-form-item label="装机容量(MW)" prop="installedCapacity">
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.trim="form.installedCapacity" placeholder="请输入装机容量"></el-input-number>
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.number="form.installedCapacity" placeholder="请输入装机容量"></el-input-number>
</el-form-item>
<el-form-item label="排序" prop="sort">
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.trim="form.sort" placeholder="请输入排序"></el-input-number>
<el-input-number style="width: 100%;" :min="0" maxlength="32" show-word-limit v-model.number="form.sort" placeholder="请输入排序"></el-input-number>
</el-form-item>
</el-form>
@@ -74,6 +74,7 @@ const rules = {
const dialogVisible = ref(false)
const title = ref('新增')
const open = (text: string, data?: anyObj) => {
formRef.value?.resetFields()
title.value = text
dialogVisible.value = true
if (data) {

View File

@@ -17,7 +17,7 @@
</el-form-item>
<el-form-item label="排序" prop="sort">
<el-input maxlength="32" show-word-limit-number v-model.trim="form.sort" :min="0" />
<el-input maxlength="32" show-word-limit-number v-model.number="form.sort" :min="0" />
</el-form-item>
</el-form>