From 08e9a67dd679f311e79a27b04cd0c53a30b4bccf Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 04 六月 2026 18:33:22 +0800
Subject: [PATCH] aaa
---
company_admin/src/components/business/OperaGoodsWindow.vue | 50 ++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 42 insertions(+), 8 deletions(-)
diff --git a/company_admin/src/components/business/OperaGoodsWindow.vue b/company_admin/src/components/business/OperaGoodsWindow.vue
index 888e1d3..7ef2c34 100644
--- a/company_admin/src/components/business/OperaGoodsWindow.vue
+++ b/company_admin/src/components/business/OperaGoodsWindow.vue
@@ -21,10 +21,19 @@
</el-select>
</el-form-item>
<el-form-item label="鍟嗗搧绫诲埆" prop="categoryId">
- <!-- @change="changeCategory(form.categoryId)" -->
- <el-select v-model="form.categoryId" filterable placeholder="璇烽�夋嫨锛屽崟閫�">
+ <el-select v-model="form.categoryId" filterable placeholder="璇烽�夋嫨涓�绾х被鍒�" @change="onCategoryChange">
<el-option
v-for="item in categoryList"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="浜岀骇绫诲埆">
+ <el-select v-model="form.subCategoryId" clearable filterable placeholder="鍙�夛紝璇烽�夋嫨浜岀骇绫诲埆">
+ <el-option
+ v-for="item in subCategoryList"
:key="item.id"
:label="item.name"
:value="item.id">
@@ -99,6 +108,7 @@
import GlobalWindow from '@/components/common/GlobalWindow'
import { brand } from '@/api/system/common.js'
import { findListForGoodsId, create, updateById, companyCreate, companyUpdateById } from '@/api/business/goods.js'
+ import { fetchChildren } from '@/api/business/category.js'
export default {
name: 'OperaGoodsWindow',
extends: BaseOpera,
@@ -113,6 +123,7 @@
id: null,
name: '',
categoryId: '',
+ subCategoryId: '',
brandId: '',
zdPrice: '',
price: '',
@@ -148,6 +159,7 @@
},
options: [],
categoryList: [],
+ subCategoryList: [],
brandList: []
}
},
@@ -297,13 +309,22 @@
message: '鍙兘涓婁紶涓�涓浘鏍�'
})
},
+ initMuitlFiles (fileList) {
+ const list = [];
+ fileList.forEach(rawFile => {
+ list.push({ fileurl: rawFile.response.data.imgaddr, name: rawFile.response.data.imgname, url: rawFile.response.data.url })
+ });
+ return list;
+ },
fileSuccess1(response, file, fileList) {
this.form.files = fileList
- this.form.multifileList.push({ fileurl: response.data.imgaddr, name: response.data.imgname, url: response.data.url })
+ // this.form.multifileList.push({ fileurl: response.data.imgaddr, name: response.data.imgname, url: response.data.url })
+ this.form.multifileList=this.initMuitlFiles(fileList);
},
handleRemove1(file, fileList) {
this.form.files = fileList
- this.form.multifileList = fileList
+ // this.form.multifileList = fileList
+ this.form.multifileList=this.initMuitlFiles(fileList);
},
fileSuccess(response) {
this.form.ztList.push({ imgaddr: response.data.imgaddr, url: response.data.url })
@@ -319,18 +340,31 @@
this.brandList = res
})
},
+ onCategoryChange (val) {
+ this.form.subCategoryId = ''
+ this.subCategoryList = []
+ if (val) {
+ fetchChildren(val).then(res => {
+ this.subCategoryList = res || []
+ })
+ }
+ },
getcategory(type) {
findListForGoodsId(this.form.id || '')
.then(res => {
- this.categoryList = res
+ this.categoryList = (res || []).filter(item => !item.parentId)
+ if (this.form.categoryId) {
+ fetchChildren(this.form.categoryId).then(list => {
+ this.subCategoryList = list || []
+ })
+ }
if (type === 1) {
this.categoryList.forEach(item => {
if (item.id === this.form.categoryId) {
this.form.goodsParamList = JSON.parse(JSON.stringify(item.paramList))
- this.form.goodsParamList.forEach(item => {
- item.pramaId = item.id
+ this.form.goodsParamList.forEach(p => {
+ p.pramaId = p.id
})
- console.log(this.form.goodsParamList)
}
})
}
--
Gitblit v1.9.3