From fde27654b1b21a8d2c149d3d12f86c3c7314c091 Mon Sep 17 00:00:00 2001 From: lishenao <3065849776@qq.com> Date: 星期四, 03 七月 2025 15:00:11 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- src/views/inventoryManagement/receiptManagement/index.vue | 149 ++++++++++++++++++------------------------------- 1 files changed, 56 insertions(+), 93 deletions(-) diff --git a/src/views/inventoryManagement/receiptManagement/index.vue b/src/views/inventoryManagement/receiptManagement/index.vue index 56c25bf..7f877fa 100644 --- a/src/views/inventoryManagement/receiptManagement/index.vue +++ b/src/views/inventoryManagement/receiptManagement/index.vue @@ -40,98 +40,54 @@ <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="operationType === 'add' ? '鏂板鍏ュ簱' : '缂栬緫鍏ュ簱'" width="70%" @close="closeDia"> <el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef"> - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="浜у搧澶х被锛�" prop="productId"> - <el-select v-model="form.productId" placeholder="璇烽�夋嫨" clearable filterable @change="handleProductChange"> - <el-option v-for="item in productList" :key="item.id" :label="item.productName" - :value="item.id" /> - </el-select> + <el-form-item label="閲囪喘璁㈠崟鍙�" prop="salesContractNo"> + <el-input v-model="form.salesContractNo" placeholder="璇疯緭鍏�" clearable /> </el-form-item> - </el-col> - - <el-col :span="12"> - <el-form-item label="瑙勬牸鍨嬪彿锛�" prop="productManageId"> - <el-select v-model="form.productModelId" placeholder="璇峰厛閫夋嫨浜у搧澶х被" clearable filterable :disabled="!form.productId" - @change="handleModelChange"> - <el-option v-for="item in productModelList" :key="item.id" :label="item.model" - :value="item.id" /> - </el-select> - </el-form-item> - </el-col> - </el-row> - - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="渚涘簲鍟嗗悕绉帮細" prop="salesContractNo"> - <el-select v-model="form.supplierId" placeholder="璇烽�夋嫨" clearable> - <el-option v-for="item in supplierLists" :key="item.id" :label="item.supplierName" - :value="item.id" /> - </el-select> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="鍗曚綅锛�" prop="customerId"> - <el-input v-model="form.unit" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - </el-row> - - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="鍏ュ簱鏃堕棿锛�" prop="projectName"> - <el-date-picker style="width: 100%" v-model="form.inboundTime" value-format="YYYY-MM-DD" format="YYYY-MM-DD" - type="date" placeholder="璇烽�夋嫨" clearable /> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="鍏ュ簱鎵规锛�" prop="entryPerson"> - <el-input v-model="form.inboundBatch" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - </el-row> - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="鍏ュ簱鏁伴噺锛�" prop="customerContractNo"> - <el-input v-model="form.inboundQuantity" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="鍚◣鍗曚环锛�" prop="customerId"> - <el-input v-model="form.taxInclusiveUnitPrice" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - </el-row> - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="鍚◣鎬讳环锛�" prop="customerContractNo"> - <el-input v-model="form.taxInclusiveTotalPrice" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="绋庣巼锛�" prop="customerId"> - <el-input v-model="form.taxRate" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - </el-row> - <el-row :gutter="30"> - <el-col :span="12"> - <el-form-item label="涓嶅惈绋庢�讳环锛�" prop="entryDate"> - <el-input v-model="form.taxExclusiveTotalPrice" placeholder="璇疯緭鍏�" clearable /> - </el-form-item> - </el-col> - <el-col :span="12"> - <el-form-item label="鍏ュ簱浜猴細" prop="entryPerson"> - <el-select v-model="form.nickName" placeholder="璇烽�夋嫨" clearable> - <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId" /> - </el-select> - </el-form-item> - </el-col> - </el-row> + <el-table + :data="productData" + border + @selection-change="productSelected" + > + <el-table-column align="center" type="selection" width="55" /> + <el-table-column + align="center" + label="搴忓彿" + type="index" + width="60" + /> + <el-table-column label="浜у搧澶х被" prop="productCategory" /> + <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" /> + <el-table-column label="鍗曚綅" prop="unit" width="70" /> + <el-table-column label="閲囪喘鏁伴噺" prop="quantity" width="100" /> + <el-table-column label="寰呭叆搴撴暟閲�" prop="quantity0" width="100" /> + <el-table-column label="鏈鍏ュ簱鏁伴噺" prop="quantityStock" width="120"> + <template #default="scope"> + <el-input v-model="scope.row.quantityStock" type="number" :min="0" :max="scope.row.quantity0" /> + </template> + </el-table-column> + <el-table-column label="绋庣巼(%)" prop="taxRate" width="120" /> + <el-table-column + label="鍚◣鍗曚环(鍏�)" + prop="taxInclusiveUnitPrice" + :formatter="formattedNumber" + width="150" + /> + <el-table-column + label="鍚◣鎬讳环(鍏�)" + prop="taxInclusiveTotalPrice" + :formatter="formattedNumber" + width="150" + /> + <el-table-column + label="涓嶅惈绋庢�讳环(鍏�)" + prop="taxExclusiveTotalPrice" + :formatter="formattedNumber" + width="150" + /> + </el-table> </el-form> <template #footer> <div class="dialog-footer"> @@ -160,7 +116,6 @@ import {modelListPage, productTreeList} from "@/api/basicData/product.js"; const userStore = useUserStore() const { proxy } = getCurrentInstance() - const tableData = ref([]) const selectedRows = ref([]) const userList = ref([]) @@ -177,7 +132,6 @@ size: 100, }) const total = ref(0) -// const fileList = ref([]) // 鐢ㄦ埛淇℃伅琛ㄥ崟寮规鏁版嵁 const operationType = ref('') @@ -228,7 +182,6 @@ taxRate: [{ required: true, message: "璇疯緭鍏�", trigger: "blur" }], } }) - const { searchForm, form, rules } = toRefs(data) // 鏌ヨ鍒楄〃 @@ -237,13 +190,11 @@ page.current = 1 getList() } - const paginationChange = (obj) => { page.current = obj.page; page.size = obj.limit; getList() } - const getList = () => { tableLoading.value = true getStockInPage({ ...searchForm.value, ...page }).then(res => { @@ -289,7 +240,10 @@ } finally { loadingProducts.value = false; } + return null; // 娌℃湁鎵惧埌鑺傜偣锛岃繑鍥瀗ull }; +// 琛ㄦ牸閫夋嫨鏁版嵁 +const handleSelectionChange = (selection) => { // 鍔犺浇瑙勬牸鍨嬪彿鍒楄〃 const loadProductModels = async (productId) => { @@ -517,6 +471,15 @@ const day = String(today.getDate()).padStart(2, '0'); return `${year}-${month}-${day}`; } + +const productSelectedRows = ref([]) +const productSelected = (selectedRows) => { + productSelectedRows.value = selectedRows; +}; + +const formattedNumber = (row, column, cellValue) => { + return parseFloat(cellValue).toFixed(2); +}; onMounted(() => { getList() }) -- Gitblit v1.9.3