联调二级评估页面

This commit is contained in:
guanj
2025-08-11 16:13:51 +08:00
parent 8d613f7a57
commit aa3dbb6c5d
22 changed files with 864 additions and 474 deletions

View File

@@ -1,16 +1,16 @@
<template>
<el-dialog draggable class="cn-operate-dialog" v-model="dialogVisible" title="终端">
<el-button icon="el-icon-Plus" type="primary" @click="add" class="mb10">新增</el-button>
<el-dialog draggable class="cn-operate-dialog" v-model="dialogVisible" title="设备">
<div class="formBox mb10"><el-button icon="el-icon-Plus" type="primary" @click="add">新增</el-button></div>
<vxe-table v-bind="defaultAttribute" v-loading="loading" height="500px" ref="xTable" :data="userData">
<vxe-column field="devName" title="终端名称"></vxe-column>
<vxe-column field="devName" title="设备名称"></vxe-column>
<vxe-column field="devScale" title="电压等级" :formatter="formatter"></vxe-column>
<vxe-column field="protocolCapacity" title="终端容量(MVA)"></vxe-column>
<vxe-column field="protocolCapacity" title="设备容量(MVA)"></vxe-column>
<vxe-column title="操作" width="120px">
<template #default="{ row }">
<el-button type="primary" size="small" link @click="revise(row)">修改</el-button>
<el-popconfirm @confirm="deleteD(row)" title="确认删除终端?">
<el-popconfirm @confirm="deleteD(row)" title="确认删除设备?">
<template #reference>
<el-button type="danger" size="small" link>删除</el-button>
</template>
@@ -21,21 +21,27 @@
</el-dialog>
<el-dialog draggable v-model="addShow" width="400px" :title="title" :before-close="handleClose">
<el-form :model="form" ref="formRef" :rules="rules" label-width="auto">
<el-form-item label="终端名称" prop="devName">
<el-input v-model.trim="form.devName" placeholder="请输入终端名称" maxlength="32" show-word-limit clearable/>
<el-form-item label="设备名称" prop="devName">
<el-input
v-model.trim="form.devName"
placeholder="请输入设备名称"
maxlength="32"
show-word-limit
clearable
/>
</el-form-item>
<el-form-item label="电压等级" prop="devScale">
<el-select v-model="form.devScale" clearable placeholder="请选择电压等级">
<el-option v-for="item in levelList" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="终端容量(MVA)" prop="protocolCapacity">
<el-form-item label="设备容量(MVA)" prop="protocolCapacity">
<el-input-number
v-model="form.protocolCapacity"
style="width: 100%"
:min="0"
:max="10000000"
placeholder="请选择终端容量"
:max="10000000"
placeholder="请选择设备容量"
/>
</el-form-item>
</el-form>
@@ -70,9 +76,9 @@ const form: any = ref({
userId: ''
})
const rules = {
devName: [{ required: true, message: '请输入终端名称', trigger: 'blur' }],
devScale: [{ required: true, message: '请输入终端名称', trigger: 'change' }],
protocolCapacity: [{ required: true, message: '请输入终端名称', trigger: 'blur' }]
devName: [{ required: true, message: '请输入设备名称', trigger: 'blur' }],
devScale: [{ required: true, message: '请输入设备名称', trigger: 'change' }],
protocolCapacity: [{ required: true, message: '请输入设备名称', trigger: 'blur' }]
}
const open = (row: any) => {
dialogVisible.value = true
@@ -88,7 +94,7 @@ const open = (row: any) => {
// 新增
const add = () => {
addShow.value = true
title.value = '新增终端'
title.value = '新增设备'
}
// 过滤数据
@@ -102,7 +108,7 @@ const formatter = (row: any) => {
// 修改
const revise = (row: any) => {
form.value = JSON.parse(JSON.stringify(row))
title.value = '修改终端'
title.value = '修改设备'
addShow.value = true
}
// 关闭弹框
@@ -116,11 +122,11 @@ const handleClose = () => {
}
formRef.value.resetFields()
}
// 新增终端
// 新增设备
const submitForm = async () => {
await formRef.value.validate(valid => {
if (valid) {
if (title.value == '新增终端') {
if (title.value == '新增设备') {
form.value.userId = rowList.value.userId
addDev(form.value).then(res => {
ElMessage.success('新增成功!')
@@ -137,10 +143,10 @@ const submitForm = async () => {
}
})
}
// 删除终端
// 删除设备
const deleteD = row => {
removeDev({ devIds: row.devId }).then(res => {
ElMessage.success('删除终端成功!')
ElMessage.success('删除设备成功!')
open(rowList.value)
})
}
@@ -148,4 +154,10 @@ const deleteD = row => {
defineExpose({ open })
</script>
<style lang="scss" scoped></style>
<style lang="scss" scoped>
.formBox{
display: flex;
justify-content: end;
}
</style>

View File

@@ -1,10 +1,14 @@
<template>
<div class="default-main">
<div>
<TableHeader datePicker ref="TableHeaderRef">
<TableHeader :showTimeAll="false" showExport ref="TableHeaderRef">
<template #select>
<el-form-item label="用户类型">
<el-select v-model.trim="tableStore.table.params.userType" clearable placeholder="请选择用户类型">
<el-select
v-model.trim="tableStore.table.params.userType"
clearable
placeholder="请选择用户类型"
>
<el-option v-for="item in uesrList" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
@@ -15,21 +19,28 @@
</TableHeader>
<Table ref="tableRef" />
<el-dialog draggable v-model="dialogVisible" :title="title" width="600" :before-close="handleClose">
<el-form ref="ruleFormRef" :model="form" label-width="auto" :disabled="disabled" :rules="rules">
<el-form-item label="用户名称:" prop="userName">
<el-input v-model.trim="form.userName" clearable placeholder="请输入用户名称" maxlength="32" show-word-limit/>
</el-form-item>
<el-form ref="ruleFormRef" :model="form" label-width="170px" :disabled="disabled" :rules="rules">
<el-form-item label="用户类型:" prop="userType">
<el-select v-model="form.userType" clearable placeholder="请选择用户类型" @change="useChange">
<el-option v-for="item in uesrList" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="用户名称:" prop="userName">
<el-input
v-model.trim="form.userName"
clearable
placeholder="请输入用户名称"
maxlength="32"
show-word-limit
/>
</el-form-item>
<el-form-item label="电压等级:" prop="voltage">
<el-select v-model="form.voltage" clearable collapse-tags placeholder="请选择电压等级">
<el-option v-for="item in levelList" :key="item.id" :label="item.name" :value="item.id" />
</el-select>
</el-form-item>
<el-form-item
:label="userShow == 'Power_Station_Users' ? '拟接入容量(MVA)' : '用户协议容量(MVA)'"
prop="protocolCapacity"
@@ -39,7 +50,6 @@
style="width: 100%"
v-model="form.protocolCapacity"
:min="0"
:precision="4"
:max="10000000"
placeholder="请输入用容量"
/>
@@ -53,7 +63,8 @@
clearable
v-model="form.area"
:autosize="{ minRows: 2, maxRows: 4 }"
maxlength="300" show-word-limit
maxlength="300"
show-word-limit
type="textarea"
placeholder="请输入详细地址"
/>
@@ -68,7 +79,7 @@
</template>
</el-dialog>
</div>
<!-- 终端 -->
<!-- 设备 -->
<equipment ref="equipmentRef" />
</div>
</template>
@@ -177,7 +188,7 @@ const tableStore: any = new TableStore({
buttons: [
{
name: 'edit',
title: '终端 ',
title: '设备 ',
type: 'primary',
icon: 'el-icon-Plus',
render: 'basicButton',
@@ -196,10 +207,10 @@ const tableStore: any = new TableStore({
disabled.value = true
dialogVisible.value = true
dialogVisible.value = true
title.value = '查看承载能力评估用户'
title.value = '查看承载能力评估用户'
form.value = JSON.parse(JSON.stringify(row))
form.value.regionList = [form.value.province, form.value.city, form.value.region]
userShow.value=uesrList.filter(item => item.id == row.userType)[0].code
userShow.value = uesrList.filter(item => item.id == row.userType)[0].code
}
},
{
@@ -212,11 +223,11 @@ const tableStore: any = new TableStore({
disabled.value = false
dialogVisible.value = true
await nextTick
title.value = '编辑承载能力评估用户'
title.value = '编辑承载能力评估用户'
form.value = JSON.parse(JSON.stringify(row))
form.value.regionList = [form.value.province, form.value.city, form.value.region]
userShow.value=uesrList.filter(item => item.id == row.userType)[0].code
userShow.value = uesrList.filter(item => item.id == row.userType)[0].code
}
},
{
@@ -259,7 +270,7 @@ const useChange = (e: string) => {
// 新增
const add = () => {
disabled.value = false
title.value = '新增承载能力评估用户'
title.value = '新增承载能力评估用户'
dialogVisible.value = true
}
// 保存
@@ -269,14 +280,14 @@ const onSubmit = () => {
form.value.province = form.value.regionList[0] || ''
form.value.city = form.value.regionList[1] || ''
form.value.region = form.value.regionList[2] || ''
if (title.value == '新增承载能力评估用户') {
if (title.value == '新增承载能力评估用户') {
addUse(form.value).then(res => {
ElMessage.success('新增成功!')
dialogVisible.value = false
tableStore.index()
handleClose()
})
} else if (title.value == '编辑承载能力评估用户') {
} else if (title.value == '编辑承载能力评估用户') {
updateUse(form.value).then(res => {
ElMessage.success('修改成功!')
dialogVisible.value = false