forked from TALL/check-work
21 changed files with 1134 additions and 10 deletions
After Width: | Height: | Size: 217 KiB |
After Width: | Height: | Size: 208 KiB |
After Width: | Height: | Size: 4.7 KiB |
@ -0,0 +1,89 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<banner :show-page="showPage" /> |
||||
|
<h-nav /> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<div> |
||||
|
<div |
||||
|
:key="index" |
||||
|
@click="jump(item.url)" |
||||
|
style="margin-top: 50px; cursor: pointer" |
||||
|
v-for="(item, index) in list" |
||||
|
> |
||||
|
<div class="d-flex justify-space-between" v-if="index % 2 === 0"> |
||||
|
<div class="introduce-box"> |
||||
|
<p class="introduce-title">{{ item.title }}</p> |
||||
|
<p class="introduce-content">{{ item.content }}</p> |
||||
|
</div> |
||||
|
<img :src="item.imgUrl" style="width: 452px" /> |
||||
|
</div> |
||||
|
<div class="d-flex justify-space-between" v-else> |
||||
|
<img :src="item.imgUrl" style="width: 452px" /> |
||||
|
<div class="introduce-box"> |
||||
|
<p class="introduce-title">{{ item.title }}</p> |
||||
|
<p class="introduce-content">{{ item.content }}</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import Banner from 'components/Banner/Banner.vue'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'MakerSpace', |
||||
|
components: { BreadCrumb, HNav, Banner }, |
||||
|
data() { |
||||
|
return { |
||||
|
showPage: 41, |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '众创空间', url: '' }, |
||||
|
], |
||||
|
list: [ |
||||
|
{ |
||||
|
title: '实体空间', |
||||
|
content: |
||||
|
'山西绿谷生物科技股份有限公司立足功能食品、生物医药和大健康产业,聚焦“创新”、聚力“孵化”、聚合“产业”,' + |
||||
|
'致力建设集创新链、孵化链和产业链为一体,产学研协同、多学科交叉、大中小企业...', |
||||
|
imgUrl: 'https://www.sxwikionline.com/gateway/greenvalley/uploads/upload/20210106/9059bddfe0254a269bf8f575c917b199.png', |
||||
|
url: '/NewPlatform/Share', |
||||
|
}, |
||||
|
{ |
||||
|
title: '虚拟空间', |
||||
|
content: |
||||
|
'山西绿谷生物科技股份有限公司立足功能食品、生物医药和大健康产业,聚焦“创新”、聚力“孵化”、聚合“产业”,' + |
||||
|
'致力建设集创新链、孵化链和产业链为一体,产学研协同、多学科交叉、大中小企业...', |
||||
|
imgUrl: 'https://www.sxwikionline.com/gateway/greenvalley/uploads/upload/20210106/73cba2c598e24bc99d4b988185138f44.png', |
||||
|
url: '/NewPlatform/Transfer', |
||||
|
}, |
||||
|
{ |
||||
|
title: '加入我们', |
||||
|
content: |
||||
|
'山西绿谷生物科技股份有限公司立足功能食品、生物医药和大健康产业,聚焦“创新”、聚力“孵化”、聚合“产业”,' + |
||||
|
'致力建设集创新链、孵化链和产业链为一体,产学研协同、多学科交叉、大中小企业...', |
||||
|
imgUrl: 'https://www.sxwikionline.com/gateway/greenvalley/uploads/upload/20210106/88a52985a48c4780a76507b06798b00f.png', |
||||
|
url: '/NewPlatform/Develop', |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
methods: { |
||||
|
jump(url) { |
||||
|
this.$router.push(url); |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,39 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<h-nav /> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<div class="py-5 my-5"> |
||||
|
<partner-ship :title="title" :type-of-platform="typeOfPlatform" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { mapState, mapMutations, mapActions } from 'vuex'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
import PartnerShip from 'components/Introduce/PartnerShip.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'Partner', |
||||
|
components: { HNav, BreadCrumb, PartnerShip }, |
||||
|
data() { |
||||
|
return { |
||||
|
title: '合作伙伴', |
||||
|
typeOfPlatform: '孵化平台', |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '合作伙伴', url: '' }, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,42 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<banner :show-page="showPage" /> |
||||
|
<h-nav /> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<div class="white pa-5 my-5"> |
||||
|
<rich-text :title="title" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import Banner from 'components/Banner/Banner.vue'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
import RichText from 'components/Introduce/RichText.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'PilotBase', |
||||
|
components: { Banner, HNav, BreadCrumb, RichText }, |
||||
|
data() { |
||||
|
return { |
||||
|
title: '中试基地', |
||||
|
showPage: 43, |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '中试基地', url: '' }, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
|
||||
|
methods: {}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,209 @@ |
|||||
|
<template> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<sen-nav /> |
||||
|
<div> |
||||
|
<div class="search-background"> |
||||
|
<div class="d-flex"> |
||||
|
<div class="flex-3 flex-wrap"> |
||||
|
<span class="ins-title">研究开发实验室:</span> |
||||
|
<span |
||||
|
:class="item.isActive ? 'act-color' : ''" |
||||
|
:key="index" |
||||
|
@click="choose(index, 0)" |
||||
|
class="ins-name" |
||||
|
v-for="(item, index) in laboratory" |
||||
|
>{{ item.name }}</span> |
||||
|
</div> |
||||
|
<div class="flex-1 align-center"> |
||||
|
<a-input-search |
||||
|
@search="searchLab" |
||||
|
class="item-search" |
||||
|
enter-button="搜索" |
||||
|
placeholder="搜索实验室" |
||||
|
v-model="LabIpt" |
||||
|
/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
<platform-list /> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { mapMutations } from 'vuex'; |
||||
|
import { selModel } from 'config/api'; |
||||
|
import PlatformList from 'components/PlatformList/PlatformList.vue'; |
||||
|
import SenNav from './components/SenNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'Products', |
||||
|
components: { BreadCrumb, SenNav, PlatformList }, |
||||
|
data() { |
||||
|
return { |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '产品展示', url: '' }, |
||||
|
], |
||||
|
LabIpt: '', // 实验室搜索框内容 |
||||
|
laboratory: [], // 实验室 |
||||
|
labList: [], // 实验室类型选择列表 |
||||
|
InsIpt: '', // 仪器搜索框内容 |
||||
|
instrument: [], // 仪器 |
||||
|
insList: [], // 仪器类型选择列表 |
||||
|
}; |
||||
|
}, |
||||
|
watch: { |
||||
|
LabIpt(val) { |
||||
|
const obj = { |
||||
|
content: this.LabIpt, |
||||
|
isBtn: 0, |
||||
|
}; |
||||
|
this.setLabIpt(obj); |
||||
|
}, |
||||
|
InsIpt(val) { |
||||
|
const obj = { |
||||
|
content: this.InsIpt, |
||||
|
isBtn: 0, |
||||
|
}; |
||||
|
this.setInsIpt(obj); |
||||
|
}, |
||||
|
}, |
||||
|
created() { |
||||
|
const obj = { |
||||
|
content: '', |
||||
|
isBtn: 0, |
||||
|
}; |
||||
|
this.setLabList([]); |
||||
|
this.setInsList([]); |
||||
|
this.setLabIpt(obj); |
||||
|
this.setInsIpt(obj); |
||||
|
this.getType(1); |
||||
|
this.getType(2); |
||||
|
}, |
||||
|
methods: { |
||||
|
...mapMutations('home', ['setLabList', 'setInsList', 'setLabIpt', 'setInsIpt', 'setListState']), |
||||
|
async getType(num) { |
||||
|
try { |
||||
|
const params = { param: { model: num } }; |
||||
|
const res = await selModel(params); |
||||
|
const { code, mst, data } = res.data; |
||||
|
if (code === 200) { |
||||
|
if (num === 1) { |
||||
|
this.instrument = data; |
||||
|
for (let i = 0; i < this.instrument.length; i++) { |
||||
|
this.instrument[i].isActive = false; |
||||
|
} |
||||
|
} else if (num === 2) { |
||||
|
this.laboratory = data; |
||||
|
for (let i = 0; i < this.laboratory.length; i++) { |
||||
|
this.laboratory[i].isActive = false; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} catch (error) { |
||||
|
console.log(error); |
||||
|
} |
||||
|
}, |
||||
|
// 选中类型时触发 |
||||
|
choose(index, num) { |
||||
|
const that = this; |
||||
|
if (num === 0) { |
||||
|
this.labList = []; |
||||
|
const { laboratory, instrument } = this; |
||||
|
for (let i = 0; i < instrument.length; i++) { |
||||
|
instrument[i].isActive = false; |
||||
|
} |
||||
|
this.setListState(0); |
||||
|
laboratory[index].isActive = !laboratory[index].isActive; |
||||
|
this.laboratory = [...laboratory]; |
||||
|
for (let i = 0; i < laboratory.length; i++) { |
||||
|
if (laboratory[i].isActive) { |
||||
|
this.labList.push(laboratory[i].id); |
||||
|
} |
||||
|
} |
||||
|
this.setLabList(this.labList); |
||||
|
} else if (num === 1) { |
||||
|
this.insList = []; |
||||
|
const { laboratory, instrument } = this; |
||||
|
for (let i = 0; i < laboratory.length; i++) { |
||||
|
laboratory[i].isActive = false; |
||||
|
} |
||||
|
this.setListState(1); |
||||
|
instrument[index].isActive = !instrument[index].isActive; |
||||
|
this.instrument = [...instrument]; |
||||
|
for (let i = 0; i < instrument.length; i++) { |
||||
|
if (instrument[i].isActive) { |
||||
|
this.insList.push(instrument[i].id); |
||||
|
} |
||||
|
} |
||||
|
this.setInsList(this.insList); |
||||
|
} |
||||
|
}, |
||||
|
searchLab() { |
||||
|
const { instrument } = this; |
||||
|
for (let i = 0; i < instrument.length; i++) { |
||||
|
instrument[i].isActive = false; |
||||
|
} |
||||
|
this.instrument = [...instrument]; |
||||
|
this.setListState(0); |
||||
|
this.InsIpt = ''; |
||||
|
const obj = { |
||||
|
content: this.LabIpt, |
||||
|
isBtn: 1, |
||||
|
}; |
||||
|
this.setLabIpt(obj); |
||||
|
}, |
||||
|
searchIns() { |
||||
|
const { laboratory } = this; |
||||
|
for (let i = 0; i < laboratory.length; i++) { |
||||
|
laboratory[i].isActive = false; |
||||
|
} |
||||
|
this.laboratory = [...laboratory]; |
||||
|
this.setListState(1); |
||||
|
this.LabIpt = ''; |
||||
|
const obj = { |
||||
|
content: this.InsIpt, |
||||
|
isBtn: 1, |
||||
|
}; |
||||
|
this.setInsIpt(obj); |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.search-background { |
||||
|
background: rgba(0, 0, 0, 0.02); |
||||
|
border: 1px solid rgba(0, 0, 0, 0.06); |
||||
|
height: auto; |
||||
|
padding: 0 20px; |
||||
|
width: 82%; |
||||
|
margin: 40px auto; |
||||
|
line-height: 44px; |
||||
|
} |
||||
|
|
||||
|
.item-search { |
||||
|
width: 100%; |
||||
|
height: 32px; |
||||
|
} |
||||
|
|
||||
|
.ins-title { |
||||
|
font-size: 16px; |
||||
|
font-weight: bold; |
||||
|
color: rgba(0, 0, 0, 0.65); |
||||
|
} |
||||
|
|
||||
|
.ins-name { |
||||
|
font-size: 16px; |
||||
|
color: rgba(0, 0, 0, 0.65); |
||||
|
padding: 0 10px; |
||||
|
cursor: pointer; |
||||
|
} |
||||
|
|
||||
|
.act-color { |
||||
|
color: #13ACC4 !important; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,42 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<banner :show-page="showPage" /> |
||||
|
<h-nav /> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<div class="white pa-5 my-5"> |
||||
|
<rich-text :title="title" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import Banner from 'components/Banner/Banner.vue'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
import RichText from 'components/Introduce/RichText.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'PublicLaboratory', |
||||
|
components: { Banner, HNav, BreadCrumb, RichText }, |
||||
|
data() { |
||||
|
return { |
||||
|
title: '公共实验室', |
||||
|
showPage: 42, |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '公共实验室', url: '' }, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
|
||||
|
methods: {}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,106 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<banner :show-page="showPage" /> |
||||
|
<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"> |
||||
|
<div |
||||
|
: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" /> |
||||
|
<p class="font-24 my-4">{{ item.name }}</p> |
||||
|
<p |
||||
|
@click="jump(item.id)" |
||||
|
class="font-16 baseColor" |
||||
|
style="text-align: right; cursor: pointer" |
||||
|
>了解更多→</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="inner"> |
||||
|
<a-pagination |
||||
|
:current="current" |
||||
|
:page-size="pageSize" |
||||
|
:total="total" |
||||
|
@change="onShowSizeChange" |
||||
|
class="pagination" |
||||
|
show-less-items |
||||
|
show-quick-jumper |
||||
|
/> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import Banner from 'components/Banner/Banner.vue'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'Services', |
||||
|
components: { Banner, HNav, BreadCrumb }, |
||||
|
data() { |
||||
|
return { |
||||
|
title: '创业服务', |
||||
|
showPage: 46, |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '创业服务', url: '' }, |
||||
|
], |
||||
|
list: [], |
||||
|
current: 1, |
||||
|
pageSize: 8, |
||||
|
total: 0, |
||||
|
}; |
||||
|
}, |
||||
|
|
||||
|
methods: { |
||||
|
// 改变单当前页数 |
||||
|
onShowSizeChange(current, size) { |
||||
|
this.current = current; |
||||
|
}, |
||||
|
// 查看 服务 详情 |
||||
|
jump(id) { |
||||
|
console.log(id); |
||||
|
this.$router.push({ |
||||
|
path: '/NewPlatform/ServiceDet', |
||||
|
name: 'ServiceDet', |
||||
|
params: { id }, |
||||
|
}); |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
|
||||
|
.pagination { |
||||
|
text-align: right; |
||||
|
} |
||||
|
|
||||
|
.item-box { |
||||
|
width: 20.5%; |
||||
|
margin-right: 6%; |
||||
|
border-radius: 4px; |
||||
|
box-shadow: 6px 6px 6px #eee; |
||||
|
} |
||||
|
|
||||
|
.margin-0 { |
||||
|
margin-right: 0 !important; |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,140 @@ |
|||||
|
<template> |
||||
|
<div class="inner equ-box"> |
||||
|
<div class="equ-info d-flex"> |
||||
|
<img :src="obj.img" alt="" /> |
||||
|
<div class="equ-info-box"> |
||||
|
<p class="equ-name">{{ obj.name }}</p> |
||||
|
<div class="d-flex flex-wrap"> |
||||
|
<div style="width: 200px" class="equ-info-left"> |
||||
|
<p>仪器名字:</p> |
||||
|
<p>制造商:</p> |
||||
|
<p>型号:</p> |
||||
|
<p>规格:</p> |
||||
|
<p>性能指标:</p> |
||||
|
<p>联系人:</p> |
||||
|
<p>联系方式:</p> |
||||
|
</div> |
||||
|
<div style="width: 500px"> |
||||
|
<p>{{ obj.name }}</p> |
||||
|
<p>{{ obj.manufactor }}</p> |
||||
|
<p>{{ obj.model }}</p> |
||||
|
<p>{{ obj.specifications }}</p> |
||||
|
<p>{{ obj.performance }}</p> |
||||
|
<p> |
||||
|
<span v-for="(item, index) in obj.selPeoList" :key="index">{{ item.contactsName }}、</span> |
||||
|
</p> |
||||
|
<p> |
||||
|
<span v-for="(item, index) in obj.selPeoList" :key="index">{{ item.contactsPhone }}、</span> |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<p class="equ-btn"> |
||||
|
<a-button style="margin-right: 20px">转化意向</a-button> |
||||
|
<a-button type="primary">加入购物车</a-button> |
||||
|
</p> |
||||
|
</div> |
||||
|
</div> |
||||
|
<div class="content-box"> |
||||
|
<div v-dompurify-html="obj.purpose"></div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { selInstrumentMes } from 'config/api'; |
||||
|
export default { |
||||
|
name: 'InsDet', |
||||
|
data() { |
||||
|
return { |
||||
|
obj: {}, |
||||
|
id: 0, |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
this.id = this.$route.params.id; |
||||
|
this.getData(); |
||||
|
}, |
||||
|
methods: { |
||||
|
async getData() { |
||||
|
try { |
||||
|
const params = { param: { id: this.id } }; |
||||
|
const res = await selInstrumentMes(params); |
||||
|
const { code, data, msg } = res.data; |
||||
|
if (code === 200) { |
||||
|
console.log(data); |
||||
|
this.obj = data; |
||||
|
} |
||||
|
} catch (error) { |
||||
|
console.log(error); |
||||
|
} |
||||
|
}, |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.equ-box { |
||||
|
background: #fff; |
||||
|
padding: 20px; |
||||
|
margin: 60px auto; |
||||
|
} |
||||
|
|
||||
|
.equ-info { |
||||
|
border-bottom: 1px solid rgba(0, 0, 0, 0.14901960784313725); |
||||
|
position: relative; |
||||
|
padding-bottom: 24px; |
||||
|
|
||||
|
img { |
||||
|
width: 300px; |
||||
|
height: 300px; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.equ-name { |
||||
|
font-size: 24px; |
||||
|
font-family: Microsoft YaHei; |
||||
|
font-weight: bold; |
||||
|
line-height: 31px; |
||||
|
color: rgba(0, 0, 0, 0.85); |
||||
|
opacity: 1; |
||||
|
} |
||||
|
|
||||
|
.equ-info-box { |
||||
|
position: relative; |
||||
|
font-size: 16px; |
||||
|
margin-left: 20px; |
||||
|
height: 300px; |
||||
|
font-family: Microsoft YaHei; |
||||
|
font-weight: 400; |
||||
|
color: rgba(0, 0, 0, 0.65); |
||||
|
opacity: 1; |
||||
|
|
||||
|
p { |
||||
|
margin-bottom: 6px; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.equ-info-left { |
||||
|
font-size: 16px; |
||||
|
font-family: Microsoft YaHei; |
||||
|
font-weight: 400; |
||||
|
color: rgba(0, 0, 0, 0.45); |
||||
|
opacity: 1; |
||||
|
|
||||
|
p { |
||||
|
margin-bottom: 6px; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
.equ-btn { |
||||
|
position: absolute; |
||||
|
bottom: 0; |
||||
|
} |
||||
|
|
||||
|
.content-box { |
||||
|
min-height: 400px; |
||||
|
padding: 20px; |
||||
|
font-size: 16px; |
||||
|
color: rgba(0, 0, 0, 0.65); |
||||
|
} |
||||
|
</style> |
@ -0,0 +1,209 @@ |
|||||
|
<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; |
||||
|
box-shadow: 6px 6px 6px #eee; |
||||
|
} |
||||
|
|
||||
|
.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> |
@ -0,0 +1,42 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<banner :show-page="showPage" /> |
||||
|
<h-nav /> |
||||
|
<div class="inner"> |
||||
|
<bread-crumb :arr="arr" /> |
||||
|
<div class="white pa-5 my-5"> |
||||
|
<rich-text :title="title" /> |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import Banner from 'components/Banner/Banner.vue'; |
||||
|
import HNav from './../components/HNav.vue'; |
||||
|
import BreadCrumb from 'components/BreadCrumb/BreadCrumb.vue'; |
||||
|
import RichText from 'components/Introduce/RichText.vue'; |
||||
|
|
||||
|
export default { |
||||
|
name: 'Tutor', |
||||
|
components: { Banner, HNav, BreadCrumb, RichText }, |
||||
|
data() { |
||||
|
return { |
||||
|
title: '创业导师', |
||||
|
showPage: 44, |
||||
|
arr: [ |
||||
|
{ name: '孵化平台', url: '/IncubationPlatform/MakerSpace' }, |
||||
|
{ name: '创业导师', url: '' }, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
|
||||
|
methods: {}, |
||||
|
}; |
||||
|
</script> |
||||
|
|
||||
|
<style lang="stylus" scoped> |
||||
|
.inner { |
||||
|
margin: 40px auto; |
||||
|
} |
||||
|
</style> |
@ -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: '/NewPlatform/Share', |
||||
|
}, |
||||
|
{ |
||||
|
title: '知识产权与技术转移转化服务平台', |
||||
|
url: '/NewPlatform/Transfer', |
||||
|
}, |
||||
|
{ |
||||
|
title: '资源开发利用平台', |
||||
|
url: '/NewPlatform/Develop', |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
console.log(); |
||||
|
if (this.$route.fullPath === '/NewPlatform/Transfer') { |
||||
|
this.activeNum = 1; |
||||
|
} else if (this.$route.fullPath === '/NewPlatform/Develop') { |
||||
|
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> |
@ -0,0 +1,14 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<router-view></router-view> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
name: 'IncubationPlatform', |
||||
|
data() { |
||||
|
return {}; |
||||
|
}, |
||||
|
}; |
||||
|
</script> |
@ -0,0 +1,80 @@ |
|||||
|
<template> |
||||
|
<div class="nav-box d-flex"> |
||||
|
<div |
||||
|
:class="activeNum === index ? 'nav-box-active' : ''" |
||||
|
:key="index" |
||||
|
@click="jump(item.url)" |
||||
|
v-for="(item, index) in list" |
||||
|
>{{ item.title }}</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
name: 'HNav', |
||||
|
data() { |
||||
|
return { |
||||
|
activeNum: 0, |
||||
|
list: [ |
||||
|
{ |
||||
|
title: '众创空间', |
||||
|
url: '/IncubationPlatform/IncubationPlatform', |
||||
|
}, |
||||
|
{ |
||||
|
title: '公共实验室', |
||||
|
url: '/IncubationPlatform/PublicLaboratory', |
||||
|
}, |
||||
|
{ |
||||
|
title: '中试基地', |
||||
|
url: '/IncubationPlatform/PilotBase', |
||||
|
}, |
||||
|
{ |
||||
|
title: '创业导师', |
||||
|
url: '/IncubationPlatform/Tutor', |
||||
|
}, |
||||
|
{ |
||||
|
title: '合作伙伴', |
||||
|
url: '/IncubationPlatform/Partner', |
||||
|
}, |
||||
|
{ |
||||
|
title: '创业服务', |
||||
|
url: '/IncubationPlatform/Services', |
||||
|
}, |
||||
|
{ |
||||
|
title: '产品展示', |
||||
|
url: '/IncubationPlatform/Products', |
||||
|
}, |
||||
|
], |
||||
|
}; |
||||
|
}, |
||||
|
created() { |
||||
|
console.log(); |
||||
|
if (this.$route.fullPath === '/IncubationPlatform/PublicLaboratory') { |
||||
|
this.activeNum = 1; |
||||
|
} else if (this.$route.fullPath === '/IncubationPlatform/PilotBase') { |
||||
|
this.activeNum = 2; |
||||
|
} else if (this.$route.fullPath === '/IncubationPlatform/Tutor') { |
||||
|
this.activeNum = 3; |
||||
|
} else if (this.$route.fullPath === '/IncubationPlatform/Partner') { |
||||
|
this.activeNum = 4; |
||||
|
} else if (this.$route.fullPath === '/IncubationPlatform/Services') { |
||||
|
this.activeNum = 5; |
||||
|
} else if (this.$route.fullPath === '/IncubationPlatform/Products') { |
||||
|
this.activeNum = 6; |
||||
|
} 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> |
Loading…
Reference in new issue