Browse Source

孵化平台-产品展示

master
lucky 5 years ago
parent
commit
8abbf8c1f4
  1. 7
      src/components/HeadNav/HeadNav.vue
  2. 1
      src/components/PlatformList/Fruit.vue
  3. 25
      src/router/index.js
  4. 16
      src/views/Challenge/Children/Notice.vue
  5. 16
      src/views/Challenge/Children/Release.vue
  6. 16
      src/views/Challenge/Children/Solicitation.vue
  7. 14
      src/views/IncubationPlatform/Children/Services.vue
  8. 208
      src/views/IncubationPlatform/Children/ShareChild/Institute.vue
  9. 37
      src/views/Industry/Children/Enterprise.vue
  10. 109
      src/views/Industry/Children/Serve.vue
  11. 177
      src/views/Industry/Children/Union.vue
  12. 54
      src/views/Industry/Children/components/HNav.vue
  13. 14
      src/views/Industry/Industry.vue
  14. 23
      src/views/NewPlatform/Children/Core.vue
  15. 17
      src/views/NewPlatform/Children/Develop.vue
  16. 18
      src/views/NewPlatform/Children/Platform.vue
  17. 17
      src/views/NewPlatform/Children/Service.vue
  18. 17
      src/views/NewPlatform/Children/Share.vue
  19. 23
      src/views/NewPlatform/Children/ShareChild/Institute.vue
  20. 17
      src/views/NewPlatform/Children/Transfer.vue
  21. 122
      src/views/NewPlatform/Children/components/DeEnt.vue

7
src/components/HeadNav/HeadNav.vue

@ -118,17 +118,18 @@ export default {
children: [ children: [
{ {
title: '产业创新联盟', title: '产业创新联盟',
url: '', url: '/Challenge/Union',
}, },
{ {
title: '产业服务', title: '产业服务',
url: '', url: '/Challenge/Serve',
}, },
{ {
title: '衍生企业', title: '衍生企业',
url: '', url: '/Challenge/Enterprise',
}, },
], ],
url: '/Challenge/Union',
}, },
{ {
name: '知识平台', name: '知识平台',

1
src/components/PlatformList/Fruit.vue

@ -98,7 +98,6 @@ export default {
background: #fff; background: #fff;
margin-right: 6%; margin-right: 6%;
border-radius: 4px; border-radius: 4px;
box-shadow: 6px 6px 6px #eee;
margin-bottom: 40px; margin-bottom: 40px;
padding: 10px; padding: 10px;
padding-bottom: 60px; padding-bottom: 60px;

25
src/router/index.js

@ -231,8 +231,8 @@ const routes = [
name: 'Cart', name: 'Cart',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Cart/Cart.vue'), component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Cart/Cart.vue'),
}, },
// 创新挑战
{ {
// 创新挑战
path: '/Challenge/Solicitation', path: '/Challenge/Solicitation',
name: 'Challenge', name: 'Challenge',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Challenge/Challenge.vue'), component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Challenge/Challenge.vue'),
@ -254,6 +254,29 @@ const routes = [
}, },
], ],
}, },
{
// 创新挑战
path: '/Industry/Union',
name: 'Industry',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Industry/Industry.vue'),
children: [
{
path: '/Challenge/Union',
name: 'Union',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Industry/Children/Union.vue'),
},
{
path: '/Challenge/Serve',
name: 'Serve',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Industry/Children/Serve.vue'),
},
{
path: '/Challenge/Enterprise',
name: 'Enterprise',
component: () => import(/* webpackChunkName: "cooperative-enterprise" */ 'views/Industry/Children/Enterprise.vue'),
},
],
},
]; ];
const router = new VueRouter({ const router = new VueRouter({

16
src/views/Challenge/Children/Notice.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="search-background"> <div class="search-background">
<div class="d-flex"> <div class="d-flex">
<div class="flex-3 flex-wrap"> <div class="flex-3 flex-wrap">
@ -40,12 +43,19 @@
<script> <script>
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Release', name: 'Release',
components: { HNav }, components: { HNav, BreadCrumb },
data() { data() {
return { return {
str: '发布界面', str: '发布界面',
title: '结果公告',
typeOfPlatform: '创新挑战',
arr: [
{ name: '创新挑战', url: '/Challenge/Solicitation' },
{ name: '结果公告', url: '' },
],
current: 1, current: 1,
pageSize: 8, pageSize: 8,
total: 10, total: 10,
@ -133,6 +143,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.search-background { .search-background {
background: rgba(0, 0, 0, 0.02); background: rgba(0, 0, 0, 0.02);
border: 1px solid rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.06);

16
src/views/Challenge/Children/Release.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="search-background"> <div class="search-background">
<div class="d-flex"> <div class="d-flex">
<div class="flex-3 flex-wrap"> <div class="flex-3 flex-wrap">
@ -41,11 +44,18 @@
<script> <script>
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Release', name: 'Release',
components: { HNav }, components: { HNav, BreadCrumb },
data() { data() {
return { return {
title: '项目发布',
typeOfPlatform: '创新挑战',
arr: [
{ name: '创新挑战', url: '/Challenge/Solicitation' },
{ name: '项目发布', url: '' },
],
str: '发布界面', str: '发布界面',
current: 1, current: 1,
pageSize: 8, pageSize: 8,
@ -142,6 +152,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.search-background { .search-background {
background: rgba(0, 0, 0, 0.02); background: rgba(0, 0, 0, 0.02);
border: 1px solid rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.06);

16
src/views/Challenge/Children/Solicitation.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="top-box"> <div class="top-box">
<div class="top-title">创新挑战</div> <div class="top-title">创新挑战</div>
<div class="top-content"> <div class="top-content">
@ -32,11 +35,18 @@
<script> <script>
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Solicitation', name: 'Solicitation',
components: { HNav }, components: { HNav, BreadCrumb },
data() { data() {
return { return {
title: '需求征集',
typeOfPlatform: '创新挑战',
arr: [
{ name: '创新挑战', url: '/Challenge/Solicitation' },
{ name: '需求征集', url: '' },
],
str: '征集界面', str: '征集界面',
list: [], list: [],
}; };
@ -45,6 +55,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.top-box { .top-box {
background: -webkit-linear-gradient(left, #13ACC4, #A9C300) !important; background: -webkit-linear-gradient(left, #13ACC4, #A9C300) !important;
} }

14
src/views/IncubationPlatform/Children/Services.vue

@ -14,19 +14,10 @@
</div> </div>
</div> </div>
<div class="inner d-flex flex-wrap"> <div class="inner d-flex flex-wrap">
<div <div :class="(index + 1) % 4 === 0 ? 'margin-0' : ''" :key="index" class="item-box" v-for="(item, index) in list">
:class="(index + 1) % 4 === 0 ? 'margin-0' : ''"
:key="index"
class="item-box"
v-for="(item, index) in list"
>
<img :src="item.imgUrl" style="height: 220px; width: 100%; border: 1px solid #ccc" /> <img :src="item.imgUrl" style="height: 220px; width: 100%; border: 1px solid #ccc" />
<p class="font-24 my-4">{{ item.name }}</p> <p class="font-24 my-4">{{ item.name }}</p>
<p <p @click="jump(item.id)" class="font-16 baseColor" style="text-align: right; cursor: pointer">了解更多</p>
@click="jump(item.id)"
class="font-16 baseColor"
style="text-align: right; cursor: pointer"
>了解更多</p>
</div> </div>
</div> </div>
<div class="inner"> <div class="inner">
@ -97,7 +88,6 @@ export default {
width: 20.5%; width: 20.5%;
margin-right: 6%; margin-right: 6%;
border-radius: 4px; border-radius: 4px;
box-shadow: 6px 6px 6px #eee;
} }
.margin-0 { .margin-0 {

208
src/views/IncubationPlatform/Children/ShareChild/Institute.vue

@ -0,0 +1,208 @@
<template>
<div>
<rotation />
<h-nav />
<div class="inner ins-box">
<p class="font-bold-24 item-title">设备列表</p>
<div class="d-flex flex-wrap">
<div v-for="(item, index) in list" :key="index" class="item-box" :class="(index + 1) % 4 === 0 ? 'margin-0' : ''">
<img :src="item.imgUrl" style="height: 220px; width: 100%; border: 1px solid #ccc" />
<p class="font-24 my-4">{{ item.name }}</p>
<p class="font-16 baseColor item-more" @click="jump(item.id)">了解更多</p>
</div>
</div>
<p class="font-bold-24 item-title">人才团队带头人情况</p>
<div class="d-flex">
<div class="header-box" style="flex: 1">
<p style="background: #11b7ce; color: #fff">姓名</p>
<p>性别</p>
<p>民族</p>
<p>出生年月</p>
<p>学历</p>
<p>职称</p>
<p>所学专业</p>
<p>从事专业</p>
<p>团队名称</p>
<p>工作单位</p>
<p>研究方向</p>
</div>
<div class="header-box" style="flex: 5; background: #fff">
<p style="border-bottom: 1px solid #eee">{{ obj.name }}</p>
<p><span v-if="obj.gender - 0 === 1">男</span> <span v-else-if="obj.gender - 0 === 2"></span></p>
<p>{{ obj.famousFamily }}</p>
<p>{{ obj.birthday }}</p>
<p>{{ obj.education }}</p>
<p>{{ obj.position }}</p>
<p>{{ obj.major }}</p>
<p>{{ obj.professional }}</p>
<p>{{ obj.teamName }}</p>
<p>{{ obj.workUnit }}</p>
<p>{{ obj.direction }}</p>
</div>
</div>
<p class="font-bold-24 item-title">团队成员信息</p>
<div style="background: #fff">
<div class="d-flex">
<div class="h-box" style="flex: 1">姓名</div>
<div class="h-box" style="flex: 1">性别</div>
<div class="h-box" style="flex: 1">所在单位</div>
<div class="h-box" style="flex: 1">出生年月</div>
<div class="h-box" style="flex: 1">学历学位</div>
<div class="h-box" style="flex: 1">职称职务</div>
<div class="h-box" style="flex: 1">研究方向</div>
</div>
<div class="d-flex" v-for="(item, index) in obj.teamMemberList" :key="index">
<div class="con-box" style="flex: 1">{{ item.name }}</div>
<div class="con-box" style="flex: 1">
<span v-if="item.gender - 0 === 1"></span>
<span v-else-if="item.gender - 0 === 2"></span>
</div>
<div class="con-box" style="flex: 1">???????????????</div>
<div class="con-box" style="flex: 1">{{ item.birthday }}</div>
<div class="con-box" style="flex: 1">{{ item.education }}</div>
<div class="con-box" style="flex: 1">{{ item.position }}</div>
<div class="con-box" style="flex: 1">{{ item.direction }}</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { mapMutations, mapState } from 'vuex';
import { selInstrumentByRes, teamSearch } from 'config/api';
import Rotation from 'components/Rotation/Rotation.vue';
import HNav from './../../components/HNav.vue';
export default {
name: 'Institute',
components: { Rotation, HNav },
data() {
return {
id: 0,
obj: {},
list: [],
};
},
computed: mapState('home', ['LabId']),
created() {
if (this.$route.params.id) {
this.setLabId(this.$route.params.id);
this.id = this.$route.params.id;
} else {
this.id = this.LabId;
}
this.getData();
this.getTeam();
},
methods: {
...mapMutations('home', ['setLabId']),
//
async getData() {
try {
const params = {
param: {
id: this.id,
pageNum: 1,
pageSize: 6,
},
};
const res = await selInstrumentByRes(params);
const { code, msg, data } = res.data;
if (code === 200) {
this.list = data.list;
this.total = parseInt(data.total);
}
} catch (error) {
console.log(error);
}
},
//
async getTeam() {
try {
const params = { param: { instituteId: this.id } };
const res = await teamSearch(params);
const { code, msg, data } = res.data;
if (code === 200) {
this.obj = data[0];
}
} catch (error) {
console.log(error);
}
},
// /
jump(id) {
this.$router.push({
path: '/NewPlatform/Share/InsDet',
name: 'InsDet',
params: { id },
});
},
},
};
</script>
<style lang="stylus" scoped>
.ins-box {
min-height: 500px;
height: auto;
margin: 40px auto;
}
.pagination {
margin: 40px 0;
text-align: right;
}
.item-more {
right: 10px;
bottom: 0px;
cursor: pointer;
position: absolute;
}
.item-box {
position: relative;
width: 20.5%;
margin-right: 6%;
border-radius: 4px;
padding-bottom: 40px;
}
.margin-0 {
margin-right: 0 !important;
}
.item-title {
color: rgba(0, 0, 0, 0.85);
margin-top: 60px;
}
.header-box {
text-align: center;
p {
font-size: 24px;
color: rgba(0, 0, 0, 0.66);
height: 56px;
line-height: 56px;
margin-bottom: 0 !important;
}
}
.h-box {
text-align: center;
font-size: 22px;
color: #096DD9;
height: 56px;
line-height: 56px;
}
.con-box {
text-align: center;
font-size: 18px;
height: 46px;
line-height: 46px;
color: rgba(112, 112, 112, 0.66);
}
</style>

37
src/views/Industry/Children/Enterprise.vue

@ -0,0 +1,37 @@
<template>
<div>
<h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div>
<derive-enterprise :title="title" :type-of-platform="typeOfPlatform" />
</div>
</div>
</template>
<script>
import HNav from './components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
import DeriveEnterprise from 'components/Introduce/DeriveEnterprise.vue';
export default {
name: 'Enterprise',
components: { HNav, BreadCrumb, DeriveEnterprise },
data() {
return {
title: '衍生企业',
typeOfPlatform: '产业平台',
arr: [
{ name: '产业平台', url: '/Challenge/Union' },
{ name: '衍生企业', url: '' },
],
};
},
};
</script>
<style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
</style>

109
src/views/Industry/Children/Serve.vue

@ -0,0 +1,109 @@
<template>
<div>
<rotation />
<h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="flow-path">
<div class="flow-title">服务流程</div>
<div class="flow-content">
<span class="login-color">注册登录</span> 后通过直接申请或加入购物车进行申请服务 直接申请后在个人中心查看 加入
<span class="login-color">购物车</span> 后可通过顶部菜单栏的购物车查看
</div>
</div>
<div class="inner d-flex flex-wrap" style="margin: 60px auto">
<div v-for="(item, index) in list" :key="index" class="item-box" :class="(index + 1) % 3 === 0 ? 'margin-0' : ''">
<img :src="item.picUrl" style="height: 220px; width: 100%; border: 1px solid #ccc" />
<p class="font-24 item-title">{{ item.name }}</p>
<p class="font-24 my-4 item-content">{{ item.intro }}</p>
<p class="font-16 baseColor" style="text-align: right; cursor: pointer" @click="jump(item.id)">了解更多</p>
</div>
</div>
</div>
</template>
<script>
import { selService } from 'config/api';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
import Rotation from 'components/Rotation/Rotation.vue';
import HNav from './components/HNav.vue';
export default {
name: 'Serve',
components: { HNav, Rotation, BreadCrumb },
data() {
return {
title: '产业服务',
typeOfPlatform: '产业平台',
arr: [
{ name: '产业平台', url: '/Challenge/Union' },
{ name: '产业服务', url: '' },
],
list: [],
current: 1,
pageSize: 8,
total: 0,
};
},
created() {
this.getService();
},
methods: {
//
async getService() {
try {
const params = { param: {} };
const res = await selService(params);
const { code, data, msg } = res.data;
if (code === 200) {
this.list = data;
}
} catch (error) {
console.log(data);
}
},
//
jump(id) {
this.$router.push({
path: '/NewPlatform/ServiceDet',
name: 'ServiceDet',
params: { id },
});
},
},
};
</script>
<style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.pagination {
margin: 40px 0;
text-align: right;
}
.item-box {
position: relative;
width: 26%;
margin-right: 11%;
border-radius: 4px;
}
.margin-0 {
margin-right: 0 !important;
}
.item-title {
position: absolute;
top: 100px;
width: 100%;
text-align: center;
}
.item-content {
font-size: 16px;
color: rgba(0, 0, 0, 0.65);
}
</style>

177
src/views/Industry/Children/Union.vue

@ -0,0 +1,177 @@
<template>
<div>
<h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="top-box">
<div class="top-title">创新挑战</div>
<div class="top-content">
山西绿谷生物科技股份有限公司立足功能食品生物医药和大健康产业聚焦创新聚力孵化聚合产业
致力建设集创新链孵化链和产业链为一体产学研协同多学科交叉大中小企业融通
线上线下相结合的融合发展机制和开放式创新创业平台培育打造全链条一体化新型社会研发机构和创新创业生态系统
构筑专业化集群化园区化产业发展新模式和新业态公司秉持创新开放协同融合发展理
赋能健康中国筑梦绿色未来为愿景构建创新创业生态发展特色产业集群打造全链条一体化开放
式创新创业高地为使命大力推动建设共融共生共建 共创价值共同体
</div>
</div>
<div class="center-box">
<div class="center-title">
<div class="circular"></div>
<div style="margin-left: 40px">加入流程</div>
</div>
<div class="center-content">
山西绿谷生物科技股份有限公司立足功能食品生物医药和大健康产业聚焦创新聚力孵化聚合产业
致力建设集创新链孵化链和产业链为一体产学研协同多学科交叉大中小企业融通
线上线下相结合的融合发展机制和开放式创新创业平台培育打造全链条一体化新型社会研发机构和创新创业生态系统
构筑专业化集群化园区化产业发展新模式和新业态公司秉持创新开放协同融合发展理
赋能健康中国筑梦绿色未来为愿景构建创新创业生态发展特色产业集群打造全链条一体化开放
式创新创业高地为使命大力推动建设共融共生共建 共创价值共同体
</div>
<a-button class="center-btn" type="primary">申请加入</a-button>
</div>
<div class="center-box c-box" style="margin-bottom: 160px">
<div class="center-title">
<div class="circular"></div>
<div style="margin-left: 40px">联盟名录</div>
</div>
<div class="center-content">
<div class="d-flex flex-wrap">
<div v-for="(item, index) in lists" :key="index" class="ent-box" :class="(index + 1) % 3 === 0 ? 'margin-0' : ''">
<p class="ent-index">{{ index + 1 }}</p>
<span class="ent-name" style="margin-left: 50px">{{ item }}</span>
</div>
</div>
</div>
<div class="reg-box">
<a-button class="" type="primary" style="float: left">入驻企业注册</a-button>
<a-pagination
:current="current"
:total="total"
:page-size="pageSize"
@change="onShowSizeChange"
class="pagination"
show-less-items
show-quick-jumper
/>
</div>
</div>
</div>
</template>
<script>
import HNav from './components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default {
name: 'Union',
components: { HNav, BreadCrumb },
data() {
return {
title: '产业创新联盟',
typeOfPlatform: '产业平台',
arr: [
{ name: '产业平台', url: '/Challenge/Union' },
{ name: '产业创新联盟', url: '' },
],
list: [],
pageSize: 20,
total: 20,
current: 1,
lists: ['XX企业', 'XX企业', 'XX企业', 'XX企业', 'XX企业', 'XX企业', 'XX企业', 'XX企业', 'XX企业'],
};
},
methods: {
//
onShowSizeChange(current, size) {
this.current = current;
},
},
};
</script>
<style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.center-btn {
position: absolute;
left: 26.2%;
bottom: 100px;
}
.pagination {
float: right;
}
.c-box {
background: none !important;
}
.big-btn {
width: 213px;
height: 166px;
background: #13ACC4;
opacity: 1;
}
.big-con {
width: 96px;
height: 31px;
font-size: 24px;
font-family: Microsoft YaHei;
font-weight: bold;
line-height: 31px;
color: #FFFFFF;
opacity: 1;
}
.margin-0 {
margin-right: 0 !important;
}
.ent-box {
width: 26%;
margin-right: 11%;
position: relative;
height: 56px;
line-height: 56px;
padding: 0 14px;
background: #FFFFFF;
box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
opacity: 1;
margin-bottom: 20px;
}
.ent-index {
width: 28px;
position: absolute;
top: 14px;
line-height: 28px;
text-align: center;
font-size: 20px;
font-family: Segoe UI;
color: #FFFFFF;
height: 28px;
border-radius: 50%;
background: #13ACC4;
margin-bottom: 0;
}
.ent-name {
font-size: 20px;
font-family: Microsoft YaHei;
font-weight: bold;
line-height: 24px;
color: rgba(0, 0, 0, 0.65);
opacity: 1;
}
.reg-box {
position: absolute;
left: 26.2%;
bottom: 100px;
width: 64.8%;
overflow: hidden;
}
</style>

54
src/views/Industry/Children/components/HNav.vue

@ -0,0 +1,54 @@
<template>
<div class="nav-box d-flex">
<div v-for="(item, index) in list" :key="index" :class="activeNum === index ? 'nav-box-active' : ''" @click="jump(item.url)">
{{ item.title }}
</div>
</div>
</template>
<script>
export default {
name: 'HNav',
data() {
return {
str: '导航条',
activeNum: 0,
list: [
{
title: '产业创新联盟',
url: '/Challenge/Union',
},
{
title: '产业服务',
url: '/Challenge/Serve',
},
{
title: '衍生企业',
url: '/Challenge/Enterprise',
},
],
};
},
created() {
console.log();
if (this.$route.fullPath === '/Challenge/Serve') {
this.activeNum = 1;
} else if (this.$route.fullPath === '/Challenge/Enterprise') {
this.activeNum = 2;
} else {
this.activeNum = 0;
}
},
methods: {
jump(url) {
if (this.$route.fullPath === url) {
this.$message.success('已在当前界面');
} else {
this.$router.push(url);
}
},
},
};
</script>
<style lang="stylus" scoped></style>

14
src/views/Industry/Industry.vue

@ -0,0 +1,14 @@
<template>
<div>
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'Industry',
data() {
return {};
},
};
</script>

23
src/views/NewPlatform/Children/Core.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="top-box"> <div class="top-box">
<div class="top-title">协同创新中心</div> <div class="top-title">协同创新中心</div>
<div class="top-content"> <div class="top-content">
@ -36,7 +39,9 @@
<div class="circular"></div> <div class="circular"></div>
<div style="margin-left: 40px">合作伙伴</div> <div style="margin-left: 40px">合作伙伴</div>
</div> </div>
<div class="partner-content"></div> <div class="partner-content">
<de-ent />
</div>
</div> </div>
<div class="join-box"> <div class="join-box">
<div class="join-title"> <div class="join-title">
@ -58,12 +63,20 @@
<script> <script>
import '@/common/platform.styl'; import '@/common/platform.styl';
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
import DeEnt from './components/DeEnt.vue';
export default { export default {
name: 'Core', name: 'Core',
components: { HNav }, components: { HNav, BreadCrumb, DeEnt },
data() { data() {
return { return {
str: '这是中心界面', str: '这是中心界面',
title: '协同创新中心',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '协同创新中心', url: '' },
],
list: [], list: [],
treedata: [ treedata: [
{ {
@ -135,4 +148,8 @@ export default {
}; };
</script> </script>
<style lang="stylus" scoped></style> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
</style>

17
src/views/NewPlatform/Children/Develop.vue

@ -1,18 +1,29 @@
<template> <template>
<div> <div>
<sen-nav /> <sen-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="inner dev-box">平台建设中...</div> <div class="inner dev-box">平台建设中...</div>
</div> </div>
</template> </template>
<script> <script>
import SenNav from './components/SenNav.vue'; import SenNav from './components/SenNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Develop', name: 'Develop',
components: { SenNav }, components: { SenNav, BreadCrumb },
data() { data() {
return { return {
str: '这是资源开发利用平台', str: '这是资源开发利用平台',
title: '资源开发利用平台',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '创新资源平台', url: '/NewPlatform/News' },
{ name: '资源开发利用平台', url: '' },
],
list: [], list: [],
}; };
}, },
@ -20,6 +31,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.dev-box { .dev-box {
height: 600px; height: 600px;
line-height: 600px; line-height: 600px;

18
src/views/NewPlatform/Children/Platform.vue

@ -2,6 +2,9 @@
<div style="padding-bottom: 50px"> <div style="padding-bottom: 50px">
<rotation /> <rotation />
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="content-box"> <div class="content-box">
<div v-for="(item, index) in list" :key="index" style="margin-top: 50px; cursor: pointer" @click="jump(item.url)"> <div v-for="(item, index) in list" :key="index" style="margin-top: 50px; cursor: pointer" @click="jump(item.url)">
<div v-if="index % 2 === 0" class="d-flex justify-space-between"> <div v-if="index % 2 === 0" class="d-flex justify-space-between">
@ -26,12 +29,19 @@
<script> <script>
import Rotation from 'components/Rotation/Rotation.vue'; import Rotation from 'components/Rotation/Rotation.vue';
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'News', name: 'News',
components: { HNav, Rotation }, components: { HNav, Rotation, BreadCrumb },
data() { data() {
return { return {
str: '这是政策界面', str: '这是政策界面',
title: '创新资源平台',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '创新资源平台', url: '' },
],
list: [ list: [
{ {
title: '科技资源开放共享服务平台', title: '科技资源开放共享服务平台',
@ -68,4 +78,8 @@ export default {
}; };
</script> </script>
<style lang="stylus" scoped></style> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
</style>

17
src/views/NewPlatform/Children/Service.vue

@ -2,6 +2,9 @@
<div> <div>
<rotation /> <rotation />
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="flow-path"> <div class="flow-path">
<div class="flow-title">服务流程</div> <div class="flow-title">服务流程</div>
<div class="flow-content"> <div class="flow-content">
@ -24,12 +27,19 @@
import { selService } from 'config/api'; import { selService } from 'config/api';
import Rotation from 'components/Rotation/Rotation.vue'; import Rotation from 'components/Rotation/Rotation.vue';
import HNav from './../components/HNav.vue'; import HNav from './../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Service', name: 'Service',
components: { HNav, Rotation }, components: { HNav, Rotation, BreadCrumb },
data() { data() {
return { return {
str: '这是服务界面', str: '这是服务界面',
title: '科技创新服务',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '科技创新服务', url: '' },
],
list: [], list: [],
current: 1, current: 1,
pageSize: 8, pageSize: 8,
@ -66,6 +76,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.pagination { .pagination {
margin: 40px 0; margin: 40px 0;
text-align: right; text-align: right;
@ -76,7 +90,6 @@ export default {
width: 20.5%; width: 20.5%;
margin-right: 6%; margin-right: 6%;
border-radius: 4px; border-radius: 4px;
box-shadow: 6px 6px 6px #eee;
} }
.margin-0 { .margin-0 {

17
src/views/NewPlatform/Children/Share.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<sen-nav /> <sen-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div> <div>
<div class="search-background"> <div class="search-background">
<div class="d-flex"> <div class="d-flex">
@ -47,13 +50,21 @@
import { selModel } from 'config/api'; import { selModel } from 'config/api';
import PlatformList from 'components/PlatformList/PlatformList.vue'; import PlatformList from 'components/PlatformList/PlatformList.vue';
import SenNav from './components/SenNav.vue'; import SenNav from './components/SenNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
import { mapMutations } from 'vuex'; import { mapMutations } from 'vuex';
export default { export default {
name: 'Share', name: 'Share',
components: { SenNav, PlatformList }, components: { SenNav, PlatformList, BreadCrumb },
data() { data() {
return { return {
str: '这是科技资源开放共享服务平台', str: '这是科技资源开放共享服务平台',
title: '科技资源开放共享服务平台',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '创新资源平台', url: '/NewPlatform/News' },
{ name: '科技资源开放共享服务平台', url: '' },
],
LabIpt: '', // LabIpt: '', //
laboratory: [], // laboratory: [], //
labList: [], // labList: [], //
@ -182,6 +193,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.search-background { .search-background {
background: rgba(0, 0, 0, 0.02); background: rgba(0, 0, 0, 0.02);
border: 1px solid rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.06);

23
src/views/NewPlatform/Children/ShareChild/Institute.vue

@ -2,6 +2,9 @@
<div> <div>
<rotation /> <rotation />
<h-nav /> <h-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div class="inner ins-box"> <div class="inner ins-box">
<p class="font-bold-24 item-title">设备列表</p> <p class="font-bold-24 item-title">设备列表</p>
<div class="d-flex flex-wrap"> <div class="d-flex flex-wrap">
@ -45,7 +48,7 @@
<div class="d-flex"> <div class="d-flex">
<div class="h-box" style="flex: 1">姓名</div> <div class="h-box" style="flex: 1">姓名</div>
<div class="h-box" style="flex: 1">性别</div> <div class="h-box" style="flex: 1">性别</div>
<div class="h-box" style="flex: 1">所在单位</div> <!-- <div class="h-box" style="flex: 1">所在单位</div> -->
<div class="h-box" style="flex: 1">出生年月</div> <div class="h-box" style="flex: 1">出生年月</div>
<div class="h-box" style="flex: 1">学历学位</div> <div class="h-box" style="flex: 1">学历学位</div>
<div class="h-box" style="flex: 1">职称职务</div> <div class="h-box" style="flex: 1">职称职务</div>
@ -57,7 +60,7 @@
<span v-if="item.gender - 0 === 1"></span> <span v-if="item.gender - 0 === 1"></span>
<span v-else-if="item.gender - 0 === 2"></span> <span v-else-if="item.gender - 0 === 2"></span>
</div> </div>
<div class="con-box" style="flex: 1">???????????????</div> <!-- <div class="con-box" style="flex: 1">???????????????</div> -->
<div class="con-box" style="flex: 1">{{ item.birthday }}</div> <div class="con-box" style="flex: 1">{{ item.birthday }}</div>
<div class="con-box" style="flex: 1">{{ item.education }}</div> <div class="con-box" style="flex: 1">{{ item.education }}</div>
<div class="con-box" style="flex: 1">{{ item.position }}</div> <div class="con-box" style="flex: 1">{{ item.position }}</div>
@ -73,12 +76,21 @@ import { mapMutations, mapState } from 'vuex';
import { selInstrumentByRes, teamSearch } from 'config/api'; import { selInstrumentByRes, teamSearch } from 'config/api';
import Rotation from 'components/Rotation/Rotation.vue'; import Rotation from 'components/Rotation/Rotation.vue';
import HNav from './../../components/HNav.vue'; import HNav from './../../components/HNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Institute', name: 'Institute',
components: { Rotation, HNav }, components: { Rotation, HNav, BreadCrumb },
data() { data() {
return { return {
id: 0, id: 0,
title: '研究院详情',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '创新资源平台', url: '/NewPlatform/News' },
{ name: '科技资源开放共享服务平台', url: '/NewPlatform/Share' },
{ name: '研究院详情', url: '' },
],
obj: {}, obj: {},
list: [], list: [],
}; };
@ -143,6 +155,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.ins-box { .ins-box {
min-height: 500px; min-height: 500px;
height: auto; height: auto;
@ -167,7 +183,6 @@ export default {
margin-right: 6%; margin-right: 6%;
border-radius: 4px; border-radius: 4px;
padding-bottom: 40px; padding-bottom: 40px;
box-shadow: 6px 6px 6px #eee;
} }
.margin-0 { .margin-0 {

17
src/views/NewPlatform/Children/Transfer.vue

@ -1,6 +1,9 @@
<template> <template>
<div> <div>
<sen-nav /> <sen-nav />
<div class="inner">
<bread-crumb :arr="arr" />
</div>
<div> <div>
<div class="search-background"> <div class="search-background">
<div class="d-flex"> <div class="d-flex">
@ -31,12 +34,20 @@ import { mapMutations } from 'vuex';
import { selModel } from 'config/api'; import { selModel } from 'config/api';
import Fruit from 'components/PlatformList/Fruit.vue'; import Fruit from 'components/PlatformList/Fruit.vue';
import SenNav from './components/SenNav.vue'; import SenNav from './components/SenNav.vue';
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue';
export default { export default {
name: 'Transfer', name: 'Transfer',
components: { SenNav, Fruit }, components: { SenNav, Fruit, BreadCrumb },
data() { data() {
return { return {
str: '这是知识产权与技术转移转化服务平台', str: '这是知识产权与技术转移转化服务平台',
title: '知识产权与技术转移转化服务平台',
typeOfPlatform: '创新平台',
arr: [
{ name: '创新平台', url: '/NewPlatform/NewCore' },
{ name: '创新资源平台', url: '/NewPlatform/News' },
{ name: '知识产权与技术转移转化服务平台', url: '' },
],
list: [], list: [],
achList: [], achList: [],
fruitIpt: '', fruitIpt: '',
@ -101,6 +112,10 @@ export default {
</script> </script>
<style lang="stylus" scoped> <style lang="stylus" scoped>
.inner {
margin: 10px auto 15px;
}
.search-background { .search-background {
background: rgba(0, 0, 0, 0.02); background: rgba(0, 0, 0, 0.02);
border: 1px solid rgba(0, 0, 0, 0.06); border: 1px solid rgba(0, 0, 0, 0.06);

122
src/views/NewPlatform/Children/components/DeEnt.vue

@ -0,0 +1,122 @@
<!--
Copyright (c) 2020.
author: song
email: 15235360226@163.com
-->
<template>
<div v-if="newPartners && newPartners.length > 0">
<div class="d-flex flex-wrap">
<div
:class="(index + 1) % 3 === 0 ? 'enterprise-box1' : ''"
:key="index"
@click="openProfile(item.name, item.description)"
class="enterprise-box d-flex flex-column align-center white mb-8"
v-for="(item, index) in newPartners"
>
<img :src="item.logoUrl" class="enterprise-pic my-2" />
<div class="font-bold-24 title-color my-2">{{ item.name }}</div>
<div class="font-16 textColor d-flex flex-wrap align-left fill-width enterprise-txt">{{ item.description }}</div>
<div class="d-flex flex-nowrap fill-width py-5 enterprise-more">
<div class="flex-1"></div>
<span class="font-16 baseColor">
了解更多
<a-icon type="arrow-right" />
</span>
</div>
</div>
<company-profile :show-profile="showProfile" @closeProfile="closeProfile" v-if="showProfile" />
</div>
<div class="inner d-flex flex-row-reverse pb-10 enterprise-page">
<a-pagination :default-page-size="6" :total="newPartners.length" @change="onChange" show-less-items v-model="current" />
</div>
</div>
</template>
<script>
import { mapState, mapMutations, mapActions } from 'vuex';
import 'components/Introduce/PartnerShip.styl';
import CompanyProfile from 'components/Introduce/CompanyProfile.vue';
export default {
name: 'DeEnt',
components: { CompanyProfile },
props: {
title: {
type: String,
default: '',
},
typeOfPlatform: {
type: String,
default: '',
},
},
data() {
return {
current: 1,
showProfile: false, //
};
},
computed: {
...mapState('home', ['partners', 'profile']),
newPartners() {
let { partners } = this;
let arr = [];
if (partners && partners.length > 0) {
for (let i = 0; i < partners.length; i++) {
const element = partners[i];
for (let j = 0; j < element.backendSearchList.length; j++) {
const item = element.backendSearchList[j];
arr.push(item);
}
}
return arr;
}
return arr;
},
},
async created() {
this.setPartners([]);
const { title, typeOfPlatform } = this;
const params = {
param: {
pageNum: this.current,
pageSize: 6,
type: title === '合作伙伴' ? 1 : 2,
typeOfPlatform: typeOfPlatform === '关于我们' ? 2 : 1,
},
};
await this.getFrontSearchCompany(params);
},
methods: {
...mapMutations('home', ['setPartners', 'setProfile']),
...mapActions('home', ['getFrontSearchCompany']),
//
onChange(current) {
this.current = current;
},
//
openProfile(title, description) {
this.setProfile(null);
const profile = {
title,
description,
};
this.setProfile(profile);
this.showProfile = true;
},
closeProfile() {
this.showProfile = false;
},
},
};
</script>
<style lang="stylus" scoped></style>
Loading…
Cancel
Save