chenrui 4 éve
szülő
commit
6367806d09
2 módosított fájl, 50 hozzáadás és 17 törlés
  1. 47 14
      src/views/shop/goodsEdit.vue
  2. 3 3
      src/views/shop/goodsList.vue

+ 47 - 14
src/views/shop/goodsEdit.vue

@@ -34,6 +34,7 @@
       </a-form-item>
       <a-form-item label="商品分类" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol">
         <a-select
+          id="goodsEdit-goodsTypeNo"
           allowClear
           v-decorator="[
             'formData.goodsTypeNo',
@@ -56,7 +57,7 @@
           allowClear />
         <span class="inp-unit">乐豆</span>
       </a-form-item>
-      <a-form-item label="商品状态" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol">
+      <a-form-item label="商品状态" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol" v-if="!isEdit">
         <v-select
           ref="state"
           code="ADVERT_POSITION"
@@ -78,14 +79,18 @@
           allowClear />
       </a-form-item>
       <a-form-item label="供货商" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol">
-        <v-select
-          ref="supplierName"
-          code="ADVERT_POSITION"
+        <a-select
+          id="goodsEdit-officialPartnerType"
           allowClear
-          id="goodsEdit-supplierName"
-          placeholder="请选择供货商"
-          v-decorator="['formData.supplierName', { initialValue: formData.supplierName, rules: [{ required: true, message: '请选择供货商' }] }]"
-        ></v-select>
+          :disable="isEdit"
+          v-decorator="[
+            'formData.officialPartnerType',
+            { initialValue: formData.officialPartnerType,
+              rules: [{ required: true, message: '请选择供货商' }] },
+          ]"
+          placeholder="请选择供货商">
+          <a-select-option v-for="(item,index) in partnerList" :key="index" :value="item.id">{{ item.name }}</a-select-option>
+        </a-select>
       </a-form-item>
       <a-form-item label="商品详情" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol">
         <editor id="goodsEdit-editor" ref="editor" class="goodsEdit-editor" @on-change="editorChange" :cache="false"></editor>
@@ -102,6 +107,8 @@
 import { Upload, STable, VSelect } from '@/components'
 import Editor from '@/components/WEeditor'
 import { goodsTypeQueryList } from '@/api/goodsType'
+import { partnerQueryList } from '@/api/partner'
+import { goodsSave } from '@/api/goods'
 export default {
   name: 'GoodsEdit',
   components: { Upload, STable, VSelect, Editor },
@@ -117,19 +124,25 @@ export default {
         name: '', // 商品名称
         goodsTypeNo: undefined, // 商品分类
         originalGold: '', //  商品价格
-        state: '', //  商品状态
+        state: '1', //  商品状态
         inventoryQty: '', // 库存数量
-        supplierName: null, //  供货商
+        officialPartnerType: undefined, //  供货商
         desc: null //  商品详情
       },
-      goodsTypeList: [] //  商品分类下拉数据
+      goodsTypeList: [], //  商品分类下拉数据
+      partnerList: [] //  供应商下拉数据
+    }
+  },
+  computed: {
+    isEdit () {
+      console.log(this.$route)
+      return this.$route.name === 'goodsListEdit'
     }
   },
   methods: {
     //  商品分类下拉数据
     getGoodsType () {
       goodsTypeQueryList().then(res => {
-        console.log(res)
         if (res.status == 200) {
           this.goodsTypeList = res.data
         } else {
@@ -137,13 +150,32 @@ export default {
         }
       })
     },
+    //  供应商下拉数据
+    getPartnerQueryList () {
+      partnerQueryList().then(res => {
+        if (res.status == 200) {
+          this.partnerList = res.data
+        } else {
+          this.partnerList = []
+        }
+      })
+    },
     //  保存
     handleSubmit (e) {
       e.preventDefault()
       const _this = this
       this.form.validateFields((err, values) => {
         if (!err) {
-          console.info('success')
+          const formData = values.formData
+          formData.desc = _this.formData.desc
+          goodsSave(formData).then(res => {
+            if (res.status == 200) {
+              _this.$message.success(res.message)
+              setTimeout(() => {
+                _this.$router.push({ path: '/shop/goods/list' })
+              }, 1000)
+            }
+          })
         }
       })
     },
@@ -152,7 +184,7 @@ export default {
       this.$router.push({ path: '/shop/goods/list' })
     },
     changeImage (file) {
-      console.log(file, '-----file')
+      this.formData.images = file
     },
     //  商品详情  文本编辑器
     editorChange (html, text) {
@@ -163,6 +195,7 @@ export default {
   beforeRouteEnter (to, from, next) {
     next(vm => {
       vm.getGoodsType()
+      vm.getPartnerQueryList()
     })
   }
 }

+ 3 - 3
src/views/shop/goodsList.vue

@@ -21,7 +21,7 @@
           </a-col>
           <a-col :span="6">
             <a-form-item label="供货商" :label-col="formItemLayout.labelCol" :wrapper-col="formItemLayout.wrapperCol">
-              <a-input id="goodsList-supplierName" allowClear v-decorator="[ 'queryParam.supplierName', { initialValue: queryParam.supplierName, getValueFromEvent: $filterEmpty, rules: [] }]" :maxLength="30" placeholder="请输入供货商" />
+              <a-input id="goodsList-officialPartnerType" allowClear v-decorator="[ 'queryParam.officialPartnerType', { initialValue: queryParam.officialPartnerType, getValueFromEvent: $filterEmpty, rules: [] }]" :maxLength="30" placeholder="请输入供货商" />
             </a-form-item>
           </a-col>
           <a-col :span="6">
@@ -84,7 +84,7 @@ export default {
       // 查询参数
       queryParam: {
         name: '', //  商品名称
-        supplierName: '', //  供货商
+        officialPartnerType: '', //  供货商
         goodsTypeNo: null, //  商品分类
         state: '' // 商品状态
       },
@@ -153,7 +153,7 @@ export default {
     // 重置
     handleReset () {
       this.queryParam.name = ''
-      this.queryParam.supplierName = ''
+      this.queryParam.officialPartnerType = ''
       this.queryParam.goodsTypeNo = null
       this.queryParam.state = null
       this.$refs.table.refresh(true)