| src/views/inventoryManagement/dispatchLog/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/inventoryManagement/issueManagement/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/inventoryManagement/receiptManagement/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/inventoryManagement/stockManagement/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/productionManagement/operationScheduling/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/inventoryManagement/dispatchLog/index.vue
@@ -1,209 +1,34 @@ <template> <div class="app-container"> <el-tabs v-model="activeTab" @tab-change="handleTabChange"> <el-tab-pane label="生产出库" name="production"> <div class="search_form"> <div> <span class="search_title">客户名称:</span> <el-input v-model="searchForm.customerName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">出库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> <el-button type="primary" plain @click="handlePrint">打印</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" :expand-row-keys="expandedRowKeys" :row-key="(row) => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)" > <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> <el-table-column label="客户名称" prop="customerName" width="250" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="采购出库" name="purchase"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">出库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> <el-button type="primary" plain @click="handlePrint">打印</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="(row) => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)" > <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="自定义出库" name="manual"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">出库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> <el-button type="primary" plain @click="handlePrint">打印</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="(row) => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)" > <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="出库日期" prop="createTime" min-width="250" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="250" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="100" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> <el-table-column label="物品类型" prop="itemType" width="120" show-overflow-tooltip /> <el-table-column label="出库数量" prop="inboundNum" width="100" show-overflow-tooltip /> <el-table-column label="含税单价(元)" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价(元)" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> <el-table-column label="不含税总价(元)" prop="taxExclusiveTotalPrice" width="180" show-overflow-tooltip /> <el-table-column label="出库人" prop="createBy" width="80" show-overflow-tooltip /> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> </el-tabs> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">出库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> <el-button type="primary" plain @click="handlePrint">打印</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" @@ -437,15 +262,10 @@ getStockOutPage, delStockOut, } from "@/api/inventoryManagement/stockOut.js"; import { getStockInPageByProduct, getStockInPageByCustom, } from "@/api/inventoryManagement/stockIn.js"; const userStore = useUserStore(); const { proxy } = getCurrentInstance(); const tableData = ref([]); const activeTab = ref('production'); const selectedRows = ref([]); const tableLoading = ref(false); const page = reactive({ @@ -462,7 +282,6 @@ const data = reactive({ searchForm: { supplierName: "", customerName: "", timeStr: "", }, form: { @@ -500,23 +319,13 @@ }; const getList = () => { tableLoading.value = true; const params = { ...page } if (activeTab.value === 'production') { params.customerName = searchForm.value.customerName params.timeStr = searchForm.value.timeStr } else { params.supplierName = searchForm.value.supplierName params.timeStr = searchForm.value.timeStr const params = { ...page, supplierName: searchForm.value.supplierName, timeStr: searchForm.value.timeStr } // 根据不同的 tab 类型调用不同的接口 const apiCall = activeTab.value === 'production' ? getStockInPageByProduct(params) : activeTab.value === 'manual' ? getStockInPageByCustom(params) : getStockOutPage(params) apiCall getStockOutPage(params) .then((res) => { tableLoading.value = false; tableData.value = res.data.records; @@ -530,14 +339,6 @@ }); }; const handleTabChange = () => { page.current = 1 searchForm.value.supplierName = '' searchForm.value.customerName = '' searchForm.value.timeStr = '' selectedRows.value = [] getList() }; // 表格选择数据 const handleSelectionChange = (selection) => { @@ -564,14 +365,7 @@ type: "warning", }) .then(() => { // 根据不同的 tab 类型调用不同的导出接口 let exportUrl = "/stockmanagement/export" if (activeTab.value === 'production') { exportUrl = "/stockmanagement/exportone" } else if (activeTab.value === 'manual') { exportUrl = "/stockmanagement/exportTwo" } proxy.download(exportUrl, {}, "出库台账.xlsx"); proxy.download("/stockmanagement/export", {}, "出库台账.xlsx"); }) .catch(() => { proxy.$modal.msg("已取消"); src/views/inventoryManagement/issueManagement/index.vue
@@ -1,159 +1,53 @@ <template> <div class="app-container"> <el-tabs v-model="activeTab" @tab-change="handleTabChange"> <el-tab-pane label="生产出库" name="production"> <div class="search_form"> <div> <span class="search_title">客户名称:</span> <el-input v-model="searchForm.customerName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="客户名称" prop="customerName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm(scope.row);">领用</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="采购出库" name="purchase"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm(scope.row);">领用</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="自定义出库" name="manual"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="inboundDate" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="物品类型" prop="itemType" width="100" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm(scope.row);">领用</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> </el-tabs> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm(scope.row);">领用</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> <el-dialog v-model="dialogFormVisible" :title="'新增出库'" width="40%" @close="closeDia"> <el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef"> <el-form-item label="出库数量:" prop="salesContractNo"> @@ -187,13 +81,9 @@ import { userListNoPageByTenantId } from "@/api/system/user.js"; import { getStockInPage, getStockInPageByProduction, getStockInPageByCustom, getInPageByCustom } from "@/api/inventoryManagement/stockIn.js"; import { getStockManagePage, delStockManage, stockOut, stockOut, } from "@/api/inventoryManagement/stockManage.js"; const userStore = useUserStore() @@ -207,19 +97,12 @@ size: 100, }) const total = ref(0) const fileList = ref([]) // 用户信息表单弹框数据 const dialogFormVisible = ref(false) const activeTab = ref('production') const data = reactive({ searchForm: { supplierName: '', customerName: '', inboundQuantity:'', inboundTime:'', nickName: '', userId: '', timeStr: '', }, form: { @@ -246,23 +129,13 @@ } const getList = () => { tableLoading.value = true const params = { ...page } if (activeTab.value === 'production') { params.customerName = searchForm.value.customerName params.timeStr = searchForm.value.timeStr } else { params.supplierName = searchForm.value.supplierName params.timeStr = searchForm.value.timeStr const params = { ...page, supplierName: searchForm.value.supplierName, timeStr: searchForm.value.timeStr } let apiCall if (activeTab.value === 'production') { apiCall = getStockInPageByProduction(params) } else if (activeTab.value === 'manual') { apiCall = getInPageByCustom(params) } else { apiCall = getStockInPage(params) } apiCall.then(res => { getStockInPage(params).then(res => { tableLoading.value = false tableData.value = res.data.records total.value = res.data.total @@ -271,34 +144,9 @@ }) } const handleTabChange = () => { page.current = 1 searchForm.value.supplierName = '' searchForm.value.customerName = '' searchForm.value.timeStr = '' selectedRows.value = [] getList() } const findNodeById = (nodes, productId) => { for (let i = 0; i < nodes.length; i++) { if (nodes[i].value === productId) { return nodes[i].label; // 找到节点,返回该节点 } if (nodes[i].children && nodes[i].children.length > 0) { const foundNode = findNodeById(nodes[i].children, productId); if (foundNode) { return foundNode.label; // 在子节点中找到,返回该节点 } } } return null; // 没有找到节点,返回null }; // 表格选择数据 const handleSelectionChange = (selection) => { // 过滤掉子数据 selectedRows.value = selection.filter(item => item.id); console.log('selection', selectedRows.value) } const expandedRowKeys = ref([]) @@ -306,8 +154,7 @@ const summarizeMainTable = (param) => { return proxy.summarizeTable(param, ['contractAmount', 'taxInclusiveTotalPrice', 'taxExclusiveTotalPrice']); }; const currentRowId = ref(null) // 新增:存储当前操作的行ID const currentRowId = ref(null) const currentRowNum = ref(0) const salesLedgerProductId = ref(null); @@ -318,14 +165,12 @@ currentRowNum.value = row.inboundNum0 salesLedgerProductId.value = row.salesLedgerProductId form.value = {} // 初始化表单数据 form.value = { productrecordId: '', inboundQuantity: '', // 出库数量清空 inboundTime: getCurrentDate(), // 默认当前日期 nickName: '', // 默认当前用户 inboundQuantity: '', inboundTime: getCurrentDate(), nickName: '', } console.log('form',form.value) // 加载用户列表 try { const userLists = await userListNoPageByTenantId() @@ -343,16 +188,14 @@ } proxy.$refs["formRef"].validate(valid => { if (valid && currentRowId.value) { const typeMap = { production: 2, purchase: 1, manual: 3 } const outData = { id: currentRowId.value, // 原始记录ID salesLedgerProductId: activeTab.value === 'manual' ? 0 : salesLedgerProductId.value, quantity: form.value.inboundQuantity, // 出库数量 time: form.value.inboundTime, // 出库时间 userId: form.value.nickName, // 操作人 type: typeMap[activeTab.value] // 出库类型:采购1,生产2,自定义3 id: currentRowId.value, salesLedgerProductId: salesLedgerProductId.value, quantity: form.value.inboundQuantity, time: form.value.inboundTime, userId: form.value.nickName, type: 1 // 采购出库 } console.log(outData) stockOut(outData).then(res => { proxy.$modal.msgSuccess("提交成功") @@ -364,6 +207,7 @@ } }) } // 关闭弹框 const closeDia = () => { proxy.resetForm("formRef") @@ -380,48 +224,17 @@ type: 'warning', } ).then(() => { // 根据不同的 tab 类型调用不同的导出接口 let exportUrl = "/stockin/export" if (activeTab.value === 'production') { exportUrl = "/stockin/exportOne" } else if (activeTab.value === 'manual') { exportUrl = "/stockin/exportTwo" } proxy.download(exportUrl, {}, '入库台账.xlsx') proxy.download("/stockin/export", {}, '入库台账.xlsx') }).catch(() => { proxy.$modal.msg("已取消") }) } // 删除 const handleDelete = () => { 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(() => { delStockManage(ids).then(res => { proxy.$modal.msgSuccess("删除成功") getList() }) }).catch(() => { proxy.$modal.msg("已取消") }) } // 获取当前日期并格式化为 YYYY-MM-DD function getCurrentDate() { const today = new Date(); const year = today.getFullYear(); const month = String(today.getMonth() + 1).padStart(2, '0'); // 月份从0开始 const month = String(today.getMonth() + 1).padStart(2, '0'); const day = String(today.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; } src/views/inventoryManagement/receiptManagement/index.vue
@@ -1,161 +1,57 @@ <template> <div class="app-container"> <el-tabs v-model="activeTab" @tab-change="handleTabChange"> <el-tab-pane label="生产入库" name="production"> <div class="search_form"> <div> <span class="search_title">客户名称:</span> <el-input v-model="searchForm.customerName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="客户名称" prop="customerName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="采购入库" name="purchase"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button type="primary" @click="openForm('add', 'purchase')">新增入库</el-button> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm('edit', scope.row, 'purchase');" :disabled="scope.row.createUser !== userStore.id">编辑</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="自定义入库" name="manual"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button type="primary" @click="openForm('add', 'manual')">新增入库</el-button> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="inboundDate" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="物品类型" prop="itemType" width="100" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm('edit', scope.row, 'manual');" :disabled="scope.row.createBy !== userStore.nickName">编辑</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> </el-tabs> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button type="primary" @click="openForm('add')">新增入库</el-button> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库时间" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="入库批次" prop="inboundBatches" width="160" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="70" show-overflow-tooltip /> <el-table-column label="入库数量" prop="inboundNum" width="90" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="80" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm('edit', scope.row);" :disabled="scope.row.createUser !== userStore.id">编辑</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> <form-dia ref="formDia" @close="handleQuery" @success="handleQuery"></form-dia> <form-dia-manual ref="formDiaManual" @close="handleQuery" @success="handleQuery"></form-dia-manual> </div> </template> @@ -166,13 +62,9 @@ import useUserStore from '@/store/modules/user' import { getStockInPage, getStockInPageByProduction, getStockInPageByCustom, delStockIn, delStockInCustom, getInPageByCustom, } from "@/api/inventoryManagement/stockIn.js"; import FormDia from './components/formDia.vue' import FormDiaManual from './components/formDiaManual.vue' const userStore = useUserStore() const { proxy } = getCurrentInstance() @@ -181,8 +73,6 @@ const selectedRows = ref([]) const tableLoading = ref(false) const formDia = ref() const formDiaManual = ref() const activeTab = ref('production') // 当前激活的 tab const page = reactive({ current: 1, @@ -193,11 +83,11 @@ const data = reactive({ searchForm: { supplierName: '', customerName: '', timeStr: '', }, }) const { searchForm } = toRefs(data) // 查询列表 /** 搜索按钮操作 */ const handleQuery = () => { @@ -211,25 +101,13 @@ } const getList = () => { tableLoading.value = true const params = { ...page } // 根据不同的 tab 类型传递不同的查询参数 if (activeTab.value === 'production') { params.customerName = searchForm.value.customerName params.timeStr = searchForm.value.timeStr } else { params.supplierName = searchForm.value.supplierName params.timeStr = searchForm.value.timeStr const params = { ...page, supplierName: searchForm.value.supplierName, timeStr: searchForm.value.timeStr } // 根据不同的 tab 类型调用不同的接口 const apiCall = activeTab.value === 'production' ? getStockInPageByProduction(params) : activeTab.value === 'manual' ? getInPageByCustom(params) : getStockInPage(params) apiCall.then(res => { getStockInPage(params).then(res => { tableLoading.value = false tableData.value = res.data.records total.value = res.data.total @@ -238,25 +116,10 @@ }) } // 切换 tab const handleTabChange = (tabName) => { page.current = 1 // 切换 tab 时清空搜索条件 searchForm.value.supplierName = '' searchForm.value.customerName = '' searchForm.value.timeStr = '' getList() } // 打开弹框 const openForm = async (type, row, tabType) => { const currentTab = tabType || activeTab.value const openForm = async (type, row) => { await nextTick(() => { if (currentTab === 'manual') { formDiaManual.value?.openDialog(type, row) } else { formDia.value?.openDialog(type, row) } formDia.value?.openDialog(type, row) }) } @@ -279,14 +142,7 @@ cancelButtonText: '取消', type: 'warning', }).then(() => { // 根据不同的 tab 类型调用不同的导出接口 let exportUrl = "/stockin/export" if (activeTab.value === 'production') { exportUrl = "/stockin/exportOne" } else if (activeTab.value === 'manual') { exportUrl = "/stockin/exportTwo" } proxy.download(exportUrl, {}, '入库台账.xlsx') proxy.download("/stockin/export", {}, '入库台账.xlsx') }).catch(() => { proxy.$modal.msg("已取消") }) @@ -313,9 +169,7 @@ cancelButtonText: '取消', type: 'warning', }).then(() => { // 根据当前 tab 类型选择不同的删除接口 const deleteApi = activeTab.value === 'manual' ? delStockInCustom : delStockIn deleteApi({ ids }).then(() => { delStockIn({ ids }).then(() => { proxy.$modal.msgSuccess("删除成功") getList() }).catch(() => { src/views/inventoryManagement/stockManagement/index.vue
@@ -1,61 +1,5 @@ <template> <div class="app-container"> <el-tabs v-model="activeTab" @tab-change="handleTabChange"> <el-tab-pane label="生产入库" name="production"> <div class="search_form"> <div> <span class="search_title">客户名称:</span> <el-input v-model="searchForm.customerName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :row-class-name="tableRowClassName" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库日期" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="客户名称" prop="customerName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> <el-table-column label="库存数量" prop="inboundNum" width="100" show-overflow-tooltip /> <el-table-column label="已出库数量" prop="totalInboundNum" width="100" show-overflow-tooltip /> <el-table-column label="待出库数量" prop="inboundNum0" width="100" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm('edit', scope.row);" :disabled="scope.row.createUser !== userStore.id">编辑</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="采购入库" name="purchase"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> @@ -108,63 +52,6 @@ <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> <el-tab-pane label="自定义入库" name="manual"> <div class="search_form"> <div> <span class="search_title">供应商名称:</span> <el-input v-model="searchForm.supplierName" style="width: 240px" placeholder="请输入" @change="handleQuery" clearable prefix-icon="Search" /> <span class="search_title ml10">入库日期:</span> <el-date-picker v-model="searchForm.timeStr" type="date" placeholder="请选择日期" value-format="YYYY-MM-DD" format="YYYY-MM-DD" clearable @change="handleQuery" /> <el-button type="primary" @click="handleQuery" style="margin-left: 10px">搜索</el-button> </div> <div> <el-button @click="handleOut">导出</el-button> <el-button type="danger" plain @click="handleDelete">删除</el-button> </div> </div> <div class="table_list"> <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange" :expand-row-keys="expandedRowKeys" :row-key="row => row.id" show-summary style="width: 100%" :row-class-name="tableRowClassName" :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)"> <el-table-column align="center" type="selection" width="55" /> <el-table-column align="center" label="序号" type="index" width="60" /> <el-table-column label="入库日期" prop="createTime" width="100" show-overflow-tooltip /> <el-table-column label="供应商名称" prop="supplierName" width="240" show-overflow-tooltip /> <el-table-column label="产品大类" prop="productCategory" width="100" show-overflow-tooltip /> <el-table-column label="规格型号" prop="specificationModel" width="200" show-overflow-tooltip /> <el-table-column label="单位" prop="unit" width="80" show-overflow-tooltip /> <el-table-column label="物品类型" prop="itemType" width="120" show-overflow-tooltip /> <el-table-column label="库存数量" prop="inboundNum" width="100" show-overflow-tooltip /> <el-table-column label="已出库数量" prop="totalInboundNum" width="100" show-overflow-tooltip /> <el-table-column label="待出库数量" prop="inboundNum0" width="100" show-overflow-tooltip /> <el-table-column label="含税单价" prop="taxInclusiveUnitPrice" width="100" show-overflow-tooltip /> <el-table-column label="含税总价" prop="taxInclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="税率(%)" prop="taxRate" width="100" show-overflow-tooltip /> <el-table-column label="不含税总价" prop="taxExclusiveTotalPrice" width="100" show-overflow-tooltip /> <el-table-column label="入库人" prop="createBy" width="80" show-overflow-tooltip /> <el-table-column fixed="right" label="操作" min-width="60" align="center"> <template #default="scope"> <el-button link type="primary" size="small" @click="openForm('edit', scope.row);" :disabled="scope.row.createBy !== userStore.nickName">编辑</el-button> </template> </el-table-column> </el-table> <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper" :page="page.current" :limit="page.size" @pagination="paginationChange" /> </div> </el-tab-pane> </el-tabs> <el-dialog v-model="dialogFormVisible" :title="operationType === 'add' ? '新增库存' : '编辑库存'" width="70%" @close="closeDia"> <el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef"> @@ -272,8 +159,6 @@ import { productTreeList,modelList } from "@/api/basicData/product.js" import { getStockManagePage, getStockManagePageByProduction, getStockManagePageByCustom, delStockManage, } from "@/api/inventoryManagement/stockManage.js"; import { @@ -302,11 +187,9 @@ // 用户信息表单弹框数据 const operationType = ref('') const dialogFormVisible = ref(false) const activeTab = ref('production') const data = reactive({ searchForm: { supplierName: '', customerName: '', timeStr: '', }, form: { @@ -361,48 +244,23 @@ getList() } const buildQueryParams = () => { const params = { return { ...page, supplierName: searchForm.value.supplierName, timeStr: searchForm.value.timeStr, } if (activeTab.value === 'production') { params.customerName = searchForm.value.customerName } else { params.supplierName = searchForm.value.supplierName } return params } const getList = () => { tableLoading.value = true const params = buildQueryParams() let apiCall if (activeTab.value === 'production') { apiCall = getStockManagePageByProduction(params) } else if (activeTab.value === 'manual') { apiCall = getStockManagePageByCustom(params) } else { apiCall = getStockManagePage(params) } apiCall.then(res => { getStockManagePage(params).then(res => { tableLoading.value = false tableData.value = res.data.records total.value = res.data.total // 数据加载完成后检查库存 // checkStockAndCreatePurchase(); }).catch(() => { tableLoading.value = false }) } // 切换 tab const handleTabChange = () => { page.current = 1 searchForm.value.supplierName = '' searchForm.value.customerName = '' searchForm.value.timeStr = '' selectedRows.value = [] getList() } // 表格选择数据 @@ -508,14 +366,7 @@ } ).then(() => { const exportParams = buildQueryParams() // 根据不同的 tab 类型调用不同的导出接口 let exportUrl = "/stockin/exportCopy" if (activeTab.value === 'production') { exportUrl = "/stockin/exportCopyOne" } else if (activeTab.value === 'manual') { exportUrl = "/stockin/exportCopyTwo" } proxy.download(exportUrl, exportParams, '库存信息.xlsx') proxy.download("/stockin/exportCopy", exportParams, '库存信息.xlsx') }).catch(() => { proxy.$modal.msg("已取消") }) src/views/productionManagement/operationScheduling/index.vue
@@ -242,7 +242,9 @@ .then((res) => { proxy.$modal.msgSuccess("取消排产成功"); getList(); }) }).catch(() => { getList(); }) }) .catch(() => { proxy.$modal.msg("已取消");