| | |
| | | rowData: {}, |
| | | }); |
| | | |
| | | const indeterminate = reactive({}); |
| | | |
| | | const almIds = ref([]); |
| | | const alarmTypeList = ref([]); |
| | | |
| | |
| | | function handleCheckAllChange (val) { |
| | | almIds.value = val ? alarmTypeList.value.map(v => v.value) : [] |
| | | isIndeterminate.value = false |
| | | Object.keys(indeterminate).forEach(v => { |
| | | indeterminate[v] = false |
| | | }); |
| | | } |
| | | function handleCheckedChange (value) { |
| | | const checkedCount = value.length |
| | |
| | | // stationName: "测试机房6", |
| | | function sendMessage() { |
| | | let params = { |
| | | // almIds: [119001], |
| | | almIds: almIds2.value, |
| | | almLevel: alarmLevel.value || undefined, |
| | | provice: provice.value || undefined, |
| | | city: city.value || undefined, |
| | |
| | | }); |
| | | } |
| | | |
| | | const alarmTypeList2 = reactive({}); |
| | | |
| | | // 查询告警类型 |
| | | async function getAlarmType() { |
| | | let res = await getPowerAlmIdType(); |
| | | let { code, data, data2 } = res; |
| | | let list = []; |
| | | if (code && data) { |
| | | list = Object.keys(data2).map((key) => ({value: key, label: data2[key]})); |
| | | list = Object.keys(data2).map((key, idx) => { |
| | | alarmTypeList2[idx] = Object.keys(data2[key]); |
| | | // ({value: key, label: data2[key]}) |
| | | indeterminate[idx] = false; |
| | | return { |
| | | value: idx, |
| | | label: key, |
| | | children: Object.keys(data2[key]), |
| | | }; |
| | | }); |
| | | } |
| | | alarmTypeList.value = list; |
| | | almIds.value = list.map(v => v.value); |
| | |
| | | } |
| | | ); |
| | | |
| | | |
| | | const almIds2 = computed(() => { |
| | | return almIds.value.map(v => { |
| | | return indeterminate[v] ? [] : alarmTypeList2[v]; |
| | | }).flat(); |
| | | }); |
| | | |
| | | watch( |
| | | () => almIds2.value, |
| | | () => { |
| | | sendMessage(); |
| | | } |
| | | ); |
| | | |
| | | // 展示数据数量 |
| | | function handleSizeChange(val) { |
| | |
| | | v-model="almIds" |
| | | @change="handleCheckedChange" |
| | | > |
| | | <el-checkbox v-for="(item, idx) in alarmTypeList" :key="'list0_' + idx" :label="item.label" :value="item.value"> |
| | | <el-checkbox v-for="(item, idx) in alarmTypeList" :indeterminate="indeterminate[idx]" :key="'list0_' + idx" :label="item.label" :value="item.value"> |
| | | </el-checkbox> |
| | | </el-checkbox-group> |
| | | </div> |