From 5025f22c96ef49f67f67b733e5c8d62b5204f798 Mon Sep 17 00:00:00 2001
From: lwh <2679599887@qq.com>
Date: Thu, 22 Jun 2023 17:13:15 +0800
Subject: [PATCH] .ficed
---
.../Goodss/components/MultiSpec/MultiSpec.vue | 99 +++++++------------
1 file changed, 34 insertions(+), 65 deletions(-)
diff --git a/src/views/business/GoodsManager/Goodss/components/MultiSpec/MultiSpec.vue b/src/views/business/GoodsManager/Goodss/components/MultiSpec/MultiSpec.vue
index 7011aad..31bb8cf 100644
--- a/src/views/business/GoodsManager/Goodss/components/MultiSpec/MultiSpec.vue
+++ b/src/views/business/GoodsManager/Goodss/components/MultiSpec/MultiSpec.vue
@@ -18,8 +18,8 @@
-
+
添加规格值
@@ -112,11 +112,9 @@ const goodsSpecList = ref([
const skuList = ref([
])
-
/** sku列表参数 */
const newList = ref([])
const newData = ref([])
-const tableData7 = ref([])
const spanArr = ref([])
const spanArr1 = ref([])
const pos = ref("")
@@ -130,32 +128,26 @@ const pos1 = ref("")
//处理数据(拆分规格组里的规格值为数组)
const processing = () => {
newData.value = [];
- for (let i = 0; i < goodsSpecList.value.length; i++) {
- var newlist = [];
- for (
- let index = 0;
- index < goodsSpecList.value[i].props.length;
- index++
- ) {
- newlist.push(goodsSpecList.value[i].props[index].specValueName);
- }
- this.newData.push(newlist);
- }
- console.log(this.newData, '各规格组中的规格值');
+ goodsSpecList.value.forEach((item) => {
+ const prop = item.props.map((prop) => prop.specValueName);
+ newData.value.push(prop);
+ });
+ console.log(newData.value, '各规格组中的规格值');
getList();
}
//转换数据
const getList = () => {
- tableData7.value = [];
- newList.value = this.descartes(newData.value);
+ skuList.value = [];
+ newList.value = descartes(newData.value);
console.log(newList.value, '笛卡尔积处理过后的数据');
- for (let index = 0; index < newList.value.length; index++) {
- this.tableData7.push({
- specValue: newList.value[index][0],
- specSecondValue: newList.value[index][1],
- specThirdValue: newList.value[index][2],
+ newList.value.forEach((item) => {
+ console.log(item, 'item数据');
+ skuList.value.push({
+ specValue: Array.isArray(item) ? item[0] : item,
+ specSecondValue: Array.isArray(item) ? item[1] : null,
+ specThirdValue: Array.isArray(item) ? item[2] : null,
goodsGuid: 0,
specValueName: "",
goodsSkuImg: "",
@@ -166,10 +158,10 @@ const getList = () => {
goodsSkuWeight: 0,
goodsSkuProps: ""
});
- }
+ });
- getSpanArr(this.tableData7);
- console.log(this.tableData7, '表格中的数据');
+ getSpanArr(skuList.value);
+ console.log(skuList.value, '表格中的数据');
}
@@ -210,7 +202,7 @@ const getSpanArr = (data) => {
}
}
}
- console.log(this.spanArr, '排序Arr');
+ console.log(spanArr.value, '排序Arr');
}
@@ -330,9 +322,20 @@ function handleChangeSepc(item, idx) {
return; // 停止执行后续代码
}
+ let propValue = ""
+ if (idx === 0) {
+ propValue = "specValue"
+ }
+ if (idx === 1) {
+ propValue = "specSecondValue"
+ }
+ if (idx === 2) {
+ propValue = "specThirdValue"
+ }
+
// 添加动态表头
let column = {
- prop: 'specValue',
+ prop: propValue,
label: item.specName,
width: '100',
key: idx
@@ -353,7 +356,7 @@ function handleDelSpec(item) {
}
- // 输出对应的表头
+ // 删除对应的表头
skuColumns.value = skuColumns.value.filter(column => column.label !== item.specName);
// 删除对应的sku
@@ -381,44 +384,10 @@ function handleAddSpecValue(item) {
// 修改规格值
-function handleChangeSepcValue(item, specValue) {
-
- let firstSpecValue = ""
- let secondSpecValue = ""
- let thirdSpecValue = ""
-
- console.log(item, 'item喵喵喵喵喵喵');
- // goodsSpecList.value.map((item,index) => {
- // if(item.key === 0){
- // firstSpecValue = specValue.specValueName
- // }
- // if(item.key === 1){
- // secondSpecValue = specValue.specValueName
- // }
- // if(item.key === 2){
- // thirdSpecValue = specValue.specValueName
- // }
- // })
+function handleChangeSepcValue(e) {
// 添加sku
- let sku = {
- specValue: firstSpecValue,
- specSecondValue: secondSpecValue,
- specThirdValue: thirdSpecValue,
- goodsGuid: 0,
- specValueName: "",
- goodsSkuImg: "",
- goodsSkuSkuCode: 0,
- goodsSkuPrice: 0,
- goodsSkuLinePrice: 0,
- goodsSkuStockNum: 0,
- goodsSkuWeight: 0,
- goodsSkuProps: ""
- }
- skuList.value.push(sku)
-
- console.log(skuList.value, 'asdasd-------------');
-
+ processing()
}