Compare commits

...

3 Commits

8 changed files with 239 additions and 119 deletions

View File

@ -40,6 +40,9 @@
<el-button type="primary" style="margin-left:10px;margin-top:4px" size="small" @click="getData"> <el-button type="primary" style="margin-left:10px;margin-top:4px" size="small" @click="getData">
搜索 搜索
</el-button> </el-button>
<el-button type="primary" style="margin-left:10px;margin-top:4px" size="small" @click="clear">
重置
</el-button>
</div> </div>
</div> </div>
@ -252,6 +255,8 @@ export default {
} else { } else {
this.checkList.push(item.labelCode) this.checkList.push(item.labelCode)
} }
console.log('this.checkList------------>', this.checkList);
this.getData()
}, },
// //
getData(parentId = '') { getData(parentId = '') {
@ -265,7 +270,7 @@ export default {
gpsX: '', gpsX: '',
gpsY: '', gpsY: '',
radius: '', radius: '',
labelCodes: '', labelCodes: this.checkList.join(),
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.$http.get('/api/project/selectByParentIdNew', { params: postData }).then(res => { this.$http.get('/api/project/selectByParentIdNew', { params: postData }).then(res => {
@ -283,6 +288,7 @@ export default {
}, },
changeParentId(parentId) { changeParentId(parentId) {
console.log('parentId------------>', parentId);
this.getData(parentId) this.getData(parentId)
}, },
confirmSubmitHandle() { confirmSubmitHandle() {
@ -312,6 +318,11 @@ export default {
this.transferData = []; this.transferData = [];
this.$emit('closeModal'); this.$emit('closeModal');
}, },
clear() {
this.cameraName = ''
this.selectedArray = [];
this.getData()
},
} }
} }

View File

@ -96,7 +96,7 @@ export default {
}) })
}, },
onSelect(item, val, child) { onSelect(item, val, child) {
// mybus.emit('getListByParentId', val.id) this.$emit('changeParentId', val.id)
this.getCameraAllOrgan({ parentId: val.id }).then((res) => { this.getCameraAllOrgan({ parentId: val.id }).then((res) => {
if (res.data.code !== 1) { if (res.data.code !== 1) {
return this.$message.error(res.msg); return this.$message.error(res.msg);

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 KiB

View File

@ -151,6 +151,8 @@
// eslint-disable-next-line no-undef // eslint-disable-next-line no-undef
const navList = ref(navListManagement.navList) const navList = ref(navListManagement.navList)
console.log('navList------------>', navList);
const props = defineProps({ const props = defineProps({
showView: { type: String, default: '' }, showView: { type: String, default: '' },
}) })

View File

@ -0,0 +1,30 @@
<template>
<div class="box">
<div class="img" :style="{ 'background-image': `url(${abilityInfo.bgImg})` }"></div>
<div class="list-box">
<div v-for="(item, i) in abilityInfo.list" :key="i">
{{item}}</div>
</div>
</div>
</template>
<script setup>
const props = defineProps({
abilityInfo: { type: Object, default: () => { } },
})
</script>
<style lang="less" scoped>
.box {
display: flex;
align-items: center;
justify-content: center;
.img {
width: 3rem;
height: 3rem;
background-image: url('../../../assets/home/integration/jcssDetail.png');
background-size: 100%;
}
}
</style>

View File

@ -2,7 +2,58 @@
<!-- 青岛 --> <!-- 青岛 -->
<div class="details-pageconetent"> <div class="details-pageconetent">
<home-header></home-header> <home-header></home-header>
<div></div> <div class="content-box">
<div class="package-title">打包模式</div>
<div class="basic-info">
<div class="title-box">
<div class="bar"></div>
<span class="title-text">基本信息</span>
</div>
<div class="flex-row-start info-box">
<div class="img"></div>
<div class="right">
<div class="name">名称{{ detailInfoObj.name || '--' }}</div>
<div class="flex-row-start area">
<div class="name">应用领域</div>
<div class="flex-row-start tag" v-if="detailInfoObj.applicationArea">
{{ detailInfoObj.applicationArea }}
</div>
</div>
<div class="flex-row-start desc">
<!-- <div class="name">描述</div> -->
<div class="desc">描述{{ detailInfoObj.description +
'哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊哈啊啊啊啊啊啊啊啊啊啊啊啊'
|| '--'
}}</div>
</div>
<div class="btn-box">
<a-button size="big" class="btn-text" type="primary" @click="toView()">
<template #icon>
<form-outlined />
</template>
申请使用
</a-button>
<a-button size="big" class="btn-text" type="primary" @click="toView()">
<template #icon>
<form-outlined />
</template>
收藏
</a-button>
</div>
</div>
</div>
</div>
<div class="ability-list-box">
<div class="title-box">
<div class="bar"></div>
<span class="title-text">服务使用能力列表</span>
</div>
<div class="list-box">
<packageAbilityList />
</div>
</div>
</div>
<home-footer></home-footer> <home-footer></home-footer>
</div> </div>
@ -11,143 +62,169 @@
import HomeFooter from '@/views/newHome/components/Footer' import HomeFooter from '@/views/newHome/components/Footer'
import mybus from '@/myplugins/mybus' import mybus from '@/myplugins/mybus'
import { defineComponent, reactive, ref, toRefs, onMounted, watch } from 'vue' import { defineComponent, reactive, ref, toRefs, onMounted, watch } from 'vue'
import { getIntegrationServicesList } from '@/api/home.js' import { getIntegrationServicesList } from '@/api/home.js'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import HomeHeader from '@/views/home/components/header' import HomeHeader from '@/views/home/components/header'
import searchResultList from '@/views/home/components/searchResultList.vue' import searchResultList from '@/views/home/components/searchResultList.vue'
import packageAbilityList from '@/views/home/components/packageAbilityList.vue'
import { message } from 'ant-design-vue' import { message } from 'ant-design-vue'
import { getIntegrationDetail } from '@/api/home'
const router = useRouter()
const id = router.currentRoute.value.query.id
const detailInfoObj = ref({})
const abilityList = ref([
{
name: '数据资源',
// bgImg: require('../../assets/home/integration/jcssDetail.png'),
list: []
},
{
name: '组件服务',
list: []
},
{
name: '基础设施',
list: []
},
])
// --
const getIntegrationServicesDeatil = (id) => {
getIntegrationDetail(id).then(
(res) => {
if (res.data.code !== 0) {
return message.error(res.data.msg)
}
detailInfoObj.value = res.data.data || {}
console.log('detailInfoObj------------>', detailInfoObj);
let fuseResourceList = detailInfoObj.value.fuseResourceList || []
abilityList.value.map(v => {
let list = fuseResourceList.filter(x => x.type == v.name) || [];
v.list = list.map(v => v.resource && v.resource.channelName)
})
console.log('abilityList.value------------>', abilityList.value);
},
(err) => {
message.error(err)
}
)
}
getIntegrationServicesDeatil(id)
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.resultListSearchInput-father { .flex-row-start {
background: #f3f5f9; display: flex;
padding: 0.2rem; align-items: center;
justify-content: flex-start;
// padding-left: 0.2rem;
// padding-top: 0.2rem;
.resultListSearchInput-son {
background: #fff;
padding: 0.2rem 0.2rem 0rem 0.3rem;
.hengxian {
width: 100%;
height: 0.01rem;
background: rgba(150, 144, 144, 0.3);
margin-top: 0.2rem;
}
}
} }
.resultListSearchInput { .flex-row-center {
margin-left: 0.1rem; display: flex;
align-items: center;
:deep(.ant-input) { justify-content: center;
width: 4rem;
height: 0.36rem;
background: #fff;
border-radius: 0.04rem;
}
:deep(.ant-input-search-button) {
width: 0.8rem;
height: 0.36rem;
background: #0087ff;
border-radius: 0.04rem !important;
font-size: 0.14rem;
font-weight: 400;
color: #fff;
line-height: 0.34rem;
margin-left: 0.1rem;
}
:deep(.ant-input-group-addon) {
left: 0 !important;
}
}
.button-reset {
border: 0;
outline: none;
width: 0.8rem;
height: 0.36rem;
background: #e1edfa;
border-radius: 0.04rem;
font-size: 0.14rem;
font-weight: 400;
color: #0087ff;
line-height: 0.34rem;
margin-left: 2.5rem;
cursor: pointer;
} }
.details-pageconetent { .details-pageconetent {
height: 100%;
width: 100%; width: 100%;
background: rgb(247, 247, 250);
}
.content-box {
width: 14rem;
background: #fff;
margin: 0 auto;
padding: 0.84rem 0.4rem 0.4rem 0.4rem;
}
.package-title {
padding: 10px 0;
color: #000;
font-size: 0.18rem;
}
.title-box {
display: flex; display: flex;
justify-content: center;
align-items: center; align-items: center;
margin-top: 0.67rem; justify-content: flex-start;
position: relative; width: 100%;
background: rgba(245, 243, 243, 0.3); padding: 10px 0;
border-bottom: 2px solid #f0f0f0;
.details-pageconetent-left {
max-height: 6.9rem;
position: absolute;
width: 2.5rem;
top: 0.17rem;
left: 2.5rem;
margin-right: 0.17rem;
overflow: auto;
} }
.top { .bar {
min-height: 7.2rem; height: 26px;
position: relative; width: 6px;
width: 11.5rem; background: #0058e1;
display: flex; margin-right: 6px;
padding-top: 0.2rem; }
flex-direction: column;
.title-text {
font-size: 0.16rem; font-size: 0.16rem;
justify-content: left;
background: #f3f5f9;
.pagination {
background: #f3f5f9;
padding-bottom: 0.6rem;
} }
.top-title { .info-box {
padding: 0.2rem; padding: 20px;
display: flex; align-items: flex-start;
font-size: 18px;
.tabAll {
font-size: 18px;
color: #000000;
margin-right: 35px;
cursor: pointer;
} }
.tabAll:nth-child(1) { .img {
margin-left: 20px; width: 5rem;
height: 4rem;
background-image: url('../../assets/home/integration/jcssDetail.png');
background-size: 100%;
} }
.sel { .right {
font-weight: 600; padding: 0 0.2rem;
color: #0087ff; flex: 1;
border-bottom: 0.02rem solid #0087ff; position: relative;
} height: 4rem;
} box-sizing: border-box;
}
.name {
font-size: 0.16rem;
margin-bottom: 20px;
margin-top: 20px;
} }
:deep(.ant-card-grid) { .area {
margin-bottom: 20px;
}
.desc {
font-size: 0.16rem;
overflow: hidden; overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
-webkit-line-clamp: 1; display: -webkit-box;
word-break: break-all; -webkit-line-clamp: 6;
-webkit-box-orient: vertical;
}
}
.btn-box {
position: absolute;
bottom: 0;
left: 0.2rem;
.btn-text {
bottom: 0.2rem;
height: 0.4rem;
width: 1.2rem;
margin-right: 0.2rem;
}
}
.tag {
padding: 4px 10px;
background: #40a9ff;
color: #fff;
font-size: 0.12rem;
border-radius: 20px;
} }
</style> </style>