|
|
|
@ -9,7 +9,6 @@ import { |
|
|
|
matrixCont, |
|
|
|
martixFieldStruct, |
|
|
|
matrixInfo, |
|
|
|
martOpter, |
|
|
|
} from "@/api/matrixapi/type"; |
|
|
|
import { getMatrixList, getMatrixField } from "@/api/matrixapi/index"; |
|
|
|
|
|
|
|
@ -28,7 +27,6 @@ const props = defineProps({ |
|
|
|
factorName: "", |
|
|
|
outcomeid: 0, |
|
|
|
outcomeName: "", |
|
|
|
list: [], |
|
|
|
}; |
|
|
|
}, |
|
|
|
}, |
|
|
|
@ -53,36 +51,20 @@ const matrixIsClick = reactive<matrixInfo>({ |
|
|
|
list: [], |
|
|
|
}); |
|
|
|
//执行监听 |
|
|
|
watch( |
|
|
|
() => props.isshow, |
|
|
|
(val: any) => { |
|
|
|
if (val) { |
|
|
|
// console.log("执行监听") |
|
|
|
searchMatrixList(); |
|
|
|
matrixIsClick.matrixid = props.data.matrixid; |
|
|
|
matrixIsClick.matrixName = props.data.matrixName; |
|
|
|
matrixIsClick.factorid = props.data.factorid; |
|
|
|
matrixIsClick.factorName = props.data.factorName; |
|
|
|
matrixIsClick.outcomeid = props.data.outcomeid; |
|
|
|
matrixIsClick.outcomeName = props.data.outcomeName; |
|
|
|
matrixIsClick.list = props.data.list ? props.data.list : []; |
|
|
|
} |
|
|
|
} |
|
|
|
); |
|
|
|
watch( |
|
|
|
() => props.data, |
|
|
|
(val: any) => { |
|
|
|
matrixIsClick.matrixid = val.matrixid; |
|
|
|
matrixIsClick.matrixName = val.matrixName; |
|
|
|
matrixIsClick.factorid = val.factorid; |
|
|
|
matrixIsClick.factorName = val.factorName; |
|
|
|
matrixIsClick.outcomeid = val.outcomeid; |
|
|
|
matrixIsClick.outcomeName = val.outcomeName; |
|
|
|
matrixIsClick.list = val.list ? val.list : []; |
|
|
|
console.log("数据变换---->", val); |
|
|
|
// console.log("执行监听") |
|
|
|
searchMatrixList(); |
|
|
|
}, |
|
|
|
(deep) => true |
|
|
|
|
|
|
|
matrixIsClick.matrixid = props.data.matrixid; |
|
|
|
matrixIsClick.matrixName = props.data.matrixName; |
|
|
|
matrixIsClick.factorid = props.data.factorid; |
|
|
|
matrixIsClick.factorName = props.data.factorName; |
|
|
|
matrixIsClick.outcomeid = props.data.outcomeid; |
|
|
|
matrixIsClick.outcomeName = props.data.outcomeName; |
|
|
|
matrixIsClick.list = props.data.list ? props.data.list : []; |
|
|
|
} |
|
|
|
); |
|
|
|
//行政组织树对照值 |
|
|
|
const searchArchiveQuery = reactive<searchMatrix>({ |
|
|
|
@ -120,7 +102,7 @@ const gainMatrixNeed = (val: any) => { |
|
|
|
loadingVal.value = true; |
|
|
|
getMatrixField({ id: val * 1 }) |
|
|
|
.then(({ data }) => { |
|
|
|
console.log("监听数据---->", data); |
|
|
|
// console.log("监听数据---->",data) |
|
|
|
factorList.value = data.factor; |
|
|
|
outcomeList.value = data.outcome; |
|
|
|
if (data.factor.length > 0) { |
|
|
|
@ -146,24 +128,19 @@ const pickmatirval = (val: matrixCont) => { |
|
|
|
const pickval = (val: martixFieldStruct) => { |
|
|
|
matrixIsClick.outcomeid = val.id * 1; |
|
|
|
matrixIsClick.outcomeName = val.name; |
|
|
|
console.log("监听数据--123-->", matrixIsClick); |
|
|
|
var isAdd = true; |
|
|
|
if (matrixIsClick.list && matrixIsClick.list.length > 0) { |
|
|
|
matrixIsClick.list.forEach((item: martOpter, index: number) => { |
|
|
|
console.log("监听数据--1-->", item.outcomeid == val.id * 1); |
|
|
|
if (item.outcomeid == val.id * 1) { |
|
|
|
matrixIsClick.list.splice(index, 1); |
|
|
|
isAdd = false; |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
let isAdd = true; |
|
|
|
matrixIsClick.list.forEach((item: any, index: number) => { |
|
|
|
if (item.outcomeid == val.id * 1) { |
|
|
|
isAdd = false; |
|
|
|
matrixIsClick.list.splice(index, 1); |
|
|
|
} |
|
|
|
}); |
|
|
|
if (isAdd) { |
|
|
|
matrixIsClick.list.push({ |
|
|
|
outcomeid: val.id * 1, |
|
|
|
outcomeName: val.name, |
|
|
|
}); |
|
|
|
} |
|
|
|
console.log("监听数据---->", matrixIsClick); |
|
|
|
}; |
|
|
|
//选择条件 |
|
|
|
const pickSelect = (val: any) => { |
|
|
|
@ -174,10 +151,10 @@ const pickSelect = (val: any) => { |
|
|
|
} |
|
|
|
}); |
|
|
|
}; |
|
|
|
watch(matrixIsClick, (val: any) => { |
|
|
|
// console.log("值改变---->",val) |
|
|
|
emits("change", val); |
|
|
|
}); |
|
|
|
// watch(matrixIsClick, (val: any) => { |
|
|
|
// console.log("值改变---->", val); |
|
|
|
// emits("change", val); |
|
|
|
// }); |
|
|
|
onMounted(() => { |
|
|
|
matrixIsClick.matrixid = props.data.matrixid; |
|
|
|
matrixIsClick.matrixName = props.data.matrixName; |
|
|
|
@ -190,26 +167,25 @@ onMounted(() => { |
|
|
|
}); |
|
|
|
/** |
|
|
|
@ 作者: 秦东 |
|
|
|
@ 时间: 2025-04-23 09:46:10 |
|
|
|
@ 功能: 判断是否已经选中 |
|
|
|
@ 时间: 2025-04-23 13:22:57 |
|
|
|
@ 功能: 判断当前选择的内容 |
|
|
|
*/ |
|
|
|
const jugdeIsTrue = (id: number) => { |
|
|
|
var isAdd = false; |
|
|
|
const judgeIsTrue = (val: number) => { |
|
|
|
let isTrue = false; |
|
|
|
if (matrixIsClick.list && matrixIsClick.list.length > 0) { |
|
|
|
matrixIsClick.list.forEach((item: martOpter) => { |
|
|
|
console.log("数据变换--111111-->", item.outcomeid == id, item.outcomeid, id); |
|
|
|
if (item.outcomeid == id) { |
|
|
|
isAdd = true; |
|
|
|
matrixIsClick.list.forEach((item: any) => { |
|
|
|
if (item.outcomeid == val) { |
|
|
|
isTrue = true; |
|
|
|
} |
|
|
|
}); |
|
|
|
} |
|
|
|
console.log("判断--111111111-->", id); |
|
|
|
return isAdd; |
|
|
|
return isTrue; |
|
|
|
}; |
|
|
|
</script> |
|
|
|
<template> |
|
|
|
<div> |
|
|
|
<el-divider content-position="left">矩阵选项</el-divider> |
|
|
|
|
|
|
|
<el-descriptions |
|
|
|
v-if="isShow" |
|
|
|
title="" |
|
|
|
@ -271,11 +247,11 @@ const jugdeIsTrue = (id: number) => { |
|
|
|
<li |
|
|
|
v-for="item in outcomeList" |
|
|
|
:key="item.id" |
|
|
|
:class="jugdeIsTrue(item.id) ? 'active' : ''" |
|
|
|
:class="judgeIsTrue(item.id) ? 'active' : ''" |
|
|
|
@click="pickval(item)" |
|
|
|
> |
|
|
|
<el-text class="mx-1">{{ item.name }}</el-text> |
|
|
|
<el-text class="mx-1">{{ item.pinyin }}</el-text> |
|
|
|
<el-text class="mx-1">{{}}{{item.pinyin}}</el-text> |
|
|
|
</li> |
|
|
|
</ul> |
|
|
|
</el-col> |
|
|
|
|