对接数据

master
夜笙歌 8 months ago
parent 2290ed3f42
commit 8ff6836337

@ -0,0 +1,26 @@
import request from '@/utils/request'
export function getPortalConfigList(query) {
return request({
url: '/portal/portal/getPortalConfigList',
method: 'get',
params: query
})
}
export function getPortalConfigTypeList(query) {
return request({
url: '/portal/portal/getPortalConfigTypeList',
method: 'get',
params: query
})
}
export function getProductCenterProductInfos(query) {
return request({
url: '/portal/portal/getProductCenterProductInfos',
method: 'get',
params: query
})
}

@ -17,7 +17,6 @@ export default {
return {}
},
mounted() {
this.getData()
},
methods: {
}

@ -24,7 +24,7 @@ import wlw from "@/assets/icon/wlw.png";
import znzz from "@/assets/icon/znzz.png";
import kdwl from "@/assets/icon/kdwl.png";
import znlt from "@/assets/icon/znlt.png";
import {getPortalConfigTypeList} from "@/layout/menu";
import {getPortalConfigTypeList} from "@/api/menu";
export default {
name: 'Index',
@ -112,7 +112,6 @@ export default {
methods: {
toLink(e) {
if (!e) return
console.log(e)
this.$router.push(e)
},
getChildren(e) {
@ -132,14 +131,13 @@ export default {
pageNum: 1,
pageSize: 111
}).then(e => {
console.log(e)
this.menuList[1].children = e.rows.map(v => {
return {
name: v.configTypeName,
icon: wlw,
path: v.homeConfigTypePic
}
})
// this.menuList[1].children = e.rows.map(v => {
// return {
// name: v.configTypeName,
// icon: v.homeConfigTypePic,
// path: ''
// }
// })
})
}
}

@ -66,7 +66,6 @@ export default {
getTypicalHomeCaseInfo({
configTypeId:parseFloat(e.rows?.[0]?.configTypeId)
}).then(e=>{
console.log(e)
this.info = e.data
})
})
@ -75,7 +74,6 @@ export default {
getTypicalHomeCaseInfo({
configTypeId:parseFloat(tab.name)
}).then(e=>{
console.log(e)
this.info = e.data
})
},

@ -27,7 +27,7 @@
<el-input v-model="form.userEmail" placeholder="电子邮箱(必填)"></el-input>
</el-form-item>
<el-form-item>
<el-input type="textarea" v-model="form.ly" :rows="6" placeholder="留言内容(必填)"></el-input>
<el-input type="textarea" v-model="form.remark" :rows="6" placeholder="留言内容(必填)"></el-input>
</el-form-item>
<el-form-item>
<el-col :span="8">

@ -5,28 +5,39 @@
style="width: 100%; height: 100%;position:absolute;top: 0;left: 0;"
:src="banner"
fit="contain"></el-image>
<div class="bannerInfo">青岛海威物联科技有限公司致力于工业物联网软硬件系统研发生产和销售提供感知互联的工业化联网整体解决方案</div>
<div class="bannerInfo">{{ bannerTitle }}</div>
<el-button type="primary" class="bannerBtn">免费体验</el-button>
<div class="tabs">
<div class="content">
<div @click="checkTabs(1)" :class="`tab ${tabsActive === 1 ? 'active':''}`">物联网平台</div>
<div @click="checkTabs(2)" :class="`tab ${tabsActive === 2 ? 'active':''}`">物联网硬件产品系列</div>
<div v-for="(i,k) in tabsList" @click="checkTabs(i,k)" :class="`tab ${tabsActive === k ? 'active':''}`">
{{ i.configTypeName }}
</div>
</div>
</div>
</div>
<div v-if="tabsActive === 1">
<platformAdvantages class="platformAdvantages"/>
<PlatformIntroduction class="platformIntroduction"/>
<PlatformAdvantages2 class="platformAdvantages2"/>
<PlatformAdvantages3 class="platformAdvantages3"/>
<PlatformArchitecture class="platformArchitecture"/>
<TechnicalArchitecture class="technicalArchitecture"/>
<platformFeatures class="platformFeatures"/>
<div v-if="tabsActive === 0">
<div v-for="i in contentList">
<platformAdvantages class="platformAdvantages" :configTypeId="configTypeId" v-if="i.configModal === '1'"
:data="i"/>
<PlatformIntroduction class="platformIntroduction" :configTypeId="configTypeId" v-if="i.configModal === '2'"
:data="i"/>
<PlatformAdvantages2 class="platformAdvantages2" :configTypeId="configTypeId" v-if="i.configModal === '3'"
:data="i"/>
<PlatformAdvantages3 class="platformAdvantages3" :configTypeId="configTypeId" v-if="i.configModal === '4'"
:data="i"/>
<PlatformArchitecture class="platformArchitecture" :configTypeId="configTypeId" v-if="i.configModal === '5'"
:data="i"/>
<TechnicalArchitecture class="technicalArchitecture" :configTypeId="configTypeId" v-if="i.configModal === '6'"
:data="i"/>
<platformFeatures class="platformFeatures" :configTypeId="configTypeId" v-if="i.configModal === '7'" :data="i"/>
</div>
</div>
<div v-if="tabsActive === 2">
<HighFrequencyRFID class="highFrequencyRFID"/>
<UltraHighFrequencyRFID class="ultraHighFrequencyRFID"/>
<DataAcquisitionSensing class="dataAcquisitionSensing"/>
<div v-if="tabsActive === 1">
<div v-for="i in contentList">
<HighFrequencyRFID class="highFrequencyRFID" v-if="i.configModal === '8'" :data="i"/>
<UltraHighFrequencyRFID class="ultraHighFrequencyRFID" v-if="i.configModal === '9'" :data="i"/>
<DataAcquisitionSensing class="dataAcquisitionSensing" v-if="i.configModal === '10'" :data="i"/>
</div>
</div>
<ContactUs class="contactUs"/>
<Copyright class="copyright"/>
@ -34,7 +45,6 @@
</template>
<script>
import banner from '@/assets/image/banner.png'
import PlatformAdvantages from './platformAdvantages'
import PlatformIntroduction from './platformIntroduction'
import PlatformAdvantages2 from './platformAdvantages2'
@ -47,6 +57,7 @@ import UltraHighFrequencyRFID from './product/ultraHighFrequencyRFID'
import DataAcquisitionSensing from './product/dataAcquisitionSensing'
import ContactUs from '@/components/contactUs'
import Copyright from '@/components/copyright'
import {getPortalConfigList, getPortalConfigTypeList, getProductCenterProductInfos} from "@/api/productCenter";
export default {
name: 'ProductCenter',
@ -66,13 +77,50 @@ export default {
},
data() {
return {
banner,
tabsActive: 1,
banner: '',
bannerTitle: '',
tabsActive: 0,
tabsList: [],
configTypeId: 0,
contentList: []
}
},
mounted() {
this.getData()
},
methods: {
checkTabs(e) {
this.tabsActive = e
getContentList(id) {
getProductCenterProductInfos({
configTypeId: id
}).then(e => {
this.contentList = e.data.sort((a, b) => a.productInfoOrder - b.productInfoOrder)
console.log(this.contentList)
})
},
checkTabs(i, k) {
this.tabsActive = k
this.configTypeId = i.configTypeId
this.getContentList(i.configTypeId)
},
getData() {
getPortalConfigList({
portalConfigType: 2,
portalConfigTypeId: 4,
pageNum: 1,
pageSize: 5
}).then(e => {
this.banner = e.rows?.[0]?.portalConfigPic
this.bannerTitle = e.rows?.[0]?.portalConfigDesc
})
getPortalConfigTypeList({
parentId: 4,
pageNum: 1,
pageSize: 50
}).then(e => {
this.tabsList = e.rows
this.configTypeId = e.rows?.[0]?.configTypeId
this.getContentList(e.rows?.[0]?.configTypeId)
})
}
}
}
@ -133,7 +181,7 @@ export default {
.tab.active {
color: @standard-color;
width: calc(50% - 2px);
width: calc(50% - 3px);
border: 1px solid #fff;
box-shadow: 0 0 3px #0002;
}

@ -1,13 +1,13 @@
<template>
<div>
<TitleGroup>
<template slot="title">PLATFORM ARCHITECTURE</template>
<template slot="subTitle">平台架构</template>
<template slot="title">{{ data.productInfoEtitle }}</template>
<template slot="subTitle">{{ data.productInfoCtitle }}</template>
</TitleGroup>
<div class="image">
<el-image
style="width: 100%;height: 100%"
:src="banner"
:src="data.hwProductInfoDetailList[0].productInfoDetailPic"
fit="contain"></el-image>
</div>
</div>
@ -20,6 +20,7 @@ import banner from '@/assets/image/banner.png'
let map = null
export default {
name: 'PlatformArchitecture',
props: ['data'],
components: {
TitleGroup
},

@ -1,19 +1,19 @@
<template>
<div>
<TitleGroup>
<template slot="title">PLATFORM FEATURES</template>
<template slot="subTitle">平台功能</template>
<template slot="title">{{ data.productInfoEtitle }}</template>
<template slot="subTitle">{{ data.productInfoCtitle }}</template>
</TitleGroup>
<div class="list">
<div class="item" v-for="i in 6">
<div class="item" v-for="i in data.hwProductInfoDetailList">
<div class="icon">
<el-image
style="width: 100%;height: 100%"
:src="wlw"
:src="i.productInfoDetailDesc"
fit="contain"></el-image>
</div>
<div class="itemTitle">实时数据管理</div>
<div class="itemInfo">通过获取实时数据生产过程中生产环境等结合产品质量进行相应关键指标参数分析形成标准产品控制计划</div>
<div class="itemTitle">{{ i.productInfoDetailTitle }}</div>
<div class="itemInfo">{{ i.productInfoDetailDesc }}</div>
</div>
</div>
</div>
@ -26,6 +26,7 @@ import wlw from "@/assets/icon/wlw.png";
let map = null
export default {
name: 'PlatformAdvantages',
props: ['data'],
components: {
TitleGroup
},
@ -53,7 +54,7 @@ export default {
.item {
display: inline-block;
position: relative;
width: calc(100% / 3 - 2px);
width: calc(100% / 3 - 3px);
height: 13.3vw;
border: 1px solid #3332;
margin: 0;

@ -1,21 +1,21 @@
<template>
<div>
<TitleGroup>
<template slot="title">PLATFORM INTRODUCTION</template>
<template slot="subTitle">平台简介</template>
<template slot="title">{{ data.productInfoEtitle }}</template>
<template slot="subTitle">{{ data.productInfoCtitle }}</template>
</TitleGroup>
<div class="content">
<div class="left">
<div class="contentTitle">开发平台是什么</div>
<div class="contentTitle">{{ data.hwProductInfoDetailList[0].productInfoDetailTitle }}</div>
<div class="contentSubTitle">DEVELOPMENT PLATFORM</div>
<div class="contentInfo">
通过生产指令看板生产现场的所有人员均可及时了解生产任务的投入产出等情况并且实现对生产节奏的控制同时也为生产的前期准备提供了信息比如当天需要生产哪些产品应该准备哪些物料工艺文件生产夹具等
{{ data.hwProductInfoDetailList[0].productInfoDetailDesc }}
</div>
</div>
<div class="right">
<el-image
style="width: 100%;height: 100%"
:src="banner"
:src="data.hwProductInfoDetailList[0].productInfoDetailPic"
fit="contain"></el-image>
</div>
</div>
@ -30,6 +30,7 @@ import wlw from "@/assets/icon/wlw.png";
let map = null
export default {
name: 'PlatformIntroduction',
props: ['data'],
components: {
TitleGroup
},

Loading…
Cancel
Save