guhongwei 4 years ago
parent
commit
bfe8dcd007

+ 2 - 0
src/store/index.js

@@ -19,6 +19,7 @@ import market from './market/market';
 import transaction from './market/transaction';
 import expertsaudit from './market/expertsaudit';
 import marketproduct from './market/marketproduct';
+import collectproduct from './market/collectproduct';
 import notice from './market/notice';
 import talentExperts from './market/talentExperts';
 import markettype from './market/markettype';
@@ -51,6 +52,7 @@ export default new Vuex.Store({
   modules: {
     roomchat,
     marketproduct,
+    collectproduct,
     notice,
     talentExperts,
     market,

+ 59 - 0
src/store/market/collectproduct.js

@@ -0,0 +1,59 @@
+import Vue from 'vue';
+import Vuex from 'vuex';
+import _ from 'lodash';
+Vue.use(Vuex);
+const api = {
+  collectproductInfo: `/api/market/collectproduct`,
+};
+const state = () => ({});
+const mutations = {};
+
+const actions = {
+  async query({ commit }, { skip = 0, limit, ...info } = {}) {
+    const res = await this.$axios.$get(`${api.collectproductInfo}`, {
+      skip,
+      limit,
+      ...info,
+    });
+    return res;
+  },
+  async newquery({ commit }, { skip = 0, limit, ...info } = {}) {
+    const res = await this.$axios.$get(`${api.collectproductInfo}/newquery`, {
+      skip,
+      limit,
+      ...info,
+    });
+    return res;
+  },
+  async newfetch({ commit }, { skip = 0, limit, ...info } = {}) {
+    const res = await this.$axios.$get(`${api.collectproductInfo}/newfetch`, {
+      skip,
+      limit,
+      ...info,
+    });
+    return res;
+  },
+  async create({ commit }, payload) {
+    const res = await this.$axios.$post(`${api.collectproductInfo}`, payload);
+    return res;
+  },
+  async fetch({ commit }, payload) {
+    const res = await this.$axios.$get(`${api.collectproductInfo}/${payload}`);
+    return res;
+  },
+  async update({ commit }, { id, ...data }) {
+    const res = await this.$axios.$post(`${api.collectproductInfo}/update/${id}`, data);
+    return res;
+  },
+
+  async delete({ commit }, payload) {
+    const res = await this.$axios.$delete(`${api.collectproductInfo}/${payload}`);
+    return res;
+  },
+};
+export default {
+  namespaced: true,
+  state,
+  mutations,
+  actions,
+};

+ 3 - 402
src/views/userCenter/productInfo/part/infoRelease.vue

@@ -14,189 +14,9 @@
                 <el-option label="服务" value="2"></el-option>
               </el-select>
             </el-form-item>
-            <!-- <span v-if="form.totaltype == 0">
-              <el-form-item label="选择不显示的信息">
-                <el-select v-model="form.is_display" multiple placeholder="请选择" style="width:100%">
-                  <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" :disabled="item.disabled"> </el-option>
-                </el-select>
-              </el-form-item>
-            </span>
-            <span v-if="form.totaltype == 1">
-              <el-form-item label="选择不显示的信息">
-                <el-select v-model="form.is_display" multiple placeholder="请选择" style="width:100%">
-                  <el-option v-for="item in option2" :key="item.value" :label="item.label" :value="item.value" :disabled="item.disabled"> </el-option>
-                </el-select>
-              </el-form-item>
-            </span>
-            <span v-if="form.totaltype == 2">
-              <el-form-item label="选择不显示的信息">
-                <el-select v-model="form.is_display" multiple placeholder="请选择" style="width:100%">
-                  <el-option v-for="item in option3" :key="item.value" :label="item.label" :value="item.value" :disabled="item.disabled"> </el-option>
-                </el-select>
-              </el-form-item>
-            </span> -->
-            <el-form-item label="名称" prop="name">
+            <el-form-item label="名称">
               <el-input v-model="form.name" placeholder="请输入名称"></el-input>
             </el-form-item>
-            <el-form-item label="类型">
-              <el-select v-model="form.product_type_id" filterable @change="selectChild">
-                <el-option v-for="(item, index) in columnList" :key="index" :value="item.id" :label="item.name"></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="产品简介">
-              <el-input type="textarea" v-model="form.introduction" placeholder="请输入产品简介"></el-input>
-            </el-form-item>
-            <el-form-item label="研发阶段" v-if="form.totaltype == null || form.totaltype == '0'">
-              <el-select v-model="form.phase" placeholder="请选择研发阶段">
-                <el-option label="阶段成果" value="0"></el-option>
-                <el-option label="最终成果" value="1"></el-option>
-              </el-select>
-            </el-form-item>
-            <el-row>
-              <el-col :span="12">
-                <el-form-item label="产品单价" v-if="form.totaltype == null || form.totaltype == '0' || form.totaltype == '1'">
-                  <el-input v-model="form.price" placeholder="请输入产品单价"></el-input>
-                </el-form-item>
-              </el-col>
-              <el-col :span="12">
-                <el-form-item label="产品单位" v-if="form.totaltype == null || form.totaltype == '0' || form.totaltype == '1'">
-                  <el-select v-model="form.priceunit" placeholder="请选择产品单位">
-                    <el-option label="公斤" value="0"></el-option>
-                    <el-option label="套" value="1"></el-option>
-                    <el-option label="件" value="2"></el-option>
-                  </el-select>
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <el-form-item label="产品图片" prop="image">
-              <upload
-                :limit="6"
-                :data="form.image"
-                :uploadBtn="true"
-                type="image"
-                :url="`/files/image/upload`"
-                @upload="uploadSuccess"
-                @delete="uploadDelete"
-              ></upload>
-            </el-form-item>
-            <!-- <span>
-              <el-form-item label="产品参数">
-                <template>
-                  <el-col :span="12">
-                    <el-table :data="form.product_args" ref="table" tooltip-effect="dark" border stripe @selection-change="selectRow">
-                      <el-table-column label="参数名称">
-                        <template slot-scope="scope">
-                          <el-input v-model="scope.row.arg_name"></el-input>
-                        </template>
-                      </el-table-column>
-                      <el-table-column label="参数内容">
-                        <template slot-scope="scope">
-                          <el-input v-model="scope.row.memo"></el-input>
-                        </template>
-                      </el-table-column>
-                    </el-table>
-                  </el-col>
-                  <el-col :span="12">
-                    <el-button type="primary" @click.prevent="addRow()">添加参数</el-button>
-                  </el-col>
-                </template>
-              </el-form-item>
-            </span> -->
-            <span>
-              <el-form-item label="所属领域">
-                <el-select v-model="form.field" placeholder="请选择所属领域">
-                  <el-option label="先进制造" value="0"></el-option>
-                  <el-option label="新材料" value="1"></el-option>
-                  <el-option label="光电子" value="2"></el-option>
-                  <el-option label="信息技术" value="3"></el-option>
-                  <el-option label="文化和科技融合" value="4"></el-option>
-                </el-select>
-              </el-form-item>
-            </span>
-            <el-form-item label="服务范围">
-              <el-input type="textarea" v-model="form.scope" placeholder="请输入服务范围"></el-input>
-            </el-form-item>
-            <el-form-item label="合作方式" v-if="form.totaltype == null || form.totaltype == '0' || form.totaltype == '1'">
-              <el-select v-model="form.coopermode" placeholder="请选择合作方式">
-                <el-option label="技术转让" value="0"></el-option>
-                <el-option label="技术服务" value="1"></el-option>
-                <el-option label="技术许可" value="2"></el-option>
-                <el-option label="技术融资" value="3"></el-option>
-                <el-option label="其他" value="4"></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="交易方式" v-if="form.totaltype == null || form.totaltype == '0' || form.totaltype == '1'">
-              <el-select v-model="form.business" placeholder="请选择交易方式">
-                <el-option label="公用" value="0"></el-option>
-                <el-option label="竞价" value="1"></el-option>
-                <el-option label="转让" value="2"></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="投入预算" v-if="form.totaltype == null || form.totaltype == '0'">
-              <el-input v-model="form.budget" placeholder="请输入投入预算"></el-input>
-            </el-form-item>
-            <el-form-item label="需求截止日期" v-if="form.totaltype == null || form.totaltype == '0'">
-              <el-date-picker v-model="form.end_date" type="date" placeholder="请选择需求截止日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd">
-              </el-date-picker>
-            </el-form-item>
-            <el-form-item v-if="form.totaltype == null || form.totaltype == '0'">
-              <span slot="label">
-                <el-popover
-                  placement="top-start"
-                  width="200"
-                  trigger="hover"
-                  content="(阐述在生产经营、项目建设、科研活动、产业化方向中遇到的技术难题或瓶颈问题及需达到的技术指标)"
-                >
-                  <span slot="reference" style="color:#409eff">难题或瓶颈问题</span>
-                </el-popover>
-              </span>
-              <el-input type="textarea" v-model="form.difficult_problem" placeholder="请输入难题或瓶颈问题"></el-input>
-            </el-form-item>
-            <el-form-item v-if="form.totaltype == null || form.totaltype == '0'">
-              <span slot="label">
-                <el-popover
-                  placement="top-start"
-                  width="200"
-                  trigger="hover"
-                  content="(企业承接成果、技术所具备的技术人员、设备、资金等基础条件及其他配套条件)"
-                >
-                  <span slot="reference" style="color:#409eff">企业解决技术需求已具备的条件</span>
-                </el-popover>
-              </span>
-              <el-input type="textarea" v-model="form.demand" placeholder="请输入企业解决需求"></el-input>
-            </el-form-item>
-            <el-form-item label="企业名称" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input v-model="form.company" placeholder="请输入企业名称"></el-input>
-            </el-form-item>
-            <el-form-item label="企业地址" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input v-model="form.address" placeholder="请输入企业地址"></el-input>
-            </el-form-item>
-            <el-form-item label="技术团队情况" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input type="textarea" v-model="form.team" placeholder="请输入技术团队情况"></el-input>
-            </el-form-item>
-            <el-form-item label="知识产权情况" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input v-model="form.property" placeholder="请输入知识产权情况"></el-input>
-            </el-form-item>
-            <el-form-item label="技术成熟度" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-select v-model="form.mature" placeholder="请选择技术成熟度">
-                <el-option label="实验室" value="0"></el-option>
-                <el-option label="小试" value="1"></el-option>
-                <el-option label="中试" value="2"></el-option>
-                <el-option label="成熟" value="3"></el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item label="是否有拟合作企业,如有请填企业名称" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input v-model="form.coopercompany" placeholder="请输入是否有拟合作企业,如有请填企业名称"></el-input>
-            </el-form-item>
-            <el-form-item label="其他需求" v-if="form.totaltype == null || form.totaltype == '1'">
-              <el-input v-model="form.other" placeholder="请输入其他需求"></el-input>
-            </el-form-item>
-            <el-form-item label="联系人" prop="contact_user">
-              <el-input v-model="form.contact_user" placeholder="请输入联系人"></el-input>
-            </el-form-item>
-            <el-form-item label="联系电话" prop="contact_tel">
-              <el-input v-model.number="form.contact_tel" placeholder="请输入联系电话" maxlength="11"></el-input>
-            </el-form-item>
             <el-form-item>
               <el-button @click="draftBtn('form')">保存草稿</el-button>
               <el-button type="primary" @click="submitBtn('form')">信息发布</el-button>
@@ -212,7 +32,6 @@
 import _ from 'lodash';
 import upload from '@/components/upload.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
-const { mapActions: mapMarkettype } = createNamespacedHelpers('markettype');
 export default {
   name: 'infoRelease',
   props: {
@@ -220,209 +39,18 @@ export default {
     product_args: null,
   },
   components: {
-    upload,
+    // upload,
   },
   data: function() {
     return {
-      // 类型
-      columnList: [],
-      // 不显示的信息
-      // 技术
-      options: [
-        {
-          value: 'totaltype',
-          label: '产品类型',
-          disabled: true,
-        },
-        {
-          value: 'name',
-          label: '产品名称',
-          disabled: true,
-        },
-        {
-          value: 'contact_user',
-          label: '联系人',
-          disabled: true,
-        },
-        {
-          value: 'contact_tel',
-          label: '联系人电话',
-          disabled: true,
-        },
-        {
-          value: 'product_type_id',
-          label: '类型',
-        },
-        {
-          value: 'phase',
-          label: '研发阶段',
-        },
-        {
-          value: 'introduction',
-          label: '产品简介',
-          disabled: true,
-        },
-        {
-          value: 'price',
-          label: '产品单价',
-        },
-        {
-          value: 'priceunit',
-          label: '产品单位',
-        },
-        {
-          value: 'image',
-          label: '产品图片',
-        },
-        {
-          value: 'product_args',
-          label: '产品参数',
-        },
-        {
-          value: 'field',
-          label: '所属领域',
-        },
-        {
-          value: 'scope',
-          label: '服务范围',
-        },
-        {
-          value: 'business',
-          label: '交易方式',
-        },
-      ],
-      // 产品
-      option2: [
-        {
-          value: 'totaltype',
-          label: '产品类型',
-          disabled: true,
-        },
-        {
-          value: 'name',
-          label: '产品名称',
-          disabled: true,
-        },
-        {
-          value: 'contact_user',
-          label: '联系人',
-          disabled: true,
-        },
-        {
-          value: 'contact_tel',
-          label: '联系人电话',
-          disabled: true,
-        },
-        {
-          value: 'product_type_id',
-          label: '类型',
-        },
-        {
-          value: 'introduction',
-          label: '产品简介',
-          disabled: true,
-        },
-        {
-          value: 'price',
-          label: '产品单价',
-        },
-        {
-          value: 'priceunit',
-          label: '产品单位',
-        },
-        {
-          value: 'image',
-          label: '产品图片',
-        },
-        {
-          value: 'product_args',
-          label: '产品参数',
-        },
-        {
-          value: 'scope',
-          label: '服务范围',
-        },
-        {
-          value: 'business',
-          label: '交易方式',
-        },
-      ],
-      // 服务
-      option3: [
-        {
-          value: 'totaltype',
-          label: '产品类型',
-          disabled: true,
-        },
-        {
-          value: 'name',
-          label: '产品名称',
-          disabled: true,
-        },
-        {
-          value: 'contact_user',
-          label: '联系人',
-          disabled: true,
-        },
-
-        {
-          value: 'contact_tel',
-          label: '联系人电话',
-          disabled: true,
-        },
-        {
-          value: 'product_type_id',
-          label: '类型',
-        },
-        {
-          value: 'introduction',
-          label: '产品简介',
-          disabled: true,
-        },
-        {
-          value: 'price',
-          label: '产品单价',
-        },
-        {
-          value: 'priceunit',
-          label: '产品单位',
-        },
-
-        {
-          value: 'image',
-          label: '产品图片',
-        },
-        {
-          value: 'field',
-          label: '应用领域',
-        },
-        {
-          value: 'scope',
-          label: '服务范围',
-        },
-        {
-          value: 'business',
-          label: '交易方式',
-        },
-      ],
       // 验证
       rules: {
         name: [{ required: true, message: '请输入名称', trigger: 'blur' }],
-        totaltype: [{ required: true, message: '请输入名称', trigger: 'change' }],
-        contact_user: [{ required: true, message: '请输入联系人', trigger: 'blur' }],
-        contact_tel: [
-          { required: true, message: '请输入联系电话', trigger: 'blur' },
-          // { type: 'number', message: '电话必须为数字值' },
-        ],
       },
     };
   },
-  created() {
-    // 查询类型
-    this.maarkettype();
-  },
+  created() {},
   methods: {
-    ...mapMarkettype({ markettypeList: 'query' }),
     // 草稿
     draftBtn() {
       this.$emit('draftBtn', { data: this.form });
@@ -438,21 +66,6 @@ export default {
         }
       });
     },
-    // 查询类型
-    async maarkettype({ category = 54, ...info } = {}) {
-      const res = await this.markettypeList({ category, ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `columnList`, res.data);
-      }
-    },
-    // 类型选择
-    selectChild(product_type_id) {
-      let res = this.columnList.filter(fil => fil.id === product_type_id);
-      if (res.length > 0) {
-        this.$set(this.form, `product_type_name`, res[0].name);
-      }
-      this.$forceUpdate();
-    },
     // 图片
     uploadSuccess({ type, data }) {
       let arr = _.get(this.form, type);
@@ -468,18 +81,6 @@ export default {
     uploadDelete(index) {
       this.form.image.splice(index, 1);
     },
-    // 获取表格选中时的数据
-    selectRow(val) {
-      this.selectlistRow = val;
-    },
-    addRow() {
-      var list = {
-        rowNum: this.rowNum,
-      };
-      // let tableData = this.emandForm.product_args;
-      this.form.product_args.unshift(list);
-      this.rowNum += 1;
-    },
     back() {
       this.$emit('back');
     },