gongchunyi
2 天以前 1677b6e8c20c3c8dd8297c08428538ca5e0029fc
feat: 库存管理的冻结与解冻物料批次
已修改3个文件
125 ■■■■■ 文件已修改
src/api/inventoryManagement/stockManage.js 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/inventoryManagement/issueManagement/index.vue 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/inventoryManagement/stockManagement/index.vue 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/inventoryManagement/stockManage.js
@@ -80,4 +80,20 @@
    })
}
//
// 采购入库-库存管理-冻结不合格产品
export function frozenQuality(ids) {
    return request({
        url: '/stockin/frozenQuality',
        method: 'post',
        data: ids
    })
}
// 采购入库-库存管理-解冻不合格产品
export function thawQuality(ids) {
    return request({
        url: '/stockin/thawQuality',
        method: 'post',
        data: ids
    })
}
src/views/inventoryManagement/issueManagement/index.vue
@@ -51,12 +51,22 @@
                             prop="inboundNum0"
                             width="90"
                             show-overflow-tooltip />
            <el-table-column label="状态"
                             align="center"
                             prop="isFrozen"
                             width="100">
              <template #default="scope">
                <el-tag :type="scope.row.isFrozen ? 'danger' : 'success'">
                  {{ scope.row.isFrozen ? '已冻结' : '正常' }}
                </el-tag>
              </template>
            </el-table-column>
            <el-table-column fixed="right"
                             label="操作"
                             min-width="60"
                             align="center">
              <template #default="scope">
                <el-button :disabled="scope.row.inboundNum0 <= 0"
                <el-button :disabled="scope.row.inboundNum0 <= 0 || scope.row.isFrozen"
                           link
                           type="primary"
                           size="small"
@@ -131,13 +141,23 @@
            <el-table-column label="含税总价(元)"
                             prop="taxInclusiveTotalPrice"
                             width="150"></el-table-column>
            <el-table-column label="状态"
                             align="center"
                             prop="isFrozen"
                             width="100">
              <template #default="scope">
                <el-tag :type="scope.row.isFrozen ? 'danger' : 'success'">
                  {{ scope.row.isFrozen ? '已冻结' : '正常' }}
                </el-tag>
              </template>
            </el-table-column>
            <el-table-column fixed="right"
                             label="操作"
                             min-width="60"
                             align="center">
              <template #default="scope">
                <el-button link
                           :disabled="scope.row.inboundNum0 <= 0"
                           :disabled="scope.row.inboundNum0 <= 0 || scope.row.isFrozen"
                           type="primary"
                           size="small"
                           @click="openForm(scope.row);">领用</el-button>
@@ -201,13 +221,23 @@
                             prop="inboundNum0"
                             width="90"
                             show-overflow-tooltip />
            <el-table-column label="状态"
                             align="center"
                             prop="isFrozen"
                             width="100">
              <template #default="scope">
                <el-tag :type="scope.row.isFrozen ? 'danger' : 'success'">
                  {{ scope.row.isFrozen ? '已冻结' : '正常' }}
                </el-tag>
              </template>
            </el-table-column>
            <el-table-column fixed="right"
                             label="操作"
                             min-width="60"
                             align="center">
              <template #default="scope">
                <el-button link
                           :disabled="scope.row.inboundNum0 <= 0"
                           :disabled="scope.row.inboundNum0 <= 0 || scope.row.isFrozen"
                           type="primary"
                           size="small"
                           @click="openForm(scope.row);">领用</el-button>
@@ -421,6 +451,9 @@
const productModelId = ref(null);
  // 打开弹框
  const openForm = async row => {
    if (row.isFrozen) {
      return proxy.$modal.msgError("该产品已冻结,无法领用");
    }
    dialogFormVisible.value = true;
    currentRowId.value = row.id;
    currentRowNum.value = row.inboundNum0;
src/views/inventoryManagement/stockManagement/index.vue
@@ -108,6 +108,12 @@
          </div>
          <div>
            <el-button @click="handleOut">导出</el-button>
            <el-button type="danger"
                       plain
                       @click="handleFrozen">冻结</el-button>
            <el-button type="success"
                       plain
                       @click="handleThaw">解冻</el-button>
            <!--           <el-button type="danger" plain @click="handleDelete">删除</el-button>-->
          </div>
        </div>
@@ -164,6 +170,16 @@
            <el-table-column label="含税总价(元)"
                             prop="taxInclusiveTotalPrice"
                             width="150"></el-table-column>
            <el-table-column label="状态"
                             align="center"
                             prop="isFrozen"
                             width="100">
              <template #default="scope">
                <el-tag :type="scope.row.isFrozen ? 'danger' : 'success'">
                  {{ scope.row.isFrozen ? '已冻结' : '正常' }}
                </el-tag>
              </template>
            </el-table-column>
          </el-table>
          <pagination v-show="total > 0"
                      :total="total"
@@ -200,6 +216,8 @@
    getStockManagePage,
    getStockManagePageByProduction,
    delStockManage, getStockManageProduction,
    frozenQuality,
    thawQuality,
  } from "@/api/inventoryManagement/stockManage.js";
  import {
    updateManagement,
@@ -534,6 +552,56 @@
        proxy.$modal.msg("已取消");
      });
  };
  // 冻结
  const handleFrozen = () => {
    let ids = [];
    if (selectedRows.value.length > 0) {
      ids = selectedRows.value.map(item => item.id);
    } else {
      proxy.$modal.msgWarning("请选择数据");
      return;
    }
    ElMessageBox.confirm("选中的内容将被标记为不合格产品并冻结,是否确认?", "警告", {
      confirmButtonText: "确认",
      cancelButtonText: "取消",
      type: "warning",
    })
      .then(() => {
        frozenQuality(ids).then(res => {
          proxy.$modal.msgSuccess("操作成功");
          getList();
        });
      })
      .catch(() => {
        proxy.$modal.msg("已取消");
      });
  };
  // 解冻
  const handleThaw = () => {
    let ids = [];
    if (selectedRows.value.length > 0) {
      ids = selectedRows.value.map(item => item.id);
    } else {
      proxy.$modal.msgWarning("请选择数据");
      return;
    }
    ElMessageBox.confirm("选中的内容将被解冻,是否确认?", "提示", {
      confirmButtonText: "确认",
      cancelButtonText: "取消",
      type: "success",
    })
      .then(() => {
        thawQuality(ids).then(res => {
          proxy.$modal.msgSuccess("操作成功");
          getList();
        });
      })
      .catch(() => {
        proxy.$modal.msg("已取消");
      });
  };
  // 删除
  const handleDelete = () => {
    let ids = [];