From 77e29e8e84a8a44c924b304fcb06f81dec594b07 Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期五, 06 六月 2025 14:57:06 +0800 Subject: [PATCH] 1.库存管理页面表头修改 2.销售出库表单字段添加 --- src/views/warehouseManagement/index.vue | 145 +++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 125 insertions(+), 20 deletions(-) diff --git a/src/views/warehouseManagement/index.vue b/src/views/warehouseManagement/index.vue index b0ce67e..bda020e 100644 --- a/src/views/warehouseManagement/index.vue +++ b/src/views/warehouseManagement/index.vue @@ -54,29 +54,29 @@ </el-tabs> <!-- 鎿嶄綔鎸夐挳鍖� --> <el-space> - <el-button type="primary" :icon="Plus" >鏂板缓</el-button> <el-button type="danger" :icon="Delete">鍒犻櫎</el-button> <el-button type="info" plain :icon="Download">瀵煎嚭</el-button> <el-button type="success" plain :icon="Refresh" v-if="activeTab=== 'officialInventory'" @click="mergeRows">鍚堝苟</el-button> </el-space> <div> - <el-table :data="tableData" border @selection-change="selectionChange"> + <el-table :data="tableData" border @selection-change="selectionChange" style="width: 100%"> <el-table-column type="selection" width="55" align="center" /> <el-table-column label="搴忓彿" type="index" width="60" align="center" /> <el-table-column prop="name" label="渚涜揣鍟嗗悕绉�" width="180" sortable/> <el-table-column prop="type" label="鐓ょ" sortable/> <el-table-column prop="unit" label="鍗曚綅" width="70"/> - <el-table-column prop="number" label="搴撳瓨鏁伴噺" sortable/> + <el-table-column prop="number" label="搴撳瓨鏁伴噺" sortable min-width="110"/> <el-table-column prop="money" label="鍗曚环锛堝惈绋庯級" sortable width="130"/> <el-table-column prop="money1" label="鎬讳环锛堝惈绋庯級" width="130" /> <el-table-column prop="money2" label="鎴愭湰鍗曚环" /> - <el-table-column prop="money3" label="鍒╂鼎" /> - <el-table-column prop="money4" label="鐓よ川" sortable/> - <el-table-column prop="createUser" label="鐧昏浜�" /> - <el-table-column prop="createTime" label="鐧昏鏃ユ湡" /> - <el-table-column fixed="right" label="鎿嶄綔" min-width="90" align="center"> - <template #default> - <el-button link type="primary" size="small">缂栬緫</el-button> + <el-table-column label="鐓よ川" align="center" v-if="activeTab=== 'officialInventory'" width="600"> + <el-table-column v-for="col in columnTitle" :key="col.prop" :prop="col.prop" :label="col.label" align="center" sortable min-width="200"/> + </el-table-column> + <el-table-column prop="createUser" label="鐧昏浜�" width="180"/> + <el-table-column prop="createTime" label="鐧昏鏃ユ湡" width="180"/> + <el-table-column fixed="right" label="鎿嶄綔" min-width="90" align="center" v-if="activeTab !== 'officialInventory'"> + <template #default="scope"> + <el-button link type="primary" size="small" @click="reviewDia(scope.row)">瀹℃牳</el-button> </template> </el-table-column> </el-table> @@ -90,6 +90,90 @@ /> </div> </el-card> + <!-- 瀹℃牳寰呭叆搴撳脊妗� --> + <el-dialog title="瀹℃牳鍏ュ簱" v-model="reviewVisible" width="1000px"> + <el-form :model="form" :rules="rules" ref="userRef" label-width="180px"> + <el-row> + <el-col :span="12"> + <el-form-item label="渚涜揣鍟嗗悕绉�" prop="userName"> + <el-input v-model="form.name" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鐓ょ" prop="nickName"> + <el-input v-model="form.type" placeholder="璇疯緭鍏ュ鍚�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="鍗曚綅" prop="userName"> + <el-input v-model="form.unit" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="搴撳瓨鏁伴噺" prop="nickName"> + <el-input v-model="form.num" placeholder="璇疯緭鍏ュ鍚�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="鍗曚环(鍚◣)" prop="userName"> + <el-input v-model="form.priceOne" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鎬讳环(鍚◣)" prop="nickName"> + <el-input v-model="form.priceAll" placeholder="璇疯緭鍏ュ鍚�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="鎴愭湰鍗曚环" prop="userName"> + <el-input v-model="form.price" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鐓よ川" prop="userName"> + <el-input v-model="form.type2" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + <el-divider></el-divider> + <el-row> + <el-col :span="12"> + <el-form-item label="鍏ㄦ按鍚噺鐧惧垎姣� (%)" prop="userName"> + <el-input v-model="form.value1" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鍥哄畾纰崇櫨鍒嗘瘮 (%)" prop="nickName"> + <el-input v-model="form.value2" placeholder="璇疯緭鍏ュ鍚�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="12"> + <el-form-item label="浣庝綅鍙戠儹閲忥紙鍗曚綅锛氬崈鍗�/鍗冨厠锛�" prop="userName"> + <el-input v-model="form.value3" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" maxlength="30" /> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="鐏板垎鐧惧垎姣� (%)" prop="nickName"> + <el-input v-model="form.value4" placeholder="璇疯緭鍏ュ鍚�" maxlength="30" /> + </el-form-item> + </el-col> + </el-row> + </el-form> + <template #footer> + <div class="dialog-footer"> + <el-button type="primary" @click="submitReviewForm">纭� 瀹�</el-button> + <el-button @click="cancelReview">鍙� 娑�</el-button> + </div> + </template> + </el-dialog> <!-- 鍚堝苟鏁版嵁寮规 --> <el-dialog title="鍚堝苟搴撳瓨" v-model="mergeVisible" width="800px"> <el-form :model="form" :rules="rules" ref="userRef" label-width="100px"> @@ -148,16 +232,18 @@ const total = ref(0); const pageNum = ref(1); const pageSize = ref(10); +// 瀹℃牳寮规 +const reviewVisible = ref(false); // 鍚堝苟寮规 const mergeVisible = ref(false) const data = reactive({ form: {}, rules: { - userName: [{ required: true, message: "鐧诲綍璐﹀彿涓嶈兘涓虹┖", trigger: "blur" }, { pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/, message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜", trigger: "blur" }], - nickName: [{ required: true, message: "鐢ㄦ埛濮撳悕涓嶈兘涓虹┖", trigger: "blur" }], - roleIds: [{ required: true, message: "瑙掕壊涓嶈兘涓虹┖", trigger: "change" }], - deptId: [{ required: true, message: "閮ㄩ棬涓嶈兘涓虹┖", trigger: "change" }], - password: [{ required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" }, { min: 5, max: 20, message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿", trigger: "blur" }, { pattern: /^[^<>"'|\\]+$/, message: "涓嶈兘鍖呭惈闈炴硶瀛楃锛�< > \" ' \\\ |", trigger: "blur" }], + // userName: [{ required: true, message: "鐧诲綍璐﹀彿涓嶈兘涓虹┖", trigger: "blur" }], + // nickName: [{ required: true, message: "鐢ㄦ埛濮撳悕涓嶈兘涓虹┖", trigger: "blur" }], + // roleIds: [{ required: true, message: "瑙掕壊涓嶈兘涓虹┖", trigger: "change" }], + // deptId: [{ required: true, message: "閮ㄩ棬涓嶈兘涓虹┖", trigger: "change" }], + // password: [{ required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" }], } }) @@ -177,6 +263,7 @@ identifyNumber: "", address: "", }) +const columnTitle = ref([]) onMounted(() => { handleTabClick({ props: { name: "supplier" } }); }); @@ -208,14 +295,20 @@ } const getList = () => { tableLoading.value = true; + // 璧嬪�肩叅璐ㄨ〃澶村睍绀哄瓧娈� + columnTitle.value = [ + {prop: 'value1', label: '鐧惧垎姣�1'}, + {prop: 'value2', label: '鐧惧垎姣�2'}, + {prop: 'value3', label: '鐧惧垎姣�3'}, + ] setTimeout(() => { // 鏆傛椂寮曞叆娴嬭瘯鏁版嵁 tableData.value = [ - { name: "渚涘簲鍟咥", type: "鍔ㄥ姏鐓�", unit: "鍚�", number: 120, money: 500, money1: 200, money2: 200, money3: 300, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01' }, - { name: "渚涘簲鍟咥", type: "鍔ㄥ姏鐓�", unit: "鍚�", number: 100, money: 600, money1: 300, money2: 300, money3: 300, money4: '浣庝綅', createUser: 'admin', createTime: '2025-06-01' }, - { name: "渚涘簲鍟咮", type: "鐒︾叅", unit: "鍚�", number: 300, money: 789,money1: 400, money2: 400, money3: 400, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01' }, - { name: "渚涘簲鍟咮", type: "鐒︾叅", unit: "鍚�", number: 256, money: 800, money1: 420, money2: 420, money3: 420, money4: '浣庝綅', createUser: 'admin', createTime: '2025-06-01' }, - { name: "渚涘簲鍟咰", type: "鏃犵儫鐓�", unit: "鍚�", number: 256, money: 700, money1: 300, money2: 300, money3: 300, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01' } + { name: "渚涘簲鍟咥", type: "鍔ㄥ姏鐓�", unit: "鍚�", number: 120, money: 500, money1: 200, money2: 200, money3: 300, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01', value1: 12, value2: 23, value3: 14 }, + { name: "渚涘簲鍟咥", type: "鍔ㄥ姏鐓�", unit: "鍚�", number: 100, money: 600, money1: 300, money2: 300, money3: 300, money4: '浣庝綅', createUser: 'admin', createTime: '2025-06-01', value1: 14, value2: 23, value3: 14 }, + { name: "渚涘簲鍟咮", type: "鐒︾叅", unit: "鍚�", number: 300, money: 789,money1: 400, money2: 400, money3: 400, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01', value1: 12, value2: 13, value3: 23 }, + { name: "渚涘簲鍟咮", type: "鐒︾叅", unit: "鍚�", number: 256, money: 800, money1: 420, money2: 420, money3: 420, money4: '浣庝綅', createUser: 'admin', createTime: '2025-06-01', value1: 14, value2: 23, value3: 14 }, + { name: "渚涘簲鍟咰", type: "鏃犵儫鐓�", unit: "鍚�", number: 256, money: 700, money1: 300, money2: 300, money3: 300, money4: '楂樹綅', createUser: 'admin', createTime: '2025-06-01', value1: 12, value2: 13, value3: 32 } ]; total.value = tableData.value.length; tableLoading.value = false; @@ -264,6 +357,10 @@ const selectionChange = (rows) => { selectedRows.value = rows } +// 鎵撳紑瀹℃牳寮规 +const reviewDia = (row) => { + reviewVisible.value = true +} // 鍚堝苟搴撳瓨鏁版嵁鏂规硶 const mergeRows = () => { if (selectedRows.value.length < 2) { @@ -280,6 +377,14 @@ const cancel = () => { mergeVisible.value = false } +// 鎻愪氦瀹℃牳琛ㄥ崟 +const submitReviewForm = () => { + +} +// 鍏抽棴瀹℃牳寮规 +const cancelReview = () => { + reviewVisible.value = false +} </script> <style scoped> -- Gitblit v1.9.3