Compare commits
2 Commits
56696c6266
...
720b26a902
Author | SHA1 | Date |
---|---|---|
wuhongjian | 720b26a902 | |
wuhongjian | 8f1658f2eb |
|
@ -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'
|
||||
},
|
||||
// 测试
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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', // 测试
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue