Compare commits

..

2 Commits

7 changed files with 1555 additions and 1418 deletions

View File

@ -2,7 +2,7 @@
* @Author: hisense.wuhongjian
* @Date: 2022-08-25 14:37:49
* @LastEditors: hisense.wuhongjian
* @LastEditTime: 2022-10-12 13:40:14
* @LastEditTime: 2022-10-12 15:25:01
* @Description: 告诉大家这是什么
*/
var _global = {}
@ -11,7 +11,7 @@ var CONFIGITEM = {
// version: 'xihaian', // 西海岸
// version: 'test', // 测试
// version: 'frp', // 内网穿透
version: 'dev', // 开发
version: 'xihaian', // 开发
vNum: 'v0.8.7.2',
configData: {
// 青岛市大数据局
@ -25,7 +25,8 @@ var CONFIGITEM = {
previewUrl: 'http://10.134.135.9:9796/',
// apiURL: 'http://10.134.135.9:8888/renren-admin',
// apiURL: 'http://10.16.5.35:8888/renren-admin', // 李志成-研发
apiURL: 'http://192.168.124.254:8888/renren-admin', // 李志成-远雄
apiURL: 'http://192.168.124.236:8888/renren-admin',
// apiURL: 'http://192.168.124.254:8888/renren-admin', // 李志成-远雄
websocketURL: 'ws://10.134.135.9:8888/renren-admin/websocket'
},
// 测试

View File

@ -33,9 +33,13 @@
<el-form-item prop="sort" :label="$t('menu.sort')">
<el-input-number v-model="dataForm.sort" controls-position="right" :min="0" :label="$t('menu.sort')"></el-input-number>
</el-form-item>
<!-- 授权标识 -->
<el-form-item prop="permissions" :label="$t('menu.permissions')">
<el-input v-model="dataForm.permissions" :placeholder="$t('menu.permissionsTips')"></el-input>
</el-form-item>
<el-form-item prop="site" label="站点标识">
<el-input v-model="dataForm.site" placeholder="请输入站点标识(1为共享门户,0为后台管理)"></el-input>
</el-form-item>
<el-form-item v-if="dataForm.type === 0" prop="icon" :label="$t('menu.icon')" class="icon-list">
<el-popover v-model="iconListVisible" ref="iconListPopover" placement="bottom-start" trigger="click" popper-class="mod-sys__menu-icon-popover">
<div class="mod-sys__menu-icon-inner">
@ -77,6 +81,7 @@ export default {
name: '',
pid: '0',
parentName: '',
site: 0,
url: '',
permissions: '',
sort: 0,
@ -98,14 +103,14 @@ export default {
},
watch: {
'dataForm.type' (val) {
this.$refs['dataForm'].clearValidate()
this.$refs.dataForm.clearValidate()
}
},
methods: {
init () {
this.visible = true
this.$nextTick(() => {
this.$refs['dataForm'].resetFields()
this.$refs.dataForm.resetFields()
this.iconList = getIconList()
console.log('iconList', this.iconList)
this.dataForm.parentName = this.$t('menu.parentNameDefault')
@ -159,7 +164,7 @@ export default {
},
//
dataFormSubmitHandle: debounce(function () {
this.$refs['dataForm'].validate((valid) => {
this.$refs.dataForm.validate((valid) => {
if (!valid) {
return false
}
@ -178,7 +183,7 @@ export default {
})
}).catch(() => {})
})
}, 1000, { 'leading': true, 'trailing': false })
}, 1000, { leading: true, trailing: false })
}
}
</script>

View File

@ -2,13 +2,13 @@
* @Author: hisense.wuhongjian
* @Date: 2020-07-07 16:03:23
* @LastEditors: hisense.wuhongjian
* @LastEditTime: 2022-10-11 10:46:03
* @LastEditTime: 2022-10-12 15:29:29
* @Description: 系统静态参数配置
*/
var _global = {}
var CONFIGITEM = {
// version: 'qingdao', //
//version: 'xihaian', // 西
// version: 'xihaian', // 西
version: 'dev', //
// version: 'zhanTingDev', // dev (2022-09-13:)
//version: 'test', //

View File

@ -11,9 +11,12 @@
<div v-for="item in dataList.dataList" :key="item.name">
<div v-if="item.type !== '资源汇聚总量'" class="content-left">
<div class="name">
<span class="name-photo" :style="{
<span
class="name-photo"
:style="{
backgroundImage: `url(${item.photo}) `,
}"></span>
}"
></span>
<span class="name-text">{{ item.type }}</span>
</div>
<div class="organization-value">
@ -52,64 +55,64 @@
</div>
</template>
<script setup>
import { ref, onMounted, watch } from 'vue'
import { selectTotal } from '@/api/home'
import {
import { ref, onMounted, watch } from 'vue'
import { selectTotal } from '@/api/home'
import {
// numberOfResourcesByCategory,
sourceDepartmentStatistics,
} from '@/api/abilityStatistics.js'
// import { zywMessage } from '@/api/home'
import * as echarts from 'echarts'
import { message } from 'ant-design-vue'
//
let dataList = ref({
} from '@/api/abilityStatistics.js'
// import { zywMessage } from '@/api/home'
import * as echarts from 'echarts'
import { message } from 'ant-design-vue'
//
let dataList = ref({
title: '各类资源汇聚量',
dataList: [],
})
// let photo = ref([
// require('../../../assets/abilityStatistics/banner-jc.png'),
// require('../../../assets/abilityStatistics/banner-sj.png'),
// require('../../../assets/abilityStatistics/banner-zj.png'),
// require('../../../assets/abilityStatistics/banner-yy.png'),
// require('../../../assets/abilityStatistics/banner-zs.png'),
// ])
// let name = ref([])
//
// const findZywMessage = () => {
// zywMessage().then((res) => {
// const { data } = res.data
// dataSourceNum.value = data.sxmlcount || 0
// snum()
// })
// }
//
// function snum() {
// numberOfResourcesByCategory().then((res) => {
// dataList.value.dataList = res.data.data
// res.data.data.map((item, index) => {
// // if (dataList.value.dataList[index].type === '') {
// // dataList.value.dataList[index].amount = dataSourceNum.value || 0
// // }
// dataList.value.dataList[index].organization = ''
// dataList.value.dataList[index].photo = photo.value[index]
// })
// })
// }
selectTotal().then((res) => {
})
// let photo = ref([
// require('../../../assets/abilityStatistics/banner-jc.png'),
// require('../../../assets/abilityStatistics/banner-sj.png'),
// require('../../../assets/abilityStatistics/banner-zj.png'),
// require('../../../assets/abilityStatistics/banner-yy.png'),
// require('../../../assets/abilityStatistics/banner-zs.png'),
// ])
// let name = ref([])
//
// const findZywMessage = () => {
// zywMessage().then((res) => {
// const { data } = res.data
// dataSourceNum.value = data.sxmlcount || 0
// snum()
// })
// }
//
// function snum() {
// numberOfResourcesByCategory().then((res) => {
// dataList.value.dataList = res.data.data
// res.data.data.map((item, index) => {
// // if (dataList.value.dataList[index].type === '') {
// // dataList.value.dataList[index].amount = dataSourceNum.value || 0
// // }
// dataList.value.dataList[index].organization = ''
// dataList.value.dataList[index].photo = photo.value[index]
// })
// })
// }
selectTotal().then((res) => {
console.log('selectTotal===============>', res)
if(res.data.code !== 0) {
if (res.data.code !== 0) {
return message.error(res.data.msg)
}
let imgObj = {
'组件服务': require('../../../assets/abilityStatistics/banner-zj.png'),
'应用资源': require('../../../assets/abilityStatistics/banner-yy.png'),
'基础设施': require('../../../assets/abilityStatistics/banner-jc.png'),
'数据资源': require('../../../assets/abilityStatistics/banner-sj.png'),
'知识库': require('../../../assets/abilityStatistics/banner-zs.png'),
组件服务: require('../../../assets/abilityStatistics/banner-zj.png'),
应用资源: require('../../../assets/abilityStatistics/banner-yy.png'),
基础设施: require('../../../assets/abilityStatistics/banner-jc.png'),
数据资源: require('../../../assets/abilityStatistics/banner-sj.png'),
知识库: require('../../../assets/abilityStatistics/banner-zs.png'),
}
res.data.data.total.forEach((val) => {
let _obj = {
organization: '个',
organization: '项',
type: val.type,
photo: val.type && imgObj[val.type],
amount: val.count,
@ -119,11 +122,14 @@ selectTotal().then((res) => {
_obj.amount = val.count - 0 + uavAndIndividualSoldier.num
}
}
if (val.type == '知识库') {
_obj.organization = '条'
}
dataList.value.dataList.push(_obj)
// switch (val.type) {
// case '':
// dataList.value.dataList.push({
// organization: '',
// organization: '',
// type: '',
// photo: require('../../../assets/abilityStatistics/banner-zj.png'),
// amount: val.count,
@ -131,7 +137,7 @@ selectTotal().then((res) => {
// break
// case '':
// dataList.value.dataList.push({
// organization: '',
// organization: '',
// type: '',
// photo: require('../../../assets/abilityStatistics/banner-yy.png'),
// amount: val.count,
@ -142,7 +148,7 @@ selectTotal().then((res) => {
// val.count = val.count - 0 + uavAndIndividualSoldier.num
// }
// dataList.value.dataList.push({
// organization: '',
// organization: '',
// type: '',
// photo: require('../../../assets/abilityStatistics/banner-jc.png'),
// amount: val.count,
@ -150,7 +156,7 @@ selectTotal().then((res) => {
// break
// case '':
// dataList.value.dataList.push({
// organization: '',
// organization: '',
// type: '',
// photo: require('../../../assets/abilityStatistics/banner-sj.png'),
// amount: val.count,
@ -158,7 +164,7 @@ selectTotal().then((res) => {
// break
// case '':
// dataList.value.dataList.push({
// organization: '',
// organization: '',
// type: '',
// photo: require('../../../assets/abilityStatistics/banner-zs.png'),
// amount: val.count,
@ -170,14 +176,14 @@ selectTotal().then((res) => {
dataList.value.dataList.sort((a, b) => {
return arr.indexOf(a.type) - arr.indexOf(b.type)
})
})
let datas = ref([])
let laiyuanDataList = ref([])
// let dataSourceNum = ref(0)
let bumenSum = ref([])
})
let datas = ref([])
let laiyuanDataList = ref([])
// let dataSourceNum = ref(0)
let bumenSum = ref([])
//-
const sourceDepartment = () => {
//-
const sourceDepartment = () => {
sourceDepartmentStatistics().then((res) => {
// datas.value = res.data.data.deptTypeCount
bumenSum.value = res.data.data.deptCount
@ -206,10 +212,10 @@ const sourceDepartment = () => {
}
console.log('laiyuanDataList.value', laiyuanDataList.value)
})
}
//
let leftDom = ref(0)
const pieCharti = (dataLists) => {
}
//
let leftDom = ref(0)
const pieCharti = (dataLists) => {
leftDom.value += 'a'
echarts.init(document.getElementById('left')).dispose()
let chartDom = document.getElementById('left')
@ -307,9 +313,9 @@ const pieCharti = (dataLists) => {
}
option && myChart.setOption(option)
}
//
const funnelPlot = (dataList) => {
}
//
const funnelPlot = (dataList) => {
//
let arrCopy = ['0-5', '5-10', '10-15', '15-20', '20以上']
//
@ -317,7 +323,7 @@ const funnelPlot = (dataList) => {
return Number(a.value) - Number(b.value)
})
let _arr = dataList.map(v => v.fanwei) || arrCopy;
let _arr = dataList.map((v) => v.fanwei) || arrCopy
//
let chartData = _arr.map((v, i) => {
return {
@ -326,12 +332,12 @@ const funnelPlot = (dataList) => {
}
})
let newArr = [];
dataList.map(v => {
let newArr = []
dataList.map((v) => {
if (v.value && Number(v.value > 0)) {
newArr.push({
name: v.fanwei,
value: v.value
value: v.value,
})
}
})
@ -343,10 +349,14 @@ const funnelPlot = (dataList) => {
tooltip: {
trigger: 'item',
formatter: function (info) {
let _obj = dataList.find(v => v.fanwei == info.data.name) || {}
let _obj = dataList.find((v) => v.fanwei == info.data.name) || {}
let dom = ref()
dom.value =
'部门数<br/>' + (_obj.fanwei || '--') + ' : ' + (_obj.value || _obj.value === 0 ? _obj.value : '--') + '个'
'部门数<br/>' +
(_obj.fanwei || '--') +
' : ' +
(_obj.value || _obj.value === 0 ? _obj.value : '--') +
'项'
console.log('name', info.data)
return dom.value
},
@ -382,24 +392,28 @@ const funnelPlot = (dataList) => {
label: {
show: true,
formatter: function (info) {
let _obj = dataList.find(v => v.fanwei == info.data.name) || {}
let _obj = dataList.find((v) => v.fanwei == info.data.name) || {}
let dom = ref()
dom.value = (_obj.fanwei || '--') + ' : ' + (_obj.value || _obj.value === 0 ? _obj.value : '--') + '个';
dom.value =
(_obj.fanwei || '--') +
' : ' +
(_obj.value || _obj.value === 0 ? _obj.value : '--') +
'项'
console.log('name', info.data)
return dom.value
},
rich: {
b: {
fontSize: 14
}
}
fontSize: 14,
},
},
},
labelLine: {
length: 40,
lineStyle: {
width: 1,
type: 'solid'
}
type: 'solid',
},
},
itemStyle: {
borderColor: '#fff',
@ -411,60 +425,60 @@ const funnelPlot = (dataList) => {
},
},
data: chartData,
}
},
],
}
option && myChart.setOption(option)
}
onMounted(() => {
}
onMounted(() => {
// findZywMessage()
// snum()
sourceDepartment()
})
watch(
})
watch(
datas,
(value) => {
pieCharti(value)
},
{ deep: true }
)
watch(
)
watch(
laiyuanDataList,
(value) => {
funnelPlot(value)
console.log(value, ' laiyuanDataList')
},
{ deep: true }
)
)
</script>
<style lang="less" scoped>
@font-face {
@font-face {
font-family: 'num-typeface';
src: url('~@/assets/newHome/font/num-typeface.otf');
}
}
@font-face {
@font-face {
font-family: 'text-typeface';
src: url('~@/assets/newHome/font/text-typeface.otf');
}
}
.num {
.num {
font-family: num-typeface;
font-size: 32px;
font-weight: 600;
margin-right: 5px;
}
}
.hengxian {
.hengxian {
height: 3px;
width: 30px;
border-radius: 1px;
margin-top: 6px;
background: #0058e1;
}
}
.resource-aggregation {
.resource-aggregation {
font-size: 18px;
font-family: text-typeface;
width: 100%;
@ -571,7 +585,8 @@ watch(
.bumensnum-photo {
height: 50px;
width: 50px;
background: url('~@/assets/abilityStatistics/bumenzongshu.png') no-repeat;
background: url('~@/assets/abilityStatistics/bumenzongshu.png')
no-repeat;
margin-bottom: 30px;
}
@ -626,5 +641,5 @@ watch(
}
}
}
}
}
</style>

View File

@ -10,51 +10,82 @@
}}
</div>
<div class="condition" :key="showKey">
<IntegrationServiceOrder ref="integrationServiceOrderDom" v-if="
<IntegrationServiceOrder
ref="integrationServiceOrderDom"
v-if="
selectCardsname === '融合服务' || selectCardsname === '赋能场景'
"></IntegrationServiceOrder>
"
></IntegrationServiceOrder>
<ul v-else>
<li v-for="(item, i) in selList" :key="i" @click="changeCondition(item)" v-show="
<li
v-for="(item, i) in selList"
:key="i"
@click="changeCondition(item)"
v-show="
item.show &&
item.name !== '评分' &&
selectCardsname !== '数据资源'
">
"
>
{{ item.name }}
<span class="arrow" :class="
orderObj.orderType == 'ASC' &&
orderObj.orderField == item.value
<span
class="arrow"
:class="
orderObj.orderType == 'ASC' && orderObj.orderField == item.value
? 'down'
: ''
"></span>
"
></span>
</li>
</ul>
</div>
</div>
<div class="result-list" v-for="(item, index) in resourceList.data" :key="item.index">
<div
class="result-list"
v-for="(item, index) in resourceList.data"
:key="item.index"
>
<div class="item" :key="showKey">
<div class="left" style="display: flex; align-items: center" v-if="
<div
class="left"
style="display: flex; align-items: center"
v-if="
item.type === '应用资源' &&
item.infoList &&
item.infoList.filter((val) => val.attrType == '应用图片')[0]
">
<a-image :width="106" :preview="false" :src="
"
>
<a-image
:width="106"
:preview="false"
:src="
item.infoList.filter((val) => val.attrType == '应用图片')[0]
.attrValue
" />
"
/>
</div>
<div class="left" style="display: flex; align-items: center" v-else-if="
<div
class="left"
style="display: flex; align-items: center"
v-else-if="
(selectCardsname === '融合服务' ||
selectCardsname === '赋能场景') &&
item.fuseAttrList &&
item.fuseAttrList.filter((val) => val.attrType == '服务图片')[0]
">
<a-image :width="106" :preview="false" :src="
"
>
<a-image
:width="106"
:preview="false"
:src="
item.fuseAttrList.filter((val) => val.attrType == '服务图片')[0]
.attrValue
" />
"
/>
</div>
<div class="left" :class="
<div
class="left"
:class="
item.type == '应用资源'
? 'yyzy'
: !item.type
@ -79,33 +110,55 @@
.attrValue == '业务组件'
? 'ywzj'
: ''
" @click="toView('details', item)" v-else-if="
"
@click="toView('details', item)"
v-else-if="
selectCardsname !== '基础设施' &&
selectCardsname !== '融合服务' &&
selectCardsname !== '赋能场景'
"></div>
"
></div>
<div class="left jcss" v-else-if="selectCardsname === '基础设施'"></div>
<div class="left rhfw" v-else-if="
<div
class="left rhfw"
v-else-if="
selectCardsname === '融合服务' || selectCardsname === '赋能场景'
"></div>
"
></div>
<div class="right" @click="toView('details', item)">
<div class="header">
<span style="display: flex; align-items: center; width: 680px">
{{ item.name }}
<!-- 已申请--通过 -->
<svg t="1652322568870" class="icon" viewBox="0 0 3072 1024" version="1.1"
xmlns="http://www.w3.org/2000/svg" p-id="3062" width="40" height="40" v-if="
<svg
t="1652322568870"
class="icon"
viewBox="0 0 3072 1024"
version="1.1"
xmlns="http://www.w3.org/2000/svg"
p-id="3062"
width="40"
height="40"
v-if="
item.applyState == '已申请' && item.approveStatus == '通过'
" style="margin-left: 10px; min-width: 40px">
"
style="margin-left: 10px; min-width: 40px"
>
<path
d="M2958.222222 0a113.777778 113.777778 0 0 1 113.777778 113.777778v796.444444a113.777778 113.777778 0 0 1-113.777778 113.777778H500.053333a113.777778 113.777778 0 0 1-85.617777-38.798222L32.824889 549.432889a56.888889 56.888889 0 0 1 0-74.922667L414.435556 38.798222A113.777778 113.777778 0 0 1 499.996444 0H2958.222222z m0 56.888889H500.053333a56.888889 56.888889 0 0 0-42.837333 19.399111L75.605333 512l381.610667 435.712a56.888889 56.888889 0 0 0 42.780444 19.399111H2958.222222a56.888889 56.888889 0 0 0 56.888889-56.888889V113.777778a56.888889 56.888889 0 0 0-56.888889-56.888889z"
fill="#d81e06" p-id="3063"></path>
fill="#d81e06"
p-id="3063"
></path>
<path
d="M398.222222 398.222222a113.777778 113.777778 0 1 1 0 227.555556 113.777778 113.777778 0 0 1 0-227.555556z m0 56.888889a56.888889 56.888889 0 1 0 0 113.777778 56.888889 56.888889 0 0 0 0-113.777778z"
fill="#d81e06" p-id="3064"></path>
fill="#d81e06"
p-id="3064"
></path>
<path
d="M1309.582222 491.064889v-273.066667h-505.173333v47.786667h455.338667v178.176h-378.88V342.926222h-49.152v358.4c0 55.978667 27.306667 84.650667 82.602666 84.650667h370.005334c28.672-1.365333 51.2-8.874667 66.218666-23.210667 16.384-17.749333 27.989333-68.266667 34.816-152.917333l-47.786666-15.018667-1.706667 26.737778c-4.664889 58.766222-12.970667 93.582222-24.917333 104.334222-10.24 8.192-23.893333 12.288-40.277334 12.288h-342.698666c-31.402667 0-47.104-15.701333-47.104-45.738666v-201.386667h428.714666z m430.08-307.2v102.4h-219.136v386.389333h48.469334v-46.421333h170.666666v178.858667h50.517334v-178.858667h167.936v41.642667h48.469333V286.264889h-216.405333v-102.4h-50.517334z m-170.666666 395.946667v-102.4h170.666666v102.4h-170.666666z m221.184 0v-102.4h167.936v102.4h-167.936z m-221.184-146.773334V332.003556h170.666666v101.034666h-170.666666z m221.184 0V332.003556h167.936v101.034666h-167.936z m733.866666-251.221333v44.373333h-165.205333v40.277334h165.205333v45.738666h-137.898666v39.594667h137.898666V398.222222h-184.32v40.96h417.792V398.222222h-186.368v-46.421333h144.725334v-39.594667h-144.725334v-45.738666h169.301334v-40.277334h-169.301334v-44.373333h-47.104z m-85.333333 429.397333h220.501333v49.834667h-220.501333v-49.834667z m220.501333-38.229333h-220.501333v-50.517333h220.501333v50.517333z m-220.501333 126.293333h220.501333v38.912c0 15.701333-8.874667 23.893333-25.258666 23.893334l-54.613334-2.048 11.605334 43.690666h57.344c38.229333 0 58.026667-18.432 58.026666-55.296v-266.24H2391.608889V807.822222h47.104v-108.544z m-222.549333-509.952l-34.816 33.450667c49.152 36.864 88.064 71.68 116.736 104.448l33.450666-34.133333a795.079111 795.079111 0 0 0-115.370666-103.765334z m-82.602667 201.386667h144.725333v299.690667c20.48-19.114667 41.642667-40.277333 64.853334-64.170667l12.970666 51.882667a923.932444 923.932444 0 0 1-121.514666 105.813333l-19.114667-43.690667c10.24-9.557333 15.701333-19.797333 15.701333-31.402666V437.816889h-97.621333v-47.104z"
fill="#d81e06" p-id="3065"></path>
fill="#d81e06"
p-id="3065"
></path>
</svg>
<!-- 审核中 -->
<!-- <svg
@ -151,19 +204,28 @@
</span> -->
</span>
<div class="header-right">
<div v-if="
<div
v-if="
selectCardsname === '融合服务' ||
selectCardsname === '赋能场景'
" class="label-content">
<template v-if="
"
class="label-content"
>
<template
v-if="
item.fuseAttrList &&
item.fuseAttrList.filter(
(val) => val.attrType == '应用领域'
)[0]
">
<span class="label" v-for="(data, index) in item.fuseAttrList
"
>
<span
class="label"
v-for="(data, index) in item.fuseAttrList
.filter((val) => val.attrType == '应用领域')[0]
.attrValue.split(';')" :key="index">
.attrValue.split(';')"
:key="index"
>
{{ data }}
</span>
</template>
@ -181,15 +243,21 @@
</div>
</div>
<div class="dec">
<div v-if="
<div
v-if="
selectCardsname !== '融合服务' &&
selectCardsname !== '赋能场景' &&
selectCardsname !== '基础设施'
">
"
>
<span>{{ item.deptName || '--' }}</span>
</div>
</div>
<div v-if="selectCardsname !== '基础设施'" style="margin-top: 0.1rem" class="description">
<div
v-if="selectCardsname !== '基础设施'"
style="margin-top: 0.1rem"
class="description"
>
<a-tooltip>
<template #title>{{ item.description }}</template>
{{ item.description || '--' }}
@ -198,26 +266,32 @@
<div class="btn">
<div class="bottom" v-if="selectCardsname !== '基础设施'">
<div>
<div v-if="
<!-- <div
v-if="
selectCardsname !== '数据资源' &&
selectCardsname !== '融合服务' &&
selectCardsname !== '赋能场景'
">
"
>
浏览量{{ item.visits || 0 }}
</div>
<div v-if="
</div> -->
<div
v-if="
selectCardsname !== '数据资源' &&
selectCardsname !== '融合服务' &&
selectCardsname !== '赋能场景' &&
(selectCardsname !== '应用资源' || whoShow1.itShowQingDao)
">
"
>
申请量{{ item.applyCount || 0 }}
</div>
<div v-if="
<div
v-if="
selectCardsname === '数据资源' &&
selectCardsname !== '融合服务' &&
selectCardsname !== '赋能场景'
">
"
>
数据量{{ item.sjlCount || 0 }}
</div>
<div v-if="selectCardsname !== '数据资源'">
@ -227,39 +301,75 @@
</div>
<div class="right" v-if="selectCardsname !== '基础设施'">
<div class="shopping" :key="shoppingKey">
<template v-if="
<template
v-if="
(selectCardsname == '组件服务' &&
item.infoList.filter(
(val) => val.attrType == '外部服务地址'
).length === 0) ||
(selectCardsname == '应用资源' && whoShow1.itShowQingDao)
">
<span class="shopping-down" v-if="item.isInShoppingCart"></span>
<span class="shopping-on" v-else @click.stop="addShoppingCart(item, index)"></span>
"
>
<span
class="shopping-down"
v-if="item.isInShoppingCart"
></span>
<span
class="shopping-on"
v-else
@click.stop="addShoppingCart(item, index)"
></span>
</template>
</div>
<div class="sc">
<span class="sc-down" v-if="item.isCollect == 'false'" @click.stop="addCollect(item)"></span>
<span class="sc-on" v-if="item.isCollect == 'true'" @click.stop="addCollect(item)"></span>
<span
class="sc-down"
v-if="item.isCollect == 'false'"
@click.stop="addCollect(item)"
></span>
<span
class="sc-on"
v-if="item.isCollect == 'true'"
@click.stop="addCollect(item)"
></span>
</div>
<div class="shopping pk" :key="pk" v-show="
<div
class="shopping pk"
:key="pk"
v-show="
cardType == '组件服务' && findComponentName(item, '智能算法')
">
<span class="pk-on" @click.stop="goComparePk(item, index)"></span>
"
>
<span
class="pk-on"
@click.stop="goComparePk(item, index)"
></span>
</div>
<a-button type="primary" @click.stop="toView('details', item)" v-if="!whoShow1.itShowBaoTou">
<a-button
type="primary"
@click.stop="toView('details', item)"
v-if="!whoShow1.itShowBaoTou"
>
查看详情
</a-button>
<a-button style="margin-left: 10px" v-show="
<a-button
style="margin-left: 10px"
v-show="
selectCardsname === '融合服务' ||
selectCardsname === '赋能场景'
" @click.stop="handleAKeyApplication(item)">
"
@click.stop="handleAKeyApplication(item)"
>
一键申请
</a-button>
<a-button type="primary" @click.stop="toView('apply', item)" v-show="
<a-button
type="primary"
@click.stop="toView('apply', item)"
v-show="
cardType == '组件服务' ||
(cardType == '应用资源' && whoShow1.itShowQingDao)
">
"
>
{{
item.shareCondition == '免批申请' ? '免批申请' : '立即申请'
}}
@ -274,7 +384,12 @@
</div>
</div>
</div>
<a-modal v-model:visible="visible" title="视频预览" :width="750" destroyOnClose>
<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%">
@ -285,21 +400,21 @@
</div>
</template>
<script>
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/home.js'
import IntegrationServiceOrder from './integrationServiceOrder.vue';
import ComponentServiceTag from './ComponentServiceTag.vue';
export default {
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/home.js'
import IntegrationServiceOrder from './integrationServiceOrder.vue'
import ComponentServiceTag from './ComponentServiceTag.vue'
export default {
name: '',
props: {
resourceList: {
type: Object,
default: () => { },
default: () => {},
},
resourceTotal: {
type: String,
@ -332,9 +447,9 @@ export default {
{ name: '评分', value: 'score', show: true },
])
// 西-
if (whoShow1.itShowXiHaiAn) {
selList.value = selList.value.filter(v => v.name !== '浏览量')
}
// if (whoShow1.itShowXiHaiAn) {
selList.value = selList.value.filter((v) => v.name !== '浏览量')
// }
if (props.selectCardsname === '基础设施') {
selList.value.map((val) => (val.show = false))
} else if (props.selectCardsname === '数据资源') {
@ -355,8 +470,9 @@ export default {
// 西----
const showTagArray = ['已落地', '需要计算支持']
const getTagList = (item) => {
let _arr = item.infoList.filter((x) => showTagArray.includes(x.attrValue)) || []
let tagArray = _arr.map(v => v.attrValue)
let _arr =
item.infoList.filter((x) => showTagArray.includes(x.attrValue)) || []
let tagArray = _arr.map((v) => v.attrValue)
return tagArray
}
console.log('this.resourceList', props.resourceList.data)
@ -548,18 +664,18 @@ export default {
* isFromFather: 是否来自父组件传值
*/
const changeCondition = (item, isFromFather = false) => {
console.log('item, isFromFather------------>', item, isFromFather);
let newType = item.orderType == 'DESC' ? 'ASC' : 'DESC';
console.log('item, isFromFather------------>', item, isFromFather)
let newType = item.orderType == 'DESC' ? 'ASC' : 'DESC'
if (isFromFather) {
newType = item.orderType;
newType = item.orderType
}
orderObj.orderField = item.value;
orderObj.orderType = newType;
let _index = selList.value.findIndex(x => x.value == item.value)
orderObj.orderField = item.value
orderObj.orderType = newType
let _index = selList.value.findIndex((x) => x.value == item.value)
if (_index > -1) {
selList.value[_index].orderType = newType
}
selList.value = selList.value.splice(0);
selList.value = selList.value.splice(0)
mybus.emit('changeCondition', orderObj)
}
@ -713,10 +829,10 @@ export default {
mybus.off('chongzhi')
// mybus.emit('changeSelcted')
},
}
}
</script>
<style scoped lang="less">
#search-result-list-container {
#search-result-list-container {
width: 1088px;
padding: 0 20px;
background: #f3f5f9;
@ -1049,11 +1165,11 @@ export default {
margin-top: 10px;
align-items: center;
&>div {
& > div {
display: flex;
align-items: center;
&>div {
& > div {
margin: 0 10px;
}
}
@ -1080,9 +1196,9 @@ export default {
margin-top: 0;
}
}
}
}
.description {
.description {
max-width: 990px;
height: 52px;
font-size: 14px;
@ -1096,5 +1212,5 @@ export default {
/*超出显示为省略号*/
-webkit-box-orient: vertical;
word-break: break-all;
}
}
</style>

View File

@ -7,7 +7,7 @@
<div class="name">组件服务</div>
<div class="sl">
<span class="num">{{ zjNum || 0 }}</span>
</div>
</div>
</a-tooltip>
@ -18,7 +18,7 @@
<div class="name">应用资源</div>
<div class="sl">
<span class="num">{{ yyNum || 0 }}</span>
</div>
</div>
</a-tooltip>
@ -29,7 +29,7 @@
<div class="name">基础设施</div>
<div class="sl">
<span class="num">{{ jcNum || 0 }}</span>
</div>
</div>
</a-tooltip>
@ -51,7 +51,7 @@
<div class="name">知识库</div>
<div class="sl">
<span class="num">{{ zsNum || 0 }}</span>
</div>
</div>
</a-tooltip>

View File

@ -32,9 +32,9 @@
<div class="img" :class="item.imgType"></div>
</div>
<div class="item-right">
<div class="fw" v-if="select == '浏览量'">
<!-- <div class="fw" v-if="select == '浏览量'">
{{ select }}:{{ item.visits }}
</div>
</div> -->
<div class="fw" v-if="select == '申请量'">
{{ select }}:{{ item.applyCount }}
</div>
@ -139,7 +139,7 @@
path: '/DetailsPageconetent',
query: {
// select: '',
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB
select: DETAIL_PAGE_CONTENT_DEFAULT_TAB,
},
})
}