mo %!s(int64=2) %!d(string=hai) anos
pai
achega
dae5b243db
Modificáronse 1 ficheiros con 21 adicións e 29 borrados
  1. 21 29
      src/views/pms/product/components/ProductInfoDetail.vue

+ 21 - 29
src/views/pms/product/components/ProductInfoDetail.vue

@@ -10,6 +10,7 @@
     >
       <el-form-item label="商品分类:" prop="productCategoryId">
         <el-cascader
+          v-if="showCascader"
           :disabled="!isEdit"
           v-model="selectProductCateValue"
           :options="productCateOptions"
@@ -99,16 +100,10 @@
         <span style="margin-left: 20px">克</span>
       </el-form-item> -->
       <el-form-item label="排序">
-        <el-input-number
-          v-model="value.sort"
-          :disabled="!isEdit"
-        ></el-input-number>
+        <el-input-number v-model="value.sort" :disabled="!isEdit"></el-input-number>
       </el-form-item>
       <el-form-item style="text-align: center">
-        <el-button
-          type="primary"
-          size="medium"
-          @click="handleNext('productInfoForm')"
+        <el-button type="primary" size="medium" @click="handleNext('productInfoForm')"
           >下一步,填写商品促销</el-button
         >
       </el-form-item>
@@ -153,27 +148,20 @@ export default {
         productCategoryId: [
           { required: true, message: "请选择商品分类", trigger: "blur" },
         ],
-        brandId: [
-          { required: true, message: "请选择商品品牌", trigger: "blur" },
-        ],
-        description: [
-          { required: true, message: "请输入商品介绍", trigger: "blur" },
-        ],
-        requiredProp: [
-          { required: true, message: "该项为必填项", trigger: "blur" },
-        ],
-        price: [
-          { required: true, message: "请输入商品售价", trigger: "blur" },
-        ],
-        originalPrice: [
-          { required: true, message: "请输入商品市场价", trigger: "blur" },
-        ],
+        brandId: [{ required: true, message: "请选择商品品牌", trigger: "blur" }],
+        // detailDesc: [
+        //   { required: true, message: "请输入商品介绍", trigger: "blur" },
+        // ],
+        requiredProp: [{ required: true, message: "该项为必填项", trigger: "blur" }],
+        price: [{ required: true, message: "请输入商品售价", trigger: "blur" }],
+        originalPrice: [{ required: true, message: "请输入商品市场价", trigger: "blur" }],
       },
+      showCascader: false,
     };
   },
-  created() {
-    this.getProductCateList();
-    this.getBrandList();
+  async created() {
+    await this.getProductCateList();
+    await this.getBrandList();
   },
   computed: {
     //商品的编号
@@ -183,14 +171,14 @@ export default {
   },
   watch: {
     productId: function (newValue) {
-      console.log("productId", newValue, this.isEdit);
       // if(!this.isEdit)return;
       if (this.hasEditCreated) return;
       if (newValue === undefined || newValue == null || newValue === 0) return;
+      console.log("productId", newValue);
       this.handleEditCreated();
     },
     selectProductCateValue: function (newValue) {
-      console.log(newValue, "newValue");
+      console.log(newValue, "selectProductCateValue", this.value);
       if (newValue != null && newValue.length === 2) {
         this.value.productCategoryId = newValue[1];
         this.value.productCategoryName = this.getCateNameById(
@@ -200,6 +188,8 @@ export default {
         this.value.productCategoryId = null;
         this.value.productCategoryName = null;
       }
+
+      // this.handleEditCreated();
     },
   },
   methods: {
@@ -209,6 +199,7 @@ export default {
         this.selectProductCateValue.push(this.value.cateParentId);
         this.selectProductCateValue.push(this.value.productCategoryId);
       }
+      this.showCascader = true;
       this.hasEditCreated = true;
     },
     getProductCateList() {
@@ -232,6 +223,7 @@ export default {
             children: children,
           });
         }
+        this.$set(this, "productCateOptions", this.productCateOptions);
       });
     },
     getBrandList() {
@@ -297,7 +289,7 @@ input[type="number"] {
 }
 
 .number-input {
- ::v-deep .el-input__inner {
+  ::v-deep .el-input__inner {
     text-align: left;
   }