From 47121dff8da689923f2f1af9daf63854f385c395 Mon Sep 17 00:00:00 2001
From: yangfeng <wanwan926_4@163.com>
Date: 星期五, 03 十一月 2023 13:37:58 +0800
Subject: [PATCH] 查看产品、产品类别弹窗调整上架规则
---
src/views/warehouseManage/listingRules/index.vue | 119 ++++++++++++++---------
src/views/productManage/product/index.vue | 1
src/views/productManage/productCategory/AddProductCategoryDialog.vue | 93 +++++++++++-------
src/views/productManage/product/AddProductDialog.vue | 43 ++++++--
4 files changed, 162 insertions(+), 94 deletions(-)
diff --git a/src/views/productManage/product/AddProductDialog.vue b/src/views/productManage/product/AddProductDialog.vue
index e24ecd2..8be8160 100644
--- a/src/views/productManage/product/AddProductDialog.vue
+++ b/src/views/productManage/product/AddProductDialog.vue
@@ -43,6 +43,7 @@
:show-procure="showProcure"
:countObject="statisticsMap"
:show-sale="showSale"
+ @listingRulesClick="listingRulesClick"
/>
<div class="bottom">
<el-tabs v-model="activeName" type="card">
@@ -558,22 +559,24 @@
/**
* 闈炲繀濉」鍚庣杩斿洖鐨勬槸鏁板瓧 0,琛ㄥ崟闇�瑕佺┖涓叉墠鑳借涓烘湭閫夋嫨鍥炴樉
*/
- setOptionalFieldsToEmpty(){
- ['productType','categoryId']
- .filter(filed => this.editConfig.infomation[filed] === 0)
- .forEach(filed => {
- this.editConfig.infomation[filed] = ''
- })
+ setOptionalFieldsToEmpty() {
+ let arr = ["productType", "categoryId"]
+ arr
+ .filter((filed) => this.editConfig.infomation[filed] === 0)
+ .forEach((filed) => {
+ this.editConfig.infomation[filed] = ""
+ })
},
/**
* 鍚庣鍙帴鍙楁暟瀛楀舰寮�, 淇濆瓨鏃惰繕寰楀啀杞洖鍘�
*/
- unsetFieldsToNumber(){
- ['productType','categoryId']
- .filter(filed => this.editConfig.infomation[filed] === '')
- .forEach(filed => {
- this.editConfig.infomation[filed] = 0
- })
+ unsetFieldsToNumber() {
+ let arr = ["productType", "categoryId"]
+ arr
+ .filter((filed) => this.editConfig.infomation[filed] === "")
+ .forEach((filed) => {
+ this.editConfig.infomation[filed] = 0
+ })
},
// 鑾峰彇浜у搧绫诲埆
async getProductCategoryList() {
@@ -645,7 +648,7 @@
this.$message.success("娣诲姞鎴愬姛")
this.$parent.getData()
}
- },console.error)
+ }, console.error)
}
})
},
@@ -779,6 +782,20 @@
})
}
},
+ // 涓婃灦瑙勫垯
+ listingRulesClick() {
+ this.$refs.form.validate((valid) => {
+ if (valid) {
+ this.$router.push({
+ path: "/warehouseManage/listingRules",
+ query: {
+ productName: this.editConfig.infomation.name,
+ productId: this.editConfig.title === "鏂板缓" ? "" : this.editConfig.infomation.id
+ }
+ })
+ }
+ })
+ },
// 鍙攢鍞�/鍙噰璐�
checkboxChange(val, param) {
if (val === "閲囪喘") {
diff --git a/src/views/productManage/product/index.vue b/src/views/productManage/product/index.vue
index 2eed6ad..c5855a4 100644
--- a/src/views/productManage/product/index.vue
+++ b/src/views/productManage/product/index.vue
@@ -125,7 +125,6 @@
this.pagerOptions.currPage = 1
this.searchTaskMap = query.id ? [{ categoryId: this.categoryId, title: query.categoryName }] : []
}
-
this.getData()
},
methods: {
diff --git a/src/views/productManage/productCategory/AddProductCategoryDialog.vue b/src/views/productManage/productCategory/AddProductCategoryDialog.vue
index b8453ee..63c4f32 100644
--- a/src/views/productManage/productCategory/AddProductCategoryDialog.vue
+++ b/src/views/productManage/productCategory/AddProductCategoryDialog.vue
@@ -38,7 +38,12 @@
size="mini"
>
<div class="basic-info">
- <FormBtnsView :showProduct="true" :countObject="statisticsMap" @productClick="productClick" />
+ <FormBtnsView
+ :showProduct="true"
+ :countObject="statisticsMap"
+ @productClick="productClick"
+ @listingRulesClick="listingRulesClick"
+ />
<div class="basic-info-view">
<!-- <el-row> -->
<!-- <el-col :span="24">
@@ -173,7 +178,7 @@
import { addProductCategory, updateProductCategory, deleteProductCategory } from "@/api/product/productCategory"
import { getDataByType } from "@/api/data"
-import {getProductList} from "@/api/product/product";
+import { getProductList } from "@/api/product/product"
export default {
name: "AddProductCategoryDialog",
props: {
@@ -184,7 +189,7 @@
visible: false,
title: "鏂板缓",
infomation: { type: [] },
- autoEdit: false,
+ autoEdit: false
}
}
},
@@ -197,13 +202,13 @@
},
components: {},
computed: {
- modalTitle(){
- if (this.editConfig.title === '缂栬緫' && this.editConfig.autoEdit){
- return '缂栬緫'
- }else if (this.editConfig.title === '缂栬緫') {
- return !this.showEdit ? '缂栬緫' : '鏌ョ湅'
- }else {
- return '鏂板缓'
+ modalTitle() {
+ if (this.editConfig.title === "缂栬緫" && this.editConfig.autoEdit) {
+ return "缂栬緫"
+ } else if (this.editConfig.title === "缂栬緫") {
+ return !this.showEdit ? "缂栬緫" : "鏌ョ湅"
+ } else {
+ return "鏂板缓"
}
}
},
@@ -225,7 +230,7 @@
showEdit: false, // 鏄惁鏄剧ず缂栬緫鎸夐挳
isDelClick: false, // 鍒犻櫎鎸夐挳鏄惁鍙偣鍑�
showFooter: false, // 鏄惁鏄剧ず鍙栨秷淇濆瓨,
- statisticsMap:{
+ statisticsMap: {
product: 0 // 浜у搧鏁伴噺
}
}
@@ -233,7 +238,7 @@
created() {
this.setBottonView()
this.getProductCount()
- if (this.editConfig.autoEdit){
+ if (this.editConfig.autoEdit) {
this.editClick()
}
this.setOptionalFieldsToEmpty()
@@ -242,40 +247,44 @@
/**
* 闈炲繀濉」鍚庣杩斿洖鐨勬槸鏁板瓧 0,琛ㄥ崟闇�瑕佺┖涓叉墠鑳借涓烘湭閫夋嫨鍥炴樉
*/
- setOptionalFieldsToEmpty(){
- ['parentId','costingMethod','inventoryValuation','forceRemovalStrategy']
- .filter(filed => this.editConfig.infomation[filed] === 0)
- .forEach(filed => {
- this.editConfig.infomation[filed] = ''
- })
+ setOptionalFieldsToEmpty() {
+ let arr = ["parentId", "costingMethod", "inventoryValuation", "forceRemovalStrategy"]
+ arr
+ .filter((filed) => this.editConfig.infomation[filed] === 0)
+ .forEach((filed) => {
+ this.editConfig.infomation[filed] = ""
+ })
},
/**
* 鍚庣鍙帴鍙楁暟瀛楀舰寮�, 淇濆瓨鏃惰繕寰楀啀杞洖鍘�
*/
- unsetFieldsToNumber(){
- ['parentId','costingMethod','inventoryValuation','forceRemovalStrategy']
- .filter(filed => this.editConfig.infomation[filed] === '')
- .forEach(filed => {
- this.editConfig.infomation[filed] = 0
- })
+ unsetFieldsToNumber() {
+ let arr = ["parentId", "costingMethod", "inventoryValuation", "forceRemovalStrategy"]
+ arr
+ .filter((filed) => this.editConfig.infomation[filed] === "")
+ .forEach((filed) => {
+ this.editConfig.infomation[filed] = 0
+ })
},
// 鑾峰彇浜у搧鏁伴噺
- getProductCount(){
+ getProductCount() {
getProductList({
- keyWord: '',
+ keyWord: "",
categoryId: this.editConfig.title === "鏂板缓" ? null : this.editConfig.infomation.id,
page: 1,
pageSize: 1
- }).then((res) => {
- if (res.code === 200) {
- this.statisticsMap.product = res?.total ?? 0
- }else{
- this.statisticsMap.product = 0
- }
- }).catch(err=>{
- console.error(err)
- this.statisticsMap.product = 0
})
+ .then((res) => {
+ if (res.code === 200) {
+ this.statisticsMap.product = res?.total ?? 0
+ } else {
+ this.statisticsMap.product = 0
+ }
+ })
+ .catch((err) => {
+ console.error(err)
+ this.statisticsMap.product = 0
+ })
},
// 璁剧疆鍒犻櫎/鎵撳嵃/缂栬緫鏄惁鏄剧ず
setBottonView() {
@@ -374,6 +383,20 @@
})
}
})
+ },
+ // 涓婃灦瑙勫垯
+ listingRulesClick() {
+ this.$refs.form.validate((valid) => {
+ if (valid) {
+ this.$router.push({
+ path: "/warehouseManage/listingRules",
+ query: {
+ categoryName: this.editConfig.infomation.name,
+ id: this.editConfig.title === "鏂板缓" ? "" : this.editConfig.infomation.id
+ }
+ })
+ }
+ })
}
}
}
diff --git a/src/views/warehouseManage/listingRules/index.vue b/src/views/warehouseManage/listingRules/index.vue
index 6e0c9d6..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">
@@ -89,15 +91,32 @@
isRowClick: false,
areaId: 0,
productId: 0,
- productCategoryId:0,
+ productCategoryId: 0,
subLocationId: 0,
currentRowId: 0,
- rowIndex:-1,
- RuleType: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: {
@@ -109,7 +128,7 @@
tableColumn: [
{ label: "褰撲骇鍝佸埌杈�", prop: "areaName", location: true },
{ label: "浜у搧", prop: "productName", product: true },
- { label: "浜у搧绫诲埆", prop: "productCategory",productType: true },
+ { label: "浜у搧绫诲埆", prop: "productCategory", productType: true },
{ label: "瀛樺偍鍒板瓙浣嶇疆", prop: "subLocation", location: true }
// { label: "鍏徃", prop: "companyName", company: true }
]
@@ -118,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) => {
@@ -151,8 +171,8 @@
},
// 鏂板
addProductClick() {
- this.tableList.tableColumn[1].product=true
- this.tableList.tableColumn[2].productType=true
+ this.tableList.tableColumn[1].product = true
+ this.tableList.tableColumn[2].productType = true
console.log(this.tableData)
this.isSel()
if (this.isNoProduct && this.addTitle === "鏂板缓") {
@@ -181,7 +201,7 @@
} else {
if (this.areaId === 0) {
this.$message.error("璇烽�夋嫨褰撳墠浜у搧鍒拌揪浣嶇疆")
- } else if (this.productId === 0 && this.productCategoryId==='') {
+ } else if (this.productId === 0 && this.productCategoryId === "") {
this.$message.error("璇烽�夋嫨浜у搧鎴栦骇鍝佺被鍒�")
} else if (this.subLocationId === 0) {
this.$message.error("璇烽�夋嫨瀛樺偍鍒板瓙浣嶇疆")
@@ -200,12 +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||''
+ RuleType: this.RuleType,
+ id: this.currentRowId,
+ areaId: this.areaId,
+ locationId: this.subLocationId,
+ productCategoryId: this.productCategoryId || "",
+ productId: this.productId || ""
}).then((res) => {
console.log(res)
if (res.code === 200) {
@@ -230,8 +250,8 @@
},
// 鍙栨秷
discardBtnClick() {
- this.tableList.tableColumn[1].product=true
- this.tableList.tableColumn[2].productType=true
+ this.tableList.tableColumn[1].product = true
+ this.tableList.tableColumn[2].productType = true
if (this.isRowClick) {
this.tableData.map((item) => {
item.isEdit = true
@@ -275,12 +295,12 @@
},
// 琛岀偣鍑�
tableRowClick(row, rowIndex) {
- this.rowIndex=rowIndex
+ this.rowIndex = rowIndex
this.isSel()
if (!this.isNoProduct && this.currentRowId === 0) {
this.$message.error("璇峰畬鎴愬綋鍓嶆柊寤烘垨鍙栨秷鏂板缓")
} else {
- this.tableList.tableColumn[2].productType=true
+ this.tableList.tableColumn[2].productType = true
this.currentRowId = row.id
this.addTitle = "淇濆瓨"
this.showDiscard = true
@@ -300,14 +320,17 @@
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
+ 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
}
- }
+ }
},
// 鎼滅储
getList(val) {
@@ -343,22 +366,22 @@
},
// 閫変腑浜у搧鏂规硶
selProductClick(item) {
- console.log(item,"浜у搧")
- this.RuleType=1
- this.tableList.tableColumn[2].productType=false
+ 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
+ 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
}
},
// 鍒犻櫎
@@ -370,16 +393,22 @@
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
+ 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