diff --git a/pages/product/components/item.vue b/pages/product/components/item.vue
index 95aaddb..815a9b5 100644
--- a/pages/product/components/item.vue
+++ b/pages/product/components/item.vue
@@ -1,48 +1,72 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/product/components/mutipleSku.vue b/pages/product/components/mutipleSku.vue
new file mode 100644
index 0000000..b85aad6
--- /dev/null
+++ b/pages/product/components/mutipleSku.vue
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pages/product/js/sku.js b/pages/product/js/sku.js
index c4f5f1d..56cc18b 100644
--- a/pages/product/js/sku.js
+++ b/pages/product/js/sku.js
@@ -6,6 +6,9 @@ import { SPEC_TYPE } from "./config";
const pickerRef = ref(null);
+// 多属性商品 sku 列表
+const skus = ref([]);
+
const propertyList = ref([]);
const goodsPropertyList = ref([]);
@@ -29,22 +32,23 @@ function onRDPickerConfirm(e) {
}
function pickerProperty() {
- let index = specType ? 1 : 0;
+ let index = specType.value ? 1 : 0;
pickerRef.value.onOpen([index]);
}
-function onPropertyConfirm(e) {
- getGoodsProperty();
+async function onPropertyConfirm(e) {
+ await getGoodsProperty();
console.log(e);
}
async function getGoodsProperty() {
let { data } = await GoodsApi.getHistoryProperty();
- propertyList.value = [];
// 把 propertyList 中 id 相同的属性合并,并去重
propertyList.value = peach.$store("trade").selectedProperty;
+ console.log(propertyList.value);
+
// 根据已经选择数据,设置默认选中
data.forEach((item) => {
// 判断属性是否已经选中
@@ -58,7 +62,7 @@ async function getGoodsProperty() {
if (item.checked) {
item.propertyValues.forEach((child) => {
let childResult = propertyParent?.children.some(
- (schild) => schild?.id === child.id
+ (schild) => schild === child.id
);
console.log(childResult);
child.checked = childResult ? true : false;
@@ -69,18 +73,22 @@ async function getGoodsProperty() {
goodsPropertyList.value = data;
}
-const specType = computed(() => peach.$store("trade").specType);
+const specType = computed(() => peach.$store("trade").goodsInfo.specType);
function initial() {
onLoad(() => {
- formData.value.specType = specType ? true : false;
- formData.value.specText = SPEC_TYPE[specType ? 1 : 0].label;
- getGoodsProperty();
+ formData.value.specType = specType.value ? true : false;
+ formData.value.specText = SPEC_TYPE[specType.value ? 1 : 0].label;
+ skus.value = peach.$store("trade").skus;
+ if (specType.value) {
+ getGoodsProperty();
+ }
});
}
export {
initial,
+ skus,
pickerRef,
pickerProperty,
propertyListRef,
diff --git a/pages/product/manageGoods.vue b/pages/product/manageGoods.vue
index d402948..b0e9e57 100644
--- a/pages/product/manageGoods.vue
+++ b/pages/product/manageGoods.vue
@@ -245,6 +245,7 @@ function clickSetProperty() {
peach.$store('trade').$patch({
selectedProperty: result,
goodsInfo: formData.value,
+ skus: formData.value.skus
})
peach.$router.go('/pages/product/sku')
}
diff --git a/pages/product/sku.vue b/pages/product/sku.vue
index 0d27af8..1f80a78 100644
--- a/pages/product/sku.vue
+++ b/pages/product/sku.vue
@@ -1,79 +1,60 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
-
+
-
-
+
+