修改台账录入页面
This commit is contained in:
@@ -118,3 +118,11 @@ export function queryAllByType(params: any) {
|
|||||||
params
|
params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
//获取用户
|
||||||
|
export function selectUserList(data: any) {
|
||||||
|
return createAxios({
|
||||||
|
url: '/supervision-boot/userReport/selectUserList',
|
||||||
|
method: 'post',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -72,16 +72,20 @@ const info = (id: any) => {
|
|||||||
} else {
|
} else {
|
||||||
res.data.forEach((item: any) => {
|
res.data.forEach((item: any) => {
|
||||||
item.icon = 'el-icon-Menu'
|
item.icon = 'el-icon-Menu'
|
||||||
|
item.plevel = item.level
|
||||||
item.level = (item.level + 1) * 100
|
item.level = (item.level + 1) * 100
|
||||||
item.children.forEach((item2: any) => {
|
item.children.forEach((item2: any) => {
|
||||||
item2.icon = 'el-icon-HomeFilled'
|
item2.icon = 'el-icon-HomeFilled'
|
||||||
|
item2.plevel = item2.level
|
||||||
item2.level = (item2.level + 1) * 100
|
item2.level = (item2.level + 1) * 100
|
||||||
expanded.value.push(item2.id)
|
expanded.value.push(item2.id)
|
||||||
item2.children.forEach((item3: any) => {
|
item2.children.forEach((item3: any) => {
|
||||||
item3.icon = 'el-icon-CollectionTag'
|
item3.icon = 'el-icon-CollectionTag'
|
||||||
|
item3.plevel = item3.level
|
||||||
item3.level = (item3.level + 1) * 100
|
item3.level = (item3.level + 1) * 100
|
||||||
item3.children.forEach((item4: any) => {
|
item3.children.forEach((item4: any) => {
|
||||||
item4.icon = 'el-icon-Flag'
|
item4.icon = 'el-icon-Flag'
|
||||||
|
item4.plevel = item4.level
|
||||||
item4.level = (item4.level + 1) * 100
|
item4.level = (item4.level + 1) * 100
|
||||||
item4.children.forEach((item5: any) => {
|
item4.children.forEach((item5: any) => {
|
||||||
item5.icon = 'el-icon-OfficeBuilding'
|
item5.icon = 'el-icon-OfficeBuilding'
|
||||||
@@ -89,12 +93,15 @@ const info = (id: any) => {
|
|||||||
item5.level = (item5.level == 7 ? 4 : item5.level) * 100
|
item5.level = (item5.level == 7 ? 4 : item5.level) * 100
|
||||||
item5.children.forEach((item6: any) => {
|
item5.children.forEach((item6: any) => {
|
||||||
item6.icon = 'el-icon-Film'
|
item6.icon = 'el-icon-Film'
|
||||||
|
item6.plevel = item6.level
|
||||||
item6.level = (item6.level + 1) * 100
|
item6.level = (item6.level + 1) * 100
|
||||||
item6.children.forEach((item7: any) => {
|
item6.children.forEach((item7: any) => {
|
||||||
item7.icon = 'el-icon-Share'
|
item7.icon = 'el-icon-Share'
|
||||||
|
item7.plevel = item7.level
|
||||||
item7.level = (item7.level + 1) * 100
|
item7.level = (item7.level + 1) * 100
|
||||||
item7.children.forEach((item8: any) => {
|
item7.children.forEach((item8: any) => {
|
||||||
item8.icon = 'el-icon-Location'
|
item8.icon = 'el-icon-Location'
|
||||||
|
item8.plevel = item8.level
|
||||||
item8.level = (item8.level + 1) * 100
|
item8.level = (item8.level + 1) * 100
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -89,6 +89,7 @@
|
|||||||
:rules="{ required: true, message: '请输入项目名称', trigger: 'blur' }"
|
:rules="{ required: true, message: '请输入项目名称', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="AddProjectBO.projectParam.name"
|
v-model="AddProjectBO.projectParam.name"
|
||||||
:disabled="
|
:disabled="
|
||||||
nodeLevel > 100 && (pageStatus == 3 || pageStatus == 2)
|
nodeLevel > 100 && (pageStatus == 3 || pageStatus == 2)
|
||||||
@@ -140,6 +141,7 @@
|
|||||||
:rules="[{ required: true, message: '请选择行政区域', trigger: 'change' }]"
|
:rules="[{ required: true, message: '请选择行政区域', trigger: 'change' }]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="AddProjectBO.provinceParam.name"
|
v-model="AddProjectBO.provinceParam.name"
|
||||||
placeholder="请选择行政区域"
|
placeholder="请选择行政区域"
|
||||||
style="width: 100%"
|
style="width: 100%"
|
||||||
@@ -241,9 +243,9 @@
|
|||||||
:rules="{ required: true, message: '请输入变电站名称', trigger: 'blur' }"
|
:rules="{ required: true, message: '请输入变电站名称', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="AddProjectBO.subStationParam.name"
|
v-model="AddProjectBO.subStationParam.name"
|
||||||
placeholder="请选择变电站"
|
placeholder="请选择变电站"
|
||||||
filterable
|
|
||||||
@change="subStationChange"
|
@change="subStationChange"
|
||||||
:disabled="
|
:disabled="
|
||||||
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
||||||
@@ -318,6 +320,7 @@
|
|||||||
:rules="[{ required: true, message: '选中电压等级', trigger: 'change' }]"
|
:rules="[{ required: true, message: '选中电压等级', trigger: 'change' }]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="AddProjectBO.subStationParam.scale"
|
v-model="AddProjectBO.subStationParam.scale"
|
||||||
:disabled="
|
:disabled="
|
||||||
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
nodeLevel > 400 && (pageStatus == 3 || pageStatus == 2)
|
||||||
@@ -401,6 +404,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.comFlag"
|
v-model="item.comFlag"
|
||||||
placeholder="请选择通讯状态"
|
placeholder="请选择通讯状态"
|
||||||
:disabled="true"
|
:disabled="true"
|
||||||
@@ -422,6 +426,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.frontType"
|
v-model="item.frontType"
|
||||||
placeholder="请选择通讯类型"
|
placeholder="请选择通讯类型"
|
||||||
:popper-append-to-body="false"
|
:popper-append-to-body="false"
|
||||||
@@ -448,6 +453,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.devModel"
|
v-model="item.devModel"
|
||||||
placeholder="请选择终端模型"
|
placeholder="请选择终端模型"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -473,6 +479,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.devDataType"
|
v-model="item.devDataType"
|
||||||
placeholder="请选择数据模型"
|
placeholder="请选择数据模型"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -496,6 +503,7 @@
|
|||||||
:rules="[{ required: true, message: '请选择厂家', trigger: 'change' }]"
|
:rules="[{ required: true, message: '请选择厂家', trigger: 'change' }]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.manufacturer"
|
v-model="item.manufacturer"
|
||||||
placeholder="请选择厂家"
|
placeholder="请选择厂家"
|
||||||
:popper-append-to-body="false"
|
:popper-append-to-body="false"
|
||||||
@@ -522,6 +530,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.nodeId"
|
v-model="item.nodeId"
|
||||||
placeholder="请选择所属前置机"
|
placeholder="请选择所属前置机"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -547,6 +556,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.callFlag"
|
v-model="item.callFlag"
|
||||||
placeholder="请选择召唤标志"
|
placeholder="请选择召唤标志"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -604,6 +614,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.electroplate"
|
v-model="item.electroplate"
|
||||||
placeholder="请选择电度功能"
|
placeholder="请选择电度功能"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -689,6 +700,7 @@
|
|||||||
]"
|
]"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="item.devType"
|
v-model="item.devType"
|
||||||
placeholder="请选择终端型号"
|
placeholder="请选择终端型号"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -842,6 +854,7 @@
|
|||||||
:rules="{ required: true, message: '请输入母线编号', trigger: 'blur' }"
|
:rules="{ required: true, message: '请输入母线编号', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="busItem.num"
|
v-model="busItem.num"
|
||||||
placeholder="请选择母线编号"
|
placeholder="请选择母线编号"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -871,6 +884,7 @@
|
|||||||
:rules="{ required: true, message: '请选择电压等级', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择电压等级', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="busItem.scale"
|
v-model="busItem.scale"
|
||||||
value-key="value"
|
value-key="value"
|
||||||
placeholder="请选择电压等级"
|
placeholder="请选择电压等级"
|
||||||
@@ -902,6 +916,7 @@
|
|||||||
:rules="{ required: true, message: '请选择母线类型', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择母线类型', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="busItem.model"
|
v-model="busItem.model"
|
||||||
placeholder="请选择母线类型"
|
placeholder="请选择母线类型"
|
||||||
:disabled="
|
:disabled="
|
||||||
@@ -1020,6 +1035,7 @@
|
|||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.num"
|
v-model="lineItem.num"
|
||||||
placeholder="请选择序号"
|
placeholder="请选择序号"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1047,6 +1063,7 @@
|
|||||||
:rules="{ required: true, message: '请选择接线类型', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择接线类型', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.ptType"
|
v-model="lineItem.ptType"
|
||||||
placeholder="请选择接线类型"
|
placeholder="请选择接线类型"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1078,6 +1095,7 @@
|
|||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.powerFlag"
|
v-model="lineItem.powerFlag"
|
||||||
placeholder="请选择测量点性质"
|
placeholder="请选择测量点性质"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1096,16 +1114,17 @@
|
|||||||
v-if="lineItem.powerFlag == 1"
|
v-if="lineItem.powerFlag == 1"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="lineItem.newStationId"
|
filterable
|
||||||
|
v-model="lineItem.objId"
|
||||||
placeholder="请选择用户名称"
|
placeholder="请选择用户名称"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
clearable
|
clearable
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="option in newStationIdArr"
|
v-for="option in newStationIdArr"
|
||||||
:key="option.name"
|
:key="option.id"
|
||||||
:label="option.name"
|
:label="option.projectName"
|
||||||
:value="option.value"
|
:value="option.id"
|
||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -1192,6 +1211,7 @@
|
|||||||
:rules="{ required: true, message: '请选择测点间隔', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择测点间隔', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.timeInterval"
|
v-model="lineItem.timeInterval"
|
||||||
placeholder="请选择测量点间隔"
|
placeholder="请选择测量点间隔"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1278,6 +1298,7 @@
|
|||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.loadType"
|
v-model="lineItem.loadType"
|
||||||
placeholder="请选择干扰源类型"
|
placeholder="请选择干扰源类型"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1300,17 +1321,19 @@
|
|||||||
[busBarIndex] +
|
[busBarIndex] +
|
||||||
'.lineParam.' +
|
'.lineParam.' +
|
||||||
lIndex +
|
lIndex +
|
||||||
'.businessType'
|
'.bigObjType'
|
||||||
"
|
"
|
||||||
:rules="{ required: true, message: '请选择用户大类', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择用户大类', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="lineItem.businessType"
|
filterable
|
||||||
|
v-model="lineItem.bigObjType"
|
||||||
placeholder="请选择用户大类"
|
placeholder="请选择用户大类"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
|
@change="lineItem.smallObjType = ''"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="option in industryTypeArr"
|
v-for="option in bigList"
|
||||||
:key="option.id"
|
:key="option.id"
|
||||||
:label="option.name"
|
:label="option.name"
|
||||||
:value="option.id"
|
:value="option.id"
|
||||||
@@ -1327,17 +1350,20 @@
|
|||||||
[busBarIndex] +
|
[busBarIndex] +
|
||||||
'.lineParam.' +
|
'.lineParam.' +
|
||||||
lIndex +
|
lIndex +
|
||||||
'.businessType'
|
'.smallObjType'
|
||||||
"
|
"
|
||||||
:rules="{ required: true, message: '请选择用户小类', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择用户小类', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
v-model="lineItem.businessType"
|
filterable
|
||||||
|
v-model="lineItem.smallObjType"
|
||||||
placeholder="请选择用户小类"
|
placeholder="请选择用户小类"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
>
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="option in industryTypeArr"
|
v-for="option in bigList.filter(
|
||||||
|
item => item.id == lineItem.bigObjType
|
||||||
|
)[0]?.children"
|
||||||
:key="option.id"
|
:key="option.id"
|
||||||
:label="option.name"
|
:label="option.name"
|
||||||
:value="option.id"
|
:value="option.id"
|
||||||
@@ -1359,6 +1385,7 @@
|
|||||||
:rules="{ required: true, message: '请选择行业类型', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择行业类型', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select
|
||||||
|
filterable
|
||||||
v-model="lineItem.businessType"
|
v-model="lineItem.businessType"
|
||||||
placeholder="请选择行业类型"
|
placeholder="请选择行业类型"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1491,7 +1518,7 @@
|
|||||||
"
|
"
|
||||||
:rules="{ required: true, message: '请选择分类等级', trigger: 'blur' }"
|
:rules="{ required: true, message: '请选择分类等级', trigger: 'blur' }"
|
||||||
>
|
>
|
||||||
<el-select
|
<el-select filterable
|
||||||
v-model="lineItem.calssificationGrade"
|
v-model="lineItem.calssificationGrade"
|
||||||
placeholder="请选择分类等级"
|
placeholder="请选择分类等级"
|
||||||
:disabled="pageStatus == 1"
|
:disabled="pageStatus == 1"
|
||||||
@@ -1611,7 +1638,8 @@ import {
|
|||||||
updateTerminal,
|
updateTerminal,
|
||||||
addTerminal,
|
addTerminal,
|
||||||
selectDown,
|
selectDown,
|
||||||
queryAllByType
|
queryAllByType,
|
||||||
|
selectUserList
|
||||||
} from '@/api/device-boot/Business'
|
} from '@/api/device-boot/Business'
|
||||||
import { useDictData } from '@/stores/dictData'
|
import { useDictData } from '@/stores/dictData'
|
||||||
import { ref, reactive, onMounted } from 'vue'
|
import { ref, reactive, onMounted } from 'vue'
|
||||||
@@ -1649,7 +1677,7 @@ const affiliatiedFrontArr: any = ref([])
|
|||||||
const comTypeStatusArr = dictData.getBasicData('Front_Type')
|
const comTypeStatusArr = dictData.getBasicData('Front_Type')
|
||||||
const factoryArr = dictData.getBasicData('Dev_Manufacturers')
|
const factoryArr = dictData.getBasicData('Dev_Manufacturers')
|
||||||
const voltageLevelArr = dictData.getBasicData('Dev_Voltage_Stand')
|
const voltageLevelArr = dictData.getBasicData('Dev_Voltage_Stand')
|
||||||
console.log('🚀 ~ voltageLevelArr:', voltageLevelArr)
|
|
||||||
const typeArr = dictData.getBasicData('Dev_Type')
|
const typeArr = dictData.getBasicData('Dev_Type')
|
||||||
const industryTypeArr = dictData.getBasicData('Business_Type')
|
const industryTypeArr = dictData.getBasicData('Business_Type')
|
||||||
const loadTypeArr = dictData.getBasicData('Interference_Source')
|
const loadTypeArr = dictData.getBasicData('Interference_Source')
|
||||||
@@ -1666,11 +1694,12 @@ const busBarType = ref([
|
|||||||
{ name: '实际母线', value: 0 },
|
{ name: '实际母线', value: 0 },
|
||||||
{ name: '虚拟母线', value: 1 }
|
{ name: '虚拟母线', value: 1 }
|
||||||
])
|
])
|
||||||
|
const bigList: any = ref([])
|
||||||
|
const smallList: any = ref([])
|
||||||
const comStatusArr = ref([
|
const comStatusArr = ref([
|
||||||
{ name: '中断', value: 0 },
|
{ name: '中断', value: 0 },
|
||||||
{ name: '正常', value: 1 }
|
{ name: '正常', value: 1 }
|
||||||
])
|
])
|
||||||
|
|
||||||
/**终端模型选项 */
|
/**终端模型选项 */
|
||||||
const terminalModelArr = ref([
|
const terminalModelArr = ref([
|
||||||
{ name: '实际终端', value: 1 },
|
{ name: '实际终端', value: 1 },
|
||||||
@@ -1743,6 +1772,10 @@ const busBarDetail = ref({
|
|||||||
})
|
})
|
||||||
/**监测点详情 */
|
/**监测点详情 */
|
||||||
const monitorPointDetail: any = ref({
|
const monitorPointDetail: any = ref({
|
||||||
|
/**用户大类 */
|
||||||
|
bigObjType: '',
|
||||||
|
/**用户小类 */
|
||||||
|
smallObjType: '',
|
||||||
/**行业类型 */
|
/**行业类型 */
|
||||||
businessType: '',
|
businessType: '',
|
||||||
/**CT变比 */
|
/**CT变比 */
|
||||||
@@ -1755,7 +1788,7 @@ const monitorPointDetail: any = ref({
|
|||||||
devCapacity: '',
|
devCapacity: '',
|
||||||
/**短路容量 */
|
/**短路容量 */
|
||||||
shortCapacity: '',
|
shortCapacity: '',
|
||||||
newStationId: '',
|
objId: '',
|
||||||
/**基准容量 */
|
/**基准容量 */
|
||||||
standardCapacity: '',
|
standardCapacity: '',
|
||||||
/**监测点id */
|
/**监测点id */
|
||||||
@@ -1849,7 +1882,7 @@ const deviceBODetail: any = ref({
|
|||||||
/**终端型号 */
|
/**终端型号 */
|
||||||
devType: '',
|
devType: '',
|
||||||
/**ip */
|
/**ip */
|
||||||
ip: '255.255.255.255',
|
ip: '',
|
||||||
/**通讯状态 */
|
/**通讯状态 */
|
||||||
comFlag: 0,
|
comFlag: 0,
|
||||||
/**通讯类型 */
|
/**通讯类型 */
|
||||||
@@ -2100,6 +2133,36 @@ const addProject = () => {
|
|||||||
nodeLevel.value = 100
|
nodeLevel.value = 100
|
||||||
AddProjectBO.value.projectParam = { name: '', sort: 0 }
|
AddProjectBO.value.projectParam = { name: '', sort: 0 }
|
||||||
}
|
}
|
||||||
|
const category = () => {
|
||||||
|
queryAllByType({ type: 0, pid: 0 }).then(res => {
|
||||||
|
bigList.value = convertToTree(res.data)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 组装用户大小类
|
||||||
|
const convertToTree = (data: any) => {
|
||||||
|
const nodeMap: any = {}
|
||||||
|
const roots: any = []
|
||||||
|
|
||||||
|
// 第一步:将所有节点存储到一个以id为键的映射中
|
||||||
|
data.forEach(item => {
|
||||||
|
nodeMap[item.id] = { ...item, children: [] }
|
||||||
|
})
|
||||||
|
|
||||||
|
// 第二步:遍历数据,根据pid找到对应的父节点,并将当前节点添加到父节点的children数组中
|
||||||
|
data.forEach(item => {
|
||||||
|
const parentId = item.pid
|
||||||
|
if (parentId === '0') {
|
||||||
|
roots.push(nodeMap[item.id])
|
||||||
|
} else {
|
||||||
|
const parent = nodeMap[parentId]
|
||||||
|
if (parent) {
|
||||||
|
parent.children.push(nodeMap[item.id])
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
return roots
|
||||||
|
}
|
||||||
// 修改
|
// 修改
|
||||||
const update = () => {
|
const update = () => {
|
||||||
if (Object.keys(nodeData.value).length == 0) {
|
if (Object.keys(nodeData.value).length == 0) {
|
||||||
@@ -2127,6 +2190,11 @@ const update = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pageStatus.value = 3
|
pageStatus.value = 3
|
||||||
|
// 使用 scrollTo 方法,并启用平滑滚动
|
||||||
|
scrollBox.scrollTo({
|
||||||
|
top: scrollBox.scrollHeight, // 滚动到内容的最底部
|
||||||
|
behavior: 'smooth' // 启用平滑滚动动画
|
||||||
|
})
|
||||||
}
|
}
|
||||||
// 删除
|
// 删除
|
||||||
const remove = () => {
|
const remove = () => {
|
||||||
@@ -2424,7 +2492,7 @@ const queryNodeContent = () => {
|
|||||||
}
|
}
|
||||||
let data = {
|
let data = {
|
||||||
id: nodeData.value.id,
|
id: nodeData.value.id,
|
||||||
level: nodeData.value.plevel == 7 ? '700' : nodeLevel.value
|
level: nodeData.value.plevel * 100
|
||||||
}
|
}
|
||||||
queryTerminal(data).then(res => {
|
queryTerminal(data).then(res => {
|
||||||
// console.log("内容详情", res);
|
// console.log("内容详情", res);
|
||||||
@@ -2940,7 +3008,7 @@ const area = () => {
|
|||||||
deviceBODetail.value.nextTimeCheck = year + 1 + '-' + month + '-' + (day - 1 > 10 ? day - 1 : '0' + (day - 1))
|
deviceBODetail.value.nextTimeCheck = year + 1 + '-' + month + '-' + (day - 1 > 10 ? day - 1 : '0' + (day - 1))
|
||||||
}
|
}
|
||||||
const setDown = () => {
|
const setDown = () => {
|
||||||
selectDown().then(res => {
|
selectUserList({}).then(res => {
|
||||||
newStationIdArr.value = res.data
|
newStationIdArr.value = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -2957,6 +3025,7 @@ onMounted(() => {
|
|||||||
} else {
|
} else {
|
||||||
setDown()
|
setDown()
|
||||||
}
|
}
|
||||||
|
category()
|
||||||
})
|
})
|
||||||
area()
|
area()
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user