From cf6a4b874aed82592eea78294715c7c688f9b248 Mon Sep 17 00:00:00 2001 From: songshankun <songshankun@foxmail.com> Date: 星期五, 03 十一月 2023 14:50:31 +0800 Subject: [PATCH] Merge branch 'dev' into songshankun/add-token --- src/views/warehouseManage/listingRules/index.vue | 101 +++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 87 insertions(+), 14 deletions(-) diff --git a/src/views/warehouseManage/listingRules/index.vue b/src/views/warehouseManage/listingRules/index.vue index a9ed679..de53dd3 100644 --- a/src/views/warehouseManage/listingRules/index.vue +++ b/src/views/warehouseManage/listingRules/index.vue @@ -4,12 +4,14 @@ <SearchCommonView :add-title="addTitle" :show-discard="showDiscard" - :placeholder="'璇疯緭鍏ヤ綅缃�/浜у搧'" + :placeholder="'璇疯緭鍏ヤ骇鍝�/浜у搧绫诲埆'" :amount-view="false" + :search-task-map="searchTaskMap" @addCommonClick="addProductClick" @searchClick="getList" @discardBtnClick="discardBtnClick" @applyBtnClick="applyBtnClick" + @delSelectClick="delSelectClick" /> </div> <div class="list-view"> @@ -21,6 +23,7 @@ @tableRowClick="tableRowClick" @selLocationClick="selLocationClick" @selProductClick="selProductClick" + @selProductTypeClick="selProductTypeClick" > <template slot="tableButton"> <el-table-column label="鎿嶄綔" width="90" align="center"> @@ -88,12 +91,32 @@ isRowClick: false, areaId: 0, productId: 0, + productCategoryId: 0, subLocationId: 0, - currentRowId: 0 + currentRowId: 0, + rowIndex: -1, + RuleType: 0, + queryProductId: null, + categoryId: null, + searchTaskMap: [] } }, created() { this.setTable() + let query = this.$route.query + if (query) { + console.log("aaaaaaaaaaaaa", query) + this.queryProductId = query.productId?.length ? query.productId : null + this.categoryId = query.id ? Number(query.id) : null + this.pagerOptions.currPage = 1 + this.searchTaskMap = + query?.id > 0 + ? [{ categoryId: this.categoryId, title: query.categoryName }] + : query.productId?.length > 0 + ? [{ productId: this.queryProductId, title: query.productName }] + : [] + console.log(this.searchTaskMap) + } this.getData() }, methods: { @@ -105,7 +128,7 @@ tableColumn: [ { label: "褰撲骇鍝佸埌杈�", prop: "areaName", location: true }, { label: "浜у搧", prop: "productName", product: true }, - { label: "浜у搧绫诲埆", prop: "productCategory" }, + { label: "浜у搧绫诲埆", prop: "productCategory", productType: true }, { label: "瀛樺偍鍒板瓙浣嶇疆", prop: "subLocation", location: true } // { label: "鍏徃", prop: "companyName", company: true } ] @@ -114,7 +137,8 @@ // 璇锋眰鏁版嵁 async getData() { await getListingRulesList({ - // keyword: this.keyword, + productId: this.queryProductId ? this.queryProductId : null, + productCategoryId: this.categoryId ? this.categoryId : null, page: this.pagerOptions.currPage, pageSize: this.pagerOptions.pageSize }).then((res) => { @@ -122,8 +146,8 @@ const list = res.data.map((item) => { return { ...item, - areaName: item.area.jointName, - subLocation: item.location.jointName, + areaName: { label: item.area.jointName, value: item.area.id }, + subLocation: { label: item.location.jointName, value: item.location.id }, productName: item.product.name, productCategory: item.productCategory.name, isSet: false, @@ -147,6 +171,8 @@ }, // 鏂板 addProductClick() { + this.tableList.tableColumn[1].product = true + this.tableList.tableColumn[2].productType = true console.log(this.tableData) this.isSel() if (this.isNoProduct && this.addTitle === "鏂板缓") { @@ -165,7 +191,8 @@ productName: "", companyName: "", isSet: true, - isEdit: false + isEdit: false, + isOrder: true }) this.areaId = 0 this.subLocationId = 0 @@ -174,8 +201,8 @@ } else { if (this.areaId === 0) { this.$message.error("璇烽�夋嫨褰撳墠浜у搧鍒拌揪浣嶇疆") - } else if (this.productId === 0) { - this.$message.error("璇烽�夋嫨浜у搧") + } else if (this.productId === 0 && this.productCategoryId === "") { + this.$message.error("璇烽�夋嫨浜у搧鎴栦骇鍝佺被鍒�") } else if (this.subLocationId === 0) { this.$message.error("璇烽�夋嫨瀛樺偍鍒板瓙浣嶇疆") } else { @@ -193,11 +220,12 @@ }) let requestUrl = this.currentRowId === 0 ? addListingRules : updateListingRules requestUrl({ + RuleType: this.RuleType, id: this.currentRowId, areaId: this.areaId, locationId: this.subLocationId, - productCategoryId: this.productCategoryId, - productId: this.productId + productCategoryId: this.productCategoryId || "", + productId: this.productId || "" }).then((res) => { console.log(res) if (res.code === 200) { @@ -213,7 +241,7 @@ isSel() { for (let i = 0; i < this.tableData.length; i++) { if (this.tableData[i].productName.length === 0) { - this.isNoProduct = false + this.isNoProduct = true // 鏆傛椂淇敼涓簍rue锛屽鏋滀骇鍝佷互鍚庢槸蹇呭~锛屾敼涓篺alse灏辫 break } else { this.isNoProduct = true @@ -222,6 +250,8 @@ }, // 鍙栨秷 discardBtnClick() { + this.tableList.tableColumn[1].product = true + this.tableList.tableColumn[2].productType = true if (this.isRowClick) { this.tableData.map((item) => { item.isEdit = true @@ -265,11 +295,12 @@ }, // 琛岀偣鍑� tableRowClick(row, rowIndex) { - console.log("11111") + this.rowIndex = rowIndex this.isSel() if (!this.isNoProduct && this.currentRowId === 0) { this.$message.error("璇峰畬鎴愬綋鍓嶆柊寤烘垨鍙栨秷鏂板缓") } else { + this.tableList.tableColumn[2].productType = true this.currentRowId = row.id this.addTitle = "淇濆瓨" this.showDiscard = true @@ -280,6 +311,7 @@ this.tableData.map((item, index) => { if (index === rowIndex) { item.isEdit = false + item.isOrder = true } else { item.isEdit = true } @@ -288,6 +320,16 @@ this.subLocationId = row.locationId this.productCategoryId = row.productCategoryId this.productId = row.productId + if ( + this.tableList.tableData[rowIndex].productName === "" || + this.tableList.tableData[rowIndex].productName === " " + ) { + this.tableList.tableColumn[1].product = false + this.tableList.tableColumn[2].productType = true + } else { + this.tableList.tableColumn[1].product = true + this.tableList.tableColumn[2].productType = false + } } }, // 鎼滅储 @@ -324,9 +366,23 @@ }, // 閫変腑浜у搧鏂规硶 selProductClick(item) { - console.log(item) + console.log(item, "浜у搧") + this.RuleType = 1 + this.tableList.tableColumn[2].productType = false this.productId = item.value this.productCategoryId = item.categoryId + }, + // 閫変腑浜у搧绫诲瀷鏂规硶 + selProductTypeClick(item) { + this.RuleType = 2 + if (this.currentRowId === 0) { + this.productCategoryId = item.value + } else { + this.tableList.tableColumn[1].product = false + this.tableList.tableData[this.rowIndex].productName = " " + this.productId = "" + this.productCategoryId = this.tableList.tableData[this.rowIndex].productCategoryId + } }, // 鍒犻櫎 async delClick(scope) { @@ -337,6 +393,23 @@ this.getData() } }) + }, + // 鍒犻櫎浜у搧绫诲瀷 + delSelectClick() { + this.categoryId = 0 + this.queryProductId = "" + this.getData() + } + }, + watch: { + rowIndex(newVal) { + if (this.tableList.tableData[newVal].productName === " ") { + this.tableList.tableColumn[1].product = false + this.tableList.tableColumn[2].productType = true + } else { + this.tableList.tableColumn[1].product = true + this.tableList.tableColumn[2].productType = false + } } } } -- Gitblit v1.8.0