|  | @@ -583,6 +583,7 @@
 | 
	
		
			
				|  |  |    let currentrow=ref();
 | 
	
		
			
				|  |  |    let pipeline = ref();
 | 
	
		
			
				|  |  |    let dialogtrue = ref();
 | 
	
		
			
				|  |  | +  let isSubmitting = false;
 | 
	
		
			
				|  |  |    let sdialog=ref({
 | 
	
		
			
				|  |  |      dialogsgdelect:false,
 | 
	
		
			
				|  |  |      dialogVisiblenode:false,
 | 
	
	
		
			
				|  | @@ -913,9 +914,19 @@ const getrequest=()=>{
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  // 确定添加
 | 
	
		
			
				|  |  |  const addrequest=()=>{
 | 
	
		
			
				|  |  | +  if (isSubmitting) return;
 | 
	
		
			
				|  |  | +  if(fjobj.value.fancode==null||fjobj.value.fancode==''){
 | 
	
		
			
				|  |  | +    ElMessage.error("风机编码不能为空")
 | 
	
		
			
				|  |  | +    return
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  if(fjobj.value.fanname==null||fjobj.value.fanname==''){
 | 
	
		
			
				|  |  | +    ElMessage.error("风机名称不能为空")
 | 
	
		
			
				|  |  | +    return
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  |    if(pid.value==null||pid.value==""){
 | 
	
		
			
				|  |  |      ElMessage.error("巷道不能为空")
 | 
	
		
			
				|  |  |    }else{
 | 
	
		
			
				|  |  | +    isSubmitting = true; // 开始提交
 | 
	
		
			
				|  |  |    const params = {
 | 
	
		
			
				|  |  |      transCode: "D20008",
 | 
	
		
			
				|  |  |      fanid:fjobj.value.fanid,
 | 
	
	
		
			
				|  | @@ -943,6 +954,9 @@ const addrequest=()=>{
 | 
	
		
			
				|  |  |        const regex = /字段\d*/g;
 | 
	
		
			
				|  |  |          let Msg=err.returnMsg.replace(regex, '');
 | 
	
		
			
				|  |  |           ElMessage.error(Msg)
 | 
	
		
			
				|  |  | +    })
 | 
	
		
			
				|  |  | +    .finally(() => {
 | 
	
		
			
				|  |  | +      isSubmitting = false; // 提交结束
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -1101,26 +1115,42 @@ const fmrequest=()=>{
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |    //添加接口
 | 
	
		
			
				|  |  | -  const  addxiufm=()=>{
 | 
	
		
			
				|  |  | -    if(pid.value==null||pid.value==""){
 | 
	
		
			
				|  |  | -    ElMessage.error("巷道不能为空")
 | 
	
		
			
				|  |  | -  }else{
 | 
	
		
			
				|  |  | -  const params = {
 | 
	
		
			
				|  |  | -    transCode:"D20011",
 | 
	
		
			
				|  |  | -    doorid:fmobj.value.doorid,
 | 
	
		
			
				|  |  | -    doorcode:fmobj.value.doorcode,
 | 
	
		
			
				|  |  | -    pid:pid.value,
 | 
	
		
			
				|  |  | -    doorname:fmobj.value.doorname,
 | 
	
		
			
				|  |  | -    site:source.value.site,
 | 
	
		
			
				|  |  | -    dragcoe:parseFloat(fmobj.value.dragcoe),
 | 
	
		
			
				|  |  | -    onoff:fmobj.value.onoff,
 | 
	
		
			
				|  |  | -    aid:aid.value,
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +const addxiufm = () => {
 | 
	
		
			
				|  |  | +  if (isSubmitting) return; // 如果正在提交,则不再继续
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  if (fmobj.value.doorcode == null || fmobj.value.doorcode == "") {
 | 
	
		
			
				|  |  | +    ElMessage.error("风门编码不能为空");
 | 
	
		
			
				|  |  | +    return;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  if (fmobj.value.doorname == null || fmobj.value.doorname == "") {
 | 
	
		
			
				|  |  | +    ElMessage.error("风门名称不能为空");
 | 
	
		
			
				|  |  | +    return;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +  if (pid.value == null || pid.value == "") {
 | 
	
		
			
				|  |  | +    ElMessage.error("巷道不能为空");
 | 
	
		
			
				|  |  | +    return;
 | 
	
		
			
				|  |  | +  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  isSubmitting = true; // 开始提交
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +  const params = {
 | 
	
		
			
				|  |  | +    transCode: "D20011",
 | 
	
		
			
				|  |  | +    doorid: fmobj.value.doorid,
 | 
	
		
			
				|  |  | +    doorcode: fmobj.value.doorcode,
 | 
	
		
			
				|  |  | +    pid: pid.value,
 | 
	
		
			
				|  |  | +    doorname: fmobj.value.doorname,
 | 
	
		
			
				|  |  | +    site: source.value.site,
 | 
	
		
			
				|  |  | +    dragcoe: parseFloat(fmobj.value.dragcoe),
 | 
	
		
			
				|  |  | +    onoff: fmobj.value.onoff,
 | 
	
		
			
				|  |  | +    aid: aid.value,
 | 
	
		
			
				|  |  |    };
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |    request(params)
 | 
	
		
			
				|  |  |      .then((res) => {
 | 
	
		
			
				|  |  |        ElMessage({
 | 
	
		
			
				|  |  | -        message: zhtext.value+"风门成功",
 | 
	
		
			
				|  |  | +        message: zhtext.value + "风门成功",
 | 
	
		
			
				|  |  |          type: "success",
 | 
	
		
			
				|  |  |        });
 | 
	
		
			
				|  |  |        sdialog.value.fmdialog = false;
 | 
	
	
		
			
				|  | @@ -1129,12 +1159,14 @@ const fmrequest=()=>{
 | 
	
		
			
				|  |  |      })
 | 
	
		
			
				|  |  |      .catch((err) => {
 | 
	
		
			
				|  |  |        const regex = /字段\d*/g;
 | 
	
		
			
				|  |  | -        let Msg=err.returnMsg.replace(regex, '');
 | 
	
		
			
				|  |  | -         ElMessage.error(Msg)
 | 
	
		
			
				|  |  | +      let Msg = err.returnMsg.replace(regex, "");
 | 
	
		
			
				|  |  | +      ElMessage.error(Msg);
 | 
	
		
			
				|  |  | +    })
 | 
	
		
			
				|  |  | +    .finally(() => {
 | 
	
		
			
				|  |  | +      isSubmitting = false; // 提交结束
 | 
	
		
			
				|  |  |      });
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -  }
 | 
	
		
			
				|  |  |    
 | 
	
		
			
				|  |  |  // 3D关闭弹窗
 | 
	
		
			
				|  |  |  const fun3D = () => {
 |