|
@@ -103,7 +103,7 @@
|
|
|
</el-radio-group>
|
|
|
</el-form-item>
|
|
|
<template v-if="form.objType" >
|
|
|
- <el-form-item label="台账对象" prop="objCode">
|
|
|
+ <el-form-item label="台账对象" prop="objCode" v-if="isObjCodeVisible">
|
|
|
<template v-if="form.objType === '1'">
|
|
|
<treeselect v-model="form.objCode" :options="objCodeOptions" :show-count="true" placeholder="请选择具体数据" @select="handleSelect" :disabled="isViewOnly"/>
|
|
|
</template>
|
|
@@ -264,6 +264,8 @@ export default {
|
|
|
// 是否显示弹出层
|
|
|
open: false,
|
|
|
addOrUpdateOpen: false,
|
|
|
+ // 控制台账对象显示的变量
|
|
|
+ isObjCodeVisible: false,
|
|
|
//能源设施全部数据
|
|
|
AllCode: [],
|
|
|
objCodeOptions: [],
|
|
@@ -333,8 +335,17 @@ export default {
|
|
|
this.updateObjCodeOptions(); // 当 areaCode 变化时更新 objCodeOptions
|
|
|
}
|
|
|
},
|
|
|
+
|
|
|
'form.objType' (newVal) {
|
|
|
- this.showObjCode = !!newVal
|
|
|
+ if (!this.isViewOnly) {
|
|
|
+ this.isObjCodeVisible = !!newVal; // 当对象类型有值且不在查看模式时,显示台账对象输入框
|
|
|
+ }
|
|
|
+ },
|
|
|
+ 'isViewOnly' (newVal) {
|
|
|
+ if (newVal) {
|
|
|
+ this.isObjCodeVisible = false; // 进入查看模式时,隐藏台账对象输入框
|
|
|
+ this.form.objCode = null; // 清空台账对象数据
|
|
|
+ }
|
|
|
},
|
|
|
// 根据名称筛选区域树
|
|
|
areaName (val) {
|
|
@@ -509,16 +520,12 @@ export default {
|
|
|
handleSelect(value) {
|
|
|
console.log("数据自动填补", value);
|
|
|
if (value && value.id && value.label) {
|
|
|
- // 将 label 值填入“目标对象”输入框
|
|
|
this.form.objName = value.label;
|
|
|
- // 找到选中的id所在的层级路径
|
|
|
const pathLabels = this.findPathLabels(this.objCodeOptions, value.id);
|
|
|
if (pathLabels) {
|
|
|
- // 如果路径长度大于1,即包含父级路径,则去除当前层级
|
|
|
if (pathLabels.length > 1) {
|
|
|
this.form.insLocation = pathLabels.slice(0, -1).join('/');
|
|
|
} else {
|
|
|
- // 如果路径长度为1,即只有当前层级,则直接使用当前层级的label
|
|
|
this.form.insLocation = pathLabels[0];
|
|
|
}
|
|
|
}
|
|
@@ -561,15 +568,15 @@ export default {
|
|
|
this.form = response.data
|
|
|
console.log('this.form', this.form)
|
|
|
this.form.objCode = this.form.objCode ? this.form.objCode.split(',') : []
|
|
|
- // 调用 changeObjOptions 来更新 AllCode
|
|
|
- console.log("查看",this.form.objType)
|
|
|
- // 确保在数据加载完成后调用 changeObjOptions
|
|
|
this.$nextTick(() => {
|
|
|
this.changeObjOptions(this.form.objType);
|
|
|
});
|
|
|
+ this.isObjCodeVisible = false; // 查看模式下隐藏台账对象输入框
|
|
|
this.open = true
|
|
|
this.title = '查看设备台账'
|
|
|
this.isViewOnly = true // 设置为查看模式
|
|
|
+
|
|
|
+
|
|
|
})
|
|
|
},
|
|
|
/** 提交按钮 */
|