@@ -100,6 +47,60 @@
+
+
+
+
+ -
+ {{
+ active_row.input_indicator_tag
+ ? firstOptionsLoading
+ ? "查询中"
+ : "未查询到相关指标范围数据"
+ : "请输入查询"
+ }}
+
+
+
+
+ -
+ {{ lastOptionsLoading ? "查询中" : "未查询到相关指标标签" }}
+
+
+
+
@@ -107,7 +108,6 @@
import { reactive, watch, nextTick, computed, ref, onMounted } from "vue";
import { ElMessage } from "element-plus";
import axios from "@/request/http.js";
-import { delay } from "@/components/env";
const props = defineProps({
indicator_expression: {
@@ -183,12 +183,7 @@ watch(
indicator_scope: "",
indicator_tag: "",
oldQuery: "",
- firstOptionsLoading: false,
- firstOptions: [],
- lastOptionsLoading: false,
- lastOptions: [],
cname: "",
- visible: false,
is_required: 1,
is_linkage: 0,
});
@@ -197,18 +192,42 @@ watch(
state.form.warningScopeRows = arr;
}
);
+// 当前操作input下标
+const active_index = ref("");
+// 计算:当前操作input所在行数据源
+const active_row = computed(() => {
+ if (active_index.value === "") return null;
+ return state.form.warningScopeRows[active_index.value];
+});
+// 下拉是否可见
+const visible = ref(false);
+// 第一层下拉
+const firstOptions = ref([]);
+// 第一层下拉加载动画
+const firstOptionsLoading = ref(false);
+// 最后一层下拉
+const lastOptions = ref([]);
+// 最后一层的下拉加载动画
+const lastOptionsLoading = ref(false);
+// 计算:根据聚焦的input 获取当前查询的关键词
+const query = computed(() => {
+ return (index) => {
+ const { input_indicator_tag, oldQuery } = state.form.warningScopeRows[index];
+ return inputType.value ? input_indicator_tag : oldQuery;
+ };
+});
// 选择第一级,获取第二级数据
const chooseTreeFirst = (index, data, isInfo = false) => {
+ lastOptionsLoading.value = true;
let i = "";
// 是否是父组件传过来的默认展示数据
if (!isInfo) {
- state.form.warningScopeRows[index].lastOptionsLoading = true;
inputRef.value[index].focus();
- i = state.form.warningScopeRows[index].firstOptions.findIndex((e) => e.label == data.label);
- state.form.warningScopeRows[index].firstOptions[i].isLoading = true;
+ i = firstOptions.value.findIndex((e) => e.label == data.label);
+ firstOptions.value[i].isLoading = true;
state.form.warningScopeRows[index].indicator_tag = "";
state.form.warningScopeRows[index].indicator_scope = data.label;
- state.form.warningScopeRows[index].lastOptions = [];
+ lastOptions.value = [];
}
const params = {
label_name: data.label,
@@ -217,15 +236,15 @@ const chooseTreeFirst = (index, data, isInfo = false) => {
.get("/v1/api/prometheus", { params })
.then((res) => {
if (res.data.code == 200) {
- state.form.warningScopeRows[index].lastOptions = res.data.data?.list || [];
+ lastOptions.value = res.data.data?.list || [];
} else {
ElMessage.error(res.data.msg);
}
})
.finally(() => {
+ lastOptionsLoading.value = false;
if (i === "") return;
- state.form.warningScopeRows[index].lastOptionsLoading = false;
- state.form.warningScopeRows[index].firstOptions[i].isLoading = false;
+ firstOptions.value[i].isLoading = false;
});
};
// 获取第一级数据
@@ -243,52 +262,57 @@ const getDataTreeLevelFirst = () => {
ElMessage.error(res.data.msg);
}
});
+ for (let i = 0; i < 1000; i++) {
+ dataTreeDefault.value.push({
+ label: "total" + i,
+ value: "total" + i,
+ });
+ }
};
let timer = null;
const inputType = ref(false);
-const TreeFilter = (index, type) => {
- let options = dataTreeDefault.value;
- const { input_indicator_tag, oldQuery } = state.form.warningScopeRows[index];
- state.form.warningScopeRows[index].firstOptions = [];
+const TreeFilter = async (index) => {
+ const { input_indicator_tag } = active_row.value;
// 如果没有输入,或者清空输入,则清除已选中的所有东西和所有下拉数据,并返回
if (input_indicator_tag == "") {
- state.form.warningScopeRows[index].lastOptions = [];
+ lastOptions.value = [];
state.form.warningScopeRows[index].indicator_scope = "";
state.form.warningScopeRows[index].indicator_tag = "";
state.form.warningScopeRows[index].oldQuery = "";
return;
}
- // 如果只是聚焦,则使用旧的输入查询过滤,如果是输入,则使用输入的内容过滤
- let query = type ? input_indicator_tag : oldQuery;
+ let q = query.value(index);
// 提升性能问题使用for循环遍历
- for (let i = 0; i < options.length; i++) {
+ for (let i = 0; i < dataTreeDefault.value.length; i++) {
// 不符合直接跳出当次循环
- if (!options[i].label.includes(query)) continue;
- state.form.warningScopeRows[index].firstOptions.push({
- ...options[i],
+ if (!dataTreeDefault.value[i].label.includes(q)) continue;
+ firstOptions.value.push({
+ ...dataTreeDefault.value[i],
// 高亮显示和输入匹配的项
- label_html: options[i].label.replaceAll(
- input_indicator_tag,
- `
${input_indicator_tag}`
- ),
+ label_html: dataTreeDefault.value[i].label.replaceAll(q, `
${q}`),
});
}
// 如果第一级下拉没有数据,则隐藏第二级下拉,并清除当前现在的指标范围
- if (state.form.warningScopeRows[index].firstOptions.length == 0) {
- state.form.warningScopeRows[index].lastOptions = [];
+ if (firstOptions.value.length == 0) {
+ lastOptions.value = [];
state.form.warningScopeRows[index].indicator_scope = "";
}
// 结束查询中
- state.form.warningScopeRows[index].firstOptionsLoading = false;
+ firstOptionsLoading.value = false;
// 查询后第一级滚动条滚动到顶部
- first_options_lists.value[index].scrollTop = 0;
+ first_options_lists.value.scrollTop = 0;
};
// 输入模糊查询数据
const inputLabel = async (index, type) => {
- // 第一级显示查询中
- state.form.warningScopeRows[index].firstOptionsLoading = true;
+ visible.value = false;
+ firstOptions.value = [];
+ await nextTick();
+ active_index.value = index;
// 记录当前是聚焦还是输入
inputType.value = type;
+ visible.value = true;
+ // 第一级显示查询中
+ firstOptionsLoading.value = true;
// 用户输入节流
if (timer) {
clearTimeout(timer);
@@ -296,9 +320,8 @@ const inputLabel = async (index, type) => {
}
timer = setTimeout(
() => {
- state.form.warningScopeRows[index].visible = true;
// 过滤下拉数据
- TreeFilter(index, type);
+ TreeFilter(index);
},
// 如果是聚集input的时候不需要节流,输入节流
type ? 500 : 0
@@ -306,18 +329,17 @@ const inputLabel = async (index, type) => {
};
// 失去焦点是隐藏popper
const blurInput = (index) => {
- const { input_indicator_tag, oldQuery } = state.form.warningScopeRows[index];
// 判断是聚焦失去焦点还是输入后失去焦点,输入后失去焦点记录输入的内容,聚焦失去焦点还是使用之前的记录
- state.form.warningScopeRows[index].oldQuery = inputType.value ? input_indicator_tag : oldQuery;
+ state.form.warningScopeRows[index].oldQuery = query.value(index);
// 隐藏popper
- state.form.warningScopeRows[index].visible = false;
+ visible.value = false;
};
// 选择范围中的属性
-const chooseTreeLast = async (last, index, type) => {
- isInput.value = type;
- inputRef.value[index].blur();
+const chooseTreeLast = (last, index) => {
state.form.warningScopeRows[index].input_indicator_tag = last;
state.form.warningScopeRows[index].indicator_tag = last;
+ isInput.value = false;
+ inputRef.value[index].blur();
};
// form表单元素
const form_ref = ref(null);
@@ -353,12 +375,7 @@ watch(
input_indicator_tag: e.indicator_tag,
indicator_scope: e.indicator_scope,
indicator_tag: e.indicator_tag,
- firstOptionsLoading: false,
- firstOptions: [],
- lastOptionsLoading: false,
- lastOptions: [],
oldQuery: e.indicator_scope,
- visible: false,
cname: e.cname,
is_required: e.is_required,
is_linkage: e.is_linkage,
@@ -399,6 +416,8 @@ defineExpose({
height: 240px;
display: flex;
min-width: 100%;
+ content-visibility: auto;
+ contain-intrinsic-size: 34px;
ul {
min-width: 180px;
height: 100%;
@@ -411,6 +430,7 @@ defineExpose({
// max-width: 400px;
word-break: break-all;
transition: all 300ms;
+ font-size: 12px;
&:hover {
background-color: #f1f1f1;
}
diff --git a/src/page/main/forewarning/rule-set/add/index.vue b/src/page/main/forewarning/rule-set/add/index.vue
index 96e4927d5700b1a33064851cf20b8e80e4203f8b..cfb243a9b92b51525db7a3e67a25871cc6131af5 100644
--- a/src/page/main/forewarning/rule-set/add/index.vue
+++ b/src/page/main/forewarning/rule-set/add/index.vue
@@ -26,10 +26,11 @@ const Cancle = () => {
};
const add_form = ref(null);
const SaveSubmit = async () => {
- let res = await add_form.value.Submit();
+ let { res, cb } = await add_form.value.Submit();
if (!res) return;
Save(res, {}, () => {
Cancle();
+ cb && cb();
});
};
diff --git a/src/page/main/forewarning/rule-set/detail/index.vue b/src/page/main/forewarning/rule-set/detail/index.vue
index e15872d50fd210ecb18142236254607605a7dcc6..317e832e10854f03a2ab8283520f08dd36c96280 100644
--- a/src/page/main/forewarning/rule-set/detail/index.vue
+++ b/src/page/main/forewarning/rule-set/detail/index.vue
@@ -13,7 +13,7 @@
-
+
@@ -125,6 +126,9 @@ const labelData = [
const info = ref({});
const warning_scope_label = ref([]);
const watning_scope_data = ref({});
+const watning_scope_data_key = computed(() => {
+ return Object.keys(watning_scope_data.value);
+});
const advanced_label = [
[
{
@@ -210,11 +214,12 @@ const getInfoData = () => {
data.alert_range.forEach((e) => {
warning_scope_label.value.push([
{
- prop: e.name,
+ prop: e.chinese_name || e.name,
label: e.chinese_name || e.name,
},
]);
- watning_scope_data.value[e.name] = e.value == ".*" ? "全部" : `${selectRule[e.compare]} ${e.value}`;
+ watning_scope_data.value[e.chinese_name || e.name] =
+ e.value == ".*" ? "全部" : `${selectRule[e.compare]} ${e.value}`;
});
let isEmpty = Empty(data.alert_rule_type, ruleTypeOptions.value);
if (!isEmpty) {
@@ -230,7 +235,11 @@ const getInfoData = () => {
ruleRows.value = data.alert_condition.map((e) => {
let min = e.thresholds_min + unit;
if (e.thresholds_min === undefined) {
- if (ruleTypeOptions.value[data.alert_rule_type].down !== "") {
+ if (
+ data.alert_rule_type &&
+ ruleTypeOptions.value[data.alert_rule_type] &&
+ ruleTypeOptions.value[data.alert_rule_type]?.down !== ""
+ ) {
min = ruleTypeOptions.value[data.alert_rule_type].down + unit;
} else {
min = WIELESS_SMALL;
@@ -238,10 +247,14 @@ const getInfoData = () => {
}
let max = e.thresholds_max + unit;
if (e.thresholds_max === undefined) {
- if (ruleTypeOptions.value[data.alert_rule_type].up !== "") {
+ if (
+ data.alert_rule_type &&
+ ruleTypeOptions.value[data.alert_rule_type] &&
+ ruleTypeOptions.value[data.alert_rule_type].up !== ""
+ ) {
max = ruleTypeOptions.value[data.alert_rule_type].up + unit;
} else {
- max = WIELESS_SMALL;
+ max = WIELESS_BIG;
}
}
return {
diff --git a/src/page/main/forewarning/rule-set/edit/index.vue b/src/page/main/forewarning/rule-set/edit/index.vue
index 0f134bf0c1b325d3e4c968e1128643a67451aecd..856efadaa011aaac58c8c98e1cb71d94a789e71c 100644
--- a/src/page/main/forewarning/rule-set/edit/index.vue
+++ b/src/page/main/forewarning/rule-set/edit/index.vue
@@ -32,9 +32,8 @@ const Cancle = () => {
};
const add_form = ref(null);
const SaveSubmit = async () => {
- let res = await add_form.value.Submit();
+ let { res, cb } = await add_form.value.Submit();
if (!res) return;
- console.log("res: ", res);
Save(res, { id }, () => {
Cancle();
});
@@ -65,20 +64,20 @@ const getInfoData = () => {
warn_indicator: data.metric_config_id,
warn_target: findTypeBySecond(data.class_id)?.class_id || "",
rule_type: data.alert_rule_type,
+ warning_scpoe_form:
+ data.alert_range?.map((e) => {
+ return {
+ ...e,
+ value: e.value == ".*" ? "" : e.value,
+ select: e.value == ".*" ? "all" : e.compare,
+ options: [],
+ };
+ }) || [],
},
};
if (isEmpty) {
obj.type_com_ref.risk_level = data.alert_condition[0].risk_level;
} else {
- obj.type_com_ref.warning_scpoe_form =
- data.alert_range?.map((e) => {
- return {
- ...e,
- value: e.value == ".*" ? "" : e.value,
- select: e.value == ".*" ? "all" : e.compare,
- options: [],
- };
- }) || [];
obj.type_com_ref.ruleRows =
data.alert_condition?.map((e) => {
return {
diff --git a/src/page/main/forewarning/rule-set/modules/add-form.vue b/src/page/main/forewarning/rule-set/modules/add-form.vue
index a46377cf61e92894444c7956501e2117f5b59c66..adb9d459537915c1924b54920b5a6435f2cbcb54 100644
--- a/src/page/main/forewarning/rule-set/modules/add-form.vue
+++ b/src/page/main/forewarning/rule-set/modules/add-form.vue
@@ -23,7 +23,8 @@
ref="type_com_ref"
:is="typeCom[state.form.type_key]"
:isEdit="isEdit"
- :form="typrFormData">
+ :form="typrFormData"
+ @update-duration="updateDuration">
@@ -108,6 +109,7 @@ import ManualDistributionForm from "@/components/manual-distribution/form.vue";
import Static from "./static.vue";
import Custom from "./custom.vue";
import { MAX_DAY } from "@/components/env.js";
+import { ElMessage } from "element-plus";
const props = defineProps({
row: {
type: Object,
@@ -151,6 +153,14 @@ const inputNum = () => {
state.form.time = max;
}
};
+
+const updateDuration = (data) => {
+ const { duration, duration_unit, check_period } = data;
+ state.form.time = duration;
+ state.form.unit = duration_unit;
+ state.form.inspection_cycle = check_period;
+};
+
const types = {
static: "静态阈值",
custom: "自定义",
@@ -159,16 +169,6 @@ const changeType = async (key) => {
state.form.type_key = key;
form_ref.value.clearValidate();
};
-const durationOptions = [
- {
- id: 1,
- name: "直接产生预警",
- },
- {
- id: 2,
- name: "当预警持续",
- },
-];
const timeOptions = [10, 20, 60, 120, 180, 300];
const inspectionCycleOptions = ref([1, 3, 5, 10, 20]);
const form_ref = ref(null);
@@ -180,14 +180,26 @@ const Submit = async () => {
let type_com_ref_valid = await type_com_ref.value.Submit();
let manual_distribution_form_valid = await manual_distribution_form.value.Submit();
if (form_valid && type_com_ref_valid && manual_distribution_form_valid) {
- return {
+ let obj = {
...state.form,
type_com_ref: type_com_ref.value?.form || {},
manual_distribution_form: manual_distribution_form.value?.form || {},
};
+ return {
+ res: obj,
+ cb: () => {
+ if (!isEdit.value) {
+ setTimeout(() => {
+ type_com_ref.value.form_ref.resetFields();
+ manual_distribution_form.value.form_ref.resetFields();
+ form_ref.value.resetFields();
+ }, 100);
+ }
+ },
+ };
}
ElMessage.error("有必填项没有填写");
- return;
+ return {};
};
watch(
() => props.row,
diff --git a/src/page/main/forewarning/rule-set/modules/custom.vue b/src/page/main/forewarning/rule-set/modules/custom.vue
index 2bdd30265c6c5dfb9566a8a026efc64979550086..84a3527ac7785044ffee8f6e8592a09b66b6d70c 100644
--- a/src/page/main/forewarning/rule-set/modules/custom.vue
+++ b/src/page/main/forewarning/rule-set/modules/custom.vue
@@ -38,6 +38,7 @@
+
@@ -250,11 +251,10 @@ const inputNum = (index, key) => {
if (state.form.ruleRows[index][key] == "") return;
if (state.form.ruleRows[index][key] == "-") return;
state.form.ruleRows[index][key] = `${state.form.ruleRows[index][key]}`
- .replace(/[^\-?\d.]/g, "") //只允许输入负号,数字,小数点
- .replace(/(\-)+/, "$1") //过滤连续多个负号
- .replace(/(\.)+/, "$1") //过滤连续多个小数点
- .replace(/(\.\d+)\./g, "$1") //过滤出现多个小数点
- .replace(/(\d)\-/g, "$1"); //过滤处于非开头的负号
+ .replace(/[^\-?\d.]/g, "")
+ .replace(/(\.)+/, "$1")
+ .replace(/(\.\d+)\.+/g, "$1")
+ .replace(/(\..*)\./g, "$1");
};
const changeWarningThresholdFrom = (index) => {
let { down, up } = limit.value;
@@ -274,18 +274,13 @@ const changeWarningThresholdFrom = (index) => {
}
let rows = setLimits(index);
if (rows.length == 0) return;
- try {
- rows.forEach((e) => {
- if (from !== "") {
- if (i == 0 && e.down === "" && +from <= +e.up) {
- throw "";
- }
- if (e.up !== "" && e.down !== "" && +e.up >= +from && +from > +e.down) {
- throw "";
- }
- }
- });
- } catch (e) {
+ let items = rows.filter((e, i) => {
+ let isPassDown = e.down !== "" ? +e.down <= +from : false;
+ let isLessUp = e.up !== "" ? +e.up >= +from : false;
+ let isLessDownAndPassUp = e.down !== "" && e.up !== "" && to !== "" ? +from < +e.down && +to > +e.up : false;
+ return (isPassDown && isLessUp) || isLessDownAndPassUp;
+ });
+ if (items.length > 0) {
ElMessage.error(`该范围已被设置`);
state.form.ruleRows[index].from = "";
}
@@ -308,18 +303,13 @@ const changeWarningThresholdTo = (index) => {
}
let rows = setLimits(index);
if (rows.length == 0) return;
- try {
- rows.forEach((e) => {
- if (to !== "") {
- if (i == rows.length - 1 && e.up === "" && +to > +e.down) {
- throw "";
- }
- if (e.up !== "" && e.down !== "" && +e.up > +to && +to > +e.down) {
- throw "";
- }
- }
- });
- } catch (e) {
+ let items = rows.filter((e, i) => {
+ let isPassDown = e.down !== "" ? +e.down <= +to : false;
+ let isLessUp = e.up !== "" ? +e.up >= +to : false;
+ let isLessDownAndPassUp = e.down !== "" && e.up !== "" && from !== "" ? +from < +e.down && +to > +e.up : false;
+ return (isPassDown && isLessUp) || isLessDownAndPassUp;
+ });
+ if (items.length > 0) {
ElMessage.error(`该范围已被设置`);
state.form.ruleRows[index].to = "";
}
diff --git a/src/page/main/forewarning/rule-set/modules/gateway.vue b/src/page/main/forewarning/rule-set/modules/gateway.vue
index 4de2d2629d55447f4db48c472b945a625299f1c0..ceb9298494842043301b66d24a0be33106bd6297 100644
--- a/src/page/main/forewarning/rule-set/modules/gateway.vue
+++ b/src/page/main/forewarning/rule-set/modules/gateway.vue
@@ -130,10 +130,20 @@ const state = reactive({
},
tableRules: {
from: (index) => {
- return [{ validator: (rule, value, callback) => validateFrom(rule, value, callback, index), trigger: "blur" }];
+ return [
+ {
+ validator: (rule, value, callback) => validateFrom(rule, value, callback, index),
+ trigger: "blur",
+ },
+ ];
},
to: (index) => {
- return [{ validator: (rule, value, callback) => validateTo(rule, value, callback, index), trigger: "blur" }];
+ return [
+ {
+ validator: (rule, value, callback) => validateTo(rule, value, callback, index),
+ trigger: "blur",
+ },
+ ];
},
risk_level: [{ required: true, message: "请选择", trigger: "change" }],
},
@@ -218,7 +228,7 @@ const limit = computed(() => {
const changeWarningThresholdFrom = (index) => {
let { down, up } = limit.value;
let { from, to } = state.form.ruleRows[index];
- if (to !== "" && from !== "" && from > +to) {
+ if (to !== "" && from !== "" && from >= +to) {
ElMessage.error(`下限不能大于上限`);
state.form.ruleRows[index].from = "";
return;
@@ -233,18 +243,13 @@ const changeWarningThresholdFrom = (index) => {
}
let rows = setLimits(index);
if (rows.length == 0) return;
- try {
- rows.forEach((e, i) => {
- if (from !== "") {
- if (i == 0 && e.down === "" && +from <= +e.up) {
- throw "";
- }
- if (e.up !== "" && e.down !== "" && +e.up >= +from && +from > +e.down) {
- throw "";
- }
- }
- });
- } catch (e) {
+ let items = rows.filter((e, i) => {
+ let isPassDown = e.down !== "" ? +e.down <= +from : false;
+ let isLessUp = e.up !== "" ? +e.up >= +from : false;
+ let isLessDownAndPassUp = e.down !== "" && e.up !== "" && to !== "" ? +from < +e.down && +to > +e.up : false;
+ return (isPassDown && isLessUp) || isLessDownAndPassUp;
+ });
+ if (items.length > 0) {
ElMessage.error(`该范围已被设置`);
state.form.ruleRows[index].from = "";
}
@@ -262,7 +267,7 @@ const inputNum = (index, key) => {
const changeWarningThresholdTo = (index) => {
let { down, up } = limit.value;
let { from, to } = state.form.ruleRows[index];
- if (to !== "" && from !== "" && from > +to) {
+ if (to !== "" && from !== "" && from >= +to) {
ElMessage.error(`下限不能大于上限`);
state.form.ruleRows[index].to = "";
return;
@@ -277,18 +282,13 @@ const changeWarningThresholdTo = (index) => {
}
let rows = setLimits(index);
if (rows.length == 0) return;
- try {
- rows.forEach((e, i) => {
- if (to !== "") {
- if (i == rows.length - 1 && e.up === "" && +to > +e.down) {
- throw "";
- }
- if (e.up !== "" && e.down !== "" && +e.up > +to && +to > +e.down) {
- throw "";
- }
- }
- });
- } catch (e) {
+ let items = rows.filter((e, i) => {
+ let isPassDown = e.down !== "" ? +e.down <= +to : false;
+ let isLessUp = e.up !== "" ? +e.up >= +to : false;
+ let isLessDownAndPassUp = e.down !== "" && e.up !== "" && from !== "" ? +from < +e.down && +to > +e.up : false;
+ return (isPassDown && isLessUp) || isLessDownAndPassUp;
+ });
+ if (items.length > 0) {
ElMessage.error(`该范围已被设置`);
state.form.ruleRows[index].to = "";
}
diff --git a/src/page/main/forewarning/rule-set/modules/interface.js b/src/page/main/forewarning/rule-set/modules/interface.js
index 585073cf424b38a333c9aa7832c32311d0897010..306e5c6deece87730a7fa26307b33adbef2ad954 100644
--- a/src/page/main/forewarning/rule-set/modules/interface.js
+++ b/src/page/main/forewarning/rule-set/modules/interface.js
@@ -1,6 +1,5 @@
import { ElMessage } from "element-plus";
import axios from "@/request/http.js";
-// max(container_fs_usage_bytes{pod!=\"\", namespace!=\"arms-prom\",namespace!=\"monitoring\"}) by (pod_name, namespace, device)/max(container_fs_limit_bytes{pod!=\"\"}) by (pod_name,namespace, device) * 100
const setParams = (res, { id }) => {
let isEmpty = res.type_com_ref.isEmpty
let params = {
@@ -69,13 +68,12 @@ const setParams = (res, { id }) => {
compare: e.select == 'all' ? '=~' : e.select
}
}),
- // // 预警规则(下拉)
+ // 预警规则(下拉)
alert_rule_type: res.type_com_ref.alert_rule_type,
}
}
}
let alert_condition = []
- // debugger;
if (isEmpty) {
alert_condition = [{
thresholds_max: 0,
diff --git a/src/page/main/forewarning/rule-set/modules/static.vue b/src/page/main/forewarning/rule-set/modules/static.vue
index b7b4306dab8b916460a1ba0d6cf8b663c1594090..38881c2bb151d1201e1e1a533e6562ba5742b7ab 100644
--- a/src/page/main/forewarning/rule-set/modules/static.vue
+++ b/src/page/main/forewarning/rule-set/modules/static.vue
@@ -89,7 +89,7 @@