|
@@ -101,26 +101,26 @@ const checkeclear = () => {
|
|
|
|
|
|
|
|
|
const changecheckbox = (val) => {
|
|
|
- vtkmodel.delpump();//清除风机风门
|
|
|
if (checked1.value) {
|
|
|
+ uncheckOthers(checked1);
|
|
|
vtkmodel.showPname();
|
|
|
} else {
|
|
|
vtkmodel.removePname();
|
|
|
}
|
|
|
}
|
|
|
const changecheckbox2 = (val) => {
|
|
|
- vtkmodel.delpump();//清除风机风门
|
|
|
if (checked2.value) {
|
|
|
+ uncheckOthers(checked2);
|
|
|
vtkmodel.showSoure();
|
|
|
} else {
|
|
|
vtkmodel.removeSoure();
|
|
|
}
|
|
|
console.log(checked2.value);
|
|
|
}
|
|
|
-const changecheckbox3 = (val) => {
|
|
|
- vtkmodel.delpump();//清除风机风门
|
|
|
+const changecheckbox3 = async (val) => {
|
|
|
if (checked3.value) {
|
|
|
- console.log("调用监测")
|
|
|
+ uncheckOthers(checked3);
|
|
|
+ await delay(10); // 等待 500ms
|
|
|
vtkmodel.showjc();
|
|
|
// 选中出弹窗
|
|
|
dialogtrue1.value.dialoglog = true;
|
|
@@ -132,12 +132,13 @@ const changecheckbox3 = (val) => {
|
|
|
dialogtrue1.value.closeDialog();
|
|
|
}
|
|
|
}
|
|
|
-const changecheckbox4 = (val) => {
|
|
|
- vtkmodel.delpump();//清除风机风门
|
|
|
+const changecheckbox4 = async (val) => {
|
|
|
if (checked4.value) {
|
|
|
- console.log("调用传感")
|
|
|
- vtkmodel.showSensor();
|
|
|
- // 选中出弹窗
|
|
|
+ uncheckOthers(checked4);
|
|
|
+ await delay(10); // 等待 500ms
|
|
|
+ vtkmodel.showSensor(); // 延时后执行
|
|
|
+
|
|
|
+ // 其他逻辑
|
|
|
dialogtrue.value.dialoglog = true;
|
|
|
vtkmodel.selectSensors();
|
|
|
dialogtrue.value.jgSelect();
|
|
@@ -146,7 +147,27 @@ const changecheckbox4 = (val) => {
|
|
|
dialogtrue.value.dialoglog = false;
|
|
|
dialogtrue.value.closeDialog();
|
|
|
}
|
|
|
-}
|
|
|
+};
|
|
|
+
|
|
|
+const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));
|
|
|
+
|
|
|
+const uncheckOthers = (currentCheckbox) => {
|
|
|
+ const checkboxes = [
|
|
|
+ { ref: checked1, changeFn: changecheckbox },
|
|
|
+ { ref: checked2, changeFn: changecheckbox2 },
|
|
|
+ { ref: checked3, changeFn: changecheckbox3 },
|
|
|
+ { ref: checked4, changeFn: changecheckbox4 },
|
|
|
+ ];
|
|
|
+
|
|
|
+ checkboxes.forEach(({ ref, changeFn }) => {
|
|
|
+ if (ref !== currentCheckbox) {
|
|
|
+ ref.value = false;
|
|
|
+ changeFn(false); // 手动触发 change 事件
|
|
|
+ }
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
+
|
|
|
emitter.on('myaddsg', (data) => {
|
|
|
changecheckbox4(data);
|
|
|
})
|