合并冲突

This commit is contained in:
zhoumengru
2025-09-12 16:37:27 +08:00
36 changed files with 734 additions and 870 deletions

View File

@@ -8,6 +8,24 @@
:ref="'detailInfo' + index"
:disabled="disabled"
>
<template #work_mode="item">
<a-select
:dropdown-match-select-width="false"
v-model:value="workModeIdSelect"
:placeholder="'请选择' + item.label"
:disabled="disabled"
allow-clear
>
<a-select-option
:value="selectItem.value"
v-for="selectItem in workModeList"
:key="selectItem.value"
>
{{ selectItem.label }}
</a-select-option>
</a-select>
</template>
<template #role_id="item">
<a-select
@@ -110,6 +128,31 @@ export default {
data() {
return {
workModeIdSelect: undefined,
workModeList: [
{
label: '峰谷套利',
value: '1'
},
{
label: '增网配容',
value: '2'
},
{
label: '应急供电',
value: '3'
},
{
label: '并网保电',
value: '4'
},
{
label: '自定时段',
value: '5'
}
],
tip: '正在加载...',
roleIdList: [],
transferDialog: false,
@@ -132,6 +175,27 @@ export default {
},
computed: {},
watch: {
workModeIdSelect: {
handler(n) {
switch (n) {
case '1':
this.detailInfos[0].list[this.detailInfos[0].list.length-1].type='select'
break;
case '5':
this.detailInfos[0].list[this.detailInfos[0].list.length-1].type='select'
break;
default:
this.detailInfos[0].list[this.detailInfos[0].list.length-1].type='unshow'
break;
}
},
// immediate: true
},
action: {
handler(n) {
if (n === 'read') {
@@ -155,7 +219,6 @@ export default {
// this.formRules = menuFormRules
break
case 'permission':
break
case 'role':
@@ -166,6 +229,7 @@ export default {
case 'station':
this.detailInfos = stationOptions
this.formRules = stationFormRules
this.workModeIdSelect=this.detailInfos[0].ruleForm['work_mode']
break
case 'device':
@@ -312,26 +376,11 @@ export default {
add: '/insertRole',
edit: '/updateRole'
}
const { selectedRowKeys ,selectedArr} = this.$refs.treeTable[0]
console.log(selectedRowKeys,selectedArr, 'selectedRowKeys')
// const arr = selectedArr.map((item) => ({
// ...item,
const { selectedRowKeys } = this.$refs.treeTable[0]
// // 转换操作权限为布尔值
// ...this.getPerOperBoolean(item),
// // 递归处理children
// children: item.children
// ? item.children.map((child) => ({
// ...child,
// ...this.getPerOperBoolean(child),
// }))
// : []
// }))
// console.log(arr,"arr")
const data=this.filterTreeData(selectedRowKeys,this.$refs.treeTable[0].tableData)
const arr = data.map((item) => ({
const data = this.filterTreeData(selectedRowKeys, this.$refs.treeTable[0].tableData)
const arr = data.map((item) => ({
...item,
// 转换操作权限为布尔值
@@ -340,14 +389,13 @@ export default {
children: item.children
? item.children.map((child) => ({
...child,
...this.getPerOperBoolean(child),
...this.getPerOperBoolean(child)
}))
: []
}))
const paramsDate = {
...this.form,
permission:arr
permission: arr
}
if (this.action == 'edit') {
@@ -368,61 +416,57 @@ export default {
},
// 定义筛选树形数据的函数
filterTreeData(list1, list2) {
const keySet = new Set(list1);
const keySet = new Set(list1)
// 递归处理节点的函数
const filterNode = (node) => {
// 创建新节点对象(浅拷贝)
const newNode = Object.assign({}, node);
const newNode = Object.assign({}, node)
// 临时删除children属性以便处理
const { children, ...rest } = newNode;
const { children, ...rest } = newNode
// 处理子节点
let newChildren = [];
let newChildren = []
if (children) {
newChildren = children
.map((child) => filterNode(child))
.filter((child) => child !== null);
newChildren = children.map((child) => filterNode(child)).filter((child) => child !== null)
}
// 重建新节点
const resultNode = Object.assign(rest, {});
const resultNode = Object.assign(rest, {})
if (newChildren.length > 0) {
resultNode.children = newChildren;
resultNode.children = newChildren
}
// 判断是否保留节点
if (keySet.has(node.key)) {
return resultNode;
return resultNode
}
// 保留有符合条件子节点的父节点移除自身key
if (newChildren.length > 0) {
return resultNode;
return resultNode
}
return null;
};
return null
}
// 处理根节点
const result = list2
.map((node) => filterNode(node))
.filter((node) => node !== null);
const result = list2.map((node) => filterNode(node)).filter((node) => node !== null)
return result;
return result
},
getPerOperBoolean(data) {
return {
is_add: Boolean(data.is_add)? '1' : '0',
is_del: Boolean(data.is_del)? '1' : '0',
is_edit: Boolean(data.is_edit)? '1' : '0',
is_view: Boolean(data.is_view)? '1' : '0'
is_add: Boolean(data.is_add) ? '1' : '0',
is_del: Boolean(data.is_del) ? '1' : '0',
is_edit: Boolean(data.is_edit) ? '1' : '0',
is_view: Boolean(data.is_view) ? '1' : '0'
}
},
getPermissionData(keys,list){
const arr=[]
getPermissionData(keys, list) {
const arr = []
// list.forEach(item=>{
// if(keys.include(item.key)){
// arr.push(item)