gongchunyi
10 小时以前 ba3262fa23ca4e6d55caa7bb809e48183311bc33
src/views/safeProduction/hazardousMaterialsControl/index.vue
@@ -264,7 +264,8 @@
                  @selection-change="handleSafeHazardSelectionChange"
                  style="width: 100%">
          <el-table-column type="selection"
                           width="55" />
                           width="55"
                           :selectable="isSelectable" />
          <el-table-column prop="code"
                           label="危险源编码"
                           width="180"
@@ -547,6 +548,11 @@
    }
  };
  const handleApplyQtyChange = () => {
    if (Number(form.value.applyQty) < 0) {
      ElMessage.error("领用数量不能小于0");
      form.value.applyQty = 0;
      return;
    }
    if (form.value.applyQty > valueItem.value.stockQty) {
      ElMessage.error("领用数量不能大于库存数量");
      form.value.applyQty = "";
@@ -587,7 +593,7 @@
  const fetchSafeHazardList = () => {
    safeHazardLoading.value = true;
    return safeHazardListPage({
      page: safeHazardPage.value.current,
      current: safeHazardPage.value.current,
      size: safeHazardPage.value.size,
    })
      .then(res => {
@@ -597,6 +603,11 @@
      .finally(() => {
        safeHazardLoading.value = false;
      });
  };
  const isSelectable = row => {
    // 只有库存数量大于0的行才能被选择
    return Number(row.stockQty) > 0;
  };
  const handleSafeHazardSelectionChange = selection => {
@@ -642,15 +653,7 @@
  // 选择变化处理
  const handleSelectionChange = selection => {
    // 主表格也只保留最后一个选中的项
    if (selection.length > 1) {
      const lastSelected = selection[selection.length - 1];
      selectedIds.value = [lastSelected.id];
    } else if (selection.length === 1) {
      selectedIds.value = [selection[0].id];
    } else {
      selectedIds.value = [];
    }
    selectedIds.value = selection.map(item => item.id);
  };
  // 打开表单
@@ -775,7 +778,7 @@
          .catch(err => {
            ElMessage.error(err.msg);
          });
      } else {
      } else if (dialogType.value === "edit") {
        await formRef1.value.validate();
        safeHazardRecordUpdate({ ...form.value })
          .then(res => {
@@ -788,6 +791,9 @@
          .catch(err => {
            ElMessage.error(err.msg);
          });
      } else if (dialogType.value === "view") {
        // 查看模式下不提交表单
        dialogVisible.value = false;
      }
    } catch (error) {
      console.error("表单验证失败:", error);