调整台账录入页面

This commit is contained in:
guanj
2026-04-15 13:44:28 +08:00
parent cfcbfc45d6
commit 632a0104fb
3 changed files with 109 additions and 102 deletions

View File

@@ -13,8 +13,13 @@
<pane style="background: #fff">
<div class="device-manage-right">
<el-form :inline="true" class="demo-form-inline" style="height: 42px">
<el-form-item style="position: relative; z-index: 2" v-if="connectionMethod != 'MQTT'">
<el-button icon="el-icon-Plus" type="primary" @click="add" v-if="nodeLevel != 4">
<el-form-item style="position: relative; z-index: 2">
<el-button
icon="el-icon-Plus"
type="primary"
@click="add"
v-if="!(nodeLevel == 3 && connectionMethod == 'MQTT') && nodeLevel != 4"
>
{{
nodeLevel == 0
? '新增工程'
@@ -57,11 +62,11 @@
修改提交
</el-button>
</el-form-item>
<el-form-item style="position: relative; z-index: 2" v-else>
<!-- <el-form-item style="position: relative; z-index: 2" v-else>
<span style="font-size: 16px; font-weight: bold; color: var(--el-color-primary)">
治理设备/便携式设备不支持操作
</span>
</el-form-item>
</el-form-item> -->
<el-form-item style="right: 300px; position: absolute; overflow: hidden">
<LocationInformation
@@ -356,7 +361,7 @@
:label="busItem.name ? busItem.name : '新建设备' + bIndex"
:name="bIndex + ''"
>
<div class="flex mt10" v-if="busItem.devAccessMethod == 'CLD'">
<div class="flex mt10">
<el-form-item
class="form-item"
label="设备名称:"
@@ -402,7 +407,7 @@
"
>
<el-option
v-for="item in formDevTypeOptions"
v-for="item in [...formDevTypeOptions, ...devTypeOptions]"
:key="item.value"
:label="item.label || item.name"
:value="item.value || item.id"
@@ -433,7 +438,7 @@
"
>
<el-option
v-for="option in devCLD"
v-for="option in [...devCLD, ...devModelOptions]"
:key="option.id"
:label="option.name"
:value="option.id"
@@ -464,6 +469,7 @@
"
>
<el-option label="CLD" value="CLD"></el-option>
<el-option label="MQTT" value="MQTT"></el-option>
</el-select>
</el-form-item>
@@ -482,18 +488,7 @@
:disabled="!(pageStatus == 2 && nodeLevel == 2)"
/>
</el-form-item>
<!-- <el-form-item
class="form-item"
label="网络设备ID:"
:rules="[{ required: true, message: '请输入网络设备ID', trigger: 'blur' }]"
>
<el-input clearable
v-model="busItem.ndid"
disabled
placeholder="请输入网络设备ID"
></el-input>
</el-form-item> -->
<el-form-item
class="form-item"
label="合同号:"
@@ -513,6 +508,7 @@
></el-input>
</el-form-item>
<el-form-item
v-if="busItem.devAccessMethod == 'CLD'"
class="form-item"
label="所属前置机:"
:prop="'deviceInfoList[' + bIndex + '].nodeId'"
@@ -536,6 +532,7 @@
</el-select>
</el-form-item>
<el-form-item
v-if="busItem.devAccessMethod == 'CLD'"
class="form-item"
label="进程号:"
:prop="'deviceInfoList[' + bIndex + '].nodeProcess'"
@@ -548,6 +545,7 @@
></el-input>
</el-form-item>
<el-form-item
v-if="busItem.devAccessMethod == 'CLD'"
class="form-item"
label="日志等级:"
:prop="'deviceInfoList[' + bIndex + '].devLogLevel'"
@@ -583,7 +581,7 @@
clearable
filterable
v-model="busItem.usageStatus"
placeholder="请选择日志等级"
placeholder="请选择是否启用"
style="width: 100%"
:disabled="
!(
@@ -597,6 +595,20 @@
<el-option label="停用" :value="0"></el-option>
</el-select>
</el-form-item>
<el-form-item
label="接入:"
v-if="connectionMethod == 'MQTT' && busItem?.id"
>
<el-button
icon="el-icon-Sort"
type="primary"
size="small"
@click="access(busItem)"
:loading="accessLoading"
>
{{ accessLoading ? '接入中' : '接入' }}
</el-button>
</el-form-item>
<el-form-item
class="form-item"
label="排序:"
@@ -617,68 +629,6 @@
></el-input>
</el-form-item>
</div>
<div class="flex mt10" v-else>
<el-form-item class="form-item" label="设备名称:">
<el-input
clearable
v-model="busItem.name"
placeholder="请输入设备名称"
:disabled="true"
></el-input>
</el-form-item>
<el-form-item id="id200" class="form-item" label="设备类型:">
<el-select
clearable
filterable
v-model="busItem.devType"
placeholder="请选择设备类型"
style="width: 100%"
:disabled="true"
>
<el-option
v-for="item in devTypeOptions"
:key="item.value"
:label="item.label || item.name"
:value="item.value || item.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item id="id200" class="form-item" label="设备型号:">
<el-select
clearable
filterable
v-model="busItem.devModel"
placeholder="请选择设备型号"
style="width: 100%"
:disabled="true"
>
<el-option
v-for="option in devModelOptions"
:key="option.id"
:label="option.name"
:value="option.id"
></el-option>
</el-select>
</el-form-item>
<el-form-item id="id200" class="form-item" label="设备接入方式:">
<el-select
clearable
filterable
v-model="busItem.devAccessMethod"
placeholder="请选择设备接入方式"
style="width: 100%"
:disabled="true"
>
<el-option label="CLD" value="CLD"></el-option>
</el-select>
</el-form-item>
<el-form-item class="form-item" label="设备mac地址:">
<MacAddressInput
v-model="busItem.mac"
:disabled="!(pageStatus == 2 && nodeLevel == 2)"
/>
</el-form-item>
</div>
</el-tab-pane>
</el-tabs>
</div>
@@ -1469,7 +1419,7 @@
</div>
</div>
<div v-else style="text-align: center; padding: 20px">
<el-icon :size="40" class="is-loading" style="color: #409eff">
<el-icon :size="40" class="instruction" style="color: #409eff">
<Loading />
</el-icon>
<p style="margin-top: 15px; font-size: 16px">指令下发中,请稍候...</p>
@@ -1503,7 +1453,8 @@ import {
updateEquipment,
updateLine,
pushLog,
queryPushResult
queryPushResult,
onlineRegister
} from '@/api/cs-device-boot/cloudDeviceEntry'
import { getTopoTemplate } from '@/api/cs-device-boot/topologyTemplate'
import { getFileUrl } from '@/api/system-boot/file'
@@ -1550,8 +1501,8 @@ const linePosition: any = dictData.getBasicData('Line_Position')
const currentGdName: any = ref('')
const affiliatiedFrontArr: any = ref([])
const voltageLevelArr = dictData.getBasicData('Dev_Voltage_Stand')
const devCLD = ref<{ id: string; name: string }[] | null>(null)
const devTypeOptions = ref<{ id: string; name: string }[] | null>(null)
const devCLD: any = ref([])
const devTypeOptions: any = []
const devTypeOptions2: any = ref([])
const treeClickCount = ref(0)
const areaTree: any = tree
@@ -2039,7 +1990,7 @@ const add = () => {
cntractNo: '',
sort: 0,
nodeProcess: '',
usageStatus: 0
usageStatus: 1
})
busBarIndex.value = (formData.value.deviceInfoList.length - 1).toString()
// 清理监测点数据
@@ -2428,7 +2379,7 @@ const next = async () => {
cntractNo: '',
sort: 0,
nodeProcess: '',
usageStatus: 0
usageStatus: 1
})
busBarIndex.value = (formData.value.deviceInfoList.length - 1).toString()
nextfalg.value = false
@@ -2870,7 +2821,7 @@ const resetAllForms = () => {
device.mac = ''
device.nodeId = ''
device.cntractNo = ''
device.usageStatus = 0
device.usageStatus = 1
device.sort = 0
})
@@ -3191,7 +3142,7 @@ const handleBusBarTabsEdit = (targetName: any, action: any) => {
cntractNo: '',
sort: 0,
nodeProcess: '',
usageStatus: 0
usageStatus: 1
})
busBarIndex.value = (formData.value.deviceInfoList.length - 1).toString()
} else if (action === 'remove') {
@@ -3400,6 +3351,24 @@ const area = async () => {
userList.value = res.data.records
})
}
const accessLoading = ref(false)
// 接入
const access = (item: any) => {
accessLoading.value = true
onlineRegister({
projectId: formData.value.projectInfoList[0].id,
nDid: item.ndid
})
.then((res: any) => {
if (res.code == 'A0000') {
ElMessage.success(res)
accessLoading.value = false
}
})
.catch(() => {
accessLoading.value = false
})
}
onMounted(() => {
nodeData.value.level = 0
@@ -3420,7 +3389,7 @@ area()
<style scoped></style>
<style lang="scss" scoped>
.is-loading {
.instruction {
animation: rotating 2s linear infinite;
}