From 5a6b804b09a00ef3d296702453274f654cf5aad4 Mon Sep 17 00:00:00 2001 From: 曹睿 <360930172@qq.com> Date: 星期四, 10 七月 2025 14:25:29 +0800 Subject: [PATCH] fix: 修复来票登记,关闭展开栏的报错 --- src/views/inventoryManagement/issueManagement/index.vue | 86 +++++++++++++++++++------------------------ 1 files changed, 38 insertions(+), 48 deletions(-) diff --git a/src/views/inventoryManagement/issueManagement/index.vue b/src/views/inventoryManagement/issueManagement/index.vue index 2a5bb51..859dc94 100644 --- a/src/views/inventoryManagement/issueManagement/index.vue +++ b/src/views/inventoryManagement/issueManagement/index.vue @@ -10,7 +10,7 @@ <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> + <!-- <el-button type="danger" plain @click="handleDelete">鍒犻櫎</el-button> --> </div> </div> <div class="table_list"> @@ -19,21 +19,22 @@ :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="inboundTime" width="100" show-overflow-tooltip /> - <el-table-column label="鍏ュ簱鎵规" prop="inboundBatch" width="160" show-overflow-tooltip /> + <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="160" show-overflow-tooltip /> - <el-table-column label="浜у搧澶х被" prop="productName" width="100" show-overflow-tooltip /> - <el-table-column label="瑙勬牸鍨嬪彿" prop="model" width="160" show-overflow-tooltip /> + <el-table-column label="浜у搧澶х被" prop="productCategory" width="100" show-overflow-tooltip /> + <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="160" show-overflow-tooltip /> <el-table-column label="鍗曚綅" prop="unit" width="70" show-overflow-tooltip /> - <el-table-column label="鍏ュ簱鏁伴噺" prop="inboundQuantity" width="90" show-overflow-tooltip /> + <el-table-column label="鍏ュ簱鏁伴噺" prop="inboundNum" width="90" show-overflow-tooltip /> + <el-table-column label="搴撳瓨鏁伴噺" prop="inboundNum0" 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="nickname" width="80" 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> + <el-button link type="primary" size="small" @click="openForm(scope.row);">棰嗙敤</el-button> </template> </el-table-column> </el-table> @@ -70,26 +71,21 @@ import { ref } from 'vue' import { ElMessageBox } from "element-plus"; import useUserStore from '@/store/modules/user' -import { userListNoPage } from "@/api/system/user.js"; +import { userListNoPageByTenantId } from "@/api/system/user.js"; import { - ledgerListPage, - customerList, - addOrUpdateSalesLedger, - getSalesLedgerWithProducts, delLedger -} from "@/api/salesManagement/salesLedger.js"; + getStockInPage +} from "@/api/inventoryManagement/stockIn.js"; import { getStockManagePage, delStockManage, - stockOut + stockOut, } from "@/api/inventoryManagement/stockManage.js"; const userStore = useUserStore() const { proxy } = getCurrentInstance() const tableData = ref([]) -const productData = ref([]) const selectedRows = ref([]) const userList = ref([]) -const customerOption = ref([]) const tableLoading = ref(false) const page = reactive({ current: 1, @@ -103,34 +99,17 @@ const data = reactive({ searchForm: { supplierName: '', + inboundQuantity:'', + inboundTime:'', + nickName: '', + userId: '', }, form: { - supplierId: null, - productId: null, - userId: null, - supplierName: '', - productName: '', - model: '', - unit: '', - inboundTime: '', - inboundBatch: '', - inboundQuantity: '', - taxInclusiveUnitPrice: '', - taxInclusiveTotalPrice: '', - taxRate: '', - taxExclusiveTotalPrice: '', - nickName: '', + productrecordId: '', }, rules: { - supplierName: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], - productCategory: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], - specificationModel: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], - unit: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], inboundTime: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], - inboundBatch: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], inboundQuantity: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], - taxInclusiveUnitPrice: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], - taxRate: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], nickname: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }] } }) @@ -149,7 +128,7 @@ } const getList = () => { tableLoading.value = true - getStockManagePage({ ...searchForm.value, ...page }).then(res => { + getStockInPage({ ...searchForm.value, ...page }).then(res => { tableLoading.value = false tableData.value = res.data.records console.log('res', res.data.records) @@ -157,6 +136,7 @@ tableLoading.value = false }) } + const findNodeById = (nodes, productId) => { for (let i = 0; i < nodes.length; i++) { if (nodes[i].value === productId) { @@ -173,7 +153,6 @@ }; // 琛ㄦ牸閫夋嫨鏁版嵁 const handleSelectionChange = (selection) => { - // 杩囨护鎺夊瓙鏁版嵁 selectedRows.value = selection.filter(item => item.id); console.log('selection', selectedRows.value) @@ -186,22 +165,27 @@ }; const currentRowId = ref(null) // 鏂板锛氬瓨鍌ㄥ綋鍓嶆搷浣滅殑琛孖D +const currentRowNum = ref(0) +const salesLedgerProductId = ref(null); + // 鎵撳紑寮规 const openForm = async (row) => { dialogFormVisible.value = true currentRowId.value = row.id + currentRowNum.value = row.inboundNum0 + salesLedgerProductId.value = row.salesLedgerProductId form.value = {} // 鍒濆鍖栬〃鍗曟暟鎹� form.value = { + productrecordId: '', inboundQuantity: '', // 鍑哄簱鏁伴噺娓呯┖ inboundTime: getCurrentDate(), // 榛樿褰撳墠鏃ユ湡 nickName: '', // 榛樿褰撳墠鐢ㄦ埛 } console.log('form',form.value) - // 鍔犺浇鐢ㄦ埛鍒楄〃 try { - const userLists = await userListNoPage() + const userLists = await userListNoPageByTenantId() userList.value = userLists.data } catch (error) { console.error('鍔犺浇鐢ㄦ埛鍒楄〃澶辫触:', error) @@ -210,14 +194,20 @@ // 鎻愪氦琛ㄥ崟 const submitForm = () => { + let num = Number(form.value.inboundQuantity) + if(num < 1 || num > currentRowNum.value){ + return proxy.$modal.msgWarning("璇峰~鍏ユ湁鏁堟暟瀛�") + } proxy.$refs["formRef"].validate(valid => { if (valid && currentRowId.value) { const outData = { id: currentRowId.value, // 鍘熷璁板綍ID - outQuantity: form.value.inboundQuantity, // 鍑哄簱鏁伴噺 - outTime: form.value.inboundTime, // 鍑哄簱鏃堕棿 - userId: form.value.userId // 鎿嶄綔浜� + salesLedgerProductId: salesLedgerProductId.value, + quantity: form.value.inboundQuantity, // 鍑哄簱鏁伴噺 + time: form.value.inboundTime, // 鍑哄簱鏃堕棿 + userId: form.value.nickName // 鎿嶄綔浜� } + console.log(outData) stockOut(outData).then(res => { proxy.$modal.msgSuccess("鎻愪氦鎴愬姛") @@ -238,14 +228,14 @@ // 瀵煎嚭 const handleOut = () => { ElMessageBox.confirm( - '閫変腑鐨勫唴瀹瑰皢琚鍑猴紝鏄惁纭瀵煎嚭锛�', + '鏄惁纭瀵煎嚭锛�', '瀵煎嚭', { confirmButtonText: '纭', cancelButtonText: '鍙栨秷', type: 'warning', } ).then(() => { - proxy.download("/stockmanagement/export", {}, '鍏ュ簱鍙拌处.xlsx') + proxy.download("/stockin/export", {}, '鍏ュ簱鍙拌处.xlsx') }).catch(() => { proxy.$modal.msg("宸插彇娑�") }) -- Gitblit v1.9.3