Merge branch 'hi-ucs-dev' of http://15.2.21.221:3000/wuhongjian/hi-ucs into hi-ucs-dev
This commit is contained in:
commit
37fd83aee7
|
@ -2,3 +2,5 @@ back/dist-西海岸-后台管理.zip
|
||||||
back/public/index.html
|
back/public/index.html
|
||||||
back/dist-西海岸-后台管理-带配置文件.zip
|
back/dist-西海岸-后台管理-带配置文件.zip
|
||||||
back/dist-市局-后台管理-带配置文件.zip
|
back/dist-市局-后台管理-带配置文件.zip
|
||||||
|
back/dist-包头-后台管理.zip
|
||||||
|
back/dist-市局-后台管理.zip
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
<!--
|
<!--
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-04-11 10:11:40
|
* @Date: 2022-04-11 10:11:40
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.liangjunhua
|
||||||
* @LastEditTime: 2022-06-20 16:20:34
|
* @LastEditTime: 2022-06-23 18:30:45
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -27,10 +27,10 @@
|
||||||
'isTab': true, // 是否通过tab展示内容?
|
'isTab': true, // 是否通过tab展示内容?
|
||||||
'iframeURL': '' // 是否通过iframe嵌套展示内容? (以http[s]://开头, 自动匹配)
|
'iframeURL': '' // 是否通过iframe嵌套展示内容? (以http[s]://开头, 自动匹配)
|
||||||
};
|
};
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://15.2.21.238:9796/#/vueTemplateDemo';
|
window.SITE_CONFIG['frontUrl'] = 'http://15.2.21.238:9796/#/vueTemplateDemo';
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://124.222.94.39:9796/#/vueTemplateDemo';
|
// window.SITE_CONFIG['frontUrl'] = 'http://124.222.94.39:9796/#/vueTemplateDemo';
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://15.72.183.90:7008/#/vueTemplateDemo';
|
// window.SITE_CONFIG['frontUrl'] = 'http://15.72.183.90:7008/#/vueTemplateDemo';
|
||||||
window.SITE_CONFIG['frontUrl'] = 'http://10.134.135.9:9797/#/vueTemplateDemo';
|
// window.SITE_CONFIG['frontUrl'] = 'http://10.134.135.9:9797/#/vueTemplateDemo';
|
||||||
window.SITE_CONFIG['menuList'] = []; // 左侧菜单列表(后台返回,未做处理)
|
window.SITE_CONFIG['menuList'] = []; // 左侧菜单列表(后台返回,未做处理)
|
||||||
window.SITE_CONFIG['permissions'] = []; // 页面按钮操作权限(后台返回,未做处理)
|
window.SITE_CONFIG['permissions'] = []; // 页面按钮操作权限(后台返回,未做处理)
|
||||||
window.SITE_CONFIG['dynamicRoutes'] = []; // 动态路由列表
|
window.SITE_CONFIG['dynamicRoutes'] = []; // 动态路由列表
|
||||||
|
@ -42,7 +42,8 @@
|
||||||
<% if (process.env.VUE_APP_NODE_ENV === 'dev') { %>
|
<% if (process.env.VUE_APP_NODE_ENV === 'dev') { %>
|
||||||
<script>
|
<script>
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.166:8888/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.166:8888/renren-admin';
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
||||||
|
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.2.23.141:8000/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.2.23.141:8000/renren-admin';
|
||||||
// WebSocket地址
|
// WebSocket地址
|
||||||
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
||||||
|
@ -71,8 +72,9 @@
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
||||||
|
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
||||||
|
window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.72.183.90:8000/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.72.183.90:8000/renren-admin';
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://10.134.135.9:8888/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://10.134.135.9:8888/renren-admin';
|
||||||
// WebSocket地址
|
// WebSocket地址
|
||||||
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
||||||
</script>
|
</script>
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 2.0 KiB |
Binary file not shown.
After Width: | Height: | Size: 32 KiB |
|
@ -0,0 +1,97 @@
|
||||||
|
<!--
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-04-11 16:30:04
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-06-06 13:14:02
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div shadow="never" class="aui-card--fill">
|
||||||
|
<!-- 流转详情 -->
|
||||||
|
<h3 class="titleH3">{{ $t('process.circulation') }}</h3>
|
||||||
|
<div class="mod-sys__dict">
|
||||||
|
<el-table
|
||||||
|
v-loading="dataListLoading"
|
||||||
|
:data="dataList"
|
||||||
|
border
|
||||||
|
@selection-change="dataListSelectionChangeHandle"
|
||||||
|
@sort-change="dataListSortChangeHandle"
|
||||||
|
style="width: 100%;">
|
||||||
|
<!-- 任务名称 -->
|
||||||
|
<el-table-column prop="activityName" :label="$t('process.taskName')" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- 处理人 -->
|
||||||
|
<el-table-column prop="assigneeName" :label="$t('process.assignee')" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- 流程开始时间 -->
|
||||||
|
<el-table-column prop="startTime" :label="$t('task.startTime')" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- 流程结束时间 -->
|
||||||
|
<el-table-column prop="endTime" :label="$t('task.endTime')" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- 审核意见 -->
|
||||||
|
<el-table-column prop="comment" :label="$t('process.comment')" header-align="center" align="center"></el-table-column>
|
||||||
|
<!-- 任务时长(秒) -->
|
||||||
|
<el-table-column prop="durationInSeconds" :label="$t('task.durationInSeconds')" header-align="center" align="center" width="180"></el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-pagination
|
||||||
|
v-if="dataForm.pid === '0'"
|
||||||
|
:current-page="page"
|
||||||
|
:page-sizes="[10, 20, 50, 100]"
|
||||||
|
:page-size="limit"
|
||||||
|
:total="total"
|
||||||
|
layout="total, sizes, prev, pager, next, jumper"
|
||||||
|
@size-change="pageSizeChangeHandle"
|
||||||
|
@current-change="pageCurrentChangeHandle">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<style scoped>
|
||||||
|
.image {
|
||||||
|
width: 60%;
|
||||||
|
display: block;
|
||||||
|
margin: 0 auto 30px auto;
|
||||||
|
}
|
||||||
|
.titleH3{
|
||||||
|
font-size: 16px;
|
||||||
|
color: #212121;
|
||||||
|
padding:20px 0;
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import Cookies from 'js-cookie'
|
||||||
|
import qs from 'qs'
|
||||||
|
import mixinViewModule from '@/mixins/view-module'
|
||||||
|
export default {
|
||||||
|
mixins: [mixinViewModule],
|
||||||
|
name: 'RenProcessDetail',
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
mixinViewModuleOptions: {
|
||||||
|
getDataListURL: '/act/his/getTaskHandleDetailInfo',
|
||||||
|
getDataListIsPage: false,
|
||||||
|
createdIsNeed: false,
|
||||||
|
deleteIsBatch: true,
|
||||||
|
deleteIsBatchKey: 'deploymentId'
|
||||||
|
},
|
||||||
|
dataForm: {
|
||||||
|
processInstanceId: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.dataForm.processInstanceId = this.$route.params.processInstanceId
|
||||||
|
this.getResourceURL()
|
||||||
|
this.getDataList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 获取流程(xml/image)url地址
|
||||||
|
getResourceURL () {
|
||||||
|
const params = qs.stringify({
|
||||||
|
token: Cookies.get('ucsToken'),
|
||||||
|
processInstanceId: this.dataForm.processInstanceId
|
||||||
|
})
|
||||||
|
return `${window.SITE_CONFIG.apiURL}/act/his/getInstImage?${params}`
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,110 @@
|
||||||
|
<template>
|
||||||
|
<div class='container'>
|
||||||
|
<span class='title-style'>应用资源</span>
|
||||||
|
<span class='page-introduction'>发布情况统计</span>
|
||||||
|
<div class='container-body'>
|
||||||
|
<div class='container-body1'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>评分发布情况</span>
|
||||||
|
</div>
|
||||||
|
<div class='container-body2'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>发布量情况分布</span>
|
||||||
|
</div>
|
||||||
|
<div class='container-body3'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>应用领域分布情况</span>
|
||||||
|
</div>
|
||||||
|
<div class='container-body4'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>被调用组件及数量</span>
|
||||||
|
<img src="@/assets/img/TOP5.png" style='margin-left:10px'>
|
||||||
|
</div>
|
||||||
|
<div class='container-body5'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>被申请组件及数量</span>
|
||||||
|
<img src="@/assets/img/TOP5.png" style='margin-left:10px'>
|
||||||
|
</div>
|
||||||
|
<div class='container-body6'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>评分发布情况</span>
|
||||||
|
</div>
|
||||||
|
<div class='container-body7'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>评分发布情况</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<style scoped>
|
||||||
|
.container{
|
||||||
|
padding-top: 15px;
|
||||||
|
}
|
||||||
|
.title-style{
|
||||||
|
font-size: 24px;
|
||||||
|
color:#000000;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.page-introduction{
|
||||||
|
font-size: 18px;
|
||||||
|
color:#666666;
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body{
|
||||||
|
width:1300px;
|
||||||
|
margin-top:30px;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap:wrap
|
||||||
|
}
|
||||||
|
.container-body1{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.container-body2{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body3{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body4{
|
||||||
|
width:640px;
|
||||||
|
height:300px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-right: 20px;
|
||||||
|
}
|
||||||
|
.container-body5{
|
||||||
|
width:640px;
|
||||||
|
height:300px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.container-body6{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.container-body7{
|
||||||
|
width:860px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,358 @@
|
||||||
|
<template>
|
||||||
|
<div class='container'>
|
||||||
|
<span class='title-style'>组件服务</span>
|
||||||
|
<span class='page-introduction'>发布情况统计</span>
|
||||||
|
<div class='container-body'>
|
||||||
|
<div class='container-body1'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>评分发布情况</span>
|
||||||
|
<div id="main1" style="width: 400px;height:200px;"></div>
|
||||||
|
</div>
|
||||||
|
<div class='container-body2'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>发布量情况分布</span>
|
||||||
|
<div id="main2" style="width: 400px;height:200px;"></div>
|
||||||
|
</div>
|
||||||
|
<div class='container-body3'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>应用领域分布情况</span>
|
||||||
|
<div id="main3" style="width: 400px;height:200px;"></div>
|
||||||
|
</div>
|
||||||
|
<div class='container-body4'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>被调用组件及数量</span>
|
||||||
|
<img src="@/assets/img/TOP5.png" style='margin-left:10px'>
|
||||||
|
</div>
|
||||||
|
<div class='container-body5'>
|
||||||
|
<span style='font-size:18px;color;#000000;'>被申请组件及数量</span>
|
||||||
|
<img src="@/assets/img/TOP5.png" style='margin-left:10px'>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class='footer'>
|
||||||
|
<div class='footer-left' ></div>
|
||||||
|
<span style='color:#b7c2d1;font-size:16px'>到底啦</span>
|
||||||
|
<div class='footer-right'></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import * as echarts from 'echarts';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
mounted(){
|
||||||
|
this.myEcharts1()
|
||||||
|
this.myEcharts2()
|
||||||
|
this.myEcharts3()
|
||||||
|
},
|
||||||
|
methods:{
|
||||||
|
myEcharts1(){
|
||||||
|
var chartDom = document.getElementById('main1');
|
||||||
|
var myChart = echarts.init(chartDom);
|
||||||
|
var option;
|
||||||
|
option = {
|
||||||
|
tooltip: {
|
||||||
|
trigger: 'item'
|
||||||
|
},
|
||||||
|
legend: {
|
||||||
|
orient: '',
|
||||||
|
top: '14%',
|
||||||
|
left: '55%',
|
||||||
|
width:"auto",
|
||||||
|
height:"auto",
|
||||||
|
orient: "vertical",
|
||||||
|
itemGap: 15,
|
||||||
|
itemWidth: 14,
|
||||||
|
// 使用回调函数
|
||||||
|
formatter: function(name) {
|
||||||
|
var data = option.series[0].data;
|
||||||
|
var total = 0;
|
||||||
|
var tarValue;
|
||||||
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
total += data[i].value;
|
||||||
|
if (data[i].name == name) {
|
||||||
|
tarValue = data[i].value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var v = tarValue;
|
||||||
|
var p = Math.round(((tarValue / total) * 100));
|
||||||
|
return `${name} ${p}%`;
|
||||||
|
},
|
||||||
|
itemStyle:{},
|
||||||
|
textStyle: {
|
||||||
|
color: "#666666",
|
||||||
|
padding:[0,8,0,18]
|
||||||
|
},
|
||||||
|
},
|
||||||
|
color: ['#0087ff', '#51cb8d', '#fcc549', '#ef6567', '#ff8a00', '#fc5656'],
|
||||||
|
series: [
|
||||||
|
{
|
||||||
|
type: 'pie',
|
||||||
|
radius: ['40%', '60%'],
|
||||||
|
center:['22%', '50%'],
|
||||||
|
avoidLabelOverlap: false,
|
||||||
|
itemStyle: {
|
||||||
|
borderRadius: 10,
|
||||||
|
borderColor: '#fff',
|
||||||
|
borderWidth: 2
|
||||||
|
},
|
||||||
|
label: {
|
||||||
|
show: false,
|
||||||
|
position: 'center'
|
||||||
|
},
|
||||||
|
emphasis: {
|
||||||
|
label: {
|
||||||
|
show: true,
|
||||||
|
fontSize: '40',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
labelLine: {
|
||||||
|
show: false
|
||||||
|
},
|
||||||
|
data: [
|
||||||
|
{ value: 1048, name: '1分' },
|
||||||
|
{ value: 735, name: '2分' },
|
||||||
|
{ value: 580, name: '3分' },
|
||||||
|
{ value: 484, name: '4分' },
|
||||||
|
{ value: 300, name: '5分' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
option && myChart.setOption(option);
|
||||||
|
},
|
||||||
|
myEcharts2(){
|
||||||
|
var chartDom = document.getElementById('main2');
|
||||||
|
var myChart = echarts.init(chartDom);
|
||||||
|
var option;
|
||||||
|
option = {
|
||||||
|
tooltip: {
|
||||||
|
trigger: 'item'
|
||||||
|
},
|
||||||
|
legend: {
|
||||||
|
orient: '',
|
||||||
|
top: '22%',
|
||||||
|
left: '50%',
|
||||||
|
width:"auto",
|
||||||
|
height:"auto",
|
||||||
|
orient: "vertical",
|
||||||
|
itemGap: 15,
|
||||||
|
itemWidth: 14,
|
||||||
|
// 使用回调函数
|
||||||
|
formatter: function(name) {
|
||||||
|
var data = option.series[0].data;
|
||||||
|
var total = 0;
|
||||||
|
var tarValue;
|
||||||
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
total += data[i].value;
|
||||||
|
if (data[i].name == name) {
|
||||||
|
tarValue = data[i].value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var v = tarValue;
|
||||||
|
var p = Math.round(((tarValue / total) * 100));
|
||||||
|
return `${name} ${p}%`;
|
||||||
|
},
|
||||||
|
itemStyle:{},
|
||||||
|
textStyle: {
|
||||||
|
color: "#666666",
|
||||||
|
padding:[0,8,0,18]
|
||||||
|
},
|
||||||
|
},
|
||||||
|
color: ['#0087ff', '#51cb8d', '#fcc549', '#ef6567', '#ff8a00', '#fc5656'],
|
||||||
|
series: [
|
||||||
|
{
|
||||||
|
// name: 'Access From',
|
||||||
|
type: 'pie',
|
||||||
|
radius: ['40%', '60%'],
|
||||||
|
center:['22%', '50%'],
|
||||||
|
avoidLabelOverlap: false,
|
||||||
|
itemStyle: {
|
||||||
|
borderRadius: 10,
|
||||||
|
borderColor: '#fff',
|
||||||
|
borderWidth: 2
|
||||||
|
},
|
||||||
|
label: {
|
||||||
|
show: false,
|
||||||
|
position: 'center'
|
||||||
|
},
|
||||||
|
emphasis: {
|
||||||
|
label: {
|
||||||
|
show: true,
|
||||||
|
fontSize: '40',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
labelLine: {
|
||||||
|
show: false
|
||||||
|
},
|
||||||
|
data: [
|
||||||
|
{ value: 1048, name: '算法' },
|
||||||
|
{ value: 735, name: '图层' },
|
||||||
|
{ value: 580, name: '开发' },
|
||||||
|
{ value: 484, name: '业务' },
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
option && myChart.setOption(option);
|
||||||
|
},
|
||||||
|
myEcharts3(){
|
||||||
|
var chartDom = document.getElementById('main3');
|
||||||
|
var myChart = echarts.init(chartDom);
|
||||||
|
var option;
|
||||||
|
option = {
|
||||||
|
tooltip: {
|
||||||
|
trigger: 'item'
|
||||||
|
},
|
||||||
|
legend: {
|
||||||
|
orient: '',
|
||||||
|
top: '22%',
|
||||||
|
left: '50%',
|
||||||
|
width:"auto",
|
||||||
|
height:"auto",
|
||||||
|
orient: "vertical",
|
||||||
|
itemGap: 15,
|
||||||
|
itemWidth: 14,
|
||||||
|
// 使用回调函数
|
||||||
|
formatter: function(name) {
|
||||||
|
var data = option.series[0].data;
|
||||||
|
var total = 0;
|
||||||
|
var tarValue;
|
||||||
|
for (var i = 0; i < data.length; i++) {
|
||||||
|
total += data[i].value;
|
||||||
|
if (data[i].name == name) {
|
||||||
|
tarValue = data[i].value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
var v = tarValue;
|
||||||
|
var p = Math.round(((tarValue / total) * 100));
|
||||||
|
return `${name} ${p}%`;
|
||||||
|
},
|
||||||
|
itemStyle:{},
|
||||||
|
textStyle: {
|
||||||
|
color: "#666666",
|
||||||
|
padding:[0,8,0,18]
|
||||||
|
},
|
||||||
|
},
|
||||||
|
color: ['#0087ff', '#51cb8d', '#fcc549', '#ef6567', '#ff8a00', '#fc5656'],
|
||||||
|
series: [
|
||||||
|
{
|
||||||
|
// name: 'Access From',
|
||||||
|
type: 'pie',
|
||||||
|
radius: ['40%', '60%'],
|
||||||
|
center:['22%', '50%'],
|
||||||
|
avoidLabelOverlap: false,
|
||||||
|
itemStyle: {
|
||||||
|
borderRadius: 10,
|
||||||
|
borderColor: '#fff',
|
||||||
|
borderWidth: 2
|
||||||
|
},
|
||||||
|
label: {
|
||||||
|
show: false,
|
||||||
|
position: 'center'
|
||||||
|
},
|
||||||
|
emphasis: {
|
||||||
|
label: {
|
||||||
|
show: true,
|
||||||
|
fontSize: '40',
|
||||||
|
fontWeight: 'bold'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
labelLine: {
|
||||||
|
show: false
|
||||||
|
},
|
||||||
|
data: [
|
||||||
|
{ value: 1048, name: '应用领域' },
|
||||||
|
{ value: 735, name: '应用领域2' },
|
||||||
|
{ value: 580, name: '应用领域3' },
|
||||||
|
{ value: 484, name: '应用领域4' },
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
option && myChart.setOption(option);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style scoped>
|
||||||
|
.container{
|
||||||
|
padding-top: 15px;
|
||||||
|
}
|
||||||
|
.title-style{
|
||||||
|
font-size: 24px;
|
||||||
|
color:#000000;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.page-introduction{
|
||||||
|
font-size: 18px;
|
||||||
|
color:#666666;
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body{
|
||||||
|
width:1300px;
|
||||||
|
margin-top:30px;
|
||||||
|
display: flex;
|
||||||
|
flex-wrap:wrap
|
||||||
|
}
|
||||||
|
.container-body1{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.container-body2{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
margin-right:20px;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body3{
|
||||||
|
width:420px;
|
||||||
|
height:250px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
.container-body4{
|
||||||
|
width:640px;
|
||||||
|
height:300px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-right: 20px;
|
||||||
|
}
|
||||||
|
.container-body5{
|
||||||
|
width:640px;
|
||||||
|
height:300px;
|
||||||
|
background-color: #ffffff;
|
||||||
|
padding-top:20px;
|
||||||
|
padding-left: 20px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
.footer{
|
||||||
|
display: flex;
|
||||||
|
margin-top:50px;
|
||||||
|
margin-left:365px;
|
||||||
|
}
|
||||||
|
.footer-left{
|
||||||
|
width:250px;
|
||||||
|
height:1px;
|
||||||
|
background-color:#e0eaf8;
|
||||||
|
margin-right:10px;
|
||||||
|
margin-top:8px
|
||||||
|
}
|
||||||
|
.footer-right{
|
||||||
|
width:250px;
|
||||||
|
height:1px;
|
||||||
|
background-color:#e0eaf8;
|
||||||
|
margin-left:10px;
|
||||||
|
margin-top:8px
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,250 @@
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<el-card shadow="never" class="aui-card--fill" v-if='homeIsShow'>
|
||||||
|
<div class="mod-demand__bsdemand">
|
||||||
|
<div class='top-box'>
|
||||||
|
<span class='title'>能力统计</span>
|
||||||
|
<div class='title-list-style'>
|
||||||
|
<div v-for="(item,index) in titleList" :key='index' class='title-single' :class="{'choseStyle':choseId=== index}" @click="choseBtn(index)">
|
||||||
|
<span class='box-style'>{{item.name}}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class='second-title'>
|
||||||
|
<span style='margin-right:30px' :class="[departmentId===1?'departmentStyle':'']" @click="handleChose(1)">
|
||||||
|
部门发布情况
|
||||||
|
</span>
|
||||||
|
<span :class="[departmentId===2?'departmentStyle':'']" @click="handleChose(2)">
|
||||||
|
部门使用情况
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class='line-style'></div>
|
||||||
|
<el-table
|
||||||
|
:data="tableData"
|
||||||
|
border
|
||||||
|
style="width: 100%">
|
||||||
|
<el-table-column
|
||||||
|
prop="name"
|
||||||
|
label="部门名称"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="releaseNum"
|
||||||
|
label="发布总数"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="applyNum"
|
||||||
|
label="被申请总数"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="browseNmu"
|
||||||
|
label="浏览总量"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="collectNum"
|
||||||
|
label="收藏量"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="transferNum"
|
||||||
|
label="被调用总数"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="applicationNum"
|
||||||
|
label="被应用总数"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="needApplicationNum"
|
||||||
|
label="需申请数量"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="reductionNum"
|
||||||
|
label="免批数量"
|
||||||
|
min-width="100%">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="操作"
|
||||||
|
min-width="92%">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button @click="handleClick(scope.row)" type="text" size="small">查看详情</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div class="block">
|
||||||
|
<el-pagination
|
||||||
|
@size-change="handleSizeChange"
|
||||||
|
@current-change="handleCurrentChange"
|
||||||
|
:current-page="currentPage4"
|
||||||
|
:page-sizes="[10, 20, 30, 40]"
|
||||||
|
layout="total, prev, pager, next, jumper"
|
||||||
|
:total="40">
|
||||||
|
</el-pagination>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-card>
|
||||||
|
<component-services v-if='servicesIsShow' ></component-services>
|
||||||
|
<application-resources v-if='resourcesIsShow'></application-resources>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
|
<script>
|
||||||
|
import componentServices from './componentServices.vue'
|
||||||
|
import applicationResources from './applicationResources.vue'
|
||||||
|
export default {
|
||||||
|
components:{componentServices,applicationResources},
|
||||||
|
data(){
|
||||||
|
return{
|
||||||
|
choseId:null,
|
||||||
|
departmentId:1,
|
||||||
|
currentPage4: 4,
|
||||||
|
homeIsShow:true,
|
||||||
|
servicesIsShow:false,
|
||||||
|
resourcesIsShow:false,
|
||||||
|
titleList:[
|
||||||
|
{name:'组件服务',key:1}, {name:'应用资源',key:2}, {name:'基础设施',key:3}, {name:'数据资源',key:3}, {name:'知识库',key:3},
|
||||||
|
],
|
||||||
|
tableData: [{
|
||||||
|
name: '部门名称一',
|
||||||
|
releaseNum: 111,
|
||||||
|
applyNum: 222,
|
||||||
|
browseNmu: 333,
|
||||||
|
collectNum:444,
|
||||||
|
transferNum:555,
|
||||||
|
applicationNum:666,
|
||||||
|
needApplicationNum:777,
|
||||||
|
reductionNum:888,
|
||||||
|
},{
|
||||||
|
name: '部门名称一',
|
||||||
|
releaseNum: 111,
|
||||||
|
applyNum: 222,
|
||||||
|
browseNmu: 333,
|
||||||
|
collectNum:444,
|
||||||
|
transferNum:555,
|
||||||
|
applicationNum:666,
|
||||||
|
needApplicationNum:777,
|
||||||
|
reductionNum:888,
|
||||||
|
},{
|
||||||
|
name: '部门名称一',
|
||||||
|
releaseNum: 111,
|
||||||
|
applyNum: 222,
|
||||||
|
browseNmu: 333,
|
||||||
|
collectNum:444,
|
||||||
|
transferNum:555,
|
||||||
|
applicationNum:666,
|
||||||
|
needApplicationNum:777,
|
||||||
|
reductionNum:888,
|
||||||
|
},{
|
||||||
|
name: '部门名称一',
|
||||||
|
releaseNum: 111,
|
||||||
|
applyNum: 222,
|
||||||
|
browseNmu: 333,
|
||||||
|
collectNum:444,
|
||||||
|
transferNum:555,
|
||||||
|
applicationNum:666,
|
||||||
|
needApplicationNum:777,
|
||||||
|
reductionNum:888,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleClick(row) {
|
||||||
|
console.log(row);
|
||||||
|
},
|
||||||
|
//选择组件
|
||||||
|
choseBtn(index){
|
||||||
|
this.choseId=index
|
||||||
|
if (index===0){
|
||||||
|
this.homeIsShow=false
|
||||||
|
this.servicesIsShow=true
|
||||||
|
} else if(index===1){
|
||||||
|
this.homeIsShow=false
|
||||||
|
this.servicesIsShow=false
|
||||||
|
this.resourcesIsShow=true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
//选择发布or使用表格
|
||||||
|
handleChose(index){
|
||||||
|
this.departmentId=index
|
||||||
|
},
|
||||||
|
//翻页
|
||||||
|
handleSizeChange(val) {
|
||||||
|
console.log(`每页 ${val} 条`);
|
||||||
|
},
|
||||||
|
handleCurrentChange(val) {
|
||||||
|
console.log(`当前页: ${val}`);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.top-box{
|
||||||
|
height:80px;
|
||||||
|
background-color: #fafafc;
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
display: flex;
|
||||||
|
font-size:20px;
|
||||||
|
color:#000000;
|
||||||
|
font-weight: bold;
|
||||||
|
padding-left:15px;
|
||||||
|
padding-top:10px;
|
||||||
|
}
|
||||||
|
.title-list-style{
|
||||||
|
display: flex;
|
||||||
|
margin-top:10px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.title-single{
|
||||||
|
font-size:14px;
|
||||||
|
width:90px;
|
||||||
|
color:#666666;
|
||||||
|
height:24px;
|
||||||
|
margin-left:10px;
|
||||||
|
border:1px solid #cccccc;
|
||||||
|
border-radius: 12px;
|
||||||
|
cursor:pointer
|
||||||
|
|
||||||
|
}
|
||||||
|
.box-style{
|
||||||
|
width:90px;
|
||||||
|
height:24px;
|
||||||
|
display:flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
padding-bottom: 2px;
|
||||||
|
}
|
||||||
|
.second-title{
|
||||||
|
margin-top:20px;
|
||||||
|
font-size: 14px;
|
||||||
|
color:#979eb9;
|
||||||
|
cursor:pointer
|
||||||
|
}
|
||||||
|
.line-style{
|
||||||
|
width:100%;
|
||||||
|
height:1px;
|
||||||
|
background-color:#f5f6fa;
|
||||||
|
margin-top:15px;
|
||||||
|
margin-bottom:15px;
|
||||||
|
}
|
||||||
|
.aui-card--fill{
|
||||||
|
width:100% !important;
|
||||||
|
padding: 0px !important;
|
||||||
|
}
|
||||||
|
.choseStyle{
|
||||||
|
color:#526aff;
|
||||||
|
border:1px solid #526aff
|
||||||
|
}
|
||||||
|
.departmentStyle{
|
||||||
|
color:#526aff
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -1,106 +1,134 @@
|
||||||
<!-- 流程业务表单 -->
|
<!-- 流程业务表单 -->
|
||||||
<template>
|
<template>
|
||||||
<el-card shadow="never" class="aui-card--fill">
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
<el-form
|
|
||||||
:model="dataForm"
|
<!-- 申请人详情 -->
|
||||||
:rules="dataRule"
|
<div>
|
||||||
ref="dataForm"
|
<h3>申请人信息</h3>
|
||||||
@keyup.enter.native="dataFormSubmitHandle()"
|
<div class="big-BOX">
|
||||||
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"
|
<p>
|
||||||
>
|
<span>申请人:<span> {{dataForm.content.applyUserName || '--'}}</span></span>
|
||||||
<el-form-item label="申请人" prop="user">
|
<span>电话:<span>{{dataForm.content.applyUserPhone || '--'}}</span></span>
|
||||||
<el-input
|
<span>单位:<span>{{dataForm.content.applyUserDeptName || '--'}}</span></span>
|
||||||
v-model="dataForm.applyUserName"
|
</p>
|
||||||
:disabled="fieldDisabled"
|
<p>
|
||||||
placeholder="请输入申请人"
|
<span>应用领域:<span>{{dataForm.content.detailsField || '--'}}</span></span>
|
||||||
></el-input>
|
<span> 需求类型:<span> {{dataForm.content.detailsType || '--'}}</span></span>
|
||||||
</el-form-item>
|
<span> 需求标题: <span> {{dataForm.content.demandSubject || '--'}}</span></span>
|
||||||
<el-form-item label="申请电话" prop="phone">
|
</p>
|
||||||
<el-input
|
<p>
|
||||||
v-model="dataForm.applyUserPhone"
|
<span> 需求描述:<span> {{dataForm.content.demandDetails|| '--'}}</span></span>
|
||||||
:disabled="fieldDisabled"
|
</p>
|
||||||
placeholder="请输入申请人电话"
|
<p>
|
||||||
></el-input>
|
<span> 申请附件:<span> {{dataForm.content.enclosure|| '--'}}<button @click="downloadFile(dataForm.content.enclosure)">下载</button></span></span>
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="申请单位" prop="unit">
|
</p>
|
||||||
<el-input
|
</div>
|
||||||
v-model="dataForm.applyUserDeptName"
|
</div>
|
||||||
:disabled="fieldDisabled"
|
|
||||||
placeholder="请输入申请单位"
|
<!-- 申请能力 -->
|
||||||
></el-input>
|
<div class="AbilityApply">
|
||||||
</el-form-item>
|
<h3>申请能力</h3>
|
||||||
<el-form-item label="需求标题" prop="area">
|
<ul v-for="item in dataList" :key="item.id">
|
||||||
<el-input
|
<li class="title">{{item.address}}</li>
|
||||||
v-model="dataForm.demandSubject"
|
<li class="clearfix">
|
||||||
:disabled="fieldDisabled"
|
<img
|
||||||
placeholder="需求标题"
|
src="~@/assets/img/imgLeft.png"
|
||||||
></el-input>
|
/>
|
||||||
</el-form-item>
|
<div>
|
||||||
<el-form-item label="需求类型" prop="system">
|
<h2>{{item.name}}<span>{{item.type}}</span></h2>
|
||||||
<el-input
|
<p>{{item.describe}}</p>
|
||||||
v-model="dataForm.detailsType"
|
</div>
|
||||||
:disabled="fieldDisabled"
|
</li>
|
||||||
placeholder="需求类型"
|
</ul>
|
||||||
></el-input>
|
</div>
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="应用领域" prop="scene">
|
|
||||||
<el-input
|
|
||||||
v-model="dataForm.detailsField"
|
|
||||||
:disabled="fieldDisabled"
|
|
||||||
placeholder="应用领域"
|
|
||||||
></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="需求描述" prop="basis">
|
|
||||||
<el-tooltip class="item" effect="dark" popper-class="kuandukuandukuandu" :content="dataForm.demandDetails" placement="top">
|
|
||||||
<el-input
|
|
||||||
v-model="dataForm.demandDetails"
|
|
||||||
:disabled="fieldDisabled"
|
|
||||||
placeholder="需求描述"
|
|
||||||
></el-input>
|
|
||||||
</el-tooltip>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item v-if="dataForm.enclosure" label="申请附件" prop="enclosure">
|
|
||||||
<el-button @click="downloadFile(dataForm.enclosure, '申请附件')">附件下载</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
<!-- 流程综合组件 -->
|
<!-- 流程综合组件 -->
|
||||||
<ren-process-multiple
|
<!-- <ren-process-multiple
|
||||||
v-if="processVisible"
|
v-if="processVisible"
|
||||||
updateInstanceIdUrl="/processForm/tabilityapplication/updateInstanceId"
|
updateInstanceIdUrl="/processForm/tabilityapplication/updateInstanceId"
|
||||||
saveFormUrl="/processForm/tabilityapplication"
|
saveFormUrl="/processForm/tabilityapplication"
|
||||||
dataFormName="dataForm"
|
dataFormName="dataForm"
|
||||||
ref="renProcessMultiple"
|
ref="renProcessMultiple"
|
||||||
></ren-process-multiple>
|
></ren-process-multiple> -->
|
||||||
|
|
||||||
|
<!-- 审批 -->
|
||||||
|
<div class="agreeOr">
|
||||||
|
<h3>审批</h3>
|
||||||
|
<div>
|
||||||
|
<el-radio-group v-model="agreeOrList" style="width:230px;">
|
||||||
|
<el-radio-button label="同意" class="blueAll">同意</el-radio-button>
|
||||||
|
<el-radio-button label="退回" class="redAll">退回</el-radio-button>
|
||||||
|
</el-radio-group>
|
||||||
|
<el-input v-if="agreeOrList ==='同意' " v-model="inputAgree" placeholder="请输入同意内容"></el-input>
|
||||||
|
<el-input v-if="agreeOrList ==='退回'" v-model="inputNo" placeholder="请输入退回内容"></el-input>
|
||||||
|
<el-button class="inputBule" @click="agreeOrNot">提交</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 流程详情 -->
|
||||||
|
<ren-process-detail-import></ren-process-detail-import>
|
||||||
</el-card>
|
</el-card>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// 引入工作流公共方法
|
// 引入工作流公共方法
|
||||||
import processModule from '@/mixins/process-module'
|
import processModule from '@/mixins/process-module'
|
||||||
|
import qs from 'qs'
|
||||||
|
import RenProcessDetailImport from '@/components/ren-process-detail/src/ren-process-detail-import'
|
||||||
export default {
|
export default {
|
||||||
// 注入公共方法
|
// 注入公共方法
|
||||||
mixins: [processModule],
|
mixins: [processModule],
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
visible: false,
|
visible: true,
|
||||||
// 表单属性是否可编辑
|
// 表单属性是否可编辑
|
||||||
fieldDisabled: false,
|
// fieldDisabled: false,
|
||||||
|
// dataForm: {
|
||||||
|
// id: '',
|
||||||
|
// user: '',
|
||||||
|
// phone: '',
|
||||||
|
// unit: '',
|
||||||
|
// area: '',
|
||||||
|
// system: '',
|
||||||
|
// scene: '',
|
||||||
|
// basis: ''
|
||||||
|
// }
|
||||||
dataForm: {
|
dataForm: {
|
||||||
id: '',
|
id: '',
|
||||||
user: '',
|
content: []
|
||||||
phone: '',
|
},
|
||||||
unit: '',
|
dataList: [
|
||||||
area: '',
|
{
|
||||||
system: '',
|
// img: '~@/assets/img/imgLeft.png',
|
||||||
scene: '',
|
address: '青岛市应急管理局',
|
||||||
basis: ''
|
name: '组件名称',
|
||||||
|
type: '组件服务',
|
||||||
|
describe: '资源描述资源描述资源描述资源描述资源描述资源描述'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// img: '~@/assets/img/imgLeft.png',
|
||||||
|
address: '青岛市应急管理局',
|
||||||
|
name: '组件名称',
|
||||||
|
type: '组件服务',
|
||||||
|
describe: '资源描述资源描述资源描述资源描述资源描述资源描述'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// img: '~@/assets/img/imgLeft.png',
|
||||||
|
address: '青岛市应急管理局',
|
||||||
|
name: '组件名称',
|
||||||
|
type: '组件服务',
|
||||||
|
describe: '资源描述资源描述资源描述资源描述资源描述资源描述'
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
inputAgree: '',
|
||||||
|
inputNo: '',
|
||||||
|
agreeOrList: '同意'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created () {
|
created () {
|
||||||
// 将业务KEY赋值给表单
|
// 将业务KEY赋值给表单
|
||||||
this.dataForm.id = this.$route.params.businessKey
|
this.dataForm.id = this.$route.params.businessKey
|
||||||
console.log(this.$route.params)
|
console.log(this.dataForm, 'ela')
|
||||||
this.init()
|
this.init()
|
||||||
// 流程回调
|
// 流程回调
|
||||||
var callbacks = {
|
var callbacks = {
|
||||||
|
@ -115,37 +143,30 @@ export default {
|
||||||
this.initProcessMultiple(callbacks)
|
this.initProcessMultiple(callbacks)
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
dataRule () {
|
// dataRule () {
|
||||||
return {
|
// return {
|
||||||
user: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
|
// inputAgree: [
|
||||||
phone: [
|
// { required: true, message: this.$t('validate.required'), trigger: 'blur' }
|
||||||
{ required: true, message: '请输入申请人电话', trigger: 'blur' },
|
// ],
|
||||||
{
|
// inputNo: [
|
||||||
type: 'string',
|
// { required: true, message: this.$t('validate.required'), trigger: 'blur' }
|
||||||
pattern: /^1[3456789]\d{9}$/,
|
// ]
|
||||||
message: '请输入正确的电话号码',
|
// }
|
||||||
trigger: 'blur'
|
// }
|
||||||
}
|
},
|
||||||
],
|
components: {
|
||||||
unit: [{ required: true, message: '请输入申请单位', trigger: 'blur' }],
|
RenProcessDetailImport
|
||||||
area: [{ required: true, message: '请输入所在地区', trigger: 'blur' }],
|
|
||||||
system: [
|
|
||||||
{ required: true, message: '请输入申请应用', trigger: 'blur' }
|
|
||||||
],
|
|
||||||
scene: [{ required: true, message: '请输入应用场景', trigger: 'blur' }],
|
|
||||||
basis: [{ required: true, message: '请输入申请依据', trigger: 'blur' }]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
init () {
|
init () {
|
||||||
this.visible = true
|
// this.visible = true
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.dataForm.resetFields()
|
// this.$refs.dataForm.resetFields()
|
||||||
if (this.dataForm.id) {
|
if (this.dataForm.id) {
|
||||||
// 如业务KEY已存在,不允许编辑
|
// 如业务KEY已存在,不允许编辑
|
||||||
this.fieldDisabled = true
|
// this.fieldDisabled = true
|
||||||
this.getInfo()
|
this.getInfo()
|
||||||
|
console.log(this.dataForm, 'init')
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -155,21 +176,242 @@ export default {
|
||||||
.get(`/demanData/${this.dataForm.id}`)
|
.get(`/demanData/${this.dataForm.id}`)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
|
console.log(res.data)
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.dataForm = {
|
console.log(res.data, 'elas')
|
||||||
...this.dataForm,
|
this.dataForm.content = res.data
|
||||||
...res.data
|
console.log(this.dataForm, 'ela')
|
||||||
}
|
|
||||||
})
|
})
|
||||||
.catch(() => {})
|
.catch(() => {})
|
||||||
},
|
},
|
||||||
|
// 申请能力
|
||||||
|
applyData () {
|
||||||
|
this.$http
|
||||||
|
.get(`/resource/select/${this.dataForm.id}`)
|
||||||
|
.then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
console.log(res.data, 'wh')
|
||||||
|
// return this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
// console.log(res.data, 'elas')
|
||||||
|
// this.dataForm.content = res.data
|
||||||
|
// console.log(this.dataForm, 'ela')
|
||||||
|
})
|
||||||
|
.catch(() => {})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 同意与退回
|
||||||
|
agreeOrNot () {
|
||||||
|
if (this.agreeOrList === '同意') {
|
||||||
|
console.log('this.dataForm', this.dataForm)
|
||||||
|
const params = qs.stringify({
|
||||||
|
taskId: this.dataForm.content.instanceId,
|
||||||
|
comment: this.inputAgree
|
||||||
|
})
|
||||||
|
console.log(params)
|
||||||
|
this.$http.post('/act/task/complete?' + params).then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
console.log(res)
|
||||||
|
this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
}).catch(() => {})
|
||||||
|
} else if (this.agreeOrList === '退回') {
|
||||||
|
const params = qs.stringify({
|
||||||
|
taskId: this.dataForm.content.instanceId,
|
||||||
|
comment: this.inputNo
|
||||||
|
})
|
||||||
|
this.$http.post('/act/task/backToFirst?', params).then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
// 启动流程出错回调
|
// 启动流程出错回调
|
||||||
startProcessErrorCallback (data) {
|
startProcessErrorCallback (data) {
|
||||||
console.log(data)
|
console.log(data)
|
||||||
},
|
},
|
||||||
// 任务处理出错回调
|
// 任务处理出错回调
|
||||||
taskHandleErrorCallback (data) {}
|
taskHandleErrorCallback (data) {}
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.applyData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
<style scoped lang="scss">
|
||||||
|
::v-deep .big-BOX{
|
||||||
|
background:rgba(244,245,248,0.8);
|
||||||
|
padding:24px;
|
||||||
|
h3{
|
||||||
|
font-size:16px;
|
||||||
|
color:#212121
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
width:78%;
|
||||||
|
display:flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
color:#212121;
|
||||||
|
font-size:14px;
|
||||||
|
span{
|
||||||
|
display:inline-block;
|
||||||
|
margin-left:8px;
|
||||||
|
line-height:32px;
|
||||||
|
span{
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p:last-of-type{
|
||||||
|
margin-top:16px;
|
||||||
|
width:100%;
|
||||||
|
span{
|
||||||
|
display:flex;
|
||||||
|
span{
|
||||||
|
padding-left:12px;
|
||||||
|
height:32px;
|
||||||
|
background:rgba(232,234,239,1);
|
||||||
|
border-radius:2px;
|
||||||
|
button{
|
||||||
|
background:unset;
|
||||||
|
border:0;
|
||||||
|
color:#0558e1;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
::v-deep .AbilityApply{
|
||||||
|
margin-top:32px;
|
||||||
|
|
||||||
|
h3{
|
||||||
|
font-size:16px;
|
||||||
|
color:#212121;
|
||||||
|
border-bottom:1px solid #dddee1;
|
||||||
|
padding-bottom:10px;
|
||||||
|
}
|
||||||
|
ul{
|
||||||
|
padding-left: 0px;
|
||||||
|
li{
|
||||||
|
list-style:none;
|
||||||
|
padding: 30px 0;
|
||||||
|
border-bottom: 1px solid #dddee1;
|
||||||
|
display:flex;
|
||||||
|
img{
|
||||||
|
width:100px;
|
||||||
|
height:100px;
|
||||||
|
}
|
||||||
|
div{
|
||||||
|
margin-left:16px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
h2{
|
||||||
|
margin-bottom:20px;
|
||||||
|
font-size:20px;
|
||||||
|
color:#000;
|
||||||
|
display:flex;
|
||||||
|
span{
|
||||||
|
display:block;
|
||||||
|
font-size:14px;
|
||||||
|
color:#ffffff;
|
||||||
|
margin-left:8px;
|
||||||
|
background:rgba(0,184,230,0.8);
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 0 5px;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p{
|
||||||
|
margin-bottom:0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.clearfix:after{
|
||||||
|
display:block;
|
||||||
|
content:"";
|
||||||
|
clear:both;
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
color:#0558e1;
|
||||||
|
font-size:18px;
|
||||||
|
padding-bottom:0;
|
||||||
|
border-bottom: 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
.title:before {
|
||||||
|
content: "";
|
||||||
|
width: 6px;
|
||||||
|
height: 6px;
|
||||||
|
display: inline-block;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: #0558e1;
|
||||||
|
vertical-align: middle;
|
||||||
|
margin-right: 10px;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
::v-deep .agreeOr>div{
|
||||||
|
display:flex;
|
||||||
|
align-items: center;
|
||||||
|
.el-input{
|
||||||
|
margin-right: 10px;
|
||||||
|
margin-left: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
::v-deep .agreeOr>div:last-of-type{
|
||||||
|
margin-top:15px;
|
||||||
|
}
|
||||||
|
.blueAll{
|
||||||
|
::v-deep .el-radio-button__inner{
|
||||||
|
width:80px;
|
||||||
|
height:32px;
|
||||||
|
line-height:32px;
|
||||||
|
padding:0;
|
||||||
|
border-radius:2px;
|
||||||
|
background:#0558e1;
|
||||||
|
color:#ffffff;
|
||||||
|
border:1px solid #0558e1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.inputBule{
|
||||||
|
width:55px;
|
||||||
|
height:32px;
|
||||||
|
line-height:32px;
|
||||||
|
padding:0;
|
||||||
|
border-radius:2px;
|
||||||
|
background:#0558e1;
|
||||||
|
color:#ffffff;
|
||||||
|
border:1px solid #0558e1;
|
||||||
|
}
|
||||||
|
::v-deep .is-active{
|
||||||
|
background:#ffffff;
|
||||||
|
color:#0558e1;
|
||||||
|
}
|
||||||
|
.redAll{
|
||||||
|
margin-left:10px;
|
||||||
|
::v-deep .el-radio-button__inner{
|
||||||
|
width:80px;
|
||||||
|
height:32px;
|
||||||
|
line-height:32px;
|
||||||
|
padding:0;
|
||||||
|
border-radius:2px;
|
||||||
|
border:1px solid #e83a48;
|
||||||
|
background:#ffffff;
|
||||||
|
color:#e83a48;
|
||||||
|
margin-left:10px;
|
||||||
|
}
|
||||||
|
:v-deep .el-radio-button__inner{
|
||||||
|
box-shadow: unset;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.blueInput{
|
||||||
|
width:55px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
|
@ -0,0 +1,175 @@
|
||||||
|
<!-- 流程业务表单 -->
|
||||||
|
<template>
|
||||||
|
<el-card shadow="never" class="aui-card--fill">
|
||||||
|
<el-form
|
||||||
|
:model="dataForm"
|
||||||
|
:rules="dataRule"
|
||||||
|
ref="dataForm"
|
||||||
|
@keyup.enter.native="dataFormSubmitHandle()"
|
||||||
|
:label-width="$i18n.locale === 'en-US' ? '120px' : '80px'"
|
||||||
|
>
|
||||||
|
<el-form-item label="申请人" prop="user">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.applyUserName"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="请输入申请人"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="申请电话" prop="phone">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.applyUserPhone"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="请输入申请人电话"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="申请单位" prop="unit">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.applyUserDeptName"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="请输入申请单位"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="需求标题" prop="area">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.demandSubject"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="需求标题"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="需求类型" prop="system">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.detailsType"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="需求类型"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="应用领域" prop="scene">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.detailsField"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="应用领域"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="需求描述" prop="basis">
|
||||||
|
<el-tooltip class="item" effect="dark" popper-class="kuandukuandukuandu" :content="dataForm.demandDetails" placement="top">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.demandDetails"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="需求描述"
|
||||||
|
></el-input>
|
||||||
|
</el-tooltip>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item v-if="dataForm.enclosure" label="申请附件" prop="enclosure">
|
||||||
|
<el-button @click="downloadFile(dataForm.enclosure, '申请附件')">附件下载</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<!-- 流程综合组件 -->
|
||||||
|
<ren-process-multiple
|
||||||
|
v-if="processVisible"
|
||||||
|
updateInstanceIdUrl="/processForm/tabilityapplication/updateInstanceId"
|
||||||
|
saveFormUrl="/processForm/tabilityapplication"
|
||||||
|
dataFormName="dataForm"
|
||||||
|
ref="renProcessMultiple"
|
||||||
|
></ren-process-multiple>
|
||||||
|
</el-card>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// 引入工作流公共方法
|
||||||
|
import processModule from '@/mixins/process-module'
|
||||||
|
export default {
|
||||||
|
// 注入公共方法
|
||||||
|
mixins: [processModule],
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
// 表单属性是否可编辑
|
||||||
|
fieldDisabled: false,
|
||||||
|
dataForm: {
|
||||||
|
id: '',
|
||||||
|
user: '',
|
||||||
|
phone: '',
|
||||||
|
unit: '',
|
||||||
|
area: '',
|
||||||
|
system: '',
|
||||||
|
scene: '',
|
||||||
|
basis: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
// 将业务KEY赋值给表单
|
||||||
|
this.dataForm.id = this.$route.params.businessKey
|
||||||
|
console.log(this.$route.params)
|
||||||
|
this.init()
|
||||||
|
// 流程回调
|
||||||
|
var callbacks = {
|
||||||
|
startProcessSuccessCallback: this.closeCurrentTab,
|
||||||
|
startProcessErrorCallback: this.startProcessErrorCallback,
|
||||||
|
taskHandleSuccessCallback: this.closeCurrentTab,
|
||||||
|
taskHandleErrorCallback: this.taskHandleErrorCallback,
|
||||||
|
formSaveSuccessCallback: null,
|
||||||
|
formSaveErrorCallback: null
|
||||||
|
}
|
||||||
|
// 初始化综合组件
|
||||||
|
this.initProcessMultiple(callbacks)
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
dataRule () {
|
||||||
|
return {
|
||||||
|
user: [{ required: true, message: '请输入申请人', trigger: 'blur' }],
|
||||||
|
phone: [
|
||||||
|
{ required: true, message: '请输入申请人电话', trigger: 'blur' },
|
||||||
|
{
|
||||||
|
type: 'string',
|
||||||
|
pattern: /^1[3456789]\d{9}$/,
|
||||||
|
message: '请输入正确的电话号码',
|
||||||
|
trigger: 'blur'
|
||||||
|
}
|
||||||
|
],
|
||||||
|
unit: [{ required: true, message: '请输入申请单位', trigger: 'blur' }],
|
||||||
|
area: [{ required: true, message: '请输入所在地区', trigger: 'blur' }],
|
||||||
|
system: [
|
||||||
|
{ required: true, message: '请输入申请应用', trigger: 'blur' }
|
||||||
|
],
|
||||||
|
scene: [{ required: true, message: '请输入应用场景', trigger: 'blur' }],
|
||||||
|
basis: [{ required: true, message: '请输入申请依据', trigger: 'blur' }]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
init () {
|
||||||
|
this.visible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.dataForm.resetFields()
|
||||||
|
if (this.dataForm.id) {
|
||||||
|
// 如业务KEY已存在,不允许编辑
|
||||||
|
this.fieldDisabled = true
|
||||||
|
this.getInfo()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 获取信息
|
||||||
|
getInfo () {
|
||||||
|
this.$http
|
||||||
|
.get(`/demanData/${this.dataForm.id}`)
|
||||||
|
.then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
return this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
this.dataForm = {
|
||||||
|
...this.dataForm,
|
||||||
|
...res.data
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(() => {})
|
||||||
|
},
|
||||||
|
// 启动流程出错回调
|
||||||
|
startProcessErrorCallback (data) {
|
||||||
|
console.log(data)
|
||||||
|
},
|
||||||
|
// 任务处理出错回调
|
||||||
|
taskHandleErrorCallback (data) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -0,0 +1,114 @@
|
||||||
|
<template>
|
||||||
|
<div class="wrapper">
|
||||||
|
<div>
|
||||||
|
<el-form
|
||||||
|
:model="dataForm"
|
||||||
|
ref="dataForm"
|
||||||
|
@keyup.enter.native="dataFormSubmitHandle()"
|
||||||
|
:label-width="$i18n.locale === 'en-US' ? '120px' : 'auto'"
|
||||||
|
>
|
||||||
|
<el-form-item label="评论内容">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.comment"
|
||||||
|
:disabled="fieldDisabled"
|
||||||
|
placeholder="评论内容"
|
||||||
|
></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<!-- 流程综合组件 -->
|
||||||
|
<ren-process-multiple
|
||||||
|
v-if="processVisible"
|
||||||
|
updateInstanceIdUrl="/processForm/tabilityapplication/updateInstanceId"
|
||||||
|
saveFormUrl="/processForm/tabilityapplication"
|
||||||
|
dataFormName="dataForm"
|
||||||
|
ref="renProcessMultiple"
|
||||||
|
></ren-process-multiple>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import processModule from '@/mixins/process-module'
|
||||||
|
export default {
|
||||||
|
// 注入公共方法
|
||||||
|
mixins: [processModule],
|
||||||
|
components: {},
|
||||||
|
props: {
|
||||||
|
// fromList: {
|
||||||
|
// // type: Array,
|
||||||
|
// // default: () => {
|
||||||
|
// // return []
|
||||||
|
// // }
|
||||||
|
// }
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
// processVisible: true,
|
||||||
|
visible: false,
|
||||||
|
// 表单属性是否可编辑
|
||||||
|
fieldDisabled: false,
|
||||||
|
dataForm: [],
|
||||||
|
id: '',
|
||||||
|
shifoushizujian: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {},
|
||||||
|
computed: {},
|
||||||
|
methods: {
|
||||||
|
init () {
|
||||||
|
this.visible = true
|
||||||
|
// this.getInfo(this.$router.currentRoute.params.params.params.resourceDTO.id)
|
||||||
|
// this.dataForm = this.$router.currentRoute.params.params.params.resourceDTO
|
||||||
|
// this.id=this.$router.currentRoute
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.dataForm.resetFields()
|
||||||
|
// if (this.dataForm.id) {
|
||||||
|
// 如业务KEY已存在,不允许编辑
|
||||||
|
this.fieldDisabled = true
|
||||||
|
// this.id = this.$router.currentRoute.businessKey
|
||||||
|
this.getInfo(this.$router.currentRoute.params.businessKey)
|
||||||
|
console.log('id', this.$router.currentRoute.params.businessKey)
|
||||||
|
// }
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getInfo (id) {
|
||||||
|
this.$http.get('/resourceMountApply/' + id).then(({ data: res }) => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
return this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
this.dataForm = res.data.resourceDTO
|
||||||
|
if (this.dataForm.type != '应用资源') {
|
||||||
|
this.shifoushizujian = false
|
||||||
|
} else {
|
||||||
|
this.shifoushizujian = true
|
||||||
|
}
|
||||||
|
console.log('this.dataForm', this.dataForm)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
// this.dataForm = this.$router.currentRoute.params.id
|
||||||
|
this.init()
|
||||||
|
console.log('fromList', this.$router.currentRoute.params.businessKey)
|
||||||
|
// this.dataForm = this.$router.currentRoute.params.params.params.resourceDTO
|
||||||
|
var callbacks = {
|
||||||
|
startProcessSuccessCallback: this.closeCurrentTab,
|
||||||
|
startProcessErrorCallback: this.startProcessErrorCallback,
|
||||||
|
taskHandleSuccessCallback: this.closeCurrentTab,
|
||||||
|
taskHandleErrorCallback: this.taskHandleErrorCallback,
|
||||||
|
formSaveSuccessCallback: null,
|
||||||
|
formSaveErrorCallback: null
|
||||||
|
}
|
||||||
|
// 初始化综合组件
|
||||||
|
this.initProcessMultiple(callbacks)
|
||||||
|
},
|
||||||
|
mounted () {}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="scss">
|
||||||
|
.kuandukuandukuandu{
|
||||||
|
max-width:1500px;
|
||||||
|
}
|
||||||
|
.wrapper {
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-04-27 19:34:30
|
* @Date: 2022-04-27 19:34:30
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-04-28 19:26:07
|
* @LastEditTime: 2022-06-23 21:08:01
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
|
@ -46,7 +46,8 @@
|
||||||
(scope.row.params && scope.row.params.user) ||
|
(scope.row.params && scope.row.params.user) ||
|
||||||
(scope.row.params && scope.row.params.applyUserName) ||
|
(scope.row.params && scope.row.params.applyUserName) ||
|
||||||
(scope.row.params && scope.row.params.userName) ||
|
(scope.row.params && scope.row.params.userName) ||
|
||||||
(scope.row.params && scope.row.params.undercarriageUserName)
|
(scope.row.params && scope.row.params.undercarriageUserName)||
|
||||||
|
(scope.row.params && scope.row.params.name)
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -62,7 +63,8 @@
|
||||||
(scope.row.params &&
|
(scope.row.params &&
|
||||||
scope.row.params.resourceDTO &&
|
scope.row.params.resourceDTO &&
|
||||||
scope.row.params.resourceDTO.name) ||
|
scope.row.params.resourceDTO.name) ||
|
||||||
(scope.row.params && scope.row.params.undercarriageReason)
|
(scope.row.params && scope.row.params.undercarriageReason)||
|
||||||
|
(scope.row.params && scope.row.params.comment)
|
||||||
}}</span>
|
}}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
@ -126,41 +128,42 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import mixinViewModule from "@/mixins/view-module";
|
import mixinViewModule from '@/mixins/view-module'
|
||||||
import processModule from "@/mixins/process-module";
|
import processModule from '@/mixins/process-module'
|
||||||
export default {
|
export default {
|
||||||
mixins: [mixinViewModule, processModule],
|
mixins: [mixinViewModule, processModule],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
mixinViewModuleOptions: {
|
mixinViewModuleOptions: {
|
||||||
getDataListURL: "/act/task/myToDoTaskPage",
|
getDataListURL: '/act/task/myToDoTaskPage',
|
||||||
getDataListIsPage: true,
|
getDataListIsPage: true,
|
||||||
activatedIsNeed: true,
|
activatedIsNeed: true,
|
||||||
deleteIsBatch: true,
|
deleteIsBatch: true,
|
||||||
deleteIsBatchKey: "deploymentId",
|
deleteIsBatchKey: 'deploymentId'
|
||||||
},
|
},
|
||||||
dataForm: {
|
dataForm: {
|
||||||
taskName: "",
|
taskName: '',
|
||||||
taskId: "",
|
taskId: ''
|
||||||
},
|
},
|
||||||
processInstanceId: "",
|
processInstanceId: ''
|
||||||
};
|
}
|
||||||
},
|
},
|
||||||
components: {},
|
components: {},
|
||||||
methods: {
|
methods: {
|
||||||
// 处理
|
// 处理
|
||||||
taskHandle(row) {
|
taskHandle (row) {
|
||||||
|
console.log('row======================>', row, this.forwardHandleUrl)
|
||||||
if (!row.businessKey) {
|
if (!row.businessKey) {
|
||||||
return this.$message.error(this.$t("task.businessKeyError"));
|
return this.$message.error(this.$t('task.businessKeyError'))
|
||||||
}
|
}
|
||||||
this.getProcDefRouteSet(row, this.forwardHandleUrl);
|
this.getProcDefRouteSet(row, this.forwardHandleUrl)
|
||||||
},
|
},
|
||||||
taskDetail(row) {
|
taskDetail (row) {
|
||||||
if (!row.businessKey) {
|
if (!row.businessKey) {
|
||||||
return this.$message.error(this.$t("task.detailError"));
|
return this.$message.error(this.$t('task.detailError'))
|
||||||
}
|
}
|
||||||
this.getProcDefRouteSet(row, this.forwardTaskDetail);
|
this.getProcDefRouteSet(row, this.forwardTaskDetail)
|
||||||
},
|
}
|
||||||
},
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-03-29 16:45:25
|
* @Date: 2022-03-29 16:45:25
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-06-21 17:21:23
|
* @LastEditTime: 2022-06-23 14:37:03
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -32,11 +32,12 @@
|
||||||
// window.SITE_CONFIG['previewUrl'] = 'http://15.72.183.90:7008/';
|
// window.SITE_CONFIG['previewUrl'] = 'http://15.72.183.90:7008/';
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://15.72.183.90:7008/document/#/devModelFile/';
|
// window.SITE_CONFIG['frontUrl'] = 'http://15.72.183.90:7008/document/#/devModelFile/';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.72.183.90:8000/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.72.183.90:8000/renren-admin';
|
||||||
|
// 包头
|
||||||
|
// window.SITE_CONFIG['backUrl'] = 'http://10.110.205.1:8001';
|
||||||
|
// window.SITE_CONFIG['previewUrl'] = 'http://10.110.205.1:8002/';
|
||||||
|
// window.SITE_CONFIG['frontUrl'] = 'http://10.110.205.1:8002/document/#/devModelFile/';
|
||||||
|
// window.SITE_CONFIG['apiURL'] = 'http://10.110.205.1:8000/renren-admin';
|
||||||
|
|
||||||
window.SITE_CONFIG['backUrl'] = 'http://15.72.183.90:8001';
|
|
||||||
window.SITE_CONFIG['previewUrl'] = 'http://15.72.183.90:7008/';
|
|
||||||
window.SITE_CONFIG['frontUrl'] = 'http://15.72.183.90:7008/document/#/devModelFile/';
|
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://15.72.183.90:8000/renren-admin';
|
|
||||||
// 西海岸版本
|
// 西海岸版本
|
||||||
// window.SITE_CONFIG['backUrl'] = 'http://10.134.135.9:9797';
|
// window.SITE_CONFIG['backUrl'] = 'http://10.134.135.9:9797';
|
||||||
// window.SITE_CONFIG['previewUrl'] = 'http://10.134.135.9:9796/';
|
// window.SITE_CONFIG['previewUrl'] = 'http://10.134.135.9:9796/';
|
||||||
|
@ -48,10 +49,10 @@
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://15.2.21.238:9796/document/#/devModelFile/';
|
// window.SITE_CONFIG['frontUrl'] = 'http://15.2.21.238:9796/document/#/devModelFile/';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
||||||
// 穿透版本
|
// 穿透版本
|
||||||
// window.SITE_CONFIG['backUrl'] = 'http://124.222.94.39:9797';
|
window.SITE_CONFIG['backUrl'] = 'http://124.222.94.39:9797';
|
||||||
// window.SITE_CONFIG['previewUrl'] = 'http://124.222.94.39:9796/';
|
window.SITE_CONFIG['previewUrl'] = 'http://124.222.94.39:9796/';
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://124.222.94.39:9796/document/#/devModelFile/';
|
window.SITE_CONFIG['frontUrl'] = 'http://124.222.94.39:9796/document/#/devModelFile/';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<link href="./leaflet/libs/leaflet/1.3.1/leaflet.css" rel="stylesheet">
|
<link href="./leaflet/libs/leaflet/1.3.1/leaflet.css" rel="stylesheet">
|
||||||
|
|
|
@ -1,19 +1,21 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2020-07-07 16:03:23
|
* @Date: 2020-07-07 16:03:23
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-06-22 16:18:47
|
* @LastEditTime: 2022-06-23 17:55:06
|
||||||
* @Description: 数据资源参数配置
|
* @Description: 数据资源参数配置
|
||||||
*/
|
*/
|
||||||
// const newLocation = 'qingdao'
|
|
||||||
// const newLocation = 'baotou'
|
|
||||||
const newLocation = 'qingdao'
|
const newLocation = 'qingdao'
|
||||||
|
// const newLocation = 'baotou'
|
||||||
|
// const newLocation = 'xihaian'
|
||||||
|
|
||||||
// 数据资源数据
|
// 数据资源数据
|
||||||
const whoShow = {}
|
const whoShow = {}
|
||||||
const launchedDataNumObject = {}
|
const launchedDataNumObject = {}
|
||||||
// 导航数据
|
// 导航数据
|
||||||
const navListManagement = {}
|
const navListManagement = {}
|
||||||
|
// 区市站点数据
|
||||||
|
const mapTestNum = {}
|
||||||
// 底部数据
|
// 底部数据
|
||||||
const footerDataList = {}
|
const footerDataList = {}
|
||||||
// qingdao
|
// qingdao
|
||||||
|
@ -51,6 +53,45 @@ if (newLocation === 'qingdao') {
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
mapTestNum.lsNum = [
|
||||||
|
{
|
||||||
|
name: '基础设施',
|
||||||
|
key: 'lsjcss',
|
||||||
|
num: 20135,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '数据资源',
|
||||||
|
key: 'lsjcss',
|
||||||
|
num: 857,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '应用资源',
|
||||||
|
key: 'lsjcss',
|
||||||
|
num: 28,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
mapTestNum.xhaNum = [
|
||||||
|
{
|
||||||
|
name: '基础设施',
|
||||||
|
key: 'xhajcss',
|
||||||
|
num: 35282,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '数据资源',
|
||||||
|
key: 'xhajcss',
|
||||||
|
num: 11,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '应用资源',
|
||||||
|
key: 'xhajcss',
|
||||||
|
num: 23,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: '组件服务',
|
||||||
|
key: 'xhazjfw',
|
||||||
|
num: 8,
|
||||||
|
},
|
||||||
|
]
|
||||||
}
|
}
|
||||||
// baotou
|
// baotou
|
||||||
else if (newLocation === 'baotou') {
|
else if (newLocation === 'baotou') {
|
||||||
|
@ -80,21 +121,21 @@ else if (newLocation === 'baotou') {
|
||||||
]
|
]
|
||||||
footerDataList.footerList = {
|
footerDataList.footerList = {
|
||||||
company: {
|
company: {
|
||||||
left: '青岛西海岸新区大数据发展促进局建设',
|
left: '包头市工业和信息化局大数据中心建设',
|
||||||
right: 'v0.81',
|
right: '海信网络科技股份有限公司',
|
||||||
},
|
},
|
||||||
address: [
|
address: [
|
||||||
{
|
{
|
||||||
name: '鲁IC备00000000号',
|
name: '蒙ICP备05003330-1号',
|
||||||
value: '政府标识码3702000106',
|
value: '政府标识码1502000040',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '版权所有:青岛西海岸新区大数据发展促进局',
|
name: '版权所有:包头市工业和信息化局大数据中心',
|
||||||
value: '地址:青岛市西海岸新区长江中路369号',
|
value: '地址:内蒙古自治区包头市九原区开元大街1号',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '电话:0532-86986596',
|
name: '电话:0472-5618235',
|
||||||
value: '传真:0532-86986596',
|
value: '传真:0472-5618235',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
/*
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-06-14 09:43:30
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-06-23 20:04:39
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
*/
|
||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
|
||||||
export function demandComment(data) {
|
export function demandComment(data) {
|
||||||
|
@ -7,6 +14,13 @@ export function demandComment(data) {
|
||||||
data,
|
data,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
export function demandCommentApply(data) {
|
||||||
|
return request({
|
||||||
|
url: '/comment/center/apply',
|
||||||
|
method: 'post',
|
||||||
|
data,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
export function demandCommentPage(params) {
|
export function demandCommentPage(params) {
|
||||||
return request({
|
return request({
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-04-01 19:19:40
|
* @Date: 2022-04-01 19:19:40
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-06-22 15:27:36
|
* @LastEditTime: 2022-06-22 18:59:03
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
@ -62,7 +62,14 @@ export function pageWithAttrs(data) {
|
||||||
data,
|
data,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 获取hls视频流
|
||||||
|
export function getHls(params) {
|
||||||
|
return request({
|
||||||
|
url: '/resource/hls/getHls',
|
||||||
|
method: 'get',
|
||||||
|
params,
|
||||||
|
})
|
||||||
|
}
|
||||||
// 加入申购车
|
// 加入申购车
|
||||||
export function sgcInsert(data) {
|
export function sgcInsert(data) {
|
||||||
return request({
|
return request({
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
|
@ -90,6 +90,30 @@ instance.interceptors.response.use(
|
||||||
console.log('接口返回', response)
|
console.log('接口返回', response)
|
||||||
console.log('接口返回headers', response.headers)
|
console.log('接口返回headers', response.headers)
|
||||||
console.log('接口返回REDIRECT', response.headers.redirect)
|
console.log('接口返回REDIRECT', response.headers.redirect)
|
||||||
|
|
||||||
|
if (response.headers.redirect === '/#/login') {
|
||||||
|
var keys = document.cookie.match(/[^ =;]+(?=\=)/g)
|
||||||
|
if (keys) {
|
||||||
|
for (var i = keys.length; i--; ) {
|
||||||
|
document.cookie =
|
||||||
|
keys[i] + '=0;path=/;expires=' + new Date(0).toUTCString() //清除当前域名下的,例如:m.kevis.com
|
||||||
|
document.cookie =
|
||||||
|
keys[i] +
|
||||||
|
'=0;path=/;domain=' +
|
||||||
|
document.domain +
|
||||||
|
';expires=' +
|
||||||
|
new Date(0).toUTCString() //清除当前域名下的,例如 .m.kevis.com
|
||||||
|
document.cookie =
|
||||||
|
keys[i] +
|
||||||
|
'=0;path=/;domain=kevis.com;expires=' +
|
||||||
|
new Date(0).toUTCString() //清除一级域名下的或指定的,例如 .kevis.com
|
||||||
|
}
|
||||||
|
}
|
||||||
|
console.log('已清除')
|
||||||
|
setTimeout(() => {
|
||||||
|
location.reload()
|
||||||
|
}, 1000)
|
||||||
|
}
|
||||||
response['Access-Control-Expose-Headers'] = 'redirect'
|
response['Access-Control-Expose-Headers'] = 'redirect'
|
||||||
const { code, message } = response.data
|
const { code, message } = response.data
|
||||||
if (response.headers.token) {
|
if (response.headers.token) {
|
||||||
|
@ -129,7 +153,30 @@ instance.interceptors.response.use(
|
||||||
if (error.response && error.response.data) {
|
if (error.response && error.response.data) {
|
||||||
console.log('接口返回', response)
|
console.log('接口返回', response)
|
||||||
console.log('接口返回headers', response.headers)
|
console.log('接口返回headers', response.headers)
|
||||||
console.log('接口返回REDIRECT', response.headers.redirect)
|
console.log('接口返回REDIRECT1111', response.headers.redirect)
|
||||||
|
if (response.headers.redirect === '/#/login') {
|
||||||
|
var keys = document.cookie.match(/[^ =;]+(?=\=)/g)
|
||||||
|
if (keys) {
|
||||||
|
for (var i = keys.length; i--; ) {
|
||||||
|
document.cookie =
|
||||||
|
keys[i] + '=0;path=/;expires=' + new Date(0).toUTCString() //清除当前域名下的,例如:m.kevis.com
|
||||||
|
document.cookie =
|
||||||
|
keys[i] +
|
||||||
|
'=0;path=/;domain=' +
|
||||||
|
document.domain +
|
||||||
|
';expires=' +
|
||||||
|
new Date(0).toUTCString() //清除当前域名下的,例如 .m.kevis.com
|
||||||
|
document.cookie =
|
||||||
|
keys[i] +
|
||||||
|
'=0;path=/;domain=kevis.com;expires=' +
|
||||||
|
new Date(0).toUTCString() //清除一级域名下的或指定的,例如 .kevis.com
|
||||||
|
}
|
||||||
|
}
|
||||||
|
console.log('已清除')
|
||||||
|
setTimeout(() => {
|
||||||
|
location.reload()
|
||||||
|
}, 1000)
|
||||||
|
}
|
||||||
if (response.headers.redirect) {
|
if (response.headers.redirect) {
|
||||||
window.location.href = response.headers.redirect
|
window.location.href = response.headers.redirect
|
||||||
return Promise.reject(error)
|
return Promise.reject(error)
|
||||||
|
|
|
@ -89,7 +89,7 @@
|
||||||
dataList.value.dataList = res.data.data
|
dataList.value.dataList = res.data.data
|
||||||
res.data.data.map((item, index) => {
|
res.data.data.map((item, index) => {
|
||||||
if (dataList.value.dataList[index].type === '数据资源') {
|
if (dataList.value.dataList[index].type === '数据资源') {
|
||||||
dataList.value.dataList[index].amount = dataSourceNum.value || 10433
|
dataList.value.dataList[index].amount = dataSourceNum.value || 0
|
||||||
}
|
}
|
||||||
dataList.value.dataList[index].organization = '个'
|
dataList.value.dataList[index].organization = '个'
|
||||||
dataList.value.dataList[index].photo = photo.value[index]
|
dataList.value.dataList[index].photo = photo.value[index]
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
<!--
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-06-22 19:37:44
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-06-22 19:44:19
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<new-home-header></new-home-header>
|
<new-home-header></new-home-header>
|
||||||
|
@ -18,6 +25,6 @@
|
||||||
import SharingSituation from '@/views/abilityStatistics/components/SharingSituation.vue'
|
import SharingSituation from '@/views/abilityStatistics/components/SharingSituation.vue'
|
||||||
import AbilityRanking from '@/views/abilityStatistics/components/AbilityRanking.vue'
|
import AbilityRanking from '@/views/abilityStatistics/components/AbilityRanking.vue'
|
||||||
import CapabilityRequirements from '@/views/abilityStatistics/components/CapabilityRequirements.vue'
|
import CapabilityRequirements from '@/views/abilityStatistics/components/CapabilityRequirements.vue'
|
||||||
import HomeFooter from '@/views/abilityStatistics/components/Footer'
|
import HomeFooter from '@/views/newHome/components/Footer'
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped></style>
|
<style lang="less" scoped></style>
|
||||||
|
|
|
@ -41,9 +41,12 @@
|
||||||
:key="index"
|
:key="index"
|
||||||
@click="tabSwitch(item, index)"
|
@click="tabSwitch(item, index)"
|
||||||
:class="
|
:class="
|
||||||
tabName == item.attrType
|
(tabName == item.attrType
|
||||||
? 'assign-case-detail-page-content-left-border-click'
|
? 'assign-case-detail-page-content-left-border-click'
|
||||||
: ''
|
: '') ||
|
||||||
|
(selectNow == item.id
|
||||||
|
? 'assign-case-detail-page-content-left-border-click'
|
||||||
|
: '')
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ item.attrType }}
|
{{ item.attrType }}
|
||||||
|
@ -175,7 +178,7 @@
|
||||||
)
|
)
|
||||||
//tab点击事件
|
//tab点击事件
|
||||||
const tabSwitch = (item, index) => {
|
const tabSwitch = (item, index) => {
|
||||||
tabName.value = item.title
|
tabName.value = item.attrType
|
||||||
if (index != 0 && index != 3) {
|
if (index != 0 && index != 3) {
|
||||||
let top =
|
let top =
|
||||||
document.querySelector(
|
document.querySelector(
|
||||||
|
|
|
@ -168,6 +168,7 @@
|
||||||
tabClickShow.value = true
|
tabClickShow.value = true
|
||||||
} else {
|
} else {
|
||||||
let list = []
|
let list = []
|
||||||
|
listBg.value = ''
|
||||||
init(list)
|
init(list)
|
||||||
tabClickShow.value = false
|
tabClickShow.value = false
|
||||||
}
|
}
|
||||||
|
|
|
@ -186,15 +186,14 @@
|
||||||
</div>
|
</div>
|
||||||
<a-list
|
<a-list
|
||||||
class="comment-list"
|
class="comment-list"
|
||||||
:header="`全部${total} 评论`"
|
:header="`全部${total || 0} 评论`"
|
||||||
item-layout="horizontal"
|
item-layout="horizontal"
|
||||||
:data-source="evaluateData"
|
:data-source="evaluateData"
|
||||||
>
|
>
|
||||||
<template #renderItem="{ item }">
|
<template #renderItem="{ item }">
|
||||||
<a-list-item>
|
<a-list-item>
|
||||||
<a-comment :author="item.name">
|
<a-comment :author="item.name">
|
||||||
<template v-if="item.name == user.applyUserName" #actions>
|
<!-- <template v-if="item.name == user.applyUserName" #actions>
|
||||||
<!-- <span @click="evaluateUpdate">修改</span> -->
|
|
||||||
<a-popconfirm
|
<a-popconfirm
|
||||||
title="确定删除评论?"
|
title="确定删除评论?"
|
||||||
ok-text="确定"
|
ok-text="确定"
|
||||||
|
@ -204,7 +203,7 @@
|
||||||
>
|
>
|
||||||
<span>删除</span>
|
<span>删除</span>
|
||||||
</a-popconfirm>
|
</a-popconfirm>
|
||||||
</template>
|
</template> -->
|
||||||
<template #content>
|
<template #content>
|
||||||
<p v-if="!evaluateUpdateStatus">
|
<p v-if="!evaluateUpdateStatus">
|
||||||
{{ item.comment }}
|
{{ item.comment }}
|
||||||
|
@ -250,6 +249,7 @@
|
||||||
demandComment,
|
demandComment,
|
||||||
demandCommentPage,
|
demandCommentPage,
|
||||||
demandCommentDelete,
|
demandCommentDelete,
|
||||||
|
demandCommentApply,
|
||||||
} from '@/api/demandCenter'
|
} from '@/api/demandCenter'
|
||||||
import { getUser, getUserInfo } from '@/api/home'
|
import { getUser, getUserInfo } from '@/api/home'
|
||||||
import { getDemandForm } from '@/api/personalCenter'
|
import { getDemandForm } from '@/api/personalCenter'
|
||||||
|
@ -293,10 +293,17 @@
|
||||||
createDeptName: user.applyUserDeptName,
|
createDeptName: user.applyUserDeptName,
|
||||||
comment: myComment.value,
|
comment: myComment.value,
|
||||||
name: user.applyUserName,
|
name: user.applyUserName,
|
||||||
}).then(() => {
|
}).then((res) => {
|
||||||
|
console.log(res)
|
||||||
|
if (res.data.code == '0') {
|
||||||
|
demandCommentApply({ id: res.data.data.id }).then((res1) => {
|
||||||
|
if (res1.data.code == '0') {
|
||||||
message.success('提交评价成功!')
|
message.success('提交评价成功!')
|
||||||
myComment.value = ''
|
myComment.value = ''
|
||||||
evaluateList()
|
evaluateList()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// const evaluateUpdateStatus = ref(false)
|
// const evaluateUpdateStatus = ref(false)
|
||||||
|
|
|
@ -128,6 +128,7 @@
|
||||||
width: 7.2rem;
|
width: 7.2rem;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
margin-right: 0.8rem;
|
margin-right: 0.8rem;
|
||||||
|
margin-top: -0.3rem;
|
||||||
.top {
|
.top {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
@ -135,10 +136,11 @@
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
}
|
}
|
||||||
.name {
|
.name {
|
||||||
// max-width: 330px;
|
display: inline-block;
|
||||||
|
width: 10.2rem;
|
||||||
// overflow: hidden;
|
// overflow: hidden;
|
||||||
// text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
// white-space: nowrap;
|
||||||
font-size: 40px;
|
font-size: 40px;
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,24 +8,24 @@
|
||||||
<div class="content-left">
|
<div class="content-left">
|
||||||
<div class="content-left-content">
|
<div class="content-left-content">
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="(item, index) in dataFromLeft" :key="index">
|
<li v-for="(item, index) in dataFromLeft.content" :key="index">
|
||||||
<img :src="iconImg" />
|
<img :src="iconImg" />
|
||||||
<span>{{ item.type }}</span>
|
<span>{{ item.type }}</span>
|
||||||
<p>{{ item.value }}</p>
|
<p>{{ item.values }}</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="(item, index) in dataFromCenter" :key="index">
|
<li v-for="(item, index) in dataFromCenter.content" :key="index">
|
||||||
<img :src="iconImg" />
|
<img :src="iconImg" />
|
||||||
<span>{{ item.type }}</span>
|
<span>{{ item.type }}</span>
|
||||||
<p>{{ item.value }}</p>
|
<p>{{ item.values }}</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
<ul>
|
||||||
<li v-for="(item, index) in dataFromRight" :key="index">
|
<li v-for="(item, index) in dataFromRight.content" :key="index">
|
||||||
<img :src="iconImg" />
|
<img :src="iconImg" />
|
||||||
<span>{{ item.type }}</span>
|
<span>{{ item.type }}</span>
|
||||||
<p>{{ item.value }}</p>
|
<p>{{ item.values }}</p>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -38,48 +38,54 @@
|
||||||
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
const iconImg = require('@/assets/detailsAll/layer-service/layer-icon.png')
|
const iconImg = require('@/assets/detailsAll/layer-service/layer-icon.png')
|
||||||
const dataFromLeft = ref([
|
const dataFromLeft = ref({
|
||||||
|
content: [
|
||||||
{
|
{
|
||||||
type: '服务类型',
|
type: '服务类型',
|
||||||
value: '服务类型名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '覆盖区域',
|
type: '覆盖区域',
|
||||||
value: '覆盖区域名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '切片策略',
|
type: '切片策略',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
])
|
],
|
||||||
const dataFromCenter = ref([
|
})
|
||||||
|
const dataFromCenter = ref({
|
||||||
|
content: [
|
||||||
{
|
{
|
||||||
type: '坐标系',
|
type: '坐标系',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '切片尺寸详情',
|
type: '切片尺寸详情',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '最小级别名称',
|
type: '最小级别名称',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
])
|
],
|
||||||
const dataFromRight = ref([
|
})
|
||||||
|
const dataFromRight = ref({
|
||||||
|
content: [
|
||||||
{
|
{
|
||||||
type: '数据范围',
|
type: '数据范围',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '图层名称',
|
type: '图层名称',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '最大级别',
|
type: '最大级别',
|
||||||
value: '名称',
|
values: '',
|
||||||
},
|
},
|
||||||
])
|
],
|
||||||
|
})
|
||||||
//数据初始化
|
//数据初始化
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
|
@ -87,25 +93,35 @@
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let obj = props.dataList.infoList.filter(
|
let obj = props.dataList.infoList.filter(
|
||||||
(item) => item.attrType === '图层信息'
|
(item) => item.attrType === '技术文档'
|
||||||
)[0]
|
)[0]
|
||||||
if (!obj) {
|
if (!obj) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
} else {
|
||||||
// dataFrom.value.content[0].link.value = props.dataList.apiUrl
|
// dataFrom.value.content[0].link.value = props.dataList.apiUrl
|
||||||
// dataFrom.value.content[0].facilitator.value = props.dataList.deptContacts
|
// dataFrom.value.content[0].facilitator.value = props.dataList.deptContacts
|
||||||
// console.log('dataList', props.dataList)
|
console.log('dataList', props.dataList)
|
||||||
// props.dataList.infoList.map((item) => {
|
props.dataList.infoList.map((item) => {
|
||||||
// if (item.attrType === '组件地址') {
|
if (item.attrType === '服务类型') {
|
||||||
// dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
dataFromLeft.value.content[0].values = item.attrValue || '123'
|
||||||
// } else if (item.attrType === '服务商') {
|
} else if (item.attrType === '覆盖区域') {
|
||||||
// dataFrom.value.content[0].facilitator2.value = item.attrValue || '--'
|
dataFromLeft.value.content[1].values = item.attrValue || '--'
|
||||||
// } else if (item.attrType === '服务商联系人') {
|
} else if (item.attrType === '切片策略') {
|
||||||
// dataFrom.value.content[0].people2.value = item.attrValue || '--'
|
dataFromLeft.value.content[2].values = item.attrValue || '--'
|
||||||
// } else if (item.attrType === '服务商联系电话') {
|
} else if (item.attrType === '坐标系') {
|
||||||
// dataFrom.value.content[0].phone2.value = item.attrValue || '--'
|
dataFromCenter.value.content[0].values = item.attrValue || '--'
|
||||||
// }
|
} else if (item.attrType === '切片尺寸') {
|
||||||
// })
|
dataFromCenter.value.content[1].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '最小级别') {
|
||||||
|
dataFromCenter.value.content[2].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '数据范围') {
|
||||||
|
dataFromRight.value.content[0].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '图层类型') {
|
||||||
|
dataFromRight.value.content[1].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '最大级别') {
|
||||||
|
dataFromRight.value.content[2].values = item.attrValue || '--'
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
watch(
|
watch(
|
||||||
|
@ -118,19 +134,28 @@
|
||||||
} else {
|
} else {
|
||||||
// dataFrom.value.content[0].link.value = val.apiUrl
|
// dataFrom.value.content[0].link.value = val.apiUrl
|
||||||
// dataFrom.value.content[0].facilitator.value = val.deptContacts
|
// dataFrom.value.content[0].facilitator.value = val.deptContacts
|
||||||
// console.log('dataList', val)
|
console.log('dataList', val)
|
||||||
// val.infoList.map((item) => {
|
val.infoList.map((item) => {
|
||||||
// if (item.attrType === '组件地址') {
|
if (item.attrType === '服务类型') {
|
||||||
// dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
dataFromLeft.value.content[0].values = item.attrValue || '123'
|
||||||
// } else if (item.attrType === '服务商') {
|
} else if (item.attrType === '覆盖区域') {
|
||||||
// dataFrom.value.content[0].facilitator2.value =
|
dataFromLeft.value.content[1].values = item.attrValue || '--'
|
||||||
// item.attrValue || '--'
|
} else if (item.attrType === '切片策略') {
|
||||||
// } else if (item.attrType === '服务商联系人') {
|
dataFromLeft.value.content[2].values = item.attrValue || '--'
|
||||||
// dataFrom.value.content[0].people2.value = item.attrValue || '--'
|
} else if (item.attrType === '坐标系') {
|
||||||
// } else if (item.attrType === '服务商联系电话') {
|
dataFromCenter.value.content[0].values = item.attrValue || '--'
|
||||||
// dataFrom.value.content[0].phone2.value = item.attrValue || '--'
|
} else if (item.attrType === '切片尺寸') {
|
||||||
// }
|
dataFromCenter.value.content[1].values = item.attrValue || '--'
|
||||||
// })
|
} else if (item.attrType === '最小级别') {
|
||||||
|
dataFromCenter.value.content[2].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '数据范围') {
|
||||||
|
dataFromRight.value.content[0].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '图层类型') {
|
||||||
|
dataFromRight.value.content[1].values = item.attrValue || '--'
|
||||||
|
} else if (item.attrType === '最大级别') {
|
||||||
|
dataFromRight.value.content[2].values = item.attrValue || '--'
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -67,11 +67,11 @@
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
list.value = []
|
list.value = []
|
||||||
let arr = [
|
let arr = [
|
||||||
'组件视频介绍',
|
'图层缩略图',
|
||||||
'图层信息',
|
'坐标系',
|
||||||
'应用场景',
|
'应用场景',
|
||||||
'应用案例',
|
'应用案例',
|
||||||
'图层预览',
|
'是否可预览',
|
||||||
'使用方式',
|
'使用方式',
|
||||||
'常见问题',
|
'常见问题',
|
||||||
]
|
]
|
||||||
|
@ -83,14 +83,18 @@
|
||||||
props.dataList.infoList.map((item) => {
|
props.dataList.infoList.map((item) => {
|
||||||
if (
|
if (
|
||||||
item.attrType === '常见问题' ||
|
item.attrType === '常见问题' ||
|
||||||
item.attrType === '图层信息' ||
|
|
||||||
item.attrType === '图层预览' ||
|
|
||||||
item.attrType === '应用场景' ||
|
item.attrType === '应用场景' ||
|
||||||
item.attrType === '应用案例'
|
item.attrType === '应用案例'
|
||||||
) {
|
) {
|
||||||
list.value.push(item.attrType)
|
list.value.push(item.attrType)
|
||||||
} else if (item.attrType === '组件视频介绍') {
|
} else if (item.attrType === '图层缩略图') {
|
||||||
list.value.push('图层展示')
|
list.value.push('图层展示')
|
||||||
|
} else if (item.attrType === '坐标系') {
|
||||||
|
list.value.push('图层信息')
|
||||||
|
} else if (item.attrType === '是否可预览') {
|
||||||
|
if (item.attrValue === '是') {
|
||||||
|
list.value.push('图层预览')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
list.value.push('使用方式')
|
list.value.push('使用方式')
|
||||||
|
@ -117,11 +121,11 @@
|
||||||
if (val) {
|
if (val) {
|
||||||
list.value = []
|
list.value = []
|
||||||
let arr = [
|
let arr = [
|
||||||
'组件视频介绍',
|
'图层缩略图',
|
||||||
'图层信息',
|
'坐标系',
|
||||||
'应用场景',
|
'应用场景',
|
||||||
'应用案例',
|
'应用案例',
|
||||||
'图层预览',
|
'是否可预览',
|
||||||
'使用方式',
|
'使用方式',
|
||||||
'常见问题',
|
'常见问题',
|
||||||
]
|
]
|
||||||
|
@ -134,14 +138,18 @@
|
||||||
val.infoList.map((item) => {
|
val.infoList.map((item) => {
|
||||||
if (
|
if (
|
||||||
item.attrType === '常见问题' ||
|
item.attrType === '常见问题' ||
|
||||||
item.attrType === '图层信息' ||
|
|
||||||
item.attrType === '图层预览' ||
|
|
||||||
item.attrType === '应用场景' ||
|
item.attrType === '应用场景' ||
|
||||||
item.attrType === '应用案例'
|
item.attrType === '应用案例'
|
||||||
) {
|
) {
|
||||||
list.value.push(item.attrType)
|
list.value.push(item.attrType)
|
||||||
} else if (item.attrType === '组件视频介绍') {
|
} else if (item.attrType === '图层缩略图') {
|
||||||
list.value.push('组件展示')
|
list.value.push('图层展示')
|
||||||
|
} else if (item.attrType === '坐标系') {
|
||||||
|
list.value.push('图层信息')
|
||||||
|
} else if (item.attrType === '是否可预览') {
|
||||||
|
if (item.attrValue === '是') {
|
||||||
|
list.value.push('图层预览')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
list.value.push('使用方式')
|
list.value.push('使用方式')
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<div class="application-presentation" v-if="flag">
|
<div class="application-presentation" v-if="flag">
|
||||||
<detals-title title="图层展示" type="IMAGE"></detals-title>
|
<detals-title title="图层展示" type="IMAGE"></detals-title>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<img :src="img" />
|
<img :src="onTrial" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -20,16 +20,16 @@
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
const img = ref()
|
const onTrial = ref('')
|
||||||
console.log('111111111111111111111,', props.dataList)
|
console.log('111111111111111111111,', props.dataList)
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let imgindex = props.dataList.infoList.filter(
|
let imgindex = props.dataList.infoList.filter(
|
||||||
(item) => item.attrType === '组件图片'
|
(item) => item.attrType === '图层缩略图'
|
||||||
)[0]
|
)[0]
|
||||||
if (!imgindex) {
|
if (!imgindex) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
} else {
|
||||||
img.value = imgindex.attrValue
|
onTrial.value = imgindex.attrValue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
watch(
|
watch(
|
||||||
|
@ -37,12 +37,12 @@
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val) {
|
if (val) {
|
||||||
let imgindex = props.dataList.infoList.filter(
|
let imgindex = props.dataList.infoList.filter(
|
||||||
(item) => item.attrType === '组件图片'
|
(item) => item.attrType === '图层缩略图'
|
||||||
)[0]
|
)[0]
|
||||||
if (!imgindex) {
|
if (!imgindex) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
} else {
|
||||||
img.value = imgindex.attrValue
|
onTrial.value = imgindex.attrValue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -72,7 +72,7 @@
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
img {
|
img {
|
||||||
width: 50%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
border-radius: 0.1rem;
|
border-radius: 0.1rem;
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,14 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="application-presentation" v-if="flag">
|
<div class="application-presentation" v-if="flag">
|
||||||
<detals-title title="图层预览" type="PREVIEW"></detals-title>
|
<detals-title title="图层预览" type="PREVIEW"></detals-title>
|
||||||
<div class="main" :style="`${img}background-position:center;`"></div>
|
<div class="main" :style="`${img}background-position:center;`">
|
||||||
|
<iframe
|
||||||
|
:src="img"
|
||||||
|
width="100%"
|
||||||
|
height="100%"
|
||||||
|
border-radius="0.1rem"
|
||||||
|
></iframe>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
|
@ -19,16 +26,16 @@
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
const img = ref({})
|
const img = ref('')
|
||||||
console.log('111111111111111111111,', props.dataList)
|
console.log('111111111111111111111,', props.dataList)
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let imgindex = props.dataList.infoList.filter(
|
let imgindex = props.dataList.infoList.filter(
|
||||||
(item) => item.attrType === '图层预览'
|
(item) => item.attrType === '是否可预览' && item.attrValue === '是'
|
||||||
)[0]
|
)[0]
|
||||||
if (!imgindex) {
|
if (!imgindex) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
} else {
|
||||||
img.value = 'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
img.value = imgindex.attrValue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
watch(
|
watch(
|
||||||
|
@ -36,13 +43,12 @@
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val) {
|
if (val) {
|
||||||
let imgindex = props.dataList.infoList.filter(
|
let imgindex = props.dataList.infoList.filter(
|
||||||
(item) => item.attrType === '图层预览'
|
(item) => item.attrType === '是否可预览' && item.attrValue === '是'
|
||||||
)[0]
|
)[0]
|
||||||
if (!imgindex) {
|
if (!imgindex) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
} else {
|
||||||
img.value =
|
img.value = imgindex.attrValue
|
||||||
'background:' + 'url(' + imgindex.attrValue + ') no-repeat;'
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -54,10 +60,6 @@
|
||||||
.main {
|
.main {
|
||||||
height: 5rem;
|
height: 5rem;
|
||||||
border-radius: 0.1rem;
|
border-radius: 0.1rem;
|
||||||
// background-image: url('~@/assets/detailsAll/sf_video_bg.png');
|
|
||||||
background-size: 100% 100%;
|
|
||||||
background-position: center;
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
margin-top: 0.4rem;
|
margin-top: 0.4rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
|
|
@ -30,11 +30,11 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="bottom" v-if="props.dataList.id">
|
<div class="bottom" v-if="props.dataList.id">
|
||||||
<a-button type="primary" @click="toView()">
|
<a-button type="primary" @click="toView()">
|
||||||
<!--<template #icon><form-outlined /></template>-->
|
<template #icon><form-outlined /></template>
|
||||||
申请使用
|
申请使用
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button type="primary" @click="addShoppingCart()">
|
<a-button type="primary" @click="addShoppingCart()">
|
||||||
<!--<template #icon><shopping-cart-outlined /></template>-->
|
<template #icon><shopping-cart-outlined /></template>
|
||||||
加入购物车
|
加入购物车
|
||||||
</a-button>
|
</a-button>
|
||||||
<a-button type="primary" @click="goTOCollection()">收藏</a-button>
|
<a-button type="primary" @click="goTOCollection()">收藏</a-button>
|
||||||
|
@ -44,7 +44,7 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ShoppingCartOutlined } from '@ant-design/icons-vue'
|
import { FormOutlined, ShoppingCartOutlined } from '@ant-design/icons-vue'
|
||||||
import { defineProps, ref, watch } from 'vue'
|
import { defineProps, ref, watch } from 'vue'
|
||||||
import { scInsert } from '@/api/personalCenter'
|
import { scInsert } from '@/api/personalCenter'
|
||||||
import { sgcInsert } from '@/api/home'
|
import { sgcInsert } from '@/api/home'
|
||||||
|
@ -150,7 +150,7 @@
|
||||||
.lable-father {
|
.lable-father {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
min-width: 2.5rem;
|
min-width: 2.5rem;
|
||||||
right: -2.5rem;
|
right: -2.8rem;
|
||||||
top: 0;
|
top: 0;
|
||||||
}
|
}
|
||||||
.label {
|
.label {
|
||||||
|
@ -182,37 +182,21 @@
|
||||||
.bottom {
|
.bottom {
|
||||||
margin-top: 0.4rem;
|
margin-top: 0.4rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|
||||||
.ant-btn {
|
.ant-btn {
|
||||||
height: 0.5rem;
|
height: 0.5rem;
|
||||||
margin-right: 0.2rem;
|
margin-right: 0.2rem;
|
||||||
background: #ffffff;
|
background: #ff8b55;
|
||||||
border-radius: 0.06rem;
|
border-radius: 0.06rem;
|
||||||
font-size: 0.2rem;
|
font-size: 0.2rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
.ant-btn-primary {
|
|
||||||
color: #1890ff;
|
|
||||||
}
|
|
||||||
.ant-btn:nth-of-type(1) {
|
.ant-btn:nth-of-type(1) {
|
||||||
width: 1.8rem;
|
width: 1.8rem;
|
||||||
background-image: url('~@/assets/detailsAll/layer-service/layer-apply-using.png');
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: 24px center;
|
|
||||||
background-color: #ff8b55;
|
|
||||||
color: #fff;
|
|
||||||
padding-left: 26px;
|
|
||||||
}
|
}
|
||||||
.ant-btn:nth-of-type(2) {
|
.ant-btn:nth-of-type(2) {
|
||||||
width: 2.2rem;
|
width: 2.2rem;
|
||||||
background-image: url('~@/assets/detailsAll/layer-service/layer-shopping-car.png');
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: 24px center;
|
|
||||||
background-color: #ff8b55;
|
|
||||||
color: #fff;
|
|
||||||
padding-left: 26px;
|
|
||||||
}
|
}
|
||||||
.ant-btn:nth-of-type(3) {
|
.ant-btn:nth-of-type(3) {
|
||||||
width: 1.45rem;
|
width: 1.45rem;
|
||||||
|
|
|
@ -63,8 +63,9 @@
|
||||||
name: '接口地址:',
|
name: '接口地址:',
|
||||||
},
|
},
|
||||||
linkValue: '',
|
linkValue: '',
|
||||||
|
csslnkValue: '',
|
||||||
contact: '归属部门',
|
contact: '归属部门',
|
||||||
facilitator: { name: '归属部门:', value: '讯飞科大' },
|
facilitator: { name: '归属部门:', values: '讯飞科大' },
|
||||||
people: { name: '部门联系人:', value: '李四' },
|
people: { name: '部门联系人:', value: '李四' },
|
||||||
phone: {
|
phone: {
|
||||||
name: '联系人电话:',
|
name: '联系人电话:',
|
||||||
|
@ -87,17 +88,17 @@
|
||||||
} else {
|
} else {
|
||||||
// eslint-disable-next-line vue/no-setup-props-destructure
|
// eslint-disable-next-line vue/no-setup-props-destructure
|
||||||
dataFrom.value.content[0].link.value = props.dataList.apiUrl
|
dataFrom.value.content[0].link.value = props.dataList.apiUrl
|
||||||
dataFrom.value.content[0].facilitator.value = props.dataList.deptContacts
|
dataFrom.value.content[0].facilitator.values = props.dataList.deptContacts
|
||||||
console.log('dataList', props.dataList)
|
console.log('dataList', props.dataList)
|
||||||
props.dataList.infoList.map((item) => {
|
props.dataList.infoList.map((item) => {
|
||||||
if (item.attrType === '组件地址') {
|
if (item.attrType === '组件地址') {
|
||||||
dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商') {
|
} else if (item.attrType === '服务商') {
|
||||||
dataFrom.value.content[0].facilitator2.value = item.attrValue || '--'
|
dataFrom.value.content[0].facilitator.value = item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商联系人') {
|
} else if (item.attrType === '服务商联系人') {
|
||||||
dataFrom.value.content[0].people2.value = item.attrValue || '--'
|
dataFrom.value.content[0].people.value = item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商联系电话') {
|
} else if (item.attrType === '服务商联系电话') {
|
||||||
dataFrom.value.content[0].phone2.value = item.attrValue || '--'
|
dataFrom.value.content[0].phone.value = item.attrValue || '--'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -117,12 +118,12 @@
|
||||||
if (item.attrType === '组件地址') {
|
if (item.attrType === '组件地址') {
|
||||||
dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
dataFrom.value.content[0].linkValue = item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商') {
|
} else if (item.attrType === '服务商') {
|
||||||
dataFrom.value.content[0].facilitator2.value =
|
dataFrom.value.content[0].facilitator.value =
|
||||||
item.attrValue || '--'
|
item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商联系人') {
|
} else if (item.attrType === '服务商联系人') {
|
||||||
dataFrom.value.content[0].people2.value = item.attrValue || '--'
|
dataFrom.value.content[0].people.value = item.attrValue || '--'
|
||||||
} else if (item.attrType === '服务商联系电话') {
|
} else if (item.attrType === '服务商联系电话') {
|
||||||
dataFrom.value.content[0].phone2.value = item.attrValue || '--'
|
dataFrom.value.content[0].phone.value = item.attrValue || '--'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,125 @@
|
||||||
|
<template>
|
||||||
|
<div class="ability-to-apply-for">
|
||||||
|
<div class="title">申请能力</div>
|
||||||
|
<div
|
||||||
|
v-for="(item, index) in dataForm"
|
||||||
|
:key="index"
|
||||||
|
class="ability-to-apply-for-content"
|
||||||
|
>
|
||||||
|
<div class="dep-name">
|
||||||
|
<span></span>
|
||||||
|
{{ item.deptName }}
|
||||||
|
</div>
|
||||||
|
<div class="name">
|
||||||
|
<span>{{ item.name }}</span>
|
||||||
|
<span>{{ item.type }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="description">{{ item.description }}</div>
|
||||||
|
<div class="remove" @click="removeFunction(item)"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
import { ref, defineProps } from 'vue'
|
||||||
|
import mybus from '@/myplugins/mybus'
|
||||||
|
const props = defineProps({
|
||||||
|
dataList: { type: Array, default: null },
|
||||||
|
})
|
||||||
|
let dataForm = ref([])
|
||||||
|
dataForm.value = props.dataList
|
||||||
|
const router = useRouter()
|
||||||
|
const arr =
|
||||||
|
router.currentRoute.value.query.name instanceof Array
|
||||||
|
? router.currentRoute.value.query.name
|
||||||
|
: [router.currentRoute.value.query.name]
|
||||||
|
const dataResourceId = router.currentRoute.value.query.resourceId
|
||||||
|
|
||||||
|
const depList = ref({
|
||||||
|
Name: [],
|
||||||
|
depID: [],
|
||||||
|
})
|
||||||
|
//移除方法
|
||||||
|
const removeFunction = (data) => {
|
||||||
|
props.dataList.map((item, index) => {
|
||||||
|
if (item.name == data.name) {
|
||||||
|
arr.splice(arr.indexOf(data.name), 1)
|
||||||
|
dataResourceId.splice(dataResourceId.indexOf(data.id), 1)
|
||||||
|
depList.value.depID = dataResourceId
|
||||||
|
depList.value.Name = arr
|
||||||
|
dataForm.value.splice(index, 1)
|
||||||
|
mybus.emit('reomveOldData', depList.value)
|
||||||
|
console.log('depList.value', depList.value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.ability-to-apply-for {
|
||||||
|
.title {
|
||||||
|
font-size: 0.16rem;
|
||||||
|
color: #212121;
|
||||||
|
border-bottom: 0.01rem #dddee1 solid;
|
||||||
|
padding-bottom: 0.1rem;
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
}
|
||||||
|
.ability-to-apply-for-content {
|
||||||
|
margin-bottom: 0.3rem;
|
||||||
|
border-bottom: 0.01rem #dddee1 solid;
|
||||||
|
padding-bottom: 0.3rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
position: relative;
|
||||||
|
.dep-name {
|
||||||
|
color: #0558e1;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
line-height: 0.18rem;
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 0.05rem;
|
||||||
|
height: 0.05rem;
|
||||||
|
background: #0558e1;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
margin-right: 0.05rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.name {
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
span:first-child {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: 0.08rem;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
span:last-child {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0 0.05rem;
|
||||||
|
background: #00b8e6;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.description {
|
||||||
|
color: rgba(0, 0, 0, 0.45);
|
||||||
|
}
|
||||||
|
.remove {
|
||||||
|
width: 0.32rem;
|
||||||
|
height: 0.32rem;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: 50%;
|
||||||
|
margin-top: -0.16rem;
|
||||||
|
background: url('~@/assets/home/remove.png') no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.remove:hover {
|
||||||
|
background: url('~@/assets/home/remove-hover.png') no-repeat;
|
||||||
|
background-size: cover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -544,7 +544,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
-->
|
|
||||||
<div v-if="resourceList.data?.length <= 0" style="margin-top: 2rem">
|
<div v-if="resourceList.data?.length <= 0" style="margin-top: 2rem">
|
||||||
<a-empty v-if="!(Cardsname == '数据资源')" />
|
<a-empty v-if="!(Cardsname == '数据资源')" />
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -6,9 +6,11 @@
|
||||||
<aside-menu></aside-menu>
|
<aside-menu></aside-menu>
|
||||||
</aside> -->
|
</aside> -->
|
||||||
<article>
|
<article>
|
||||||
|
<div class="from-card" v-if="applySuccess">
|
||||||
|
<AbilityToApplyFor :dataList="dataList"></AbilityToApplyFor>
|
||||||
|
</div>
|
||||||
<div class="form-container">
|
<div class="form-container">
|
||||||
<div v-if="applySuccess">
|
<div v-if="applySuccess">
|
||||||
<div class="title">基础信息</div>
|
|
||||||
<a-form
|
<a-form
|
||||||
ref="formRef"
|
ref="formRef"
|
||||||
:model="formName"
|
:model="formName"
|
||||||
|
@ -20,7 +22,7 @@
|
||||||
>
|
>
|
||||||
<div class="base-info">
|
<div class="base-info">
|
||||||
<a-form-item
|
<a-form-item
|
||||||
label="申请人"
|
label="申请人信息"
|
||||||
name="user"
|
name="user"
|
||||||
:rules="[{ required: true, message: '请输入申请人' }]"
|
:rules="[{ required: true, message: '请输入申请人' }]"
|
||||||
>
|
>
|
||||||
|
@ -33,7 +35,7 @@
|
||||||
|
|
||||||
<a-form-item
|
<a-form-item
|
||||||
style="margin: 0 22px"
|
style="margin: 0 22px"
|
||||||
label="申请人电话"
|
label="电话"
|
||||||
name="phone"
|
name="phone"
|
||||||
:rules="[
|
:rules="[
|
||||||
{
|
{
|
||||||
|
@ -50,31 +52,16 @@
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
|
|
||||||
<a-form-item
|
<a-form-item
|
||||||
label="申请单位"
|
label="单位"
|
||||||
name="unit"
|
name="unit"
|
||||||
:rules="[{ required: true, message: '请输入申请单位' }]"
|
:rules="[{ required: true, message: '请输入单位' }]"
|
||||||
>
|
>
|
||||||
<a-input
|
<a-input
|
||||||
placeholder="请输入申请单位"
|
placeholder="请输入单位"
|
||||||
v-model:value="formName.unit"
|
v-model:value="formName.unit"
|
||||||
/>
|
/>
|
||||||
</a-form-item>
|
</a-form-item>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- <a-form-item
|
|
||||||
label="所在地区"
|
|
||||||
name="area"
|
|
||||||
:rules="[{ required: true, message: '请输入所在地区' }]"
|
|
||||||
>
|
|
||||||
<a-input
|
|
||||||
style="width: 230px"
|
|
||||||
placeholder="请输入所在地区"
|
|
||||||
v-model:value="formName.area"
|
|
||||||
/>
|
|
||||||
</a-form-item> -->
|
|
||||||
|
|
||||||
<div class="title">更多申请信息</div>
|
|
||||||
|
|
||||||
<a-form-item
|
<a-form-item
|
||||||
style="margin-bottom: 10px"
|
style="margin-bottom: 10px"
|
||||||
label="申请应用"
|
label="申请应用"
|
||||||
|
@ -146,7 +133,7 @@
|
||||||
<a-upload
|
<a-upload
|
||||||
v-model:file-list="fileList"
|
v-model:file-list="fileList"
|
||||||
name="file"
|
name="file"
|
||||||
:action="`${window.SITE_CONFIG.apiURL}/upload`"
|
:action="`${baseURL}/upload`"
|
||||||
:headers="headers"
|
:headers="headers"
|
||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
:before-upload="beforeUpload"
|
:before-upload="beforeUpload"
|
||||||
|
@ -232,8 +219,9 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import AbilityToApplyFor from './AbilityToApplyFor.vue'
|
||||||
import HomeHeader from '@/views/home/components/header'
|
import HomeHeader from '@/views/home/components/header'
|
||||||
import { reactive, ref } from 'vue'
|
import { reactive, ref, watch, onBeforeUnmount } from 'vue'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
import qs from 'qs'
|
import qs from 'qs'
|
||||||
|
@ -248,6 +236,7 @@
|
||||||
getUser,
|
getUser,
|
||||||
getUserInfo,
|
getUserInfo,
|
||||||
relaunch,
|
relaunch,
|
||||||
|
selectOne,
|
||||||
} from '@/api/home'
|
} from '@/api/home'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
import { sgcDel, getApplyForm } from '@/api/personalCenter'
|
import { sgcDel, getApplyForm } from '@/api/personalCenter'
|
||||||
|
@ -259,12 +248,15 @@
|
||||||
props: {},
|
props: {},
|
||||||
components: {
|
components: {
|
||||||
HomeHeader,
|
HomeHeader,
|
||||||
|
AbilityToApplyFor,
|
||||||
// AsideMenu,
|
// AsideMenu,
|
||||||
// UploadOutlined,
|
// UploadOutlined,
|
||||||
},
|
},
|
||||||
setup() {
|
setup() {
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const disabled = ref(false)
|
const disabled = ref(false)
|
||||||
|
const baseURL = window.SITE_CONFIG.apiURL
|
||||||
|
let record = ref('1')
|
||||||
const formName = reactive({
|
const formName = reactive({
|
||||||
user: '',
|
user: '',
|
||||||
userId: '',
|
userId: '',
|
||||||
|
@ -277,6 +269,7 @@
|
||||||
formNameSystem: '',
|
formNameSystem: '',
|
||||||
enclosure: '', //附件
|
enclosure: '', //附件
|
||||||
})
|
})
|
||||||
|
const dataList = ref([])
|
||||||
getUser().then((res) => {
|
getUser().then((res) => {
|
||||||
formName.user = res.data.data.realName
|
formName.user = res.data.data.realName
|
||||||
formName.userId = res.data.data.id
|
formName.userId = res.data.data.id
|
||||||
|
@ -291,13 +284,19 @@
|
||||||
'router传参==================>',
|
'router传参==================>',
|
||||||
router.currentRoute.value.query.name
|
router.currentRoute.value.query.name
|
||||||
)
|
)
|
||||||
const arr =
|
let arr =
|
||||||
router.currentRoute.value.query.name instanceof Array
|
router.currentRoute.value.query.name instanceof Array
|
||||||
? router.currentRoute.value.query.name
|
? router.currentRoute.value.query.name
|
||||||
: [router.currentRoute.value.query.name]
|
: [router.currentRoute.value.query.name]
|
||||||
console.log(router.currentRoute.value.query.ids)
|
console.log(router.currentRoute.value.query.ids)
|
||||||
const ids = router.currentRoute.value.query.ids
|
const ids = router.currentRoute.value.query.ids
|
||||||
const dataResourceId = router.currentRoute.value.query.resourceId
|
let dataResourceId = router.currentRoute.value.query.resourceId
|
||||||
|
dataResourceId.map((item) => {
|
||||||
|
selectOne(item).then((res) => {
|
||||||
|
dataList.value.push(res.data.data)
|
||||||
|
console.log('dataResourceId', dataList.value)
|
||||||
|
})
|
||||||
|
})
|
||||||
const businessKey = ref(router.currentRoute.value.query.id)
|
const businessKey = ref(router.currentRoute.value.query.id)
|
||||||
const taskId = ref(router.currentRoute.value.query.taskId)
|
const taskId = ref(router.currentRoute.value.query.taskId)
|
||||||
if (businessKey.value) {
|
if (businessKey.value) {
|
||||||
|
@ -310,25 +309,8 @@
|
||||||
console.log('回填数据================>', res, formName.phone)
|
console.log('回填数据================>', res, formName.phone)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if (arr && arr.length !== 0) {
|
|
||||||
disabled.value = true
|
|
||||||
let str = ''
|
|
||||||
arr.forEach((val, index) => {
|
|
||||||
str += val
|
|
||||||
if (index < arr.length - 1) {
|
|
||||||
str += '、'
|
|
||||||
}
|
|
||||||
})
|
|
||||||
formName.formNameSystem = str
|
|
||||||
}
|
|
||||||
arr.forEach((val, index) => {
|
|
||||||
formName.system.push({
|
|
||||||
resourceName: val,
|
|
||||||
resourceId: dataResourceId[index],
|
|
||||||
})
|
|
||||||
})
|
|
||||||
console.log(formName.system)
|
|
||||||
|
|
||||||
|
console.log(formName.system)
|
||||||
const formRef = ref()
|
const formRef = ref()
|
||||||
const applySuccess = ref(true)
|
const applySuccess = ref(true)
|
||||||
// const rootObj = null
|
// const rootObj = null
|
||||||
|
@ -545,6 +527,35 @@
|
||||||
return isPNG || Upload.LIST_IGNORE
|
return isPNG || Upload.LIST_IGNORE
|
||||||
}
|
}
|
||||||
const fileList = ref([])
|
const fileList = ref([])
|
||||||
|
//删除改变arr
|
||||||
|
mybus.on('reomveOldData', (item) => {
|
||||||
|
debugger
|
||||||
|
arr = []
|
||||||
|
formName.system = []
|
||||||
|
record.value = record.value + '1'
|
||||||
|
arr = item.Name
|
||||||
|
dataResourceId = item.depID
|
||||||
|
if (arr && arr.length !== 0) {
|
||||||
|
disabled.value = true
|
||||||
|
let str = ''
|
||||||
|
arr.forEach((val, index) => {
|
||||||
|
str += val
|
||||||
|
if (index < arr.length - 1) {
|
||||||
|
str += '、'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
formName.formNameSystem = str
|
||||||
|
}
|
||||||
|
arr.forEach((val, index) => {
|
||||||
|
formName.system.push({
|
||||||
|
resourceName: val,
|
||||||
|
resourceId: dataResourceId[index],
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
onBeforeUnmount(() => {
|
||||||
|
mybus.off('reomveOldData')
|
||||||
|
})
|
||||||
return {
|
return {
|
||||||
formRef,
|
formRef,
|
||||||
formName,
|
formName,
|
||||||
|
@ -561,8 +572,9 @@
|
||||||
handleChange,
|
handleChange,
|
||||||
applySuccess,
|
applySuccess,
|
||||||
disabled,
|
disabled,
|
||||||
// baseURL,
|
baseURL,
|
||||||
beforeUpload,
|
beforeUpload,
|
||||||
|
dataList,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -570,7 +582,7 @@
|
||||||
|
|
||||||
<style scoped lang="less">
|
<style scoped lang="less">
|
||||||
#apply-container {
|
#apply-container {
|
||||||
background-color: #f5f8fc;
|
// background-color: #f5f8fc;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin: 130px auto 0;
|
margin: 130px auto 0;
|
||||||
|
|
|
@ -209,7 +209,7 @@
|
||||||
import { getUser, sgcInsert } from '@/api/home'
|
import { getUser, sgcInsert } from '@/api/home'
|
||||||
import { scInsert, scDel } from '@/api/personalCenter'
|
import { scInsert, scDel } from '@/api/personalCenter'
|
||||||
import mybus from '@/myplugins/mybus'
|
import mybus from '@/myplugins/mybus'
|
||||||
import { getHls } from '@/api/file.js'
|
import { getHls } from '@/api/home.js'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: '',
|
name: '',
|
||||||
|
@ -477,8 +477,7 @@
|
||||||
const openVideo = (item) => {
|
const openVideo = (item) => {
|
||||||
videoUrl.value = ''
|
videoUrl.value = ''
|
||||||
const param = {
|
const param = {
|
||||||
cameraId: item.link,
|
key: item.link,
|
||||||
protocol: 'hls',
|
|
||||||
}
|
}
|
||||||
getHls(param).then((res) => {
|
getHls(param).then((res) => {
|
||||||
console.log('获取视频地址===============>', res)
|
console.log('获取视频地址===============>', res)
|
||||||
|
|
|
@ -112,7 +112,7 @@
|
||||||
case '业务组件':
|
case '业务组件':
|
||||||
showView.value = 'business-details'
|
showView.value = 'business-details'
|
||||||
break
|
break
|
||||||
case 'GIS图层':
|
case '图层服务':
|
||||||
showView.value = 'layer-service'
|
showView.value = 'layer-service'
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
|
@ -146,7 +146,7 @@
|
||||||
case '业务组件':
|
case '业务组件':
|
||||||
showView.value = 'business-details'
|
showView.value = 'business-details'
|
||||||
break
|
break
|
||||||
case 'GIS图层':
|
case '图层服务':
|
||||||
showView.value = 'layer-service'
|
showView.value = 'layer-service'
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<home-header></home-header>
|
<home-header></home-header>
|
||||||
<div class="survey-left" @click="hidePop()">
|
<div class="survey-left" @click="hidePop()">
|
||||||
<div ref="cityMap" class="city-map-content-echarts"></div>
|
<div ref="cityMap" class="city-map-content-echarts"></div>
|
||||||
<div class="box xha" v-show="xhaFlag">
|
<div class="box xha" v-show="xhaFlag" v-if="xhaList">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<span>西海岸</span>
|
<span>西海岸</span>
|
||||||
<span>
|
<span>
|
||||||
|
@ -11,12 +11,12 @@
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="bottom">
|
<div class="bottom">
|
||||||
<div class="item">
|
<div class="item" v-for="item in xhaList" :key="item.key">
|
||||||
<span>基础设施</span>
|
<span>{{ item.name }}</span>
|
||||||
<i></i>
|
<i></i>
|
||||||
<span>35282</span>
|
<span>{{ item.num }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
<!-- <div class="item">
|
||||||
<span>数据资源</span>
|
<span>数据资源</span>
|
||||||
<i></i>
|
<i></i>
|
||||||
<span>11</span>
|
<span>11</span>
|
||||||
|
@ -30,11 +30,11 @@
|
||||||
<span>组件服务</span>
|
<span>组件服务</span>
|
||||||
<i></i>
|
<i></i>
|
||||||
<span>8</span>
|
<span>8</span>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="zx"></div>
|
<div class="zx"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="box lsq" v-show="lsqFlag">
|
<div class="box lsq" v-show="lsqFlag" v-if="lsList">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<span>崂山区</span>
|
<span>崂山区</span>
|
||||||
<span>
|
<span>
|
||||||
|
@ -43,7 +43,12 @@
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="bottom">
|
<div class="bottom">
|
||||||
<div class="item">
|
<div class="item" v-for="item in lsList" :key="item.key">
|
||||||
|
<span>{{ item.name }}</span>
|
||||||
|
<i></i>
|
||||||
|
<span>{{ item.num }}</span>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="item">
|
||||||
<span>基础设施</span>
|
<span>基础设施</span>
|
||||||
<i></i>
|
<i></i>
|
||||||
<span>20135</span>
|
<span>20135</span>
|
||||||
|
@ -57,7 +62,7 @@
|
||||||
<span>应用资源</span>
|
<span>应用资源</span>
|
||||||
<i></i>
|
<i></i>
|
||||||
<span>28</span>
|
<span>28</span>
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="zx"></div>
|
<div class="zx"></div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -73,6 +78,15 @@
|
||||||
const echarts = require('echarts')
|
const echarts = require('echarts')
|
||||||
const xhaFlag = ref(false)
|
const xhaFlag = ref(false)
|
||||||
const lsqFlag = ref(false)
|
const lsqFlag = ref(false)
|
||||||
|
const lsList = ref([])
|
||||||
|
const xhaList = ref([])
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
const mapTestNum1 = mapTestNum
|
||||||
|
if (mapTestNum1) {
|
||||||
|
lsList.value = mapTestNum1.lsNum
|
||||||
|
xhaList.value = mapTestNum1.xhaNum
|
||||||
|
}
|
||||||
|
console.log('===============>', mapTestNum1)
|
||||||
const areaMenuList = ref([
|
const areaMenuList = ref([
|
||||||
// 全市概况
|
// 全市概况
|
||||||
// {
|
// {
|
||||||
|
|
|
@ -34,24 +34,28 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="jc">基础设施</div>
|
<div class="jc">基础设施</div>
|
||||||
<div class="name">1-J1-党建展示区走廊-北向</div>
|
<div
|
||||||
<div class="name">2-J2-党建数据中心机房</div>
|
class="name"
|
||||||
<div class="name">3-J3-党建展示区走廊-南向</div>
|
v-for="(item, index) in jcList"
|
||||||
<div class="name">4-J4-党建大厅电动门</div>
|
:key="item.id"
|
||||||
<div class="name name-last">5-J5-指挥席位东北向</div>
|
:class="index == 4 ? 'name-last' : ''"
|
||||||
|
@click="selectOne(item.id)"
|
||||||
|
>
|
||||||
|
{{ index + 1 }}-{{ item.name }}
|
||||||
|
</div>
|
||||||
<div class="btn" @click="jumpPage('基础设施')">查看更多</div>
|
<div class="btn" @click="jumpPage('基础设施')">查看更多</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
<div class="item">
|
||||||
<div class="sj">数据资源</div>
|
<div class="sj">数据资源</div>
|
||||||
<div class="name">1-扬尘数据接口</div>
|
<div
|
||||||
<div class="name">2-根据证件号码查询全员核酸检测信息(人社专用)</div>
|
class="name"
|
||||||
<div class="name">
|
v-for="(item, index) in sjList"
|
||||||
3-根据身份证号、姓名、开始日期、结束日期获取医保住院结算信息(市人社局专用)
|
:key="item.id"
|
||||||
|
:class="index == 4 ? 'name-last' : ''"
|
||||||
|
@click="selectOne(item.id)"
|
||||||
|
>
|
||||||
|
{{ index + 1 }}-{{ item.name }}
|
||||||
</div>
|
</div>
|
||||||
<div class="name">
|
|
||||||
4-根据身份证号、姓名、年度查询医保参保缴费信息(市委组织部专用)
|
|
||||||
</div>
|
|
||||||
<div class="name name-last">5-"金种子"人才培养经费查询API</div>
|
|
||||||
<div class="btn" @click="jumpPage('数据资源')">查看更多</div>
|
<div class="btn" @click="jumpPage('数据资源')">查看更多</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="item">
|
<div class="item">
|
||||||
|
@ -72,13 +76,15 @@
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import { pageWithAttrs } from '@/api/home.js'
|
import { pageWithAttrs, getDataResource } from '@/api/home.js'
|
||||||
import { ref } from 'vue'
|
import { ref } from 'vue'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import { useStore } from 'vuex'
|
import { useStore } from 'vuex'
|
||||||
const store = useStore()
|
const store = useStore()
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const zjList = ref([])
|
const zjList = ref([])
|
||||||
|
const jcList = ref([])
|
||||||
|
const sjList = ref([])
|
||||||
const yyList = ref([])
|
const yyList = ref([])
|
||||||
// 知识库模块数据
|
// 知识库模块数据
|
||||||
const zsList = ref([])
|
const zsList = ref([])
|
||||||
|
@ -93,15 +99,54 @@
|
||||||
orderField: 'total', // total 综合 visits 访问量 applyCount 申请量 score 评分 collectCount 收藏量
|
orderField: 'total', // total 综合 visits 访问量 applyCount 申请量 score 评分 collectCount 收藏量
|
||||||
orderType: 'DESC', // ASC 升序 DESC 降序
|
orderType: 'DESC', // ASC 升序 DESC 降序
|
||||||
}
|
}
|
||||||
|
console.log('dataShowdev==========================>', whoShow)
|
||||||
|
// eslint-disable-next-line no-undef
|
||||||
|
const whoShow1 = ref(whoShow)
|
||||||
const getAppResources = (type, obj) => {
|
const getAppResources = (type, obj) => {
|
||||||
paramsGetResources.type = type
|
paramsGetResources.type = type
|
||||||
|
if (type === '数据资源' && !whoShow1.value.itShowBaoTou) {
|
||||||
|
getDataResource({
|
||||||
|
serviceName: paramsGetResources.name, //资源名称
|
||||||
|
orderField: whoShow1.value.itShowQingDao ? 'fbrq' : 'createTime', //排序字段
|
||||||
|
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.data.forEach((val) => {
|
||||||
|
val.id = val.guid // id
|
||||||
|
val.name = val.zyname // 名字
|
||||||
|
val.sjlCount = val.sjcczl // 数据量
|
||||||
|
val.applyCount = val.syqk // 申请量
|
||||||
|
val.deptName = val.TGBM // 部门
|
||||||
|
val.createDate = val.fbrq // 发布时间
|
||||||
|
})
|
||||||
|
obj.value = res.data.data.data || []
|
||||||
|
} else if (whoShow1.value.itShowXiHaiAn) {
|
||||||
|
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 // 发布时间
|
||||||
|
})
|
||||||
|
obj.value = res.data.data.list || []
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
pageWithAttrs(paramsGetResources).then((res) => {
|
pageWithAttrs(paramsGetResources).then((res) => {
|
||||||
console.log('知识库查询列表============>', res.data.data.records)
|
// console.log('知识库查询列表============>', res.data.data.records)
|
||||||
obj.value = res.data.data.records
|
obj.value = res.data.data.records
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
}
|
||||||
getAppResources('组件服务', zjList)
|
getAppResources('组件服务', zjList)
|
||||||
getAppResources('应用资源', yyList)
|
getAppResources('应用资源', yyList)
|
||||||
|
getAppResources('基础设施', jcList)
|
||||||
|
getAppResources('数据资源', sjList)
|
||||||
getAppResources('知识库', zsList)
|
getAppResources('知识库', zsList)
|
||||||
|
|
||||||
function jumpPage(type) {
|
function jumpPage(type) {
|
||||||
|
|
|
@ -47,9 +47,9 @@
|
||||||
import { ref, onMounted } from 'vue'
|
import { ref, onMounted } from 'vue'
|
||||||
const yyNum = ref('')
|
const yyNum = ref('')
|
||||||
const zjNum = ref('')
|
const zjNum = ref('')
|
||||||
const jcNum = ref('23万')
|
const jcNum = ref('')
|
||||||
const sjNum = ref('10372')
|
const sjNum = ref('')
|
||||||
const zsNum = ref('14')
|
const zsNum = ref('')
|
||||||
selectTotal().then((res) => {
|
selectTotal().then((res) => {
|
||||||
console.log('selectTotal===============>', res.data.data)
|
console.log('selectTotal===============>', res.data.data)
|
||||||
res.data.data.total.forEach((val) => {
|
res.data.data.total.forEach((val) => {
|
||||||
|
|
Loading…
Reference in New Issue