|
@@ -11,37 +11,68 @@
|
|
|
</el-col>
|
|
|
</el-col>
|
|
|
</el-col>
|
|
|
- <el-col :span="24" class="common two">
|
|
|
- <el-col :span="12" class="left">
|
|
|
+ <el-col :span="24" class="common">
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="科技项目评审" :userMore="false"></top>
|
|
|
+ <list type="1" :list="oneList" @detail="detail"></list>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
<top topText="高企政策服务" :userMore="false"></top>
|
|
|
- <list type="1" :list="oneList"></list>
|
|
|
+ <list type="1" :list="twoList" @detail="detail"></list>
|
|
|
</el-col>
|
|
|
- <el-col :span="12" class="left"
|
|
|
- ><top topText="创新劵服务" :userMore="false"></top>
|
|
|
- <list type="2" :list="twoList"></list>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="创新券服务" :userMore="false"></top>
|
|
|
+ <list type="1" :list="thrList" @detail="detail"></list>
|
|
|
</el-col>
|
|
|
- </el-col>
|
|
|
- <el-col :span="24" class="common thr">
|
|
|
- <el-col :span="24" class="left"
|
|
|
- ><top topText="科技成果服务" :userMore="false"></top>
|
|
|
- <list type="3" :list="thrList"></list>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="科技成果评价" :userMore="false"></top>
|
|
|
+ <list type="1" :list="fourList" @detail="detail"></list>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="专家智库" :userMore="false"></top>
|
|
|
+ <list type="1" :list="fiveList" @detail="detail"></list>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="企业管理" :userMore="false"></top>
|
|
|
+ <list type="1" :list="sixList" @detail="detail"></list>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="24" class="common_1">
|
|
|
+ <top topText="机构管理" :userMore="false"></top>
|
|
|
+ <list type="1" :list="sevenList" @detail="detail"></list>
|
|
|
</el-col>
|
|
|
</el-col>
|
|
|
</div>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-dialog :title="dialogTitle" class="dialog2" :visible.sync="dialog2" width="30%" :before-close="dialog2Colse">
|
|
|
- <el-form :model="form2" :rules="rulesForm2" ref="form2" label-width="80px">
|
|
|
- <el-form-item label="用户账号" prop="institution_code">
|
|
|
- <el-input v-model="form2.institution_code" placeholder="请输入用户账号" maxlength="18"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="登录密码" prop="passwd">
|
|
|
- <el-input v-model="form2.passwd" placeholder="请输入登录密码" type="password" show-password></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-col :span="24" class="btn">
|
|
|
- <el-button type="primary" size="mini" @click="onSubmit2('form2')">登录</el-button>
|
|
|
- </el-col>
|
|
|
- </el-form>
|
|
|
+ <el-dialog :title="dialogTitle" class="dialog2" :visible.sync="dialog2" width="70%" :before-close="dialog2Colse">
|
|
|
+ <info :type="dialogType"></info>
|
|
|
+ <el-col :span="24" class="two">
|
|
|
+ <el-form :model="form2" :rules="rulesForm2" ref="form2" label-width="80px">
|
|
|
+ <el-form-item label="用户账号" prop="institution_code">
|
|
|
+ <el-input v-model="form2.institution_code" placeholder="请输入用户账号" maxlength="18"></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="登录密码" prop="passwd">
|
|
|
+ <el-input v-model="form2.passwd" placeholder="请输入登录密码" type="password" show-password></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ <el-col :span="24" class="btn">
|
|
|
+ <el-button type="primary" @click="onSubmit2('form2')">提交登录</el-button>
|
|
|
+ </el-col>
|
|
|
+ </el-form>
|
|
|
+ </el-col>
|
|
|
+ </el-dialog>
|
|
|
+ <el-dialog title="信息详情" class="dialog" :visible.sync="dialog" width="50%" :before-close="dialogColse">
|
|
|
+ <div>
|
|
|
+ <p>{{ info.title }}</p>
|
|
|
+ <p>
|
|
|
+ <span>信息来源:{{ info.origin }}</span>
|
|
|
+ <span>发布时间:{{ info.release_time }}</span>
|
|
|
+ </p>
|
|
|
+ <p v-if="info.image">
|
|
|
+ <img v-for="(item, index) in info.image" :key="index" :src="item.url" />
|
|
|
+ </p>
|
|
|
+ <p v-html="info.content"></p>
|
|
|
+ <el-link :underline="false" :href="getImage(info.fileUrl)">{{ getName(info.fileUrl) }}</el-link>
|
|
|
+ </div>
|
|
|
</el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -49,16 +80,17 @@
|
|
|
<script>
|
|
|
import top from './parts/top.vue';
|
|
|
import list from './parts/list.vue';
|
|
|
+import info from './parts/info.vue';
|
|
|
import { btnList } from './btnList.js';
|
|
|
+const { openColumn } = require('@common/dict/index');
|
|
|
import { mapState, createNamespacedHelpers } from 'vuex';
|
|
|
const { mapActions: organization } = createNamespacedHelpers('organization');
|
|
|
-const { mapActions: policy } = createNamespacedHelpers('policy');
|
|
|
-const { mapActions: ticket } = createNamespacedHelpers('ticket');
|
|
|
-const { mapActions: achieveApply } = createNamespacedHelpers('achieveApply');
|
|
|
+const { mapActions: openinfo } = createNamespacedHelpers('openInfo');
|
|
|
+const _ = require('lodash');
|
|
|
export default {
|
|
|
name: 'index',
|
|
|
props: {},
|
|
|
- components: { top, list },
|
|
|
+ components: { top, list, info },
|
|
|
data: function () {
|
|
|
return {
|
|
|
list: btnList,
|
|
@@ -71,46 +103,26 @@ export default {
|
|
|
},
|
|
|
dialogTitle: '高企政策服务',
|
|
|
dialogType: undefined,
|
|
|
- // 高企政策服务-列表
|
|
|
+ // 下方列表
|
|
|
+ // 栏目列表
|
|
|
oneList: [],
|
|
|
- // 创新券服务-列表
|
|
|
- twoList: [
|
|
|
- {
|
|
|
- company: '22',
|
|
|
- },
|
|
|
- {
|
|
|
- company: '十条数据',
|
|
|
- },
|
|
|
- ],
|
|
|
- // 科技成果评价服务-列表
|
|
|
- thrList: [
|
|
|
- {
|
|
|
- basic: {
|
|
|
- achieve_name: '成果名称',
|
|
|
- achieve_date: '2021-01-01 01:00:00',
|
|
|
- achieve_type: '城固了捏',
|
|
|
- achieve_form: '成果形式',
|
|
|
- },
|
|
|
- },
|
|
|
- {
|
|
|
- basic: {
|
|
|
- achieve_name: '10条数据',
|
|
|
- achieve_date: '2021-01-01 01:00:00',
|
|
|
- achieve_type: '城固了捏',
|
|
|
- achieve_form: '成果形式',
|
|
|
- },
|
|
|
- },
|
|
|
- ],
|
|
|
+ twoList: [],
|
|
|
+ thrList: [],
|
|
|
+ fourList: [],
|
|
|
+ fiveList: [],
|
|
|
+ sixList: [],
|
|
|
+ sevenList: [],
|
|
|
+ // 信息详情
|
|
|
+ dialog: false,
|
|
|
+ info: {},
|
|
|
};
|
|
|
},
|
|
|
async created() {
|
|
|
await this.search();
|
|
|
},
|
|
|
methods: {
|
|
|
- ...policy({ policyQuery: 'query' }),
|
|
|
- ...ticket({ ticketQuery: 'query' }),
|
|
|
- ...achieveApply({ achieveApplyQuery: 'query' }),
|
|
|
...organization(['login', 'fetch']),
|
|
|
+ ...openinfo(['query']),
|
|
|
link(data) {
|
|
|
const { type, name } = data;
|
|
|
if (type == '1') {
|
|
@@ -155,24 +167,33 @@ export default {
|
|
|
},
|
|
|
// 查询列表信息
|
|
|
async search({ skip = 0, limit = 10, ...info } = {}) {
|
|
|
- // 高企政策服务
|
|
|
- let res = await this.policyQuery({ skip, limit: 7, status: 1, ...info });
|
|
|
- if (this.$checkRes(res)) this.$set(this, `oneList`, res.data);
|
|
|
- res = await this.ticketQuery({ skip, limit: 7, status: 1, ...info });
|
|
|
- if (this.$checkRes(res)) {
|
|
|
- this.$set(this, `twoList`, res.data);
|
|
|
+ for (const val of openColumn) {
|
|
|
+ info.column_name = val.label;
|
|
|
+ let res = await this.query({ skip, limit: 6, ...info });
|
|
|
+ if (this.$checkRes(res)) {
|
|
|
+ this.$set(this, `${val.value}List`, res.data);
|
|
|
+ }
|
|
|
}
|
|
|
- // 创新券
|
|
|
- res = await this.ticketQuery({ skip, limit: 7, status: 4, ...info });
|
|
|
- if (this.$checkRes(res)) {
|
|
|
- this.$set(this, `twoList`, res.data);
|
|
|
+ },
|
|
|
+ // 查看列表信息详情
|
|
|
+ detail(data) {
|
|
|
+ this.$set(this, `info`, data);
|
|
|
+ this.dialog = true;
|
|
|
+ },
|
|
|
+ getImage(data) {
|
|
|
+ if (_.map(data, 'url')[0]) {
|
|
|
+ return _.map(data, 'url')[0];
|
|
|
}
|
|
|
- // 科技成果评价
|
|
|
- res = await this.achieveApplyQuery({ skip, limit: 12, status: 6, ...info });
|
|
|
- if (this.$checkRes(res)) {
|
|
|
- this.$set(this, `thrList`, res.data);
|
|
|
+ },
|
|
|
+ getName(data) {
|
|
|
+ if (_.map(data, 'name')[0]) {
|
|
|
+ return _.map(data, 'name')[0];
|
|
|
}
|
|
|
},
|
|
|
+ // 关闭信息查看
|
|
|
+ dialogColse() {
|
|
|
+ this.dialog = false;
|
|
|
+ },
|
|
|
// 查询企业详细信息
|
|
|
async searchCompany(data) {
|
|
|
let res = await this.fetch(data.user_id);
|
|
@@ -236,34 +257,66 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
.common {
|
|
|
- margin: 0 0 10px 0;
|
|
|
- .left {
|
|
|
- width: 49.5%;
|
|
|
- height: 500px;
|
|
|
+ .common_1 {
|
|
|
+ min-height: 140px;
|
|
|
overflow: hidden;
|
|
|
box-shadow: 0 0 4px #409eff;
|
|
|
border-radius: 10px;
|
|
|
margin: 0 10px 10px 0;
|
|
|
padding: 10px;
|
|
|
}
|
|
|
- .left:nth-child(2n) {
|
|
|
- margin: 0 0 10px 0;
|
|
|
- }
|
|
|
}
|
|
|
- .thr {
|
|
|
- width: 100%;
|
|
|
- .left {
|
|
|
- width: 100%;
|
|
|
+}
|
|
|
+.dialog2 {
|
|
|
+ .two {
|
|
|
+ height: 200px;
|
|
|
+ background: #fff;
|
|
|
+ padding: 0 20%;
|
|
|
+ .btn {
|
|
|
+ text-align: center;
|
|
|
+ padding: 10px 0;
|
|
|
}
|
|
|
}
|
|
|
+ /deep/.el-dialog__body {
|
|
|
+ padding: 0;
|
|
|
+ }
|
|
|
}
|
|
|
-.dialog2 {
|
|
|
- .btn {
|
|
|
+.dialog {
|
|
|
+ /deep/.el-dialog__body {
|
|
|
+ padding: 10px;
|
|
|
+ }
|
|
|
+ p:nth-child(1) {
|
|
|
+ font-size: 20px;
|
|
|
text-align: center;
|
|
|
- padding: 10px 0;
|
|
|
+ color: #000;
|
|
|
+ margin: 0 0 10px 0;
|
|
|
}
|
|
|
- /deep/.el-dialog__body {
|
|
|
- height: 180px;
|
|
|
+ p:nth-child(2) {
|
|
|
+ text-align: center;
|
|
|
+ margin: 0 0 10px 0;
|
|
|
+ span {
|
|
|
+ font-size: 16px;
|
|
|
+ padding: 0 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ p:nth-child(3) {
|
|
|
+ text-align: center;
|
|
|
+ img {
|
|
|
+ width: 49.4%;
|
|
|
+ height: 200px;
|
|
|
+ margin: 0 10px 10px 0;
|
|
|
+ border-radius: 10px;
|
|
|
+ }
|
|
|
+ img:nth-child(2n) {
|
|
|
+ margin: 0 0 10px 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ p:nth-child(4) {
|
|
|
+ font-size: 16px;
|
|
|
+ margin: 0 0 10px 0;
|
|
|
+ }
|
|
|
+ .el-link {
|
|
|
+ font-size: 16px;
|
|
|
}
|
|
|
}
|
|
|
</style>
|