Merge branch 'hi-ucs-dev' of http://15.2.21.221:3000/wuhongjian/hi-ucs into hi-ucs-dev

This commit is contained in:
wuhongjian 2022-07-07 20:38:01 +08:00
commit 32e5253c9f
7 changed files with 444 additions and 399 deletions

View File

@ -18,11 +18,15 @@
<!-- <span class="name">{{ props.dataList.name }}</span> --> <!-- <span class="name">{{ props.dataList.name }}</span> -->
<div class="label-content"> <div class="label-content">
<p class="lable-father"> <p class="lable-father">
<span class="label"> <span class="label" v-if="props.dataList.type">
{{ componentType || props.dataList.type }} {{ props.dataList.type }}
</span>
<span class="label" v-if="props.dataList.shareType">
{{ props.dataList.shareType }}
</span>
<span class="label" v-if="props.dataList.shareCondition">
{{ props.dataList.shareCondition }}
</span> </span>
<span class="label">{{ props.dataList.shareType }}</span>
<span class="label">{{ props.dataList.shareCondition }}</span>
</p> </p>
</div> </div>
<!-- <span class="label">免费</span> --> <!-- <span class="label">免费</span> -->

View File

@ -2,17 +2,34 @@
<template> <template>
<div class="application-deployment-and-security"> <div class="application-deployment-and-security">
<div class="title"> <div class="title">
<DetalsTitle :title="dataFrom.title" :type="dataFrom.englishTitle"></DetalsTitle> <DetalsTitle
:title="dataFrom.title"
:type="dataFrom.englishTitle"
></DetalsTitle>
</div> </div>
<div class="content"> <div class="content">
<div v-for="(item, index) in dataFrom.content" :key="index" class="content-card"> <div
v-for="(item, index) in dataFrom.content"
:key="index"
class="content-card"
>
<div class="card-title">{{ item.childrenTitle }}</div> <div class="card-title">{{ item.childrenTitle }}</div>
<div class="card-content"> <div class="card-content">
<div v-for="carditem in item.childrenContent" :key="carditem"> <div
v-for="carditem in item.childrenContent"
:key="carditem"
:class="
carditem.attrType == '访问地址' ? 'access-to-the-address' : ''
"
>
<span>{{ carditem.attrType }}</span> <span>{{ carditem.attrType }}</span>
<a-tooltip> <a-tooltip>
<template #title>{{ carditem.attrValue }}</template> <template #title>{{ carditem.attrValue }}</template>
<span>{{ carditem.attrValue }}</span> <span
@click="addressFunction(carditem.attrType, carditem.attrValue)"
>
{{ carditem.attrValue }}
</span>
</a-tooltip> </a-tooltip>
</div> </div>
</div> </div>
@ -22,10 +39,10 @@
</template> </template>
<script setup> <script setup>
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle' import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
import { ref, defineProps, watch } from 'vue' import { ref, defineProps, watch } from 'vue'
let dataFrom = ref({ let dataFrom = ref({
title: '部署与安全', title: '部署与安全',
englishTitle: 'DEPLOY&SAFE', englishTitle: 'DEPLOY&SAFE',
content: [ content: [
@ -38,12 +55,12 @@ let dataFrom = ref({
childrenContent: [], childrenContent: [],
}, },
], ],
}) })
// //
const props = defineProps({ const props = defineProps({
dataList: { type: Object, default: null }, dataList: { type: Object, default: null },
}) })
if (props.dataList.infoList) { if (props.dataList.infoList) {
props.dataList.infoList.map((item) => { props.dataList.infoList.map((item) => {
if ( if (
item.attrType === '部署区域' || item.attrType === '部署区域' ||
@ -79,8 +96,14 @@ if (props.dataList.infoList) {
dataFrom.value.content[1].childrenContent.push(itemContent) dataFrom.value.content[1].childrenContent.push(itemContent)
}) })
} }
} }
watch( //访
const addressFunction = (name, itemValue) => {
if (name == '访问地址') {
window.open(itemValue)
}
}
watch(
() => props.dataList, () => props.dataList,
(val) => { (val) => {
if (val) { if (val) {
@ -128,11 +151,11 @@ watch(
// dataFrom.value.content[0].childrenContent.push(obj) // dataFrom.value.content[0].childrenContent.push(obj)
} }
} }
) )
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.application-deployment-and-security { .application-deployment-and-security {
padding: 0.8rem 0; padding: 0.8rem 0;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -151,9 +174,11 @@ watch(
height: 1.5rem; height: 1.5rem;
width: 6.2rem; width: 6.2rem;
border-radius: 0.2rem; border-radius: 0.2rem;
background: linear-gradient(to right, background: linear-gradient(
to right,
rgba(113, 132, 252, 0.4), rgba(113, 132, 252, 0.4),
rgba(148, 163, 252, 0.4)); rgba(148, 163, 252, 0.4)
);
padding: 0 0.3rem; padding: 0 0.3rem;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@ -190,8 +215,11 @@ watch(
/*超出的设置为省略号*/ /*超出的设置为省略号*/
} }
} }
.access-to-the-address {
cursor: pointer;
}
}
} }
} }
} }
}
</style> </style>

View File

@ -18,9 +18,15 @@
<!-- <span class="name">{{ props.dataList.name }}</span> --> <!-- <span class="name">{{ props.dataList.name }}</span> -->
<div class="label-content"> <div class="label-content">
<p class="lable-father"> <p class="lable-father">
<span class="label">{{ props.dataList.type }}</span> <span class="label" v-if="props.dataList.type">
<span class="label">{{ props.dataList.shareType }}</span> {{ props.dataList.type }}
<span class="label">{{ props.dataList.shareCondition }}</span> </span>
<span class="label" v-if="props.dataList.shareType">
{{ props.dataList.shareType }}
</span>
<span class="label" v-if="props.dataList.shareCondition">
{{ props.dataList.shareCondition }}
</span>
</p> </p>
</div> </div>
<!-- <span class="label">免费</span> --> <!-- <span class="label">免费</span> -->

View File

@ -18,11 +18,15 @@
<!-- <span class="name">{{ props.dataList.name }}</span> --> <!-- <span class="name">{{ props.dataList.name }}</span> -->
<div class="label-content"> <div class="label-content">
<p class="lable-father"> <p class="lable-father">
<span class="label"> <span class="label" v-if="props.dataList.type">
{{ componentType || props.dataList.type }} {{ props.dataList.type }}
</span>
<span class="label" v-if="props.dataList.shareType">
{{ props.dataList.shareType }}
</span>
<span class="label" v-if="props.dataList.shareCondition">
{{ props.dataList.shareCondition }}
</span> </span>
<span class="label">{{ props.dataList.shareType }}</span>
<span class="label">{{ props.dataList.shareCondition }}</span>
</p> </p>
</div> </div>
<!-- <span class="label">免费</span> --> <!-- <span class="label">免费</span> -->
@ -59,20 +63,20 @@
</div> </div>
</template> </template>
<script setup> <script setup>
import { ShoppingCartOutlined } from '@ant-design/icons-vue' import { ShoppingCartOutlined } from '@ant-design/icons-vue'
import { defineProps, ref, watch } from 'vue' import { defineProps, ref, watch } from 'vue'
import { scInsert } from '@/api/personalCenter' import { scInsert } from '@/api/personalCenter'
import { sgcInsert } from '@/api/home' import { sgcInsert } from '@/api/home'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import mybus from '@/myplugins/mybus' import mybus from '@/myplugins/mybus'
import { message } from 'ant-design-vue' import { message } from 'ant-design-vue'
const props = defineProps({ const props = defineProps({
dataList: { type: Object, default: null }, dataList: { type: Object, default: null },
}) })
const router = useRouter() const router = useRouter()
const businessArea = ref('') const businessArea = ref('')
// // // //
const addShoppingCart = () => { const addShoppingCart = () => {
console.log('加入申购车==================>', props.dataList) console.log('加入申购车==================>', props.dataList)
sgcInsert({ sgcInsert({
delFlag: '0', delFlag: '0',
@ -83,9 +87,9 @@ const addShoppingCart = () => {
message.success('添加申购车成功!') message.success('添加申购车成功!')
mybus.emit('getSgcNum') mybus.emit('getSgcNum')
}) })
} }
// // // //
function toView() { function toView() {
// window.open(newpage.href, '_blank') // window.open(newpage.href, '_blank')
console.log('一键申请===================>', props.dataList) console.log('一键申请===================>', props.dataList)
localStorage.setItem( localStorage.setItem(
@ -111,17 +115,17 @@ function toView() {
router.push({ router.push({
path: '/apply', path: '/apply',
}) })
} }
// //
const goTOCollection = () => { const goTOCollection = () => {
console.log('收藏===================》', props.dataList) console.log('收藏===================》', props.dataList)
scInsert([{ resourceId: props.dataList.id }]).then((res) => { scInsert([{ resourceId: props.dataList.id }]).then((res) => {
console.log(res) console.log(res)
message.success('收藏成功') message.success('收藏成功')
}) })
} }
const componentType = ref('') const componentType = ref('')
if (props.dataList.infoList) { if (props.dataList.infoList) {
businessArea.value = props.dataList.infoList.filter( businessArea.value = props.dataList.infoList.filter(
(val) => val.attrType === '应用领域' (val) => val.attrType === '应用领域'
)[0].attrValue )[0].attrValue
@ -131,8 +135,8 @@ if (props.dataList.infoList) {
if (obj) { if (obj) {
componentType.value = obj.attrValue componentType.value = obj.attrValue
} }
} }
watch( watch(
() => props.dataList, () => props.dataList,
(val) => { (val) => {
if (val) { if (val) {
@ -147,10 +151,10 @@ watch(
} }
} }
} }
) )
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.algorithm-top-details { .algorithm-top-details {
height: 6rem; height: 6rem;
padding: 1.8rem 0 0; padding: 1.8rem 0 0;
background: url('~@/assets/detailsAll/sf_top_bg.png') no-repeat; background: url('~@/assets/detailsAll/sf_top_bg.png') no-repeat;
@ -211,13 +215,13 @@ watch(
font-size: 0.18rem; font-size: 0.18rem;
line-height: 0.34rem; line-height: 0.34rem;
&>div:nth-of-type(1) { & > div:nth-of-type(1) {
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
} }
&>div:nth-of-type(2) { & > div:nth-of-type(2) {
max-height: 1rem; max-height: 1rem;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
@ -265,9 +269,10 @@ watch(
.right { .right {
width: 5.8rem; width: 5.8rem;
height: 4rem; height: 4rem;
background: url('~@/assets/detailsAll/business/business_right_bg.png') no-repeat; background: url('~@/assets/detailsAll/business/business_right_bg.png')
no-repeat;
background-size: 100%; background-size: 100%;
margin-top: -0.4rem; margin-top: -0.4rem;
} }
} }
</style> </style>

View File

@ -18,11 +18,15 @@
<!-- <span class="name">{{ props.dataList.name }}</span> --> <!-- <span class="name">{{ props.dataList.name }}</span> -->
<div class="label-content"> <div class="label-content">
<p class="lable-father"> <p class="lable-father">
<span class="label"> <span class="label" v-if="props.dataList.type">
{{ componentType || props.dataList.type }} {{ props.dataList.type }}
</span>
<span class="label" v-if="props.dataList.shareType">
{{ props.dataList.shareType }}
</span>
<span class="label" v-if="props.dataList.shareCondition">
{{ props.dataList.shareCondition }}
</span> </span>
<span class="label">{{ props.dataList.shareType }}</span>
<span class="label">{{ props.dataList.shareCondition }}</span>
</p> </p>
</div> </div>
<!-- <span class="label">免费</span> --> <!-- <span class="label">免费</span> -->

View File

@ -18,11 +18,15 @@
<!-- <span class="name">{{ props.dataList.name }}</span> --> <!-- <span class="name">{{ props.dataList.name }}</span> -->
<div class="label-content"> <div class="label-content">
<p class="lable-father"> <p class="lable-father">
<span class="label"> <span class="label" v-if="props.dataList.type">
{{ componentType || props.dataList.type }} {{ props.dataList.type }}
</span>
<span class="label" v-if="props.dataList.shareType">
{{ props.dataList.shareType }}
</span>
<span class="label" v-if="props.dataList.shareCondition">
{{ props.dataList.shareCondition }}
</span> </span>
<span class="label">{{ props.dataList.shareType }}</span>
<span class="label">{{ props.dataList.shareCondition }}</span>
</p> </p>
</div> </div>
<!-- <span class="label">免费</span> --> <!-- <span class="label">免费</span> -->

View File

@ -5,13 +5,11 @@
<div class="infrastructrue-tab"> <div class="infrastructrue-tab">
<div v-for="(item, index) in tabList" :key="index" class="tabBox"> <div v-for="(item, index) in tabList" :key="index" class="tabBox">
<b class="leftType">{{ item.title }}</b> <b class="leftType">{{ item.title }}</b>
<a-button @click="nullClick" v-if="item.title == '视频标签'"> <button @click="nullClick" v-if="item.title == '视频标签'">清空</button>
清空
</a-button>
<span <span
v-for="itemContent in item.content" v-for="itemContent in item.content"
:key="itemContent" :key="itemContent"
@click="tabClick(index, itemContent, item)" @click="tabClick(index, itemContent)"
:class=" :class="
clickList[index].content.indexOf(itemContent.labelName) != -1 || clickList[index].content.indexOf(itemContent.labelName) != -1 ||
clickList[index].content.indexOf(itemContent) != -1 clickList[index].content.indexOf(itemContent) != -1
@ -117,8 +115,8 @@
</template> </template>
<script setup> <script setup>
import VideoSurveillance from '@/views/home/videoSurveillance' import VideoSurveillance from '@/views/home/videoSurveillance'
import { getCategoryTreePage } from '@/api/personalCenter' // import { getCategoryTreePage } from '@/api/personalCenter'
import { dataType } from 'element-plus/es/components/table-v2/src/common' // import { dataType } from 'element-plus/es/components/table-v2/src/common'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { message } from 'ant-design-vue' import { message } from 'ant-design-vue'
import { ref, reactive, onMounted } from 'vue' import { ref, reactive, onMounted } from 'vue'
@ -245,7 +243,7 @@
clickList.value.push(params) clickList.value.push(params)
}) })
mybus.off('tranferToList') mybus.off('tranferToList')
mybus.on('tranferToList', (data) => { mybus.on('tranferToList', () => {
console.log('获取到的列表数据') console.log('获取到的列表数据')
}) })
} }
@ -255,7 +253,6 @@
let tableHeight = ref('600') let tableHeight = ref('600')
//tab //tab
const tabClick = (indexFather, name) => { const tabClick = (indexFather, name) => {
console.log(clickList.value, indexFather, name)
selectedRowKeys.value = [] selectedRowKeys.value = []
selectedList.value = [] selectedList.value = []
if (clickList.value[indexFather].content.indexOf(name) != -1) { if (clickList.value[indexFather].content.indexOf(name) != -1) {
@ -341,12 +338,22 @@
}) })
console.log('选中的标签code', mapSearchParam.value) console.log('选中的标签code', mapSearchParam.value)
mapSearchParam.value.labelCodes = mapSearchParam.value.labelCodes + '' mapSearchParam.value.labelCodes = mapSearchParam.value.labelCodes + ''
if (name == '视频资源') { let fatherName = ref('视频资源')
if (name == '视频资源' || name == '云资源' || name == '感知资源') {
fatherName.value == name
}
if (fatherName.value == '视频资源') {
getCamera() getCamera()
} else { } else {
dataSource.value = [] dataSource.value = []
pagination.value.total = 0 pagination.value.total = 0
} }
// if (name == '') {
// getCamera()
// } else {
// dataSource.value = []
// pagination.value.total = 0
// }
} }
// //
const nullClick = () => { const nullClick = () => {
@ -395,10 +402,10 @@
message.error('请选择需要申请的数据') message.error('请选择需要申请的数据')
} }
} }
// // //
const addShopCar = () => { // const addShopCar = () => {
console.log('添加至购物车') // console.log('')
} // }
const getCamera = () => { const getCamera = () => {
console.log('初始化调用') console.log('初始化调用')
getCameraByParentId(mapSearchParam.value).then((res) => { getCameraByParentId(mapSearchParam.value).then((res) => {
@ -445,7 +452,7 @@
key: 'channelId', key: 'channelId',
}, },
]) ])
const allClick = ref([]) // const allClick = ref([])
const onSelectChange = (record, selected, selectedRows, nativeEvent) => { const onSelectChange = (record, selected, selectedRows, nativeEvent) => {
console.log('hahhahah', record, selected, selectedRows, nativeEvent) console.log('hahhahah', record, selected, selectedRows, nativeEvent)
if (selected) { if (selected) {
@ -541,19 +548,6 @@
} }
.tabBox { .tabBox {
margin-bottom: 0.16rem; margin-bottom: 0.16rem;
:deep(.ant-btn:active) {
color: unset;
border-color: unset;
}
:deep(.ant-btn) {
margin-left: 10px;
border: 1px solid #666666;
color: #666666;
border-radius: 10px;
}
:deep(.ant-btn:hover) {
color: #40a9ff;
}
} }
.tabBox:last-of-type { .tabBox:last-of-type {
margin-bottom: 0; margin-bottom: 0;