合并代码
This commit is contained in:
parent
96993e040f
commit
d9350d938c
|
@ -1,13 +1,13 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2020-07-07 16:03:23
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-04-01 10:51:45
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-22 15:25:14
|
||||
* @Description: 数据资源参数配置
|
||||
*/
|
||||
// const newLocation = 'qingdao'
|
||||
// const newLocation = 'baotou'
|
||||
const newLocation = 'xihaian'
|
||||
const newLocation = 'qingdao'
|
||||
|
||||
// 数据资源数据
|
||||
const whoShow = {}
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
/*
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-20 09:20:28
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-22 16:06:08
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
//能力云图-知识库
|
||||
export function KnowledgeBaseStatic() {
|
||||
|
@ -54,7 +61,22 @@ export function componentServiceRank(params) {
|
|||
return request({
|
||||
url: '/census/center/v2/componentServiceRank',
|
||||
method: 'get',
|
||||
params
|
||||
params,
|
||||
})
|
||||
}
|
||||
//能力云图-基础设施
|
||||
export function infrastructureInfo(params) {
|
||||
return request({
|
||||
url: '/census/center/v2/infrastructureInfo',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
//能力云图-数据资源
|
||||
export function dataResourceInfo(params) {
|
||||
return request({
|
||||
url: '/census/center/v2/dataResourceInfo',
|
||||
method: 'get',
|
||||
params,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-20 17:16:35
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-06-19 18:42:39
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-22 14:57:16
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
@ -55,31 +55,41 @@ export function count() {
|
|||
)
|
||||
}
|
||||
export function getVideoList(params) {
|
||||
return axios.get(
|
||||
'http://10.134.135.9:8001/hx-weather-warning/camera/getCameraListByName?name=' +
|
||||
params.name +
|
||||
'&pageNo=' +
|
||||
params.pageNo +
|
||||
'&pageSize=' +
|
||||
params.pageSize,
|
||||
config2
|
||||
)
|
||||
}
|
||||
return axios.get(
|
||||
'http://10.134.135.9:8001/hx-weather-warning/camera/getCameraListByName?name=' +
|
||||
params.name +
|
||||
'&pageNo=' +
|
||||
params.pageNo +
|
||||
'&pageSize=' +
|
||||
params.pageSize,
|
||||
config2
|
||||
)
|
||||
}
|
||||
// 能力云图-数据资源-总数据数
|
||||
export function getRecord(params) {
|
||||
return axios.get(
|
||||
'http://10.134.135.24:30090/api/share-portal/platform/catalogue/query?serviceName=' +
|
||||
params.serviceName +
|
||||
'&orderField=' +
|
||||
params.orderField +
|
||||
'&orderType=' +
|
||||
params.orderType +
|
||||
'&pageNum=' +
|
||||
params.pageNum +
|
||||
'&pageSize=' +
|
||||
params.pageSize +
|
||||
'&serviceType=' +
|
||||
params.serviceType,
|
||||
params.serviceName +
|
||||
'&orderField=' +
|
||||
params.orderField +
|
||||
'&orderType=' +
|
||||
params.orderType +
|
||||
'&pageNum=' +
|
||||
params.pageNum +
|
||||
'&pageSize=' +
|
||||
params.pageSize +
|
||||
'&serviceType=' +
|
||||
params.serviceType,
|
||||
config2
|
||||
)
|
||||
}
|
||||
|
||||
export function getHls(params) {
|
||||
return axios.get(
|
||||
'http://10.134.135.9:8001/hx-weather-warning/camera/getCameraLiveStreamByCode?cameraCode=' +
|
||||
params.cameraId +
|
||||
'&protocol=' +
|
||||
params.protocol,
|
||||
config2
|
||||
)
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/*
|
||||
* @Author: hisense.wuhongjian
|
||||
* @Date: 2022-04-01 19:19:40
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-05-24 19:58:09
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-22 15:27:36
|
||||
* @Description: 告诉大家这是什么
|
||||
*/
|
||||
import request from '@/utils/request'
|
||||
|
@ -282,3 +282,11 @@ export function mynoticeRead(params) {
|
|||
params,
|
||||
})
|
||||
}
|
||||
// 消息提醒已读
|
||||
export function getDataResource(data) {
|
||||
return request({
|
||||
url: '/resource/getDataResource',
|
||||
method: 'post',
|
||||
data,
|
||||
})
|
||||
}
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 3.7 KiB |
|
@ -2,7 +2,7 @@
|
|||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-19 10:15:33
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-19 18:08:39
|
||||
* @LastEditTime: 2022-06-22 16:16:37
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<template>
|
||||
|
@ -37,6 +37,7 @@
|
|||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import { count, getRecord } from '@/api/file'
|
||||
import { dataResourceInfo } from '@/api/capabilityCloud'
|
||||
// import { abc } from './dataABC.json'
|
||||
// 左侧数据
|
||||
const resourcesLeft = ref([
|
||||
|
@ -148,6 +149,27 @@
|
|||
}
|
||||
})
|
||||
// 请求右侧数据结束
|
||||
dataResourceInfo().then((res) => {
|
||||
// console.log('数据资源数据===================>', res.data.data)
|
||||
resourcesLeft.value.forEach((val) => {
|
||||
const object = res.data.data.filter((item) => item.type === val.name)[0]
|
||||
if (object) {
|
||||
val.num = obj.amount
|
||||
}
|
||||
const arr = res.data.data.filter((item) => item.resourceTop5)[0]
|
||||
console.log('数据资源数据===================>', arr)
|
||||
if (arr) {
|
||||
assignRankings.value.map((val) => {
|
||||
val.name = ''
|
||||
val.operation = ''
|
||||
})
|
||||
arr.resourceTop5.forEach((val, index) => {
|
||||
assignRankings.value[index].name = val['服务名称']
|
||||
assignRankings.value[index].operation = val['申请次数']
|
||||
})
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.data-resources {
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
<!--
|
||||
* @Author: hisense.liangjunhua
|
||||
* @Date: 2022-06-19 10:15:33
|
||||
* @LastEditors: hisense.wuhongjian
|
||||
* @LastEditTime: 2022-06-21 17:14:35
|
||||
* @LastEditors: hisense.liangjunhua
|
||||
* @LastEditTime: 2022-06-22 16:04:31
|
||||
* @Description: 告诉大家这是什么
|
||||
-->
|
||||
<template>
|
||||
|
@ -42,50 +42,60 @@
|
|||
</div>
|
||||
</template>
|
||||
<script setup>
|
||||
import { ref } from 'vue'
|
||||
import { getVideoList } from '@/api/file.js'
|
||||
let myDataList = ref([
|
||||
{
|
||||
title: '视频资源数量',
|
||||
snum: '0',
|
||||
percentage: '100',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_sz.png'),
|
||||
},
|
||||
{
|
||||
title: '云资源',
|
||||
snum: '0',
|
||||
percentage: '0',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_yz.png'),
|
||||
},
|
||||
{
|
||||
title: '感知资源',
|
||||
snum: '0',
|
||||
percentage: '0',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_gz.png'),
|
||||
},
|
||||
])
|
||||
function fontFormat(name) {
|
||||
switch (name) {
|
||||
case '视频资源数量':
|
||||
return 'color: #32ff91;'
|
||||
break
|
||||
case '云资源':
|
||||
return 'color: #f4fd25;'
|
||||
break
|
||||
case '感知资源':
|
||||
return 'color: #ff1d18;'
|
||||
break
|
||||
import { ref } from 'vue'
|
||||
import { getVideoList } from '@/api/file.js'
|
||||
import { infrastructureInfo } from '@/api/capabilityCloud'
|
||||
let myDataList = ref([
|
||||
{
|
||||
title: '视频资源数量',
|
||||
snum: '0',
|
||||
percentage: '100',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_sz.png'),
|
||||
},
|
||||
{
|
||||
title: '云资源',
|
||||
snum: '0',
|
||||
percentage: '0',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_yz.png'),
|
||||
},
|
||||
{
|
||||
title: '感知资源',
|
||||
snum: '0',
|
||||
percentage: '0',
|
||||
img: require('../../../assets/capabilityCloud/infrastructure_gz.png'),
|
||||
},
|
||||
])
|
||||
function fontFormat(name) {
|
||||
switch (name) {
|
||||
case '视频资源数量':
|
||||
return 'color: #32ff91;'
|
||||
break
|
||||
case '云资源':
|
||||
return 'color: #f4fd25;'
|
||||
break
|
||||
case '感知资源':
|
||||
return 'color: #ff1d18;'
|
||||
break
|
||||
}
|
||||
}
|
||||
const params = {
|
||||
name: '',
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
}
|
||||
infrastructureInfo().then((res) => {
|
||||
console.log('基础设施==================>', res.data.data)
|
||||
myDataList.value.forEach((val) => {
|
||||
const obj = res.data.data.filter((item) => item.type === val.title)[0]
|
||||
if (obj) {
|
||||
val.snum = obj.amount
|
||||
}
|
||||
}
|
||||
const params = {
|
||||
name: '',
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
}
|
||||
getVideoList(params).then((res) => {
|
||||
// 赋值
|
||||
myDataList.value[1].snum = res.data.data.total
|
||||
})
|
||||
})
|
||||
})
|
||||
getVideoList(params).then((res) => {
|
||||
// 赋值
|
||||
myDataList.value[1].snum = res.data.data.total
|
||||
})
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.infrastructure {
|
||||
|
|
|
@ -24,10 +24,7 @@
|
|||
<span>{{ item.name }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-show="Cardsname !== '基础设施' && Cardsname !== '数据资源'"
|
||||
class="resultListSearchInput-father"
|
||||
>
|
||||
<div class="resultListSearchInput-father">
|
||||
<div class="resultListSearchInput-son">
|
||||
模糊搜索
|
||||
<a-input-search
|
||||
|
@ -120,7 +117,7 @@
|
|||
</template>
|
||||
</div>
|
||||
<searchResultList
|
||||
v-show="resourceList.data?.length > 0 && Cardsname !== '基础设施'"
|
||||
v-show="resourceList.data?.length > 0"
|
||||
:key="listKey2"
|
||||
:resourceList="resourceList"
|
||||
:resourceTotal="resourceTotal"
|
||||
|
@ -128,7 +125,7 @@
|
|||
/>
|
||||
<div class="pagination">
|
||||
<a-pagination
|
||||
v-if="resourceList.data?.length > 0 && Cardsname !== '基础设施'"
|
||||
v-if="resourceList.data?.length > 0"
|
||||
v-model:current="currentPage"
|
||||
v-model:pageSize="currentPageSize"
|
||||
show-size-changer
|
||||
|
@ -140,174 +137,10 @@
|
|||
@showSizeChange="onShowSizeChange"
|
||||
/>
|
||||
</div>
|
||||
<div class="jichusheshi" v-if="Cardsname == '基础设施'">
|
||||
<!-- <div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
<div class="tupian"></div>
|
||||
<div class="title" @click="dianjitiaozhaun('青岛市云资源管理平台')">
|
||||
青岛市云资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>可用资源情况</div>
|
||||
<div>更新时间:2020-10-29</div>
|
||||
</div>
|
||||
<div class="keyongziyuan">
|
||||
<div v-for="item in keyongziyuanqingkaung" :key="item">
|
||||
<div>{{ item.name }}</div>
|
||||
<div>{{ item.value }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="shuoming">
|
||||
说明:政务云资源目前通过青岛市云资源管理平台进行申请
|
||||
</div>
|
||||
</div> -->
|
||||
<!-- <div class="shipin">
|
||||
<div class="shipin-title">
|
||||
<div class="tupian"></div>
|
||||
<div
|
||||
class="title"
|
||||
@click="dianjitiaozhaun('青岛市视频资源管理平台')"
|
||||
>
|
||||
青岛市视频资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>
|
||||
视频总数:
|
||||
<span class="shuzi">23</span>
|
||||
万路
|
||||
</div>
|
||||
<div>更新时间:2022-05-06</div>
|
||||
</div>
|
||||
<div class="top-content-father">
|
||||
<div class="top-content-son">
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '.08rem' }">
|
||||
标签
|
||||
</span>
|
||||
<div
|
||||
class="leixingsumfather leixingsumfather2"
|
||||
style="height: unset"
|
||||
>
|
||||
<div class="leixingsum" v-for="tag in bqTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selBqTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeBqTags(tag, checked)"
|
||||
style="width: 1rem"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '.08rem' }">
|
||||
在线状态
|
||||
</span>
|
||||
<div class="leixingsumfather leixingsumfather2">
|
||||
<div class="leixingsum" v-for="tag in stateTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selStateTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeStateTag(tag, checked)"
|
||||
style="width: 1rem"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-input-search
|
||||
v-model:value="searchValue"
|
||||
placeholder="请输入关键词"
|
||||
enter-button="搜索"
|
||||
size="large"
|
||||
@search="getAppResources"
|
||||
@change="onSearch"
|
||||
class="resultListSearchInput"
|
||||
/>
|
||||
<button class="button-reset" @click="chongzhi()">重置</button>
|
||||
<div class="itemList" style="margin-top: .2rem">
|
||||
<a-card :loading="loading">
|
||||
<a-card-grid
|
||||
style="width: 20%; text-align: center"
|
||||
v-for="item in videoList.data"
|
||||
:key="item.id"
|
||||
>
|
||||
<a-tooltip placement="topLeft">
|
||||
<template #title>
|
||||
<span>
|
||||
{{ item.name }}
|
||||
</span>
|
||||
</template>
|
||||
<video-camera-outlined />
|
||||
{{ item.name }}
|
||||
</a-tooltip>
|
||||
</a-card-grid>
|
||||
</a-card>
|
||||
<a-pagination
|
||||
v-model:current="currentPage"
|
||||
pageSize="20"
|
||||
:total="resourceTotal"
|
||||
show-less-items
|
||||
@change="pageChange"
|
||||
hideOnSinglePage
|
||||
/>
|
||||
</div>
|
||||
</div> -->
|
||||
<VideoSurveillance></VideoSurveillance>
|
||||
</div>
|
||||
<div class="shujuziyuan" v-if="Cardsname == '数据资源'">
|
||||
<div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
<div class="tupian"></div>
|
||||
<div
|
||||
class="title"
|
||||
@click="dianjitiaozhaun('青岛市政务资源管理平台')"
|
||||
>
|
||||
青岛市政务资源管理平台{{ dataShowdev }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="keyongziyuan">
|
||||
<div v-for="item in shujuziyuanqingkuang" :key="item">
|
||||
<div>{{ item.name }}</div>
|
||||
<div>{{ item.value }}</div>
|
||||
{{ item.danwei }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="shuoming">
|
||||
说明:数据资源目前通过青岛市政务信息网进行申请
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="resourceList.data?.length <= 0" style="margin-top: 2rem">
|
||||
<a-empty
|
||||
v-if="!(Cardsname == '基础设施') && !(Cardsname == '数据资源')"
|
||||
/>
|
||||
<a-empty />
|
||||
</div>
|
||||
</div>
|
||||
<!-- <div class="top" v-else-if="Cardsname == '数据资源' && dataShowbt">
|
||||
<div class="top-title">
|
||||
<div
|
||||
v-for="item in titleName"
|
||||
:key="item.name"
|
||||
:class="item.name === Cardsname ? 'sel' : ''"
|
||||
@click="changeCards(item.name)"
|
||||
>
|
||||
<span
|
||||
class="photo"
|
||||
:style="{
|
||||
backgroundImage: `url(${item.photo}) `,
|
||||
backgroundSize: 'cover',
|
||||
}"
|
||||
></span>
|
||||
<span>{{ item.name }}</span>
|
||||
</div>
|
||||
</div>
|
||||
<details-page-resource></details-page-resource>
|
||||
</div> -->
|
||||
<div class="top" v-else>
|
||||
<div class="top-title">
|
||||
<div
|
||||
|
@ -485,11 +318,7 @@
|
|||
<!-- 分页 -->
|
||||
<div class="pagination">
|
||||
<a-pagination
|
||||
v-if="
|
||||
resourceList.data?.length > 0 &&
|
||||
Cardsname != '基础设施' &&
|
||||
Cardsname != '数据资源'
|
||||
"
|
||||
v-if="resourceList.data?.length > 0"
|
||||
v-model:current="currentPage"
|
||||
v-model:pageSize="currentPageSize"
|
||||
show-size-changer
|
||||
|
@ -500,161 +329,7 @@
|
|||
@change="pageChange"
|
||||
@showSizeChange="onShowSizeChange"
|
||||
/>
|
||||
<a-pagination
|
||||
v-else
|
||||
v-model:current="currentPage"
|
||||
v-model:pageSize="currentPageSize"
|
||||
show-size-changer
|
||||
show-less-items
|
||||
show-quick-jumper
|
||||
:total="resourceTotal"
|
||||
:page-size-options="pageSizeOptions"
|
||||
@change="pageChangeOther"
|
||||
@showSizeChange="onShowSizeChangeOther"
|
||||
/>
|
||||
</div>
|
||||
<!-- <div class="jichusheshi" v-if="Cardsname == '基础设施'">
|
||||
<div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
<div class="tupian"></div>
|
||||
<div class="title" @click="dianjitiaozhaun('青岛市云资源管理平台')">
|
||||
青岛市云资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>可用资源情况</div>
|
||||
<div>更新时间:2020-10-29</div>
|
||||
</div>
|
||||
<div class="keyongziyuan">
|
||||
<div v-for="item in keyongziyuanqingkaung" :key="item">
|
||||
<div>{{ item.name }}</div>
|
||||
<div>{{ item.value }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="shuoming">
|
||||
说明:政务云资源目前通过青岛市云资源管理平台进行申请
|
||||
</div>
|
||||
</div>
|
||||
<div class="shipin">
|
||||
<div class="shipin-title">
|
||||
<div class="tupian"></div>
|
||||
<div
|
||||
class="title"
|
||||
@click="dianjitiaozhaun('青岛市视频资源管理平台')"
|
||||
>
|
||||
青岛市视频资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>
|
||||
视频总数:
|
||||
<span class="shuzi">23</span>
|
||||
万路
|
||||
</div>
|
||||
<div>更新时间:2022-05-06</div>
|
||||
</div>
|
||||
<div class="top-content-father">
|
||||
<div class="top-content-son">
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '8px' }">
|
||||
标签
|
||||
</span>
|
||||
<div
|
||||
class="leixingsumfather leixingsumfather2"
|
||||
style="height: unset"
|
||||
>
|
||||
<div class="leixingsum" v-for="tag in bqTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selBqTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeBqTags(tag, checked)"
|
||||
style="width: 100px"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '8px' }">
|
||||
在线状态
|
||||
</span>
|
||||
<div class="leixingsumfather leixingsumfather2">
|
||||
<div class="leixingsum" v-for="tag in stateTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selStateTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeStateTag(tag, checked)"
|
||||
style="width: 100px"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-input-search
|
||||
v-model:value="searchValue"
|
||||
placeholder="请输入关键词"
|
||||
enter-button="搜索"
|
||||
size="large"
|
||||
@search="getAppResources"
|
||||
@change="onSearch"
|
||||
class="resultListSearchInput"
|
||||
/>
|
||||
<button class="button-reset" @click="chongzhi()">重置</button>
|
||||
<div class="itemList" style="margin-top: 20px">
|
||||
<a-card :loading="loading">
|
||||
<a-card-grid
|
||||
style="width: 20%; text-align: center"
|
||||
v-for="item in videoList.data"
|
||||
:key="item.id"
|
||||
>
|
||||
<a-tooltip placement="topLeft">
|
||||
<template #title>
|
||||
<span>
|
||||
{{ item.name }}
|
||||
</span>
|
||||
</template>
|
||||
<video-camera-outlined />
|
||||
{{ item.name }}
|
||||
</a-tooltip>
|
||||
</a-card-grid>
|
||||
</a-card>
|
||||
<a-pagination
|
||||
v-model:current="currentPage"
|
||||
pageSize="20"
|
||||
:total="resourceTotal"
|
||||
show-less-items
|
||||
@change="pageChange"
|
||||
hideOnSinglePage
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<VideoSurveillance></VideoSurveillance>
|
||||
</div> -->
|
||||
<!-- <div class="shujuziyuan" v-if="Cardsname == '数据资源'">
|
||||
<div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
<div class="tupian"></div>
|
||||
<div
|
||||
class="title"
|
||||
@click="dianjitiaozhaun('青岛市政务资源管理平台')"
|
||||
>
|
||||
青岛市政务资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="keyongziyuan">
|
||||
<div v-for="item in shujuziyuanqingkuang" :key="item">
|
||||
<div>{{ item.name }}</div>
|
||||
<div>{{ item.value }}</div>
|
||||
{{ item.danwei }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="shuoming">
|
||||
说明:数据资源目前通过青岛市政务信息网进行申请
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
<div v-if="resourceList.data?.length <= 0" style="margin-top: 200px">
|
||||
<a-empty />
|
||||
</div>
|
||||
|
@ -731,7 +406,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div
|
||||
v-show="Cardsname !== '基础设施' && Cardsname !== '数据资源'"
|
||||
v-show="Cardsname !== '数据资源'"
|
||||
class="resultListSearchInput-father"
|
||||
>
|
||||
<div class="resultListSearchInput-son">
|
||||
|
@ -826,7 +501,7 @@
|
|||
</template>
|
||||
</div>
|
||||
<searchResultList
|
||||
v-show="resourceList.data?.length > 0 && Cardsname !== '基础设施'"
|
||||
v-show="resourceList.data?.length"
|
||||
:key="listKey2"
|
||||
:resourceList="resourceList"
|
||||
:resourceTotal="resourceTotal"
|
||||
|
@ -834,7 +509,7 @@
|
|||
/>
|
||||
<div class="pagination">
|
||||
<a-pagination
|
||||
v-if="resourceList.data?.length > 0 && Cardsname !== '基础设施'"
|
||||
v-if="resourceList.data?.length > 0"
|
||||
v-model:current="currentPage"
|
||||
v-model:pageSize="currentPageSize"
|
||||
show-size-changer
|
||||
|
@ -846,125 +521,6 @@
|
|||
@showSizeChange="onShowSizeChange"
|
||||
/>
|
||||
</div>
|
||||
<div class="jichusheshi" v-if="Cardsname == '基础设施'">
|
||||
<!-- <div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
<div class="tupian"></div>
|
||||
<div class="title" @click="dianjitiaozhaun('青岛市云资源管理平台')">
|
||||
青岛市云资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>可用资源情况</div>
|
||||
<div>更新时间:2020-10-29</div>
|
||||
</div>
|
||||
<div class="keyongziyuan">
|
||||
<div v-for="item in keyongziyuanqingkaung" :key="item">
|
||||
<div>{{ item.name }}</div>
|
||||
<div>{{ item.value }}</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="shuoming">
|
||||
说明:政务云资源目前通过青岛市云资源管理平台进行申请
|
||||
</div>
|
||||
</div> -->
|
||||
<!-- <div class="shipin">
|
||||
<div class="shipin-title">
|
||||
<div class="tupian"></div>
|
||||
<div
|
||||
class="title"
|
||||
@click="dianjitiaozhaun('青岛市视频资源管理平台')"
|
||||
>
|
||||
青岛市视频资源管理平台
|
||||
</div>
|
||||
</div>
|
||||
<div class="fenlei">
|
||||
<div>
|
||||
视频总数:
|
||||
<span class="shuzi">23</span>
|
||||
万路
|
||||
</div>
|
||||
<div>更新时间:2022-05-06</div>
|
||||
</div>
|
||||
<div class="top-content-father">
|
||||
<div class="top-content-son">
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '.08rem' }">
|
||||
标签
|
||||
</span>
|
||||
<div
|
||||
class="leixingsumfather leixingsumfather2"
|
||||
style="height: unset"
|
||||
>
|
||||
<div class="leixingsum" v-for="tag in bqTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selBqTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeBqTags(tag, checked)"
|
||||
style="width: 1rem"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="top-content">
|
||||
<span class="top-content-title" :style="{ marginRight: '.08rem' }">
|
||||
在线状态
|
||||
</span>
|
||||
<div class="leixingsumfather leixingsumfather2">
|
||||
<div class="leixingsum" v-for="tag in stateTags" :key="tag">
|
||||
<a-checkable-tag
|
||||
:checked="selStateTags.indexOf(tag) > -1"
|
||||
@change="(checked) => handleChangeStateTag(tag, checked)"
|
||||
style="width: 1rem"
|
||||
>
|
||||
{{ tag }}
|
||||
</a-checkable-tag>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-input-search
|
||||
v-model:value="searchValue"
|
||||
placeholder="请输入关键词"
|
||||
enter-button="搜索"
|
||||
size="large"
|
||||
@search="getAppResources"
|
||||
@change="onSearch"
|
||||
class="resultListSearchInput"
|
||||
/>
|
||||
<button class="button-reset" @click="chongzhi()">重置</button>
|
||||
<div class="itemList" style="margin-top: .2rem">
|
||||
<a-card :loading="loading">
|
||||
<a-card-grid
|
||||
style="width: 20%; text-align: center"
|
||||
v-for="item in videoList.data"
|
||||
:key="item.id"
|
||||
>
|
||||
<a-tooltip placement="topLeft">
|
||||
<template #title>
|
||||
<span>
|
||||
{{ item.name }}
|
||||
</span>
|
||||
</template>
|
||||
<video-camera-outlined />
|
||||
{{ item.name }}
|
||||
</a-tooltip>
|
||||
</a-card-grid>
|
||||
</a-card>
|
||||
<a-pagination
|
||||
v-model:current="currentPage"
|
||||
pageSize="20"
|
||||
:total="resourceTotal"
|
||||
show-less-items
|
||||
@change="pageChange"
|
||||
hideOnSinglePage
|
||||
/>
|
||||
</div>
|
||||
</div> -->
|
||||
<VideoSurveillance></VideoSurveillance>
|
||||
</div>
|
||||
<div class="shujuziyuan" v-if="Cardsname == '数据资源'">
|
||||
<div class="yunziyuan">
|
||||
<div class="yunziyuan-title">
|
||||
|
@ -990,9 +546,7 @@
|
|||
</div>
|
||||
-->
|
||||
<div v-if="resourceList.data?.length <= 0" style="margin-top: 2rem">
|
||||
<a-empty
|
||||
v-if="!(Cardsname == '基础设施') && !(Cardsname == '数据资源')"
|
||||
/>
|
||||
<a-empty v-if="!(Cardsname == '数据资源')" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="top" v-else-if="Cardsname == '数据资源'">
|
||||
|
@ -1079,7 +633,12 @@
|
|||
DownOutlined,
|
||||
// VideoCameraOutlined,
|
||||
} from '@ant-design/icons-vue'
|
||||
import { selectDicStoreAll, pageWithAttrs, zywMessage } from '@/api/home.js'
|
||||
import {
|
||||
selectDicStoreAll,
|
||||
pageWithAttrs,
|
||||
zywMessage,
|
||||
getDataResource,
|
||||
} from '@/api/home.js'
|
||||
import { getSgcList } from '@/api/personalCenter'
|
||||
import { useRouter } from 'vue-router'
|
||||
// import { useStore } from 'vuex'
|
||||
|
@ -1428,19 +987,6 @@
|
|||
// debugger
|
||||
tecHnosphere = router.currentRoute.value.query.tecHnosphere
|
||||
appLiCation = router.currentRoute.value.query.appLiCation
|
||||
// if (!appLiCation && !tecHnosphere) {
|
||||
// ListContent.records[0].selectedTags = []
|
||||
// ListContent.records[1].selectedTags = []
|
||||
// ListContent.records = []
|
||||
// ListContent.records = data
|
||||
// paramsGetResources.infoList = []
|
||||
// // debugger
|
||||
// // pageWithAttrs(paramsGetResources).then((res) => {
|
||||
// // resourceList.data = []
|
||||
// // resourceList.data = res.data.data.records
|
||||
// // resourceTotal.value = res.data.data.total
|
||||
// // })
|
||||
// }
|
||||
if (val.typeList?.length > 6) {
|
||||
val.showShrink = true
|
||||
val.shrinkFlag = true
|
||||
|
@ -1461,26 +1007,70 @@
|
|||
const getAppResources = () => {
|
||||
paramsGetResources.name = searchValue.value
|
||||
paramsGetResources.type = Cardsname.value
|
||||
pageWithAttrs(paramsGetResources).then((res) => {
|
||||
console.log('查询列表============>', resourceList, res.data.data)
|
||||
resourceList.data = []
|
||||
videoList.data = []
|
||||
if (Cardsname.value === '基础设施') {
|
||||
console.log('基础设施~~~~~~~~~~~')
|
||||
videoList.data = res.data.data.records || []
|
||||
resourceTotal.value = res.data.data.total || ''
|
||||
loading.value = false
|
||||
} else {
|
||||
// resourceList.data = res.data.data.records || []
|
||||
resourceTotal.value = res.data.data.total || ''
|
||||
getShoppingCartList(res.data.data.records)
|
||||
console.log(
|
||||
'其他~~~~~~~~~~~',
|
||||
resourceList.data,
|
||||
resourceTotal.value
|
||||
)
|
||||
}
|
||||
})
|
||||
console.log(
|
||||
'执行getAppResources====================》',
|
||||
paramsGetResources
|
||||
)
|
||||
if (
|
||||
!whoShow1.value.itShowBaoTou &&
|
||||
paramsGetResources.type === '数据资源'
|
||||
) {
|
||||
getDataResource({
|
||||
serviceName: paramsGetResources.name, //资源名称
|
||||
orderField: paramsGetResources.orderField, //排序字段
|
||||
orderType: paramsGetResources.orderType.toLowerCase(), //排序方式:desc,asc
|
||||
pageNum: paramsGetResources.pageNum, //页码
|
||||
pageSize: paramsGetResources.pageSize, //分页大小
|
||||
}).then((res) => {
|
||||
console.log('数据资源==================>', res.data.data)
|
||||
if (whoShow1.value.itShowQingDao) {
|
||||
res.data.data.list.forEach((val) => {
|
||||
val.id = val.serviceId // id
|
||||
val.name = val.serviceName // 名字
|
||||
val.sjlCount = val.requestQuantity // 数据量
|
||||
val.applyCount = val.requestCount // 申请量
|
||||
val.deptName = val.departmentName // 部门
|
||||
val.createTime = val.createTime.split('.')[0]
|
||||
val.createDate = val.createTime // 发布时间
|
||||
})
|
||||
resourceList.data = res.data.data.list || []
|
||||
resourceTotal.value = res.data.data.total || ''
|
||||
loading.value = false
|
||||
} else if (whoShow1.value.itShowXiHaiAn) {
|
||||
res.data.data.data.forEach((val) => {
|
||||
val.id = val.guid // id
|
||||
val.name = val.zyname // 名字
|
||||
val.sjlCount = val.sjcczl // 数据量
|
||||
val.applyCount = val.ygxdsjccl // 申请量
|
||||
val.deptName = val.TGBM // 部门
|
||||
})
|
||||
resourceList.data = res.data.data.data || []
|
||||
resourceTotal.value = res.data.data.rows || ''
|
||||
loading.value = false
|
||||
}
|
||||
})
|
||||
} else if (paramsGetResources.type !== '数据资源') {
|
||||
pageWithAttrs(paramsGetResources).then((res) => {
|
||||
console.log('查询列表============>', resourceList, res.data.data)
|
||||
resourceList.data = []
|
||||
videoList.data = []
|
||||
if (Cardsname.value === '基础设施') {
|
||||
console.log('基础设施~~~~~~~~~~~')
|
||||
resourceList.data = res.data.data.records || []
|
||||
resourceTotal.value = res.data.data.total || ''
|
||||
loading.value = false
|
||||
} else {
|
||||
// resourceList.data = res.data.data.records || []
|
||||
resourceTotal.value = res.data.data.total || ''
|
||||
getShoppingCartList(res.data.data.records)
|
||||
console.log(
|
||||
'其他~~~~~~~~~~~',
|
||||
resourceList.data,
|
||||
resourceTotal.value
|
||||
)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
let shoppingCartList = ref([])
|
||||
// 获取申购车列表
|
||||
|
@ -1581,6 +1171,7 @@
|
|||
currentPageSize.value = pageSize
|
||||
paramsGetResources.pageNum = current
|
||||
paramsGetResources.pageSize = pageSize
|
||||
console.log('执行onShowSizeChange', paramsGetResources)
|
||||
getAppResources()
|
||||
console.log(current, pageSize)
|
||||
}
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
v-for="item in selList"
|
||||
:key="item.value"
|
||||
@click="changeCondition(item.value)"
|
||||
v-show="item.show"
|
||||
>
|
||||
{{ item.name }}
|
||||
<span
|
||||
|
@ -40,7 +41,9 @@
|
|||
? 'znsf'
|
||||
: 'gis'
|
||||
"
|
||||
v-if="selectCardsname !== '基础设施'"
|
||||
></div>
|
||||
<div class="left jcss" v-else></div>
|
||||
<div class="right">
|
||||
<div class="header">
|
||||
<span style="display: flex; align-items: center">
|
||||
|
@ -78,7 +81,14 @@
|
|||
<div class="header-right">
|
||||
<div>
|
||||
发布时间:
|
||||
<span>{{ item.createDate || '--' }}</span>
|
||||
<template v-if="item.createDate">
|
||||
<span>
|
||||
{{ item.createDate.substring(0, 10) + ' ' }}
|
||||
</span>
|
||||
<span>{{ item.createDate.substring(11, 19) }}</span>
|
||||
</template>
|
||||
<template v-else>--</template>
|
||||
<!-- <span>{{ item.createDate || '--' }}</span> -->
|
||||
</div>
|
||||
<!-- <div>
|
||||
更新时间:
|
||||
|
@ -87,19 +97,32 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="dec">
|
||||
<div>
|
||||
<div
|
||||
v-if="
|
||||
selectCardsname !== '基础设施' && selectCardsname !== '数据资源'
|
||||
"
|
||||
>
|
||||
<span>{{ item.shareType || '--' }}</span>
|
||||
</div>
|
||||
<div>
|
||||
<span>{{ item.deptName || '--' }}</span>
|
||||
</div>
|
||||
<div>{{ item.description || '--' }}</div>
|
||||
<div v-if="selectCardsname !== '基础设施'">
|
||||
{{ item.description || '--' }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottom">
|
||||
<div class="bottom" v-if="selectCardsname !== '基础设施'">
|
||||
<div>
|
||||
<div>浏览量:{{ item.visits || 0 }}次</div>
|
||||
<div v-if="selectCardsname !== '数据资源'">
|
||||
浏览量:{{ item.visits || 0 }}次
|
||||
</div>
|
||||
<div>申请量:{{ item.applyCount || 0 }}次</div>
|
||||
<div>收藏量:{{ item.collectCount || 0 }}次</div>
|
||||
<div v-if="selectCardsname === '数据资源'">
|
||||
数据量:{{ item.sjlCount || 0 }}
|
||||
</div>
|
||||
<div v-if="selectCardsname !== '数据资源'">
|
||||
收藏量:{{ item.collectCount || 0 }}次
|
||||
</div>
|
||||
</div>
|
||||
<div class="pingfen">
|
||||
<a-tooltip placement="top" mouseEnterDelay="1">
|
||||
|
@ -115,7 +138,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="btn">
|
||||
<div class="right">
|
||||
<div class="right" v-if="selectCardsname !== '基础设施'">
|
||||
<div class="shopping" :key="shoppingKey">
|
||||
<span class="shopping-down" v-if="item.isInShoppingCart"></span>
|
||||
<span
|
||||
|
@ -154,20 +177,39 @@
|
|||
}}
|
||||
</a-button>
|
||||
</div>
|
||||
<div class="right" v-else>
|
||||
<a-button type="primary" @click="openVideo(item)">
|
||||
视频预览
|
||||
</a-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-modal
|
||||
v-model:visible="visible"
|
||||
title="视频预览"
|
||||
:width="750"
|
||||
destroyOnClose
|
||||
>
|
||||
<template #footer></template>
|
||||
<div style="width: 100%; display: flex; justify-content: center">
|
||||
<div style="width: 100%; height: 100%">
|
||||
<vue3VideoPlay v-bind="options" />
|
||||
</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { ref } from 'vue'
|
||||
import { ref, reactive } from 'vue'
|
||||
import { message } from 'ant-design-vue'
|
||||
import { useRouter } from 'vue-router'
|
||||
import { getUser, sgcInsert } from '@/api/home'
|
||||
import { scInsert, scDel } from '@/api/personalCenter'
|
||||
import mybus from '@/myplugins/mybus'
|
||||
import { getHls } from '@/api/file.js'
|
||||
|
||||
export default {
|
||||
name: '',
|
||||
|
@ -274,12 +316,19 @@
|
|||
let shoppingKey = ref(1)
|
||||
// 购物车id列表
|
||||
const selList = ref([
|
||||
{ name: '发布时间', value: 'tdr.create_date' },
|
||||
{ name: '浏览量', value: 'visits' },
|
||||
{ name: '申请量', value: 'applyCount' },
|
||||
{ name: '收藏量', value: 'collectCount' },
|
||||
{ name: '评分', value: 'score' },
|
||||
{ name: '发布时间', value: 'tdr.create_date', show: true },
|
||||
{ name: '浏览量', value: 'visits', show: true },
|
||||
{ name: '申请量', value: 'applyCount', show: true },
|
||||
{ name: '收藏量', value: 'collectCount', show: true },
|
||||
{ name: '评分', value: 'score', show: true },
|
||||
])
|
||||
if (props.selectCardsname === '基础设施') {
|
||||
selList.value.map((val) => (val.show = false))
|
||||
} else if (props.selectCardsname === '数据资源') {
|
||||
selList.value.map(
|
||||
(val) => (val.show = val.name === '发布时间' || val.name === '申请量')
|
||||
)
|
||||
}
|
||||
const findComponentName = (list, name) => {
|
||||
if (list.infoList) {
|
||||
return list.infoList.find((item) => {
|
||||
|
@ -395,6 +444,49 @@
|
|||
mybus.on('chongzhi', () => {
|
||||
selData.value = 'total'
|
||||
})
|
||||
let videoUrl = ref('')
|
||||
const options = reactive({
|
||||
width: '700px', //播放器宽度
|
||||
height: '400px', //播放器高度
|
||||
color: '#409eff', //主题色
|
||||
title: '', //视频名称
|
||||
src: '', //视频源
|
||||
type: 'm3u8', // 视频源类型
|
||||
muted: false, //静音
|
||||
webFullScreen: false,
|
||||
speedRate: ['0.75', '1.0', '1.25', '1.5', '2.0'], //播放倍速
|
||||
autoPlay: true, //自动播放
|
||||
loop: false, //循环播放
|
||||
mirror: false, //镜像画面
|
||||
ligthOff: false, //关灯模式
|
||||
volume: 0.3, //默认音量大小
|
||||
control: true, //是否显示控制
|
||||
controlBtns: [
|
||||
'audioTrack',
|
||||
'quality',
|
||||
'speedRate',
|
||||
'volume',
|
||||
'setting',
|
||||
'pip',
|
||||
'pageFullScreen',
|
||||
'fullScreen',
|
||||
], //显示所有按钮,
|
||||
})
|
||||
let visible = ref(false)
|
||||
// 打开视频预览
|
||||
const openVideo = (item) => {
|
||||
videoUrl.value = ''
|
||||
const param = {
|
||||
cameraId: item.link,
|
||||
protocol: 'hls',
|
||||
}
|
||||
getHls(param).then((res) => {
|
||||
console.log('获取视频地址===============>', res)
|
||||
// videoUrl.value = res.data.data
|
||||
options.src = res.data.data
|
||||
visible.value = true
|
||||
})
|
||||
}
|
||||
return {
|
||||
onSearch,
|
||||
resultList,
|
||||
|
@ -407,6 +499,10 @@
|
|||
cardType,
|
||||
findComponentName,
|
||||
shoppingKey,
|
||||
openVideo,
|
||||
videoUrl,
|
||||
options,
|
||||
visible,
|
||||
}
|
||||
},
|
||||
beforeUnmount() {
|
||||
|
@ -522,6 +618,10 @@
|
|||
background: url('~@/assets/home/gis-bg.png') no-repeat;
|
||||
background-size: 120px 110px;
|
||||
}
|
||||
.jcss {
|
||||
background: url('~@/assets/home/jcss-bg.png') no-repeat;
|
||||
background-size: 100%;
|
||||
}
|
||||
.header {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
|
Loading…
Reference in New Issue