|
@@ -0,0 +1,148 @@
|
|
|
+<template>
|
|
|
+ <div id="column">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24" class="info">
|
|
|
+ <el-col :span="24" class="list">
|
|
|
+ <template>
|
|
|
+ <el-col :span="24" class="search">
|
|
|
+ <el-col :span="5">
|
|
|
+ <el-select v-model="field" placeholder="请选择所属领域" @change="change">
|
|
|
+ <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-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-radio-group v-model="radio1" @change="submits">
|
|
|
+ <el-radio label="0" border>是我处支持范围</el-radio>
|
|
|
+ <el-radio label="1" border>不是我处支持范围</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-col>
|
|
|
+ </el-col>
|
|
|
+ <el-table :data="list" style="width: 100%" border>
|
|
|
+ <el-table-column type="index" label="序号" width="50" align="center"> </el-table-column>
|
|
|
+ <el-table-column prop="name" label="商品名称 " align="center"> </el-table-column>
|
|
|
+ <el-table-column prop="company" label="所属单位 " align="center"> </el-table-column>
|
|
|
+ <el-table-column prop="field" label="所属技术领域" align="center">
|
|
|
+ <template v-slot="scoped">
|
|
|
+ {{
|
|
|
+ scoped.row.field == '0'
|
|
|
+ ? '先进制造'
|
|
|
+ : scoped.row.field == '1'
|
|
|
+ ? '新材料'
|
|
|
+ : scoped.row.field == '2'
|
|
|
+ ? '光电子'
|
|
|
+ : scoped.row.field == '3'
|
|
|
+ ? '信息技术'
|
|
|
+ : scoped.row.field == '4'
|
|
|
+ ? '文化和科技融合'
|
|
|
+ : '暂无'
|
|
|
+ }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <!-- <el-table-column label="操作" align="center">
|
|
|
+ <template slot-scope="scoped">
|
|
|
+ <el-button v-if="scoped.row.status == 4" type="primary" size="mini" @click="shareBtn(scoped.row.id)">审核 </el-button>
|
|
|
+
|
|
|
+ </el-table-column> -->
|
|
|
+ </el-table>
|
|
|
+ <el-col :span="24" class="page">
|
|
|
+ <page v-bind="$attrs" position="center" :limit="limit" :total="total" @query="search"></page>
|
|
|
+ </el-col>
|
|
|
+ </template>
|
|
|
+ </el-col>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import page from '@/components/pagination.vue';
|
|
|
+import { createNamespacedHelpers, mapGetters, mapState } from 'vuex';
|
|
|
+const { mapActions: product } = createNamespacedHelpers('marketproduct');
|
|
|
+export default {
|
|
|
+ name: 'column',
|
|
|
+ props: {},
|
|
|
+ components: {
|
|
|
+ page,
|
|
|
+ },
|
|
|
+ data: () => ({
|
|
|
+ currentPage: 0,
|
|
|
+ pageSize: 10,
|
|
|
+ limit: 10,
|
|
|
+ total: 0,
|
|
|
+ list: [],
|
|
|
+ field: [],
|
|
|
+ radio1: '',
|
|
|
+ }),
|
|
|
+ created() {
|
|
|
+ this.search();
|
|
|
+ },
|
|
|
+ computed: {},
|
|
|
+ methods: {
|
|
|
+ ...product({ productQuery: 'query' }),
|
|
|
+ async search({ skip = 0, limit = 10, ...info } = {}) {
|
|
|
+ if (this.field) {
|
|
|
+ if (this.radio1) {
|
|
|
+ let res = await this.productQuery({ skip, totaltype: 1, field: this.field, radio1: this.radio1, limit, ...info });
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ this.$set(this, `total`, res.total);
|
|
|
+ } else {
|
|
|
+ let res = await this.productQuery({ skip, totaltype: 1, field: this.field, limit, ...info });
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ this.$set(this, `total`, res.total);
|
|
|
+ }
|
|
|
+ } else if (this.radio1) {
|
|
|
+ if (this.field) {
|
|
|
+ let res = await this.productQuery({ skip, totaltype: 1, field: this.field, radio1: this.radio1, limit, ...info });
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ this.$set(this, `total`, res.total);
|
|
|
+ } else {
|
|
|
+ let res = await this.productQuery({ skip, totaltype: 1, radio1: this.radio1, limit, ...info });
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ this.$set(this, `total`, res.total);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ let res = await this.productQuery({ skip, totaltype: 1, limit, ...info });
|
|
|
+ this.$set(this, `list`, res.data);
|
|
|
+ this.$set(this, `total`, res.total);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ async change(value) {
|
|
|
+ this.$set(this, `field`, value);
|
|
|
+ this.search();
|
|
|
+ },
|
|
|
+
|
|
|
+ submits(value) {
|
|
|
+ this.$set(this, `radio1`, value);
|
|
|
+ this.search();
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
+.top {
|
|
|
+ padding: 15px 0;
|
|
|
+ border-bottom: 1px solid #cccc;
|
|
|
+}
|
|
|
+.top .topTitle {
|
|
|
+ padding: 0 10px;
|
|
|
+}
|
|
|
+.top .topAdd {
|
|
|
+ padding: 0 10px 0 0;
|
|
|
+ text-align: right;
|
|
|
+}
|
|
|
+.search {
|
|
|
+ padding: 0 0 18px 0;
|
|
|
+}
|
|
|
+.anniu {
|
|
|
+ padding: 0 10px 0 0;
|
|
|
+}
|
|
|
+.page {
|
|
|
+ padding: 20px 0;
|
|
|
+ text-align: center;
|
|
|
+}
|
|
|
+</style>
|