张诺
2025-07-25 8215a1dd90a97f36dbc0cd3fb0754ae8646dba56
src/views/equipment/management/mould/equipmentRequisitionDialog.vue
@@ -134,7 +134,7 @@
    </el-form>
    <template #footer>
      <el-button @click="handleClose">取消</el-button>
      <el-button type="primary" @click="handleSubmit" v-if="!isViewMode"
      <el-button type="primary" @click="debouncedSubmit" v-if="!isViewMode"
        >确定</el-button
      >
    </template>
@@ -320,6 +320,21 @@
  emit("update:modelValue", false);
}
// 通用防抖函数
function debounce(fn, delay = 800) {
  let timer = null;
  return function (...args) {
    if (timer) clearTimeout(timer);
    timer = setTimeout(() => {
      fn.apply(this, args);
      timer = null;
    }, delay);
  };
}
// 防抖后的提交方法
const debouncedSubmit = debounce(handleSubmit, 800);
function handleSubmit () {
  formRef.value.validate(async (valid) => {
    if (!valid) return;
@@ -392,15 +407,6 @@
        return;
      }
      if(code == 200 && data == 1){
        // 根据归还状态给出不同的成功提示
        if (isReturnMode.value && submitData.equipmentStatus === 3) {
          ElMessage.success("设备已全部归还完成!");
        } else if (isReturnMode.value && submitData.equipmentStatus === 2) {
          ElMessage.success("设备部分归还成功!");
        } else {
          ElMessage.success("操作成功!");
        }
        emit("submit", submitData);
      }
      handleClose();