戴艳蓉 пре 3 година
родитељ
комит
3666786eeb

+ 1 - 1
src/apis/components/goods-class.js

@@ -2,6 +2,6 @@ import http from "@/apis/axios";
 const api = "admin/";
 export default {
   // 列表
-  list: (data, params) => http(api + "catlist", data, "post", params),
+  list: (data, params) => http(api + "cattitle", data, "post", params),
 };
    

+ 37 - 11
src/components/globalComponents/goodClass/main.vue

@@ -1,14 +1,15 @@
 <template>
   <div class="select-goodsClass">
     <el-cascader
-     v-loading="loading"
+      v-if="!loading"
+      :size="size || 'medium'"
       style="width: 100%"
-      :disabled="disabled"
+      filterable
+      clearable
       v-model="value"
-      :options="options"
       :placeholder="placeholder || ''"
-      :size="size || 'medium'"
       :props="props"
+      :disabled="disabled"
       @change="handleChange"
     ></el-cascader>
   </div>
@@ -37,13 +38,38 @@ export default {
   data() {
     return {
       loading: false,
-      options: [],
-      selectLoading: false,
       props: {
-        label: "cat_name",
-        value: "id",
-        children: "child",
-        checkStrictly: true
+        lazy: true, //开启远程加载
+        async lazyLoad(node, resolve) {
+          // console.log(node);
+          const { level, value, root, loading } = node;
+          let model = {
+            cat_name: "",
+            pid: "",
+            status: "",
+          };
+          let list = [];
+          if (level === 0) {
+            model.pid = "0";
+          } else {
+            model.pid = value;
+          }
+          const res = await asyncRequest.list(model);
+          const { code, data } = res;
+          if (code === 0) {
+            data.forEach((v1) => {
+              let province = {
+                value: v1.id,
+                label: v1.cat_name,
+                leaf: level >= 2,
+              };
+              list.push(province);
+            });
+            resolve(list);
+          } else {
+            resolve([]);
+          }
+        },
       },
     };
   },
@@ -59,7 +85,7 @@ export default {
   // },
   mounted() {
     this.options = [];
-    this.getInfo();
+    // this.getInfo();
     this.selectLoading = false;
   },
   methods: {

+ 14 - 9
src/views/goodStore/goodsCost/columns.js

@@ -11,24 +11,29 @@ const options2 = [
 ]
 //销售权限
 const options3 = [
-  { id: "0", name: "销售权限" },
-  { id: "1", name: "销售权限" },
+  { id: "0", name: "销售权限" },
+  { id: "1", name: "销售权限" },
 ]
 
 //是否库存品
 const options4 = [
-  { id: "0", name: "库存品" },
-  { id: "1", name: "库存品" },
+  { id: "0", name: "库存品" },
+  { id: "1", name: "库存品" },
 ]
 //是否启用实时金价
 const options5 = [
-  { id: "0", name: "" },
-  { id: "1", name: "" },
+  { id: "0", name: "" },
+  { id: "1", name: "" },
 ]
 //供货区域
 const options6 = [
-  { id: "0", name: "全国" },
-  { id: "1", name: "全国除偏远" },
+  { id: "1", name: "全国" },
+  { id: "2", name: "全国除偏远" },
+]
+//是否启用阶梯
+const options7 = [
+  { id: "0", name: "否" },
+  { id: "1", name: "是" },
 ]
 const listCol = [
   {
@@ -88,4 +93,4 @@ const listCol = [
   },
 ]
 
-export  { options1, options2, options3, options4, options5, options6,listCol }
+export { options1, options2, options3, options4, options5, options6, options7, listCol }

+ 282 - 210
src/views/goodStore/goodsCost/components/baseForm.vue

@@ -20,31 +20,117 @@
       <el-col :span="23" class="dmain">
         <el-row>
           <el-col :span="8">
-            <el-form-item label="商品分类" prop="a1">
-              111
-              <!-- <good-class
-                :value="ruleForm.a1"
+            <el-form-item label="商品分类" prop="cat_id">
+              <good-class
+                :value="ruleForm.cat_id"
                 @handleChange="goods_class_change"
                 :disabled="false"
                 :size="'mini'"
                 :isDetail="false"
                 :placeholder="'商品分类'"
-              /> -->
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="16">
+            <el-form-item label="商品名称" prop="good_name">
+              <el-input
+                placeholder="商品名称"
+                maxlength="100"
+                v-model="ruleForm.good_name"
+              ></el-input>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="8">
+            <el-form-item label="业务公司" prop="company_id">
+              <search-supplier
+                :value="ruleForm.company_id"
+                :placeholder="'业务公司'"
+                :disabled="false"
+                :size="'mini'"
+                :isDetail="false"
+                @searchChange="company_idsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="供应商" prop="supplierNo">
+              <search-supplier
+                :value="ruleForm.supplierNo"
+                :placeholder="'供应商'"
+                :disabled="false"
+                :size="'mini'"
+                :isDetail="false"
+                @searchChange="supplierNosearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="销售权限" prop="is_auth">
+              <el-select
+                v-model="ruleForm.is_auth"
+                filterable
+                clearable
+                style="width: 100%"
+                placeholder="销售权限"
+              >
+                <el-option
+                  v-for="group in options3"
+                  :key="group.id"
+                  :label="group.name"
+                  :value="group.id"
+                />
+              </el-select>
             </el-form-item>
-            <el-form-item label="商品品牌" prop="a2">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="商品品牌" prop="brandid">
               <search-brand
-                :value="ruleForm.a2"
+                :value="ruleForm.brandid"
                 :disabled="false"
                 :size="'mini'"
                 :isDetail="false"
                 :placeholder="'商品品牌'"
-                @searchChange="a2searchChange"
+                @searchChange="brandidsearchChange"
               />
             </el-form-item>
-            <el-form-item label="重量" prop="a3">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="商品单位" prop="unit">
+              <search-unit
+                :value="ruleForm.unit"
+                :disabled="false"
+                :size="'mini'"
+                :isDetail="false"
+                :placeholder="'商品单位'"
+                @searchChange="unitsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="专属类型" prop="is_exclusive">
+              <el-select
+                v-model="ruleForm.is_exclusive"
+                filterable
+                clearable
+                style="width: 100%"
+                placeholder="专属类型"
+              >
+                <el-option
+                  v-for="group in options2"
+                  :key="group.id"
+                  :label="group.name"
+                  :value="group.id"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="8">
+            <el-form-item label="商品总重量" prop="weight">
               <el-input
-                placeholder="重量"
-                v-model="ruleForm.a3"
+                placeholder="商品总重量"
+                v-model="ruleForm.weight"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -53,195 +139,155 @@
                 <template slot="append">g</template>
               </el-input>
             </el-form-item>
-
-            <el-form-item label="是否定制" prop="a4">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="是否库存品" prop="is_stock">
               <el-select
-                v-model="ruleForm.a4"
+                v-model="ruleForm.is_stock"
                 filterable
                 clearable
                 style="width: 100%"
-                placeholder="是否定制"
+                placeholder="是否库存品"
               >
                 <el-option
-                  v-for="group in options1"
+                  v-for="group in options4"
                   :key="group.id"
                   :label="group.name"
                   :value="group.id"
                 />
               </el-select>
             </el-form-item>
-            <el-form-item label="是否库存品" prop="a5">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="税点" prop="tax">
+              <search-tax
+                :value="ruleForm.tax"
+                :disabled="false"
+                :size="'mini'"
+                :isDetail="false"
+                :placeholder="'税点'"
+                @searchChange="taxsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="贵金属重量" prop="noble_weight">
+              <el-input
+                placeholder="贵金属重量"
+                v-model="ruleForm.noble_weight"
+                type="number"
+                :min="0"
+                :max="9999999999.99"
+                :step="2"
+              >
+                <template slot="append">g</template>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="贵金属种类" prop="noble_metal">
+              <search-metal-kind
+                :value="ruleForm.noble_metal"
+                :disabled="false"
+                :size="'mini'"
+                :isDetail="false"
+                :placeholder="'贵金属种类'"
+                @searchChange="noble_metalsearchChange"
+              />
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="启用实时金价" prop="is_gold_price">
               <el-select
-                v-model="ruleForm.a5"
+                v-model="ruleForm.is_gold_price"
                 filterable
                 clearable
                 style="width: 100%"
-                placeholder="是否库存品"
+                placeholder="启用实时金价"
               >
                 <el-option
-                  v-for="group in options4"
+                  v-for="group in options5"
                   :key="group.id"
                   :label="group.name"
                   :value="group.id"
                 />
               </el-select>
             </el-form-item>
-            <el-form-item label="供应商" prop="a6">
-              <search-supplier
-                :value="ruleForm.a6"
-                :placeholder="'供应商'"
-                :disabled="false"
-                :size="'mini'"
-                :isDetail="false"
-                @searchChange="a6searchChange"
-              />
-            </el-form-item>
-            <el-form-item label="销售权限" prop="a7">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="是否定制" prop="good_type">
               <el-select
-                v-model="ruleForm.a7"
+                v-model="ruleForm.good_type"
                 filterable
                 clearable
                 style="width: 100%"
-                placeholder="销售权限"
+                placeholder="是否定制"
               >
                 <el-option
-                  v-for="group in options3"
+                  v-for="group in options1"
                   :key="group.id"
                   :label="group.name"
                   :value="group.id"
                 />
               </el-select>
             </el-form-item>
-            <el-form-item label="税点" prop="a8">
-              <search-tax
-                :value="ruleForm.a8"
-                :disabled="false"
-                :size="'mini'"
-                :isDetail="false"
-                :placeholder="'税点'"
-                @searchChange="a8searchChange"
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="定制起订量" prop="moq">
+              <el-input
+                placeholder="定制起订量"
+                v-model="ruleForm.moq"
+                type="number"
+                :min="0"
+                :max="9999999999"
+                :step="0"
               />
             </el-form-item>
           </el-col>
-          <el-col :span="16">
-            <el-form-item label="商品名称" prop="b1">
+          <el-col :span="8">
+            <el-form-item label="定制工期" prop="customized">
               <el-input
-                placeholder="请输入商品名称"
-                maxlength="100"
-                v-model="ruleForm.b1"
-              ></el-input>
+                placeholder="定制工期"
+                v-model="ruleForm.customized"
+                type="number"
+                :min="0"
+                :max="9999999999"
+                :step="0"
+              >
+                <template slot="append">天</template>
+              </el-input>
             </el-form-item>
-            <el-row>
-              <el-col :span="12">
-                <el-form-item label="商品单位" prop="b2">
-                  <search-unit
-                    :value="ruleForm.b2"
-                    :disabled="false"
-                    :size="'mini'"
-                    :isDetail="false"
-                    :placeholder="'商品单位'"
-                    @searchChange="b2searchChange"
-                  />
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="专属类型" prop="b3">
-                  <el-select
-                    v-model="ruleForm.b3"
-                    filterable
-                    clearable
-                    style="width: 100%"
-                    placeholder="专属类型"
-                  >
-                    <el-option
-                      v-for="group in options2"
-                      :key="group.id"
-                      :label="group.name"
-                      :value="group.id"
-                    />
-                  </el-select>
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="贵金属种类" prop="b4">
-                  <search-metal-kind
-                    :value="ruleForm.b4"
-                    :disabled="false"
-                    :size="'mini'"
-                    :isDetail="false"
-                    :placeholder="'贵金属种类'"
-                    @searchChange="b4searchChange"
-                  /> </el-form-item
-              ></el-col>
-              <el-col :span="12">
-                <el-form-item label="启用实时金价" prop="b5">
-                  <el-select
-                    v-model="ruleForm.b5"
-                    filterable
-                    clearable
-                    style="width: 100%"
-                    placeholder="启用实时金价"
-                  >
-                    <el-option
-                      v-for="group in options5"
-                      :key="group.id"
-                      :label="group.name"
-                      :value="group.id"
-                    />
-                  </el-select> </el-form-item
-              ></el-col>
-              <el-col :span="12">
-                <el-form-item label="定制起订量" prop="b6">
-                  <el-input
-                    placeholder="定制起订量"
-                    v-model="ruleForm.b6"
-                    type="number"
-                    :min="0"
-                    :max="9999999999"
-                    :step="0"
-                  />
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="定制工期" prop="b7">
-                  <el-input
-                    placeholder="定制工期"
-                    v-model="ruleForm.b7"
-                    type="number"
-                    :min="0"
-                    :max="9999999999"
-                    :step="0"
-                  >
-                    <template slot="append">天</template>
-                  </el-input>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-form-item label="售后说明" prop="b8">
+          </el-col>
+
+          <el-col :span="8">
+            <el-form-item label="售后说明" prop="after_sales">
               <el-input
                 type="textarea"
-                :rows="2"
+                :rows="4"
                 placeholder="售后说明"
-                v-model="ruleForm.b8"
+                v-model="ruleForm.after_sales"
               >
               </el-input>
             </el-form-item>
-
-            <el-form-item label="工艺说明" prop="b9">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="商品备注" prop="good_remark">
               <el-input
                 type="textarea"
-                :rows="2"
-                placeholder="工艺说明"
-                v-model="ruleForm.b9"
+                :rows="4"
+                placeholder="商品备注"
+                v-model="ruleForm.good_remark"
               >
               </el-input>
             </el-form-item>
-            <el-form-item label="商品备注" prop="bb1">
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="工艺说明" prop="craft_desc">
               <el-input
                 type="textarea"
-                :rows="2"
-                placeholder="商品备注"
-                v-model="ruleForm.bb1"
+                :rows="4"
+                placeholder="工艺说明"
+                v-model="ruleForm.craft_desc"
               >
               </el-input>
             </el-form-item>
@@ -262,7 +308,7 @@
       <el-col :span="23" class="dmain" style="padding-left: 18px">
         <el-table :data="tableData" :size="'mini'" border style="width: 100%">
           <!-- <el-table-column prop="index" label="序号"> </el-table-column> -->
-          <el-table-column prop="name" label="规格类型"  />
+          <el-table-column prop="name" label="规格类型" />
           <el-table-column prop="address" label="规格值"> </el-table-column>
           <el-table-column fixed="right">
             <template slot="header" slot-scope="scope">
@@ -352,14 +398,14 @@ export default {
       options5: options5,
       ruleForm: {},
       rules: {
-        a1: [
+        cat_id: [
           {
             required: true,
             message: "商品分类",
             trigger: "change",
           },
         ],
-        a2: [
+        brandid: [
           {
             type: "array",
             required: true,
@@ -367,28 +413,43 @@ export default {
             trigger: "change",
           },
         ],
-        a3: [
+        noble_weight: [
+          {
+            required: true,
+            message: "贵金属重量为合法数字",
+            trigger: "blur",
+          },
+        ],
+        weight: [
           {
             required: true,
-            message: "商品重量为合法数字",
+            message: "商品重量为合法数字",
             trigger: "blur",
           },
         ],
-        a4: [
+        good_type: [
           {
             required: true,
             message: "请选择是否定制",
             trigger: "change",
           },
         ],
-        a5: [
+        is_stock: [
           {
             required: true,
             message: "请选择是否库存品",
             trigger: "change",
           },
         ],
-        a6: [
+        company_id: [
+          {
+            type: "array",
+            required: true,
+            message: "请选择业务公司",
+            trigger: "change",
+          },
+        ],
+        supplierNo: [
           {
             type: "array",
             required: true,
@@ -396,42 +457,42 @@ export default {
             trigger: "change",
           },
         ],
-        a7: [
+        is_auth: [
           {
             required: true,
             message: "商品主图",
             trigger: "change",
           },
         ],
-        a8: [
+        tax: [
           {
             required: true,
             message: "请选择税率",
             trigger: "change",
           },
         ],
-        b1: [
+        good_name: [
           {
             required: true,
             message: "请输入商品名称",
             trigger: "blur",
           },
         ],
-        b2: [
+        unit: [
           {
             required: true,
             message: "请输入商品单位",
             trigger: "blur",
           },
         ],
-        b3: [
+        is_exclusive: [
           {
             required: true,
             message: "请选择专属类型",
             trigger: "change",
           },
         ],
-        b4: [
+        noble_metal: [
           {
             type: "array",
             required: true,
@@ -439,35 +500,35 @@ export default {
             trigger: "change",
           },
         ],
-        b5: [
+        is_gold_price: [
           {
             required: true,
             message: "请选择是否启用实时金价",
             trigger: "change",
           },
         ],
-        b6: [
+        moq: [
           {
             required: true,
             message: "定制起订量应为合法数字",
             trigger: "blur",
           },
         ],
-        b7: [
+        customized: [
           {
             required: true,
             message: "定制工期为合法数字",
             trigger: "blur",
           },
         ],
-        b8: [
+        after_sales: [
           {
             required: true,
             message: "售后说明不能为空",
             trigger: "blur",
           },
         ],
-        bb1: [
+        good_remark: [
           {
             required: true,
             message: "商品备注不能为空",
@@ -523,24 +584,26 @@ export default {
     },
     resetFormData() {
       this.ruleForm = {
-        a1: "",
-        a2: [],
-        a3: "",
-        a4: "",
-        a5: "",
-        a6: [],
-        a7: "",
-        a8: "",
-        b1: "2018春秋新款V领修身丝绒西装女 双排扣复古极简中长款工装外套",
-        b2: "",
-        b3: "",
-        b4: "",
-        b5: "",
-        b6: "",
-        b7: "",
-        b8: "",
-        b9: "",
-        bb1: "",
+        cat_id: "",
+        brandid: [],
+        noble_weight: "",
+        weight: "",
+        good_type: "",
+        is_stock: "",
+        supplierNo: [],
+        company_id: [],
+        is_auth: "",
+        tax: "",
+        good_name: "2018春秋新款V领修身丝绒西装女 双排扣复古极简中长款工装外套",
+        unit: "",
+        is_exclusive: "",
+        noble_metal: "",
+        is_gold_price: "",
+        moq: "",
+        customized: "",
+        after_sales: "",
+        craft_desc: "",
+        good_remark: "",
       };
     },
     refreshEdit(e) {
@@ -548,69 +611,78 @@ export default {
     },
     //商品分类选择
     goods_class_change(e) {
-      this.ruleForm.a1 = e;
-      this.$refs.ruleForm.validateField("a1");
+      this.ruleForm.cat_id = e;
+      this.$refs.ruleForm.validateField("cat_id");
     },
     //商品品牌选择
-    a2searchChange(e) {
+    brandidsearchChange(e) {
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.a2 = [id];
+        this.ruleForm.brandid = [id];
       } else {
-        this.ruleForm.a2 = [];
+        this.ruleForm.brandid = [];
       }
-      this.$refs.ruleForm.validateField("a2");
+      this.$refs.ruleForm.validateField("brandid");
     },
     //供应商选择
-    a6searchChange(e) {
+    supplierNosearchChange(e) {
+      const { id, code, label } = e;
+      if (id) {
+        this.ruleForm.supplierNo = [code];
+      } else {
+        this.ruleForm.supplierNo = [];
+      }
+      this.$refs.ruleForm.validateField("supplierNo");
+    },
+    company_idsearchChange(e) {
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.a6 = [code];
+        this.ruleForm.company_id = [code];
       } else {
-        this.ruleForm.a6 = [];
+        this.ruleForm.company_id = [];
       }
-      this.$refs.ruleForm.validateField("a6");
+      this.$refs.ruleForm.validateField("company_id");
     },
     //税点选择
-    a8searchChange(e) {
+    taxsearchChange(e) {
       // console.log(e);
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.a8 = label;
+        this.ruleForm.tax = label;
       } else {
-        this.ruleForm.a8 = "";
+        this.ruleForm.tax = "";
       }
-      this.$refs.ruleForm.validateField("a8");
+      this.$refs.ruleForm.validateField("tax");
     },
     //单位选择
-    b2searchChange(e) {
+    unitsearchChange(e) {
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.b2 = [code];
+        this.ruleForm.unit = [code];
       } else {
-        this.ruleForm.b2 = [];
+        this.ruleForm.unit = [];
       }
-      this.$refs.ruleForm.validateField("b2");
+      this.$refs.ruleForm.validateField("unit");
     },
     //贵金属种类选择
-    b4searchChange(e) {
+    noble_metalsearchChange(e) {
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.b4 = code;
+        this.ruleForm.noble_metal = code;
       } else {
-        this.ruleForm.b4 = "";
+        this.ruleForm.noble_metal = "";
       }
-      this.$refs.ruleForm.validateField("b4");
+      this.$refs.ruleForm.validateField("noble_metal");
     },
     //税点选择
-    b4searchChange(e) {
+    noble_metalsearchChange(e) {
       const { id, code, label } = e;
       if (id) {
-        this.ruleForm.b4 = code;
+        this.ruleForm.noble_metal = code;
       } else {
-        this.ruleForm.b4 = "";
+        this.ruleForm.noble_metal = "";
       }
-      this.$refs.ruleForm.validateField("b4");
+      this.$refs.ruleForm.validateField("noble_metal");
     },
     async submitForm() {
       await this.$refs.ruleForm.validate(async (valid) => {
@@ -667,7 +739,7 @@ export default {
                 this.loading = true;
                 let obj = JSON.parse(JSON.stringify(this.ruleForm));
                 obj.stock = stock;
-                obj.a1 = obj.a1[obj.a1.length - 1];
+                obj.cat_id = obj.cat_id[obj.cat_id.length - 1];
                 obj.image = obj.image.join();
                 //split(",");
                 console.log(obj);

+ 101 - 72
src/views/goodStore/goodsCost/components/costForm.vue

@@ -20,10 +20,10 @@
       <el-col :span="23" class="dmain">
         <el-row>
           <el-col :span="8">
-            <el-form-item label="证书费" prop="a1">
+            <el-form-item label="证书费" prop="cert_fee">
               <el-input
                 placeholder="证书费"
-                v-model="ruleForm.a1"
+                v-model="ruleForm.cert_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -34,10 +34,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="包装费" prop="a2">
+            <el-form-item label="包装费" prop="packing_fee">
               <el-input
                 placeholder="包装费"
-                v-model="ruleForm.a2"
+                v-model="ruleForm.packing_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -48,10 +48,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="成本工艺费" prop="a3">
+            <el-form-item label="成本工艺费" prop="cost_fee">
               <el-input
                 placeholder="成本工艺费"
-                v-model="ruleForm.a3"
+                v-model="ruleForm.cost_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -62,10 +62,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="加标费" prop="a4">
+            <el-form-item label="加标费" prop="mark_fee">
               <el-input
                 placeholder="加标费"
-                v-model="ruleForm.a4"
+                v-model="ruleForm.mark_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -76,10 +76,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="打样费" prop="a5">
+            <el-form-item label="打样费" prop="demo_fee">
               <el-input
                 placeholder="打样费"
-                v-model="ruleForm.a5"
+                v-model="ruleForm.demo_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -90,10 +90,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="开模费" prop="a6">
+            <el-form-item label="开模费" prop="open_fee">
               <el-input
                 placeholder="开模费"
-                v-model="ruleForm.a6"
+                v-model="ruleForm.open_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -104,10 +104,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="调样费" prop="a7">
+            <el-form-item label="调样费" prop="sample_fee">
               <el-input
                 placeholder="调样费"
-                v-model="ruleForm.a7"
+                v-model="ruleForm.sample_fee"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -118,10 +118,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="市场价" prop="a8">
+            <el-form-item label="市场价" prop="market_price">
               <el-input
                 placeholder="市场价"
-                v-model="ruleForm.a8"
+                v-model="ruleForm.market_price"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -132,10 +132,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="含税成本裸价" prop="a9">
+            <el-form-item label="含税成本裸价" prop="nake_price">
               <el-input
                 placeholder="含税成本裸价"
-                v-model="ruleForm.a9"
+                v-model="ruleForm.nake_price"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -158,42 +158,64 @@
         </ul></el-col
       >
       <el-col :span="23" class="dmain" style="padding-left: 18px">
-        <el-table
-          :data="tableData"
-          :size="'mini'"
-          border
-          stripe
-          style="width: 100%"
-        >
-          <el-table-column prop="s1" label="起订量(>=)" />
-          <el-table-column prop="s2" label="成本裸价" />
-          <el-table-column prop="s3" label="成本合计" />
-          <el-table-column prop="s4" label="其中运费" />
-          <el-table-column prop="s5" label="使用状态" />
-          <el-table-column fixed="right">
-            <template slot="header" slot-scope="scope">
-              <span>操作</span>
-              <el-tooltip effect="dark" content="添加阶梯" placement="top">
-                <i
-                  class="el-icon-circle-plus-outline tb-icon fr"
-                  @click="openEdit('add', {})"
-                ></i>
-              </el-tooltip>
-            </template>
-            <template slot-scope="scope">
-              <el-tooltip effect="dark" content="修改" placement="top">
-                <i class="el-icon-edit tb-icon" @click="openEdit('')"></i>
-              </el-tooltip>
-              <el-tooltip effect="dark" content="禁/启用" placement="top">
-                <i
-                  class="el-icon-video-pause tb-icon"
-                  @click="openEdit('')"
-                ></i>
-                <!-- el-icon-video-play -->
-              </el-tooltip>
-            </template>
-          </el-table-column>
-        </el-table>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="启用阶梯" prop="is_step">
+              <el-select
+                v-model="ruleForm.is_step"
+                filterable
+                clearable
+                style="width: 100%"
+                placeholder="启用阶梯"
+              >
+                <el-option
+                  v-for="group in options5"
+                  :key="group.id"
+                  :label="group.name"
+                  :value="group.id"
+                />
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24">
+            <el-table
+              :data="tableData"
+              :size="'mini'"
+              border
+              stripe
+              style="width: 100%"
+            >
+              <el-table-column prop="s1" label="起订量(>=)" />
+              <el-table-column prop="s2" label="成本裸价" />
+              <el-table-column prop="s3" label="成本合计" />
+              <el-table-column prop="s4" label="其中运费" />
+              <el-table-column prop="s5" label="使用状态" />
+              <el-table-column fixed="right">
+                <template slot="header" slot-scope="scope">
+                  <span>操作</span>
+                  <el-tooltip effect="dark" content="添加阶梯" placement="top">
+                    <i
+                      class="el-icon-circle-plus-outline tb-icon fr"
+                      @click="openEdit('add', {})"
+                    ></i>
+                  </el-tooltip>
+                </template>
+                <template slot-scope="scope">
+                  <el-tooltip effect="dark" content="修改" placement="top">
+                    <i class="el-icon-edit tb-icon" @click="openEdit('')"></i>
+                  </el-tooltip>
+                  <el-tooltip effect="dark" content="禁/启用" placement="top">
+                    <i
+                      class="el-icon-video-pause tb-icon"
+                      @click="openEdit('')"
+                    ></i>
+                    <!-- el-icon-video-play -->
+                  </el-tooltip>
+                </template>
+              </el-table-column>
+            </el-table>
+          </el-col>
+        </el-row>
         <!-- 弹窗 新增/修改 -->
         <cost-form-add-edit
           :id="modelId"
@@ -208,6 +230,7 @@
    <script>
 import asyncRequest from "@/apis/service/goodStore/goodsCost";
 import resToken from "@/mixins/resToken";
+import { options7 } from "../columns";
 import { mapGetters } from "vuex";
 import costFormAddEdit from "./costFormAddEdit";
 export default {
@@ -234,6 +257,7 @@ export default {
     return {
       showModel: false,
       modelId: "000",
+      options7: options7,
       sitem: {},
       size: "small",
       rulesThis: this.rules,
@@ -241,69 +265,74 @@ export default {
       loading: false,
       tableData: [{ id: 1, s1: "1", s2: "-", s3: "-", s4: "-", s5: "0" }],
       rules: {
-        a1: [
+        cert_fee: [
           {
             required: true,
             message: "证书费应为合法数字",
             trigger: "blur",
           },
         ],
-        a2: [
+        packing_fee: [
           {
             required: true,
             message: "包装费应为合法数字",
             trigger: "blur",
           },
         ],
-        a3: [
+        cost_fee: [
           {
             required: true,
             message: "成本工艺费应为合法数字",
             trigger: "blur",
           },
         ],
-        a4: [
+        mark_fee: [
           {
             required: true,
             message: "加标费应为合法数字",
             trigger: "blur",
           },
         ],
-        a5: [
+        demo_fee: [
           {
             required: true,
             message: "打样应为合法数字",
             trigger: "blur",
           },
         ],
-        a6: [
+        open_fee: [
           {
             required: true,
             message: "开模费应为合法数字",
             trigger: "blur",
           },
         ],
-        a7: [
+        sample_fee: [
           {
             required: true,
             message: "调样费应为合法数字",
             trigger: "blur",
           },
         ],
-        a8: [
+        market_price: [
           {
             required: true,
             message: "市场价应为合法数字",
             trigger: "blur",
           },
         ],
-        a9: [
+        nake_price: [
           {
             required: true,
             message: "含税成本裸价应为合法数字",
             trigger: "blur",
           },
         ],
+        is_step: {
+          required: true,
+          message: "请选择是否启用阶梯",
+          trigger: "change",
+        },
       },
       ruleForm: {},
     };
@@ -350,15 +379,15 @@ export default {
     },
     resetFormData() {
       this.ruleForm = {
-        a1: "",
-        a2: "",
-        a3: "",
-        a4: "",
-        a5: "",
-        a6: "",
-        a7: "",
-        a8: "",
-        a9: "",
+        cert_fee: "",
+        packing_fee: "",
+        cost_fee: "",
+        mark_fee: "",
+        demo_fee: "",
+        open_fee: "",
+        sample_fee: "",
+        market_price: "",
+        nake_price: "",
         b1: [],
       };
     },

+ 95 - 95
src/views/goodStore/goodsCost/components/packForm.vue

@@ -20,37 +20,37 @@
       <el-col :span="23" class="dmain">
         <el-row>
           <el-col :span="8">
-            <el-form-item label="包装清单" prop="a1">
+            <el-form-item label="包装清单" prop="packing_list">
               <el-input
                 placeholder="包装清单"
-                v-model="ruleForm.a1"
+                v-model="ruleForm.packing_list"
                 maxlength="250"
               />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="包装方式" prop="a2">
+            <el-form-item label="包装方式" prop="packing_way">
               <el-input
                 placeholder="包装方式"
-                v-model="ruleForm.a2"
+                v-model="ruleForm.packing_way"
                 maxlength="250"
               />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="装箱规格" prop="a3">
+            <el-form-item label="装箱规格" prop="packing_spec">
               <el-input
                 placeholder="装箱规格"
-                v-model="ruleForm.a3"
+                v-model="ruleForm.packing_spec"
                 maxlength="250"
               />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="装箱重量" prop="a4">
+            <el-form-item label="装箱重量" prop="packing_weight">
               <el-input
                 placeholder="装箱重量"
-                v-model="ruleForm.a4"
+                v-model="ruleForm.packing_weight"
                 type="number"
                 :min="0"
                 :max="9999999999.99"
@@ -61,20 +61,20 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="装箱尺寸" prop="a5">
+            <el-form-item label="装箱尺寸" prop="packing_szie">
               <el-input
                 placeholder="装箱尺寸"
-                v-model="ruleForm.a5"
+                v-model="ruleForm.packing_szie"
                 maxlength="250"
               />
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
-            <el-form-item label="商品条形码" prop="a6">
+            <el-form-item label="商品条形码" prop="good_bar">
               <el-input
                 placeholder="物流时间"
-                v-model="ruleForm.a6"
+                v-model="ruleForm.good_bar"
                 type="number"
                 :min="0"
                 :max="9999999999999"
@@ -97,9 +97,9 @@
       <el-col :span="23" class="dmain">
         <el-row>
           <el-col :span="8">
-            <el-form-item label="供货区域" prop="b1">
+            <el-form-item label="供货区域" prop="supply_area">
               <el-select
-                v-model="ruleForm.b1"
+                v-model="ruleForm.supply_area"
                 filterable
                 clearable
                 style="width: 100%"
@@ -115,34 +115,34 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="发货地" prop="b2">
+            <el-form-item label="发货地" prop="delivery_place">
               <select-area
                 :placeholder="'发货地'"
-                :value="ruleForm.b2"
+                :value="ruleForm.delivery_place"
                 :is-detail="id !== 'add'"
                 :disabled="isDetail"
                 :size="'mini'"
-                @selectChange="selectAreab2"
+                @selectChange="selectAreadelivery_place"
               />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="产地" prop="b3">
+            <el-form-item label="产地" prop="origin_place">
               <select-area
                 :placeholder="'产地'"
-                :value="ruleForm.b3"
+                :value="ruleForm.origin_place"
                 :size="'mini'"
                 :is-detail="id !== 'add'"
                 :disabled="isDetail"
-                @selectChange="selectAreab3"
+                @selectChange="selectAreaorigin_place"
               />
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="物流时间" prop="b4">
+            <el-form-item label="物流时间" prop="delivery_day">
               <el-input
                 placeholder="物流时间"
-                v-model="ruleForm.b4"
+                v-model="ruleForm.delivery_day"
                 type="number"
                 :min="0"
                 :max="9999999999"
@@ -153,10 +153,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="供货周期" prop="b5">
+            <el-form-item label="供货周期" prop="lead_time">
               <el-input
                 placeholder="供货周期"
-                v-model="ruleForm.b5"
+                v-model="ruleForm.lead_time"
                 type="number"
                 :min="0"
                 :max="9999999999"
@@ -167,10 +167,10 @@
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="调样周期" prop="b6">
+            <el-form-item label="调样周期" prop="sample_day">
               <el-input
                 placeholder="调样周期"
-                v-model="ruleForm.b6"
+                v-model="ruleForm.sample_day"
                 type="number"
                 :min="0"
                 :max="9999999999"
@@ -195,9 +195,9 @@
       <el-col :span="23" class="dmain">
         <el-row style="padding: 0 0 20px 0">
           <el-col :span="8">
-            <el-form-item label="缩略图" prop="c1" class="activity-upload">
+            <el-form-item label="缩略图" prop="good_thumb_img" class="activity-upload">
               <div class="btnupload" style="position: relative">
-                <img v-if="ruleForm.c1" :src="ruleForm.c1" class="avatar" />
+                <img v-if="ruleForm.good_thumb_img" :src="ruleForm.good_thumb_img" class="avatar" />
                 <i v-else class="el-icon-plus avatar-uploader-icon"></i>
                 <file-upload
                   class="Upload"
@@ -205,8 +205,8 @@
                   :accept="'.jpg,.png,.jpeg'"
                   :multiple="true"
                   :uploadcondition="beforeAvatarUpload"
-                  @UploadErrorEvent="UploadErrorEventc1"
-                  @UploadSuccessEvent="UploadSuccessEventc1"
+                  @UploadErrorEvent="UploadErrorEventgood_thumb_img"
+                  @UploadSuccessEvent="UploadSuccessEventgood_thumb_img"
                 ></file-upload>
               </div>
               <div class="txt-tips fl">
@@ -214,9 +214,9 @@
                 <p>1:1</p>
               </div>
             </el-form-item>
-            <el-form-item label="详情主图" prop="c2" class="activity-upload">
+            <el-form-item label="详情主图" prop="good_img" class="activity-upload">
               <div class="btnupload" style="position: relative">
-                <img v-if="ruleForm.c2" :src="ruleForm.c2" class="avatar" />
+                <img v-if="ruleForm.good_img" :src="ruleForm.good_img" class="avatar" />
                 <i v-else class="el-icon-plus avatar-uploader-icon"></i>
                 <file-upload
                   class="Upload"
@@ -224,8 +224,8 @@
                   :accept="'.jpg,.png,.jpeg'"
                   :multiple="true"
                   :uploadcondition="beforeAvatarUpload"
-                  @UploadErrorEvent="UploadErrorEventc2"
-                  @UploadSuccessEvent="UploadSuccessEventc2"
+                  @UploadErrorEvent="UploadErrorEventgood_img"
+                  @UploadSuccessEvent="UploadSuccessEventgood_img"
                 ></file-upload>
               </div>
             </el-form-item>
@@ -235,14 +235,14 @@
           </div>
           </el-col>
           <el-col :span="16">
-            <el-form-item label="详情介绍图" prop="c3">
-              <div class="c3-div">
-                <ul v-if="ruleForm.c3" class="clear">
-                  <li class="img-show-li" v-viewer v-for="(img, iindex) in ruleForm.c3" :key="img + iindex">
+            <el-form-item label="详情介绍图" prop="good_info_img">
+              <div class="good_info_img-div">
+                <ul v-if="ruleForm.good_info_img" class="clear">
+                  <li class="img-show-li" v-viewer v-for="(img, iindex) in ruleForm.good_info_img" :key="img + iindex">
                     <img :src="img" alt="" />
                     <i class="el-icon-close" @click="closeImg(iindex)"></i>
                   </li>
-                  <li class="img-upload-li" v-if="ruleForm.c3.length < 10">
+                  <li class="img-upload-li" v-if="ruleForm.good_info_img.length < 10">
                     <div class="activity-upload">
                       <div class="btnupload" style="position: relative">
                         <i class="el-icon-plus avatar-uploader-icon"></i>
@@ -252,8 +252,8 @@
                           :accept="'.jpg,.png,.jpeg'"
                           :multiple="true"
                           :uploadcondition="beforeAvatarUpload"
-                          @UploadErrorEvent="UploadErrorEventc3"
-                          @UploadSuccessEvent="UploadSuccessEventc3"
+                          @UploadErrorEvent="UploadErrorEventgood_info_img"
+                          @UploadSuccessEvent="UploadSuccessEventgood_info_img"
                         ></file-upload>
                       </div>
                     </div>
@@ -298,14 +298,14 @@ export default {
       options6: options6,
       ruleForm: {},
       rules: {
-        a1: [
+        packing_list: [
           {
             required: true,
             message: "请输入包装清单",
             trigger: "blur",
           },
         ],
-        a2: [
+        packing_way: [
           {
             required: true,
             message: "请输入包装方式",
@@ -313,35 +313,35 @@ export default {
           },
         ],
 
-        a3: [
+        packing_spec: [
           {
             required: true,
             message: "请输入装箱规格",
             trigger: "blur",
           },
         ],
-        a4: [
+        packing_weight: [
           {
             required: true,
             message: "请输入装箱重量",
             trigger: "blur",
           },
         ],
-        a5: [
+        packing_szie: [
           {
             required: true,
             message: "请输入装箱尺寸",
             trigger: "blur",
           },
         ],
-        b1: [
+        supply_area: [
           {
             required: true,
             message: "请选择供货区域",
             trigger: "change",
           },
         ],
-        b2: [
+        delivery_place: [
           {
             type: "array",
             required: true,
@@ -349,7 +349,7 @@ export default {
             trigger: "change",
           },
         ],
-        b3: [
+        origin_place: [
           {
             type: "array",
             required: true,
@@ -357,46 +357,46 @@ export default {
             trigger: "change",
           },
         ],
-        b4: [
+        delivery_day: [
           {
             required: true,
             message: "请输入物流时间",
             trigger: "blur",
           },
         ],
-        b5: [
+        lead_time: [
           {
             required: true,
             message: "请输入供货周期",
             trigger: "blur",
           },
         ],
-        b6: [
+        sample_day: [
           {
             required: true,
             message: "请输入调样周期",
             trigger: "blur",
           },
         ],
-        c1: [
+        good_thumb_img: [
           {
             required: true,
-            message: "商品图",
+            message: "商品缩略图",
             trigger: "change",
           },
         ],
-        c2: [
+        good_img: [
           {
             required: true,
-            message: "商品分类",
+            message: "商品详情主图",
             trigger: "change",
           },
         ],
-        c3: [
+        good_info_img: [
           {
             type: "array",
             required: true,
-            message: "商品品牌",
+            message: "商品详情介绍图",
             trigger: "change",
           },
         ],
@@ -437,32 +437,32 @@ export default {
     },
     resetFormData() {
       this.ruleForm = {
-        a1: "",
-        a2: "",
-        a3: "",
-        a4: "",
-        a5: "",
-        a6: "",
-        b1: "",
-        b2: [],
-        b3: [],
-        b4: "",
-        b5: "",
-        b6: "",
-        c1: "",
-        c2: "",
-        c3: [],
+        packing_list: "",
+        packing_way: "",
+        packing_spec: "",
+        packing_weight: "",
+        packing_szie: "",
+        good_bar: "",
+        supply_area: "",
+        delivery_place: [],
+        origin_place: [],
+        delivery_day: "",
+        lead_time: "",
+        sample_day: "",
+        good_thumb_img: "",
+        good_img: "",
+        good_info_img: [],
       };
     },
     //仓库省市区
-    selectAreab2(e) {
-      this.ruleForm.b2 = e;
-      this.$refs.ruleForm.validateField("b2");
+    selectAreadelivery_place(e) {
+      this.ruleForm.delivery_place = e;
+      this.$refs.ruleForm.validateField("delivery_place");
     },
     //仓库省市区
-    selectAreab3(e) {
-      this.ruleForm.b3 = e;
-      this.$refs.ruleForm.validateField("b3");
+    selectAreaorigin_place(e) {
+      this.ruleForm.origin_place = e;
+      this.$refs.ruleForm.validateField("origin_place");
     },
     async submitForm() {
       await this.$refs.ruleForm.validate(async (valid) => {
@@ -551,19 +551,19 @@ export default {
     },
 
     closeImg(index) {
-      this.ruleForm.c3.splice(index, 1);
-      this.$refs.ruleForm.validateField("c3");
+      this.ruleForm.good_info_img.splice(index, 1);
+      this.$refs.ruleForm.validateField("good_info_img");
     },
     //图片上传成功
-    async UploadSuccessEventc1(data) {
+    async UploadSuccessEventgood_thumb_img(data) {
       await this.UploadSuccessEvent(1, data);
     },
     //图片上传成功
-    async UploadSuccessEventc2(data) {
+    async UploadSuccessEventgood_img(data) {
       await this.UploadSuccessEvent(2, data);
     },
     //图片上传成功
-    async UploadSuccessEventc3(data) {
+    async UploadSuccessEventgood_info_img(data) {
       await this.UploadSuccessEvent(3, data);
     },
     //图片上传成功
@@ -573,35 +573,35 @@ export default {
         await this.logout();
       } else {
         if (type === 1) {
-          this.ruleForm.c1 = url;
-          this.$refs.ruleForm.validateField("c1");
+          this.ruleForm.good_thumb_img = url;
+          this.$refs.ruleForm.validateField("good_thumb_img");
         } else if (type === 2) {
-          this.ruleForm.c2 = url;
-          this.$refs.ruleForm.validateField("c2");
+          this.ruleForm.good_img = url;
+          this.$refs.ruleForm.validateField("good_img");
         } else {
-          this.ruleForm.c3.push(url);
-          this.$refs.ruleForm.validateField("c3");
+          this.ruleForm.good_info_img.push(url);
+          this.$refs.ruleForm.validateField("good_info_img");
         }
         this.$message.success("图片上传成功!");
       }
     },
     //图片上传失败
-    UploadErrorEventc1(res) {
+    UploadErrorEventgood_thumb_img(res) {
       this.imgUploadError(1, res);
     },
     //图片上传失败
-    UploadErrorEventc2(res) {
+    UploadErrorEventgood_img(res) {
       this.imgUploadError(2, res);
     },
     //图片上传失败
-    UploadErrorEventc3(res) {
+    UploadErrorEventgood_info_img(res) {
       this.imgUploadError(3, res);
     },
     imgUploadError(type, res) {
       if (res !== "break") {
         this.$message.error("图片上传失败!");
         this.$refs.ruleForm.validateField(
-          type === 1 ? "c1" : type === 2 ? "c2" : "c3"
+          type === 1 ? "good_thumb_img" : type === 2 ? "good_img" : "good_info_img"
         );
       }
     },
@@ -629,7 +629,7 @@ export default {
 </script>
    <style lang="scss" scoped>
 .goodsCostAdd {
-  .c3-div {
+  .good_info_img-div {
     ul {
       float: left;
       width: 100%;