Compare commits
32 Commits
cd832f3f90
...
0c78639afa
Author | SHA1 | Date |
---|---|---|
wuhongjian | 0c78639afa | |
wuhongjian | 48097bdd54 | |
wuhongjian | 77d94c2d09 | |
wuhongjian | 0f7fd813f2 | |
guoyue | 27423a3c14 | |
guoyue | 0400fdbbb1 | |
wuhongjian | 13226c8976 | |
wuhongjian | 66db5faf1b | |
wuhongjian | 8a0ac98824 | |
wuhongjian | 0e224958ce | |
gaoyuanwei | bfc88508d8 | |
gaoyuanwei | 244123dd74 | |
guoyue | 4a0f2eff68 | |
wuhongjian | ca51b29fbc | |
wuhongjian | 84850788d8 | |
gaoyuanwei | cd067cfcc1 | |
wuhongjian | 64ef4c95a1 | |
gaoyuanwei | d7d2c56ec7 | |
a0049873 | 748b3b72ea | |
a0049873 | faa639200e | |
a0049873 | 9b448c0fcc | |
wuhongjian | 7212fd3e7c | |
wuhongjian | 916ea5ecd2 | |
gaoyuanwei | caef0e672a | |
gaoyuanwei | e0ea4a6a2d | |
wuhongjian | 9b77589c6e | |
wuhongjian | b923e7ac2d | |
gaoyuanwei | bae47ea208 | |
gaoyuanwei | 89d782fa9b | |
wuhongjian | 0a55ac7b68 | |
wuhongjian | 894db08c4e | |
gaoyuanwei | f28d12ac88 |
|
@ -0,0 +1,48 @@
|
||||||
|
/*
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-08-25 14:37:49
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-08-29 09:57:52
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
*/
|
||||||
|
var _global = {}
|
||||||
|
var CONFIGITEM = {
|
||||||
|
// version: 'qingdao', // 青岛
|
||||||
|
// version: 'xihaian', // 西海岸
|
||||||
|
version: 'test', // 测试
|
||||||
|
// version: 'frp', // 内网穿透
|
||||||
|
// version: 'dev', // 开发
|
||||||
|
vNum: 'v0.8.7.2',
|
||||||
|
configData: {
|
||||||
|
// 青岛市大数据局
|
||||||
|
qingdao: {
|
||||||
|
previewUrl: 'http://15.72.183.90:7008/',
|
||||||
|
apiURL: 'http://15.72.183.90:8000/renren-admin',
|
||||||
|
websocketURL: 'ws://15.72.183.90:8000/renren-admin/websocket'
|
||||||
|
},
|
||||||
|
// 西海岸大数据局
|
||||||
|
xihaian: {
|
||||||
|
previewUrl: 'http://10.134.135.9:9796/',
|
||||||
|
apiURL: 'http://10.134.135.9:8888/renren-admin',
|
||||||
|
websocketURL: 'ws://10.134.135.9:8888/renren-admin/websocket'
|
||||||
|
},
|
||||||
|
// 测试
|
||||||
|
test: {
|
||||||
|
previewUrl: 'http://192.168.124.243:9796/',
|
||||||
|
apiURL: 'http://192.168.124.243:8888/renren-admin',
|
||||||
|
websocketURL: 'ws://192.168.124.243:8888/renren-admin/websocket'
|
||||||
|
},
|
||||||
|
// 内网穿透
|
||||||
|
frp: {
|
||||||
|
previewUrl: 'http://124.222.94.39:9796/',
|
||||||
|
apiURL: 'http://124.222.94.39:8888/renren-admin',
|
||||||
|
websocketURL: 'ws://124.222.94.39:8888/renren-admin/websocket'
|
||||||
|
},
|
||||||
|
dev: {
|
||||||
|
previewUrl: 'http://localhost:8080/',
|
||||||
|
apiURL: 'http://192.168.124.236:8888/renren-admin',
|
||||||
|
websocketURL: 'ws://192.168.124.236:8888/renren-admin/websocket'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_global.config = CONFIGITEM.configData[CONFIGITEM.version]
|
|
@ -2,7 +2,7 @@
|
||||||
* @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.wuhongjian
|
||||||
* @LastEditTime: 2022-08-02 10:18:38
|
* @LastEditTime: 2022-08-29 09:54:59
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -11,10 +11,11 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
<link rel="shortcut icon" href="<%= BASE_URL %>favicon.ico">
|
<link rel="shortcut icon" href="<%= BASE_URL %>favicon.ico">
|
||||||
|
<script type="text/javascript" src="./config/basicConfig.js"></script>
|
||||||
<!-- 站点配置 -->
|
<!-- 站点配置 -->
|
||||||
<script>
|
<script>
|
||||||
window.SITE_CONFIG = {};
|
window.SITE_CONFIG = {};
|
||||||
window.SITE_CONFIG['version'] = 'v2.9.0';
|
window.SITE_CONFIG['version'] = CONFIGITEM.vNum;
|
||||||
window.SITE_CONFIG['nodeEnv'] = '<%= process.env.VUE_APP_NODE_ENV %>';
|
window.SITE_CONFIG['nodeEnv'] = '<%= process.env.VUE_APP_NODE_ENV %>';
|
||||||
window.SITE_CONFIG['apiURL'] = ''; // api请求地址
|
window.SITE_CONFIG['apiURL'] = ''; // api请求地址
|
||||||
window.SITE_CONFIG['storeState'] = {}; // vuex本地储存初始化状态(用于不刷新页面的情况下,也能重置初始化项目中所有状态)
|
window.SITE_CONFIG['storeState'] = {}; // vuex本地储存初始化状态(用于不刷新页面的情况下,也能重置初始化项目中所有状态)
|
||||||
|
@ -27,61 +28,19 @@
|
||||||
'isTab': true, // 是否通过tab展示内容?
|
'isTab': true, // 是否通过tab展示内容?
|
||||||
'iframeURL': '' // 是否通过iframe嵌套展示内容? (以http[s]://开头, 自动匹配)
|
'iframeURL': '' // 是否通过iframe嵌套展示内容? (以http[s]://开头, 自动匹配)
|
||||||
};
|
};
|
||||||
window.SITE_CONFIG['frontUrl'] = 'http://localhost:8080/#/vueTemplateDemo';
|
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://192.168.124.243: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://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'] = []; // 动态路由列表
|
||||||
window.SITE_CONFIG['dynamicMenuRoutes'] = []; // 动态(菜单)路由列表
|
window.SITE_CONFIG['dynamicMenuRoutes'] = []; // 动态(菜单)路由列表
|
||||||
window.SITE_CONFIG['dynamicMenuRoutesHasAdded'] = false; // 动态(菜单)路由是否已经添加的状态标示(用于判断是否需要重新拉取数据并进行动态添加操作)
|
window.SITE_CONFIG['dynamicMenuRoutesHasAdded'] = false; // 动态(菜单)路由是否已经添加的状态标示(用于判断是否需要重新拉取数据并进行动态添加操作)
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- 开发环境 -->
|
|
||||||
<% 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['frontUrl'] = _global.config.previewUrl + '#/vueTemplateDemo';
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
window.SITE_CONFIG['previewUrl'] = _global.config.previewUrl;
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://10.16.5.35:8888/renren-admin';
|
window.SITE_CONFIG['apiURL'] = _global.config.apiURL;
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://192.168.124.236:8888/renren-admin';
|
|
||||||
window.SITE_CONFIG['previewUrl'] = 'http://localhost:8080/';
|
|
||||||
// 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'] =_global.config.socketURL;
|
||||||
</script>
|
</script>
|
||||||
<% } %>
|
|
||||||
<!-- 集成测试环境 -->
|
|
||||||
<% if (process.env.VUE_APP_NODE_ENV === 'prod:sit') { %>
|
|
||||||
<script>
|
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://localhost:8080/renren-admin';
|
|
||||||
// WebSocket地址
|
|
||||||
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
|
||||||
</script>
|
|
||||||
<% } %>
|
|
||||||
<!-- 验收测试环境 -->
|
|
||||||
<% if (process.env.VUE_APP_NODE_ENV === 'prod:uat') { %>
|
|
||||||
<script>
|
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://localhost:8080/renren-admin';
|
|
||||||
// WebSocket地址
|
|
||||||
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
|
||||||
</script>
|
|
||||||
<% } %>
|
|
||||||
<!-- 生产环境 -->
|
|
||||||
<% if (process.env.VUE_APP_NODE_ENV === 'prod') { %>
|
|
||||||
<script>
|
|
||||||
|
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
|
||||||
window.SITE_CONFIG['previewUrl'] = 'http://192.168.124.243:9796/';
|
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://15.2.21.238:8888/renren-admin';
|
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://192.168.124.243:8888/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';
|
|
||||||
// WebSocket地址
|
|
||||||
window.SITE_CONFIG['socketURL'] ='ws://localhost:8080/renren-admin/websocket';
|
|
||||||
</script>
|
|
||||||
<% } %>
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="app"></div>
|
<div id="app"></div>
|
||||||
|
|
|
@ -486,7 +486,7 @@ $--cascader-tag-background: #f0f2f5;
|
||||||
|
|
||||||
/* Group
|
/* Group
|
||||||
-------------------------- */
|
-------------------------- */
|
||||||
$--group-option-flex: 0 0 (1/5) * 100% !default;
|
$--group-option-flex: 0 0 20% !default;
|
||||||
$--group-option-offset-bottom: 12px !default;
|
$--group-option-offset-bottom: 12px !default;
|
||||||
$--group-option-fill-hover: rgba($--color-black, 0.06) !default;
|
$--group-option-fill-hover: rgba($--color-black, 0.06) !default;
|
||||||
$--group-title-color: $--color-black !default;
|
$--group-title-color: $--color-black !default;
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-08-23 10:30:11
|
* @Date: 2022-08-23 10:30:11
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-23 10:31:30
|
* @LastEditTime: 2022-08-25 21:05:18
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
const returnLocationStr = () => {
|
const returnLocationStr = () => {
|
||||||
return 'qingdao'
|
return 'qingdao1'
|
||||||
}
|
}
|
||||||
|
|
||||||
export default returnLocationStr
|
export default returnLocationStr
|
||||||
|
|
|
@ -94,19 +94,20 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import debounce from "lodash/debounce";
|
import debounce from 'lodash/debounce'
|
||||||
import qs from "qs";
|
import qs from 'qs'
|
||||||
import SceneUseStep from './components/scene-use-step.vue';
|
import SceneUseStep from './components/scene-use-step.vue'
|
||||||
import SceneOneInput from './components/scene-one-input.vue';
|
import SceneOneInput from './components/scene-one-input.vue'
|
||||||
import CombineAbility from '../components/combine-ability.vue';
|
import CombineAbility from '../components/combine-ability.vue'
|
||||||
import CommonQuestion from '../components/common-question.vue';
|
import CommonQuestion from '../components/common-question.vue'
|
||||||
import InfrastructureModal from './components/infrastructure-modal.vue'
|
import InfrastructureModal from './components/infrastructure-modal.vue'
|
||||||
import Cookies from 'js-cookie'
|
import Cookies from 'js-cookie'
|
||||||
import upload from '@/views/modules/components/upload'
|
import upload from '@/views/modules/components/upload'
|
||||||
|
|
||||||
let btnArray = ['基本信息', '场景痛点', '解决方案', '组合能力', '更多能力', '使用步骤']
|
const btnArray = ['基本信息', '场景痛点', '解决方案', '组合能力', '更多能力', '使用步骤']
|
||||||
// 数据资源\组件服务
|
// 数据资源\组件服务
|
||||||
export const getJson = (type) => {
|
export const getJson = (type) => {
|
||||||
|
if (type === '组件服务') {
|
||||||
return {
|
return {
|
||||||
methods: 'get',
|
methods: 'get',
|
||||||
url: '/census/center/selectResourceListByType',
|
url: '/census/center/selectResourceListByType',
|
||||||
|
@ -114,20 +115,33 @@ export const getJson = (type) => {
|
||||||
type
|
type
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
methods: 'post',
|
||||||
|
url: '/resource/getDataResource',
|
||||||
|
postData: {
|
||||||
|
serviceName: '', // 资源名称
|
||||||
|
orderField: 'fbrq', // 排序字段
|
||||||
|
orderType: 'desc',
|
||||||
|
pageNum: 1, // 页码
|
||||||
|
pageSize: 15 // 分页大小
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
export const getDescJson = (text) => {
|
export const getDescJson = (text) => {
|
||||||
return {
|
return {
|
||||||
descObj: {
|
descObj: {
|
||||||
text: `${text}描述`,
|
text: `${text}描述`,
|
||||||
key: 'description'
|
key: 'description'
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 弹框的方法
|
// 弹框的方法
|
||||||
export const getListParams = {
|
export const getListParams = {
|
||||||
'数据资源': getJson('数据资源'),
|
数据资源: getJson('数据资源'),
|
||||||
'组件服务': getJson('组件服务'),
|
组件服务: getJson('组件服务'),
|
||||||
'基础设施': ''
|
基础设施: ''
|
||||||
}
|
}
|
||||||
// 模态框标题
|
// 模态框标题
|
||||||
export const modalTypeText = {
|
export const modalTypeText = {
|
||||||
|
@ -136,13 +150,13 @@ export const modalTypeText = {
|
||||||
}
|
}
|
||||||
|
|
||||||
export const getFuseResourceList = (abilityListObj) => {
|
export const getFuseResourceList = (abilityListObj) => {
|
||||||
let arr = []
|
const arr = []
|
||||||
let length = 0
|
let length = 0
|
||||||
for (const key in abilityListObj) {
|
for (const key in abilityListObj) {
|
||||||
if (Object.hasOwnProperty.call(abilityListObj, key)) {
|
if (Object.hasOwnProperty.call(abilityListObj, key)) {
|
||||||
const itemArray = abilityListObj[key];
|
const itemArray = abilityListObj[key]
|
||||||
itemArray.map((v, i) => {
|
itemArray.map((v, i) => {
|
||||||
let index = (i + 1) + length
|
const index = (i + 1) + length
|
||||||
arr.push({
|
arr.push({
|
||||||
resourceId: v,
|
resourceId: v,
|
||||||
type: key,
|
type: key,
|
||||||
|
@ -162,7 +176,7 @@ export default {
|
||||||
SceneOneInput,
|
SceneOneInput,
|
||||||
upload,
|
upload,
|
||||||
CommonQuestion,
|
CommonQuestion,
|
||||||
InfrastructureModal,
|
InfrastructureModal
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
@ -172,70 +186,70 @@ export default {
|
||||||
text: '能力名称',
|
text: '能力名称',
|
||||||
key: 'name'
|
key: 'name'
|
||||||
},
|
},
|
||||||
...getDescJson('能力'),
|
...getDescJson('能力')
|
||||||
},
|
},
|
||||||
painKeyTextObj: getDescJson('痛点'),
|
painKeyTextObj: getDescJson('痛点'),
|
||||||
solutionKeyTextObj: getDescJson('方案'),
|
solutionKeyTextObj: getDescJson('方案'),
|
||||||
dataForm: {
|
dataForm: {
|
||||||
"name": "",
|
name: '',
|
||||||
"applicationArea": "",
|
applicationArea: '',
|
||||||
"description": "",
|
description: '',
|
||||||
"fuseAttrList": [
|
fuseAttrList: [
|
||||||
{
|
{
|
||||||
"attrType": "使用步骤",
|
attrType: '使用步骤',
|
||||||
"attrValue": [{ question: "", answer: "" }],
|
attrValue: [{ question: '', answer: '' }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attrType": "更多能力",
|
attrType: '更多能力',
|
||||||
"attrValue": [{ name: "", description: "" }],
|
attrValue: [{ name: '', description: '' }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attrType": "场景痛点",
|
attrType: '场景痛点',
|
||||||
"attrValue": [{ description: "" }],
|
attrValue: [{ description: '' }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attrType": "解决方案",
|
attrType: '解决方案',
|
||||||
"attrValue": [{ description: "" }],
|
attrValue: [{ description: '' }]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"attrType": "服务图片",
|
attrType: '服务图片',
|
||||||
"attrValue": "",
|
attrValue: ''
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
"fuseResourceList": [],
|
fuseResourceList: []
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
name: [
|
name: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入名称",
|
message: '请输入名称',
|
||||||
trigger: "change",
|
trigger: 'change'
|
||||||
},
|
}
|
||||||
],
|
],
|
||||||
description: [
|
description: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请输入描述",
|
message: '请输入描述',
|
||||||
trigger: "change",
|
trigger: 'change'
|
||||||
},
|
}
|
||||||
],
|
]
|
||||||
},
|
},
|
||||||
checkList: JSON.parse(JSON.stringify(btnArray)),
|
checkList: JSON.parse(JSON.stringify(btnArray)),
|
||||||
btnList: JSON.parse(JSON.stringify(btnArray)),
|
btnList: JSON.parse(JSON.stringify(btnArray)),
|
||||||
addOrUpdateVisibleCopy: this.addOrUpdateVisible,
|
addOrUpdateVisibleCopy: this.addOrUpdateVisible,
|
||||||
displayInfo: {
|
displayInfo: {
|
||||||
'name': '名称',
|
name: '名称',
|
||||||
'description': '描述',
|
description: '描述'
|
||||||
},
|
},
|
||||||
modalTypeText: modalTypeText,
|
modalTypeText: modalTypeText,
|
||||||
refsParseArray: {
|
refsParseArray: {
|
||||||
'sceneUseUpDom': '使用步骤',
|
sceneUseUpDom: '使用步骤',
|
||||||
'moreAbilityDom': '更多能力',
|
moreAbilityDom: '更多能力',
|
||||||
'scenePainDom': '场景痛点',
|
scenePainDom: '场景痛点',
|
||||||
'solutionDom': '解决方案',
|
solutionDom: '解决方案',
|
||||||
'zjfwDom': '组件服务',
|
zjfwDom: '组件服务',
|
||||||
'sjzyDom': '数据资源',
|
sjzyDom: '数据资源',
|
||||||
'jcssDom': '基础设施',
|
jcssDom: '基础设施'
|
||||||
},
|
},
|
||||||
getListParams: getListParams,
|
getListParams: getListParams,
|
||||||
abilityListObj: {},
|
abilityListObj: {},
|
||||||
|
@ -244,8 +258,8 @@ export default {
|
||||||
handleExceed () {
|
handleExceed () {
|
||||||
this.$message({ type: 'error', message: '最多支持一张图片上传' })
|
this.$message({ type: 'error', message: '最多支持一张图片上传' })
|
||||||
},
|
},
|
||||||
imageUrl: '',
|
imageUrl: ''
|
||||||
};
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
modalType: {
|
modalType: {
|
||||||
|
@ -263,22 +277,22 @@ export default {
|
||||||
this.dataForm = newVal
|
this.dataForm = newVal
|
||||||
},
|
},
|
||||||
deep: true,
|
deep: true,
|
||||||
immediate: true,
|
immediate: true
|
||||||
},
|
},
|
||||||
addOrUpdateVisible: {
|
addOrUpdateVisible: {
|
||||||
handler (newVal) {
|
handler (newVal) {
|
||||||
this.addOrUpdateVisibleCopy = newVal;
|
this.addOrUpdateVisibleCopy = newVal
|
||||||
if (this.modalType == 'add' && newVal) {
|
if (this.modalType == 'add' && newVal) {
|
||||||
localStorage.setItem('InfrastructureSearchData', JSON.stringify({}))
|
localStorage.setItem('InfrastructureSearchData', JSON.stringify({}))
|
||||||
this.getDetail(this.dataForm)
|
this.getDetail(this.dataForm)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
immediate: true,
|
immediate: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
clearForm () {
|
clearForm () {
|
||||||
this.$refs.dataForm && this.$refs.dataForm.resetFields();
|
this.$refs.dataForm && this.$refs.dataForm.resetFields()
|
||||||
},
|
},
|
||||||
closeModal () {
|
closeModal () {
|
||||||
this.$emit('closeModal')
|
this.$emit('closeModal')
|
||||||
|
@ -286,7 +300,7 @@ export default {
|
||||||
// 更新表单
|
// 更新表单
|
||||||
updateDataForm (data) {
|
updateDataForm (data) {
|
||||||
if (Object.keys(this.getListParams).includes(data.title)) {
|
if (Object.keys(this.getListParams).includes(data.title)) {
|
||||||
this.abilityListObj[data.title] = data.list;
|
this.abilityListObj[data.title] = data.list
|
||||||
} else {
|
} else {
|
||||||
// 更多能力、使用步骤
|
// 更多能力、使用步骤
|
||||||
this.operateFuseAttrList(data.title, data)
|
this.operateFuseAttrList(data.title, data)
|
||||||
|
@ -298,8 +312,8 @@ export default {
|
||||||
operateFuseAttrList (title, data) {
|
operateFuseAttrList (title, data) {
|
||||||
if (this.dataForm.fuseAttrList.every(v => v.attrType !== title)) {
|
if (this.dataForm.fuseAttrList.every(v => v.attrType !== title)) {
|
||||||
this.dataForm.fuseAttrList.push({
|
this.dataForm.fuseAttrList.push({
|
||||||
'attrType': title,
|
attrType: title,
|
||||||
'attrValue': JSON.stringify(data.list)
|
attrValue: JSON.stringify(data.list)
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
this.dataForm.fuseAttrList.map(v => {
|
this.dataForm.fuseAttrList.map(v => {
|
||||||
|
@ -311,70 +325,70 @@ export default {
|
||||||
},
|
},
|
||||||
// 改变按钮状态
|
// 改变按钮状态
|
||||||
changeBtn (data) {
|
changeBtn (data) {
|
||||||
this.checkList = data;
|
this.checkList = data
|
||||||
},
|
},
|
||||||
// 表单提交
|
// 表单提交
|
||||||
dataFormSubmitHandle: debounce(
|
dataFormSubmitHandle: debounce(
|
||||||
function () {
|
function () {
|
||||||
this.$refs.dataForm.validate((valid) => {
|
this.$refs.dataForm.validate((valid) => {
|
||||||
if (!valid) {
|
if (!valid) {
|
||||||
this.$message.error("请检查表单是否填写完整");
|
this.$message.error('请检查表单是否填写完整')
|
||||||
return false;
|
return false
|
||||||
}
|
}
|
||||||
let methodsObj = {
|
const methodsObj = {
|
||||||
'add': 'post',
|
add: 'post',
|
||||||
'update': 'put'
|
update: 'put'
|
||||||
}
|
}
|
||||||
this.dataForm.fuseResourceList = this.getFuseResourceList()
|
this.dataForm.fuseResourceList = this.getFuseResourceList()
|
||||||
if (this.imageUrl == '') {
|
if (this.imageUrl == '') {
|
||||||
this.$message.error("请上传图片!");
|
this.$message.error('请上传图片!')
|
||||||
return;
|
return
|
||||||
}
|
}
|
||||||
this.dataForm.fuseAttrList.find(v => v.attrType == '服务图片').attrValue = this.imageUrl || '';
|
this.dataForm.fuseAttrList.find(v => v.attrType == '服务图片').attrValue = this.imageUrl || ''
|
||||||
let _obj = Object.assign({}, this.dataForm, {
|
const _obj = Object.assign({}, this.dataForm, {
|
||||||
type: '赋能场景'
|
type: '赋能场景'
|
||||||
})
|
})
|
||||||
console.log('this.dataForm------表单提交------>', this.dataForm);
|
console.log('this.dataForm------表单提交------>', this.dataForm)
|
||||||
this.$http
|
this.$http
|
||||||
[methodsObj[this.modalType]]("/fuse", _obj)
|
[methodsObj[this.modalType]]('/fuse', _obj)
|
||||||
.then(({ data: res }) => {
|
.then(({ data: res }) => {
|
||||||
if (res.code !== 0) {
|
if (res.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.$message({
|
this.$message({
|
||||||
message: this.$t("prompt.success"),
|
message: this.$t('prompt.success'),
|
||||||
type: "success",
|
type: 'success',
|
||||||
duration: 500,
|
duration: 500,
|
||||||
onClose: () => {
|
onClose: () => {
|
||||||
this.$refs.dataForm && this.$refs.dataForm.resetFields();
|
this.$refs.dataForm && this.$refs.dataForm.resetFields()
|
||||||
this.$emit("refreshDataList");
|
this.$emit('refreshDataList')
|
||||||
this.$emit("closeModal");
|
this.$emit('closeModal')
|
||||||
},
|
}
|
||||||
});
|
})
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
this.$message.error(err)
|
this.$message.error(err)
|
||||||
});
|
})
|
||||||
});
|
})
|
||||||
},
|
},
|
||||||
1000,
|
1000,
|
||||||
{ leading: true, trailing: false }
|
{ leading: true, trailing: false }
|
||||||
),
|
),
|
||||||
// 详情
|
// 详情
|
||||||
getDetail (data) {
|
getDetail (data) {
|
||||||
console.log('data---详情--------->', data);
|
console.log('data---详情--------->', data)
|
||||||
this.dataForm = data;
|
this.dataForm = data
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
for (const key in this.refsParseArray) {
|
for (const key in this.refsParseArray) {
|
||||||
this.$refs[key] && this.$refs[key].getDataInfo && this.$refs[key].getDataInfo(data)
|
this.$refs[key] && this.$refs[key].getDataInfo && this.$refs[key].getDataInfo(data)
|
||||||
}
|
}
|
||||||
let _imgObj = data.fuseAttrList.find(v => v.attrType == '服务图片') || {};
|
const _imgObj = data.fuseAttrList.find(v => v.attrType == '服务图片') || {}
|
||||||
this.imageUrl = _imgObj.attrValue;
|
this.imageUrl = _imgObj.attrValue
|
||||||
|
|
||||||
// 组合能力--特殊处理
|
// 组合能力--特殊处理
|
||||||
Object.keys(this.getListParams).map(k => {
|
Object.keys(this.getListParams).map(k => {
|
||||||
let arr = data.fuseResourceList.filter(v => v.type == k);
|
const arr = data.fuseResourceList.filter(v => v.type == k)
|
||||||
let arr2 = [];
|
const arr2 = []
|
||||||
arr.map(v => {
|
arr.map(v => {
|
||||||
arr2.push(v.resourceId)
|
arr2.push(v.resourceId)
|
||||||
})
|
})
|
||||||
|
@ -422,12 +436,12 @@ export default {
|
||||||
return this.$message.error(res.msg)
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.imageUrl = res.data
|
this.imageUrl = res.data
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
beforeDestroy () {
|
beforeDestroy () {
|
||||||
this.clearForm()
|
this.clearForm()
|
||||||
},
|
}
|
||||||
};
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
@ -466,10 +480,8 @@ export default {
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.mod-sys__menu {
|
.mod-sys__menu {
|
||||||
|
|
||||||
.menu-list,
|
.menu-list,
|
||||||
.icon-list {
|
.icon-list {
|
||||||
|
|
||||||
.el-input__inner,
|
.el-input__inner,
|
||||||
.el-input__suffix {
|
.el-input__suffix {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
|
@ -2,11 +2,9 @@
|
||||||
<div class="show-box" v-if="displayList.length > 0">
|
<div class="show-box" v-if="displayList.length > 0">
|
||||||
<div class="list-box">
|
<div class="list-box">
|
||||||
<div v-for="(item, i) in displayList" :key="i">
|
<div v-for="(item, i) in displayList" :key="i">
|
||||||
<el-tooltip popper-class="testTooltip" effect="dark" :content="item[showKey] || '--'" placement="top">
|
|
||||||
<div class="list-item">
|
<div class="list-item">
|
||||||
{{ item[showKey] || '--' }}
|
{{ item[showKey] || '--' }}
|
||||||
</div>
|
</div>
|
||||||
</el-tooltip>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -44,6 +44,11 @@
|
||||||
<el-button type="primary" style="margin-left:10px;margin-top:4px" size="small" @click="clear">
|
<el-button type="primary" style="margin-left:10px;margin-top:4px" size="small" @click="clear">
|
||||||
重置
|
重置
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button type="primary" style="margin-left:10px;margin-top:4px" size="small"
|
||||||
|
@click="clearSelectArray">
|
||||||
|
清空已选择
|
||||||
|
</el-button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -115,6 +120,7 @@ export default {
|
||||||
showKey: 0,
|
showKey: 0,
|
||||||
showModal: false,
|
showModal: false,
|
||||||
selectedArray: [], // 已选择的数据id
|
selectedArray: [], // 已选择的数据id
|
||||||
|
selectedArrayCopy: [],
|
||||||
displayList: [], // 用于展示的list
|
displayList: [], // 用于展示的list
|
||||||
btnList: ['视频资源', '云资源', '感知资源'],
|
btnList: ['视频资源', '云资源', '感知资源'],
|
||||||
showText: {
|
showText: {
|
||||||
|
@ -210,6 +216,8 @@ export default {
|
||||||
this.displayList = JSON.parse(JSON.stringify(arr));
|
this.displayList = JSON.parse(JSON.stringify(arr));
|
||||||
// 已选中
|
// 已选中
|
||||||
this.selectedArray = arr.map(v => v.idtCameraChannel);
|
this.selectedArray = arr.map(v => v.idtCameraChannel);
|
||||||
|
this.selectedArrayCopy = JSON.parse(JSON.stringify(arr));
|
||||||
|
|
||||||
this.dataList = JSON.parse(JSON.stringify(arr));
|
this.dataList = JSON.parse(JSON.stringify(arr));
|
||||||
this.pageData.total = arr.length;
|
this.pageData.total = arr.length;
|
||||||
// 默认选中复选框
|
// 默认选中复选框
|
||||||
|
@ -303,29 +311,43 @@ export default {
|
||||||
this.searchData.parentId = parentId;
|
this.searchData.parentId = parentId;
|
||||||
this.getData(parentId)
|
this.getData(parentId)
|
||||||
},
|
},
|
||||||
|
clearSelectArray() {
|
||||||
|
this.selectedArrayCopy = []
|
||||||
|
this.selectedArray = []
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
confirmSubmitHandle() {
|
confirmSubmitHandle() {
|
||||||
if (this.selectedArray.length > this.maxNum) {
|
// 新选择的
|
||||||
|
let idtCameraChannelArray = this.selectedArray.map(v => v.idtCameraChannel)
|
||||||
|
// 选过的
|
||||||
|
let newIdArray = this.selectedArrayCopy.map(v => v.idtCameraChannel)
|
||||||
|
let idArray = [...new Set(newIdArray.concat(idtCameraChannelArray))]
|
||||||
|
if (idArray.length > this.maxNum) {
|
||||||
return this.$message.error('最多选择十条数据!');
|
return this.$message.error('最多选择十条数据!');
|
||||||
}
|
}
|
||||||
this.showModal = false;
|
|
||||||
this.displayList = []
|
let listArray = [].concat(this.selectedArrayCopy, this.dataList);
|
||||||
let idtCameraChannelArray = this.selectedArray.map(v => v.idtCameraChannel)
|
this.displayList = [];
|
||||||
this.dataList.map(v => {
|
idArray.map(v => {
|
||||||
if (idtCameraChannelArray.includes(v.idtCameraChannel)) {
|
let obj = listArray.find(k => k.idtCameraChannel === v)
|
||||||
|
if (obj) {
|
||||||
this.displayList.push({
|
this.displayList.push({
|
||||||
channelName: v.channelName
|
channelName: obj.channelName
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
this.$emit('update', {
|
this.$emit('update', {
|
||||||
title: this.type,
|
title: this.type,
|
||||||
list: this.selectedArray.map(v => v.idtCameraChannel)
|
list: idArray,
|
||||||
})
|
})
|
||||||
|
this.showModal = false;
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
this.showModal = false;
|
this.showModal = false;
|
||||||
this.searchData.cameraName = ''
|
this.searchData.cameraName = ''
|
||||||
this.selectedArray = [];
|
// this.selectedArray = [];
|
||||||
this.$emit('closeModal');
|
this.$emit('closeModal');
|
||||||
},
|
},
|
||||||
clear() {
|
clear() {
|
||||||
|
|
|
@ -2,12 +2,12 @@
|
||||||
<div class="ability-box">
|
<div class="ability-box">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="type">{{ type }}</div>
|
<div class="type">{{ type }}</div>
|
||||||
<el-button type="primary" size="small" @click="showModal = true">添加</el-button>
|
<el-button type="primary" size="small" @click="clickOpen">添加</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<el-dialog :visible.sync="showModal" title="请选择" @close="close" :close-on-click-modal="false"
|
<el-dialog :visible.sync="showModal" title="请选择" @close="close" :close-on-click-modal="false"
|
||||||
:close-on-press-escape="false" :key="showKey" append-to-body>
|
:close-on-press-escape="false" :key="showKey" append-to-body>
|
||||||
<div class="relate-application-content">
|
<div class="relate-application-content" v-if="type==='组件服务'">
|
||||||
<el-transfer v-model="selectedArray" filterable :filter-method="filterMethod" filter-placeholder="请输入名称"
|
<el-transfer v-model="selectedArray" filterable :filter-method="filterMethod" filter-placeholder="请输入名称"
|
||||||
:titles="nameArray" :props="{
|
:titles="nameArray" :props="{
|
||||||
key: 'id',
|
key: 'id',
|
||||||
|
@ -15,6 +15,28 @@
|
||||||
}" :data="transferData">
|
}" :data="transferData">
|
||||||
</el-transfer>
|
</el-transfer>
|
||||||
</div>
|
</div>
|
||||||
|
<div v-else-if="type==='数据资源'" class="dataTransfer">
|
||||||
|
<el-transfer v-model="selectedArray" filter-placeholder="请输入名称"
|
||||||
|
:titles="nameArray" :props="{
|
||||||
|
key: 'id',
|
||||||
|
label: 'name',
|
||||||
|
}" :data="transferData">
|
||||||
|
</el-transfer>
|
||||||
|
<el-input
|
||||||
|
v-model="searchValue"
|
||||||
|
placeholder="请输入名称"
|
||||||
|
></el-input>
|
||||||
|
<el-button @click="rest" class="restClick">重置</el-button>
|
||||||
|
</div>
|
||||||
|
<el-pagination
|
||||||
|
v-if="type==='数据资源'"
|
||||||
|
:current-page="currentPage"
|
||||||
|
:page-size="15"
|
||||||
|
layout="total, prev, pager, next"
|
||||||
|
:total="total"
|
||||||
|
@current-change="pageCurrentChangeHandle"
|
||||||
|
>
|
||||||
|
</el-pagination>
|
||||||
<template slot="footer">
|
<template slot="footer">
|
||||||
<el-button @click="showModal = false">{{ $t("cancel") }}</el-button>
|
<el-button @click="showModal = false">{{ $t("cancel") }}</el-button>
|
||||||
<el-button type="primary" @click="confirmSubmitHandle()">{{
|
<el-button type="primary" @click="confirmSubmitHandle()">{{
|
||||||
|
@ -31,125 +53,124 @@
|
||||||
import InfrastructureModal from '../assignedScene/components/infrastructure-modal.vue'
|
import InfrastructureModal from '../assignedScene/components/infrastructure-modal.vue'
|
||||||
import DisplayList from '../assignedScene/components/display-list.vue'
|
import DisplayList from '../assignedScene/components/display-list.vue'
|
||||||
|
|
||||||
|
const sjzyArray = [
|
||||||
let sjzyArray = [
|
|
||||||
{
|
{
|
||||||
"zyname": "城阳区图书馆总分馆、社区图书室明细信息",
|
zyname: '城阳区图书馆总分馆、社区图书室明细信息',
|
||||||
"sjcczl": 0.02,
|
sjcczl: 0.02,
|
||||||
"zycode": "307013110716000007",
|
zycode: '307013110716000007',
|
||||||
"ygxjghjls": 0,
|
ygxjghjls: 0,
|
||||||
"jghxxjlzs": 0,
|
jghxxjlzs: 0,
|
||||||
"neibukeshi": "",
|
neibukeshi: '',
|
||||||
"xgxt": "城阳区图书馆及总分馆、社区图书室明细信息",
|
xgxt: '城阳区图书馆及总分馆、社区图书室明细信息',
|
||||||
"ygxdsjccl": 0,
|
ygxdsjccl: 0,
|
||||||
"zygszl": "et",
|
zygszl: 'et',
|
||||||
"ykfjghjls": 0,
|
ykfjghjls: 0,
|
||||||
"syqk": 0,
|
syqk: 0,
|
||||||
"zyformat": "电子表格",
|
zyformat: '电子表格',
|
||||||
"guid": "277c51e0-066b-441d-9262-6e53ce6fc99a",
|
guid: '277c51e0-066b-441d-9262-6e53ce6fc99a',
|
||||||
"TGBM": "城阳区文化和旅游局",
|
TGBM: '城阳区文化和旅游局',
|
||||||
"ykfdsjccl": 0
|
ykfdsjccl: 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"zyname": "2021年度西海岸新区科技型中小企业名单信息",
|
zyname: '2021年度西海岸新区科技型中小企业名单信息',
|
||||||
"sjcczl": 0,
|
sjcczl: 0,
|
||||||
"zycode": "307013109000000010",
|
zycode: '307013109000000010',
|
||||||
"ygxjghjls": 0,
|
ygxjghjls: 0,
|
||||||
"jghxxjlzs": 0,
|
jghxxjlzs: 0,
|
||||||
"neibukeshi": "高新技术科",
|
neibukeshi: '高新技术科',
|
||||||
"xgxt": "2021年度西海岸新区科技型中小企业名单信息,企业名称,入库编号。",
|
xgxt: '2021年度西海岸新区科技型中小企业名单信息,企业名称,入库编号。',
|
||||||
"ygxdsjccl": 0,
|
ygxdsjccl: 0,
|
||||||
"zygszl": "access",
|
zygszl: 'access',
|
||||||
"ykfjghjls": 0,
|
ykfjghjls: 0,
|
||||||
"syqk": 0,
|
syqk: 0,
|
||||||
"zyformat": "数据库",
|
zyformat: '数据库',
|
||||||
"guid": "6ed1a478-443a-48ee-8af0-4c7ac2681a94",
|
guid: '6ed1a478-443a-48ee-8af0-4c7ac2681a94',
|
||||||
"TGBM": "青岛西海岸新区工业和信息化局(区科技局、区大数据局)",
|
TGBM: '青岛西海岸新区工业和信息化局(区科技局、区大数据局)',
|
||||||
"ykfdsjccl": 0
|
ykfdsjccl: 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"zyname": "西海岸新区高新技术企业名单信息",
|
zyname: '西海岸新区高新技术企业名单信息',
|
||||||
"sjcczl": 0,
|
sjcczl: 0,
|
||||||
"zycode": "307013109000000012",
|
zycode: '307013109000000012',
|
||||||
"ygxjghjls": 0,
|
ygxjghjls: 0,
|
||||||
"jghxxjlzs": 0,
|
jghxxjlzs: 0,
|
||||||
"neibukeshi": "高新技术科",
|
neibukeshi: '高新技术科',
|
||||||
"xgxt": "西海岸新区高新技术企业名单信息",
|
xgxt: '西海岸新区高新技术企业名单信息',
|
||||||
"ygxdsjccl": 0,
|
ygxdsjccl: 0,
|
||||||
"zygszl": "access",
|
zygszl: 'access',
|
||||||
"ykfjghjls": 0,
|
ykfjghjls: 0,
|
||||||
"syqk": 0,
|
syqk: 0,
|
||||||
"zyformat": "数据库",
|
zyformat: '数据库',
|
||||||
"guid": "770a9127-e7fd-4a6b-ba17-c80cf06ab670",
|
guid: '770a9127-e7fd-4a6b-ba17-c80cf06ab670',
|
||||||
"TGBM": "青岛西海岸新区工业和信息化局(区科技局、区大数据局)",
|
TGBM: '青岛西海岸新区工业和信息化局(区科技局、区大数据局)',
|
||||||
"ykfdsjccl": 0
|
ykfdsjccl: 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"zyname": "西海岸新区高新技术企业认定补助名单信息",
|
zyname: '西海岸新区高新技术企业认定补助名单信息',
|
||||||
"sjcczl": 0,
|
sjcczl: 0,
|
||||||
"zycode": "307013109000000011",
|
zycode: '307013109000000011',
|
||||||
"ygxjghjls": 0,
|
ygxjghjls: 0,
|
||||||
"jghxxjlzs": 0,
|
jghxxjlzs: 0,
|
||||||
"neibukeshi": "高新技术科",
|
neibukeshi: '高新技术科',
|
||||||
"xgxt": "西海岸新区高新技术企业认定补助名单信息,企业名称、扶持项目。",
|
xgxt: '西海岸新区高新技术企业认定补助名单信息,企业名称、扶持项目。',
|
||||||
"ygxdsjccl": 0,
|
ygxdsjccl: 0,
|
||||||
"zygszl": "access",
|
zygszl: 'access',
|
||||||
"ykfjghjls": 0,
|
ykfjghjls: 0,
|
||||||
"syqk": 0,
|
syqk: 0,
|
||||||
"zyformat": "数据库",
|
zyformat: '数据库',
|
||||||
"guid": "ae52c5f8-ef6e-4ae9-a657-79dcb6f65643",
|
guid: 'ae52c5f8-ef6e-4ae9-a657-79dcb6f65643',
|
||||||
"TGBM": "青岛西海岸新区工业和信息化局(区科技局、区大数据局)",
|
TGBM: '青岛西海岸新区工业和信息化局(区科技局、区大数据局)',
|
||||||
"ykfdsjccl": 0
|
ykfdsjccl: 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"zyname": "青岛西海岸新区第六批区级非物质文化遗产代表性项目名录",
|
zyname: '青岛西海岸新区第六批区级非物质文化遗产代表性项目名录',
|
||||||
"sjcczl": 0,
|
sjcczl: 0,
|
||||||
"zycode": "307013109026000037",
|
zycode: '307013109026000037',
|
||||||
"ygxjghjls": 0,
|
ygxjghjls: 0,
|
||||||
"jghxxjlzs": 0,
|
jghxxjlzs: 0,
|
||||||
"neibukeshi": "艺术科",
|
neibukeshi: '艺术科',
|
||||||
"xgxt": "青岛西海岸新区第六批区级非物质文化遗产代表性项目名录,如项目类别、序号、项目名称、申报单位",
|
xgxt: '青岛西海岸新区第六批区级非物质文化遗产代表性项目名录,如项目类别、序号、项目名称、申报单位',
|
||||||
"ygxdsjccl": 0,
|
ygxdsjccl: 0,
|
||||||
"zygszl": "et",
|
zygszl: 'et',
|
||||||
"ykfjghjls": 0,
|
ykfjghjls: 0,
|
||||||
"syqk": 0,
|
syqk: 0,
|
||||||
"zyformat": "电子表格",
|
zyformat: '电子表格',
|
||||||
"guid": "6d80a3b1-744e-4292-a904-0168d640b1fc",
|
guid: '6d80a3b1-744e-4292-a904-0168d640b1fc',
|
||||||
"TGBM": "青岛西海岸新区文化和旅游局(区新闻出版广电局、区文物局)",
|
TGBM: '青岛西海岸新区文化和旅游局(区新闻出版广电局、区文物局)',
|
||||||
"ykfdsjccl": 0
|
ykfdsjccl: 0
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
let res = {
|
const res = {
|
||||||
"code": 0,
|
code: 0,
|
||||||
"msg": "success",
|
msg: 'success',
|
||||||
"data": {
|
data: {
|
||||||
"PageCount": "2115",
|
PageCount: '2115',
|
||||||
"data": sjzyArray,
|
data: sjzyArray,
|
||||||
"rows": "10573"
|
rows: '10573'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let keyObj = {
|
const keyObj = {
|
||||||
'数据资源': {
|
"数据资源": {
|
||||||
idKey: 'zycode',
|
|
||||||
nameKey: 'zyname'
|
|
||||||
},
|
|
||||||
'组件服务': {
|
|
||||||
idKey: 'id',
|
idKey: 'id',
|
||||||
nameKey: 'name'
|
nameKey: 'name'
|
||||||
},
|
},
|
||||||
|
"组件服务": {
|
||||||
|
idKey: 'id',
|
||||||
|
nameKey: 'name'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
type: {
|
type: {
|
||||||
type: String,
|
type: String,
|
||||||
default: ""
|
default: ''
|
||||||
},
|
},
|
||||||
nameArray: {
|
nameArray: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => ["未选择名称", "已选择名称"],
|
default: () => ['未选择名称', '已选择名称']
|
||||||
},
|
},
|
||||||
// 最多选择的数据个数
|
// 最多选择的数据个数
|
||||||
maxNum: {
|
maxNum: {
|
||||||
|
@ -160,10 +181,10 @@ export default {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: () => {
|
default: () => {
|
||||||
return {
|
return {
|
||||||
methods: "get",
|
methods: 'get',
|
||||||
url: "",
|
url: '',
|
||||||
postData: {}
|
postData: {}
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -175,96 +196,159 @@ export default {
|
||||||
selectedArray: [],
|
selectedArray: [],
|
||||||
allData: [],
|
allData: [],
|
||||||
displayList: [], // 用于展示的list
|
displayList: [], // 用于展示的list
|
||||||
};
|
total: 0,
|
||||||
|
currentPage: 1,
|
||||||
|
newNum: 1,
|
||||||
|
searchValue: ''
|
||||||
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
showModal (newVal) {
|
showModal (newVal) {
|
||||||
if (newVal) {
|
if (newVal) {
|
||||||
this.getData();
|
this.getData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
newNum (newVal) {
|
||||||
|
if (newVal) {
|
||||||
|
this.getDataParams.postData.pageNum = newVal
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
searchValue (newVal) {
|
||||||
|
if (newVal) {
|
||||||
|
this.getDataParams.postData.serviceName = newVal
|
||||||
|
this.getData()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async getDataInfo (dataForm) {
|
async getDataInfo (dataForm) {
|
||||||
await this.getData();
|
await this.getData()
|
||||||
let arr = [];
|
const arr = []
|
||||||
let attrValue = dataForm.fuseResourceList.filter(v => v.type == this.type);
|
const attrValue = dataForm.fuseResourceList.filter(v => v.type == this.type)
|
||||||
if (attrValue.length > 0) {
|
if (attrValue.length > 0) {
|
||||||
attrValue.map(val => {
|
attrValue.map(val => {
|
||||||
let _obj = {
|
const _obj = {
|
||||||
type: val.type,
|
type: val.type,
|
||||||
id: val.resourceId,
|
id: val.resourceId,
|
||||||
name: val.resource && val.resource.name
|
name: val.resource && val.resource.name
|
||||||
};
|
}
|
||||||
arr.push(_obj);
|
arr.push(_obj)
|
||||||
});
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 展示
|
// 展示
|
||||||
this.displayList = JSON.parse(JSON.stringify(arr));
|
this.displayList = JSON.parse(JSON.stringify(arr))
|
||||||
// 已选中
|
// 已选中
|
||||||
this.selectedArray = arr.map(v => v.id);
|
this.selectedArray = arr.map(v => v.id)
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
console.log(999, this.displayList);
|
console.log(999, this.displayList)
|
||||||
});
|
})
|
||||||
},
|
},
|
||||||
// 获取列表
|
// 获取列表
|
||||||
getData () {
|
getData () {
|
||||||
if (this.getDataParams.url === '') {
|
if (this.getDataParams.url === '') {
|
||||||
return;
|
return
|
||||||
}
|
}
|
||||||
|
if (this.type === '组件服务') {
|
||||||
this.$http[this.getDataParams.methods](this.getDataParams.url, {
|
this.$http[this.getDataParams.methods](this.getDataParams.url, {
|
||||||
params: this.getDataParams.postData
|
params: this.getDataParams.postData
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
console.log('res.data----获取列表-------->', res.data);
|
console.log('res.data----获取列表-------->', res.data)
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.msg);
|
return this.$message.error(res.msg)
|
||||||
}
|
}
|
||||||
this.transferData = [];
|
this.transferData = []
|
||||||
this.allData = [];
|
this.allData = [];
|
||||||
(res.data.data || []).map(v => {
|
(res.data.data || []).map(v => {
|
||||||
this.transferData.push({
|
this.transferData.push({
|
||||||
type: this.type,
|
type: this.type,
|
||||||
id: v[keyObj[this.type].idKey],
|
id: v[keyObj[this.type].idKey],
|
||||||
name: v[keyObj[this.type].nameKey] || "--"
|
name: v[keyObj[this.type].nameKey] || '--'
|
||||||
});
|
|
||||||
});
|
|
||||||
this.allData = JSON.parse(JSON.stringify(this.transferData));
|
|
||||||
}).catch(err => {
|
|
||||||
this.$message.error(err);
|
|
||||||
})
|
})
|
||||||
|
})
|
||||||
|
this.allData = JSON.parse(JSON.stringify(this.transferData))
|
||||||
|
console.log(this.allData, 'this.transferData')
|
||||||
|
}).catch(err => {
|
||||||
|
this.$message.error(err)
|
||||||
|
})
|
||||||
|
} else if (this.type === '数据资源') {
|
||||||
|
this.getDataParams.postData.pageNum = this.newNum
|
||||||
|
this.$http[this.getDataParams.methods](this.getDataParams.url,
|
||||||
|
this.getDataParams.postData
|
||||||
|
).then(res => {
|
||||||
|
console.log('res.data----获取列表-------->', res.data)
|
||||||
|
this.total = Number(res.data.data.rows)
|
||||||
|
if (res.data.code !== 0) {
|
||||||
|
return this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
this.transferData = []
|
||||||
|
this.allData = [];
|
||||||
|
(res.data.data.data || []).map(v => {
|
||||||
|
this.transferData.push({
|
||||||
|
type: this.type,
|
||||||
|
id: v.guid,
|
||||||
|
name: v.zyname || '--'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.allData = JSON.parse(JSON.stringify(this.transferData))
|
||||||
|
}).catch(err => {
|
||||||
|
this.$message.error(err)
|
||||||
|
})
|
||||||
|
}
|
||||||
},
|
},
|
||||||
filterMethod (query, item) {
|
filterMethod (query, item) {
|
||||||
return item.name && item.name.indexOf(query) > -1;
|
console.log('1111111111111111111111111')
|
||||||
|
return item.name && item.name.indexOf(query) > -1
|
||||||
},
|
},
|
||||||
confirmSubmitHandle () {
|
confirmSubmitHandle () {
|
||||||
if (this.selectedArray.length > this.maxNum) {
|
if (this.selectedArray.length > this.maxNum) {
|
||||||
return this.$message.error("最多选择十条数据!");
|
return this.$message.error('最多选择十条数据!')
|
||||||
}
|
}
|
||||||
this.showModal = false;
|
this.showModal = false
|
||||||
this.displayList = [];
|
this.displayList = []
|
||||||
this.allData.map(v => {
|
this.allData.map(v => {
|
||||||
if (this.selectedArray.includes(v.id)) {
|
if (this.selectedArray.includes(v.id)) {
|
||||||
this.displayList.push(v);
|
this.displayList.push(v)
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
this.$emit("update", {
|
this.$emit('update', {
|
||||||
title: this.type,
|
title: this.type,
|
||||||
list: this.selectedArray
|
list: this.selectedArray
|
||||||
});
|
})
|
||||||
},
|
},
|
||||||
getDisplay (displayList) {
|
getDisplay (displayList) {
|
||||||
this.displayList = []
|
this.displayList = []
|
||||||
this.displayList = displayList
|
this.displayList = displayList
|
||||||
},
|
},
|
||||||
close () {
|
close () {
|
||||||
this.showModal = false;
|
this.showModal = false
|
||||||
this.selectedArray = [];
|
// this.selectedArray = []
|
||||||
this.allData = [];
|
this.allData = []
|
||||||
this.transferData = [];
|
this.transferData = []
|
||||||
},
|
},
|
||||||
|
pageCurrentChangeHandle (val) {
|
||||||
|
console.log(this.newNum, val, 'wowowo')
|
||||||
|
this.newNum = val
|
||||||
},
|
},
|
||||||
components: { InfrastructureModal, DisplayList }
|
clickOpen () {
|
||||||
|
this.searchValue = ''
|
||||||
|
this.getDataParams.postData.serviceName = ''
|
||||||
|
this.currentPage = 1
|
||||||
|
this.showModal = true
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
rest () {
|
||||||
|
this.currentPage = 1
|
||||||
|
this.searchValue = ''
|
||||||
|
this.getDataParams.postData.serviceName = ''
|
||||||
|
this.getData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: { InfrastructureModal, DisplayList },
|
||||||
|
mounted () {
|
||||||
|
console.log(this.type, 'this.type')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
@ -355,4 +439,37 @@ export default {
|
||||||
height: calc(100% - 102px);
|
height: calc(100% - 102px);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.dataTransfer {
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
::v-deep .el-transfer {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .el-transfer-panel {
|
||||||
|
width: 39.5%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .el-transfer-panel__body {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
::v-deep .el-transfer-panel__list {
|
||||||
|
height: calc(100% - 102px);
|
||||||
|
margin-top: 4rem;
|
||||||
|
}
|
||||||
|
::v-deep .el-input {
|
||||||
|
position: absolute;
|
||||||
|
font-size: 14px;
|
||||||
|
display: inline-block;
|
||||||
|
width: 30%;
|
||||||
|
top: 52px;
|
||||||
|
left: 12px;
|
||||||
|
}
|
||||||
|
.restClick {
|
||||||
|
position: absolute;
|
||||||
|
top: 52px;
|
||||||
|
left: 284px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -114,7 +114,7 @@ export const getResourceByDept = (data, success, fail) => {
|
||||||
Request({
|
Request({
|
||||||
methods: 'get',
|
methods: 'get',
|
||||||
// url: '/resource/getByDept',
|
// url: '/resource/getByDept',
|
||||||
url: '/workdynamics/getDeptWork',
|
url: '/workdynamics/page',
|
||||||
data
|
data
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
success && success(res)
|
success && success(res)
|
||||||
|
|
|
@ -86,7 +86,8 @@ export default {
|
||||||
getResourceByDept () {
|
getResourceByDept () {
|
||||||
const data = {
|
const data = {
|
||||||
limit: 5,
|
limit: 5,
|
||||||
page: 1
|
page: 1,
|
||||||
|
name: ''
|
||||||
}
|
}
|
||||||
this.loadingDynamic = true
|
this.loadingDynamic = true
|
||||||
Apis.getResourceByDept(
|
Apis.getResourceByDept(
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
<!--
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-07-05 12:53:03
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-08-26 10:24:16
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="center-view">
|
<div class="center-view">
|
||||||
<!-- 频率 -->
|
<!-- 频率 -->
|
||||||
|
@ -14,7 +21,7 @@ import RiskView from './risk-view.vue'
|
||||||
import TrendView from './trend-view.vue'
|
import TrendView from './trend-view.vue'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
components: { frequencyTop5View, TrendView, RiskView },
|
components: { frequencyTop5View, TrendView, RiskView }
|
||||||
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import * as echarts from 'echarts';
|
import * as echarts from 'echarts'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
dataListCopy: [],
|
dataListCopy: [],
|
||||||
myChart: null,
|
myChart: null
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
|
@ -33,41 +33,41 @@ export default {
|
||||||
colorArray: {
|
colorArray: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => [
|
default: () => [
|
||||||
'#fe845e', '#ff3e55', '#d5c438', '#ff9999', '#9c78ed', '#48c760', '#48c6c7', '#0058e1',
|
'#fe845e', '#ff3e55', '#d5c438', '#ff9999', '#9c78ed', '#48c760', '#48c6c7', '#0058e1'
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
dataList: {
|
dataList: {
|
||||||
handler (newVal, oldVal) {
|
handler (newVal, oldVal) {
|
||||||
if (newVal) {
|
if (newVal) {
|
||||||
this.dataListCopy = newVal;
|
this.dataListCopy = newVal
|
||||||
this.initChart()
|
this.initChart()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
deep: true,
|
deep: true,
|
||||||
immediate: true
|
immediate: true
|
||||||
},
|
}
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
initChart () {
|
initChart () {
|
||||||
var chartDom = document.getElementById(this.id);
|
var chartDom = document.getElementById(this.id)
|
||||||
if (this.myChart) {
|
if (this.myChart) {
|
||||||
this.myChart.dispose()
|
this.myChart.dispose()
|
||||||
}
|
}
|
||||||
this.myChart = chartDom && echarts.init(chartDom);
|
this.myChart = chartDom && echarts.init(chartDom)
|
||||||
|
|
||||||
let lengendArr = this.dataListCopy.filter(v => v.name);
|
const lengendArr = this.dataListCopy.filter(v => v.name)
|
||||||
let total = 0;
|
let total = 0
|
||||||
this.dataListCopy.map(v => {
|
this.dataListCopy.map(v => {
|
||||||
if (v.value || v.value === 0) {
|
if (v.value || v.value === 0) {
|
||||||
total = total + Number(v.value || 0)
|
total = total + Number(v.value || 0)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
let option = {
|
const option = {
|
||||||
"animation": true,
|
animation: true,
|
||||||
title: [
|
title: [
|
||||||
{
|
{
|
||||||
text: '{val|' + total + '} {unit|' + '个' + '}',
|
text: '{val|' + total + '} {unit|' + '个' + '}',
|
||||||
|
@ -85,11 +85,11 @@ export default {
|
||||||
fontSize: 16,
|
fontSize: 16,
|
||||||
fontWeight: 'normal',
|
fontWeight: 'normal',
|
||||||
color: '#212121',
|
color: '#212121',
|
||||||
padding: [80, 0],
|
padding: [80, 0]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
],
|
],
|
||||||
tooltip: {
|
tooltip: {
|
||||||
triagger: 'item',
|
triagger: 'item',
|
||||||
|
@ -101,90 +101,90 @@ export default {
|
||||||
str = `<span style="display:inline-block;margin-right:5px;
|
str = `<span style="display:inline-block;margin-right:5px;
|
||||||
border-radius:10px;width:10px;height:10px;background-color:${params.color};"></span>${params.name}: ${params.value}`
|
border-radius:10px;width:10px;height:10px;background-color:${params.color};"></span>${params.name}: ${params.value}`
|
||||||
}
|
}
|
||||||
return str;
|
return str
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"legend": {
|
legend: {
|
||||||
type: 'scroll',
|
type: 'scroll',
|
||||||
"width": "90%",
|
width: '90%',
|
||||||
"left": "center",
|
left: 'center',
|
||||||
"textStyle": {
|
textStyle: {
|
||||||
"color": "#212121",
|
color: '#212121',
|
||||||
"fontSize": 12
|
fontSize: 12
|
||||||
},
|
},
|
||||||
"icon": "circle",
|
icon: 'circle',
|
||||||
"right": "0",
|
right: '0',
|
||||||
"bottom": "30",
|
bottom: '30',
|
||||||
// "padding": [10, 60],
|
// "padding": [10, 60],
|
||||||
"itemGap": 10,
|
itemGap: 10,
|
||||||
"data": lengendArr
|
data: lengendArr
|
||||||
},
|
},
|
||||||
"series": [{
|
series: [{
|
||||||
"type": "pie",
|
type: 'pie',
|
||||||
"center": ["50%", "40%"],
|
center: ['50%', '40%'],
|
||||||
"radius": ["50%", "63%"],
|
radius: ['50%', '63%'],
|
||||||
"color": this.colorArray,
|
color: this.colorArray,
|
||||||
"startAngle": 135,
|
startAngle: 135,
|
||||||
label: {
|
label: {
|
||||||
show: false
|
show: false
|
||||||
},
|
},
|
||||||
"emphasis": {
|
emphasis: {
|
||||||
"label": {
|
label: {
|
||||||
"show": false,
|
show: false,
|
||||||
"formatter": "{b|{b}:} {per|{d}%} ",
|
formatter: '{b|{b}:} {per|{d}%} ',
|
||||||
"backgroundColor": "rgba(255, 147, 38, 0)",
|
backgroundColor: 'rgba(255, 147, 38, 0)',
|
||||||
"borderColor": "transparent",
|
borderColor: 'transparent',
|
||||||
"borderRadius": 4,
|
borderRadius: 4,
|
||||||
"rich": {
|
rich: {
|
||||||
"a": {
|
a: {
|
||||||
"color": "#999",
|
color: '#999',
|
||||||
"lineHeight": 22,
|
lineHeight: 22,
|
||||||
"align": "center"
|
align: 'center'
|
||||||
},
|
},
|
||||||
"hr": {
|
hr: {
|
||||||
"borderColor": "#aaa",
|
borderColor: '#aaa',
|
||||||
"width": "100%",
|
width: '100%',
|
||||||
"borderWidth": 1,
|
borderWidth: 1,
|
||||||
"height": 0
|
height: 0
|
||||||
},
|
},
|
||||||
"b": {
|
b: {
|
||||||
"color": "#fff",
|
color: '#fff',
|
||||||
"fontSize": 18,
|
fontSize: 18,
|
||||||
"lineHeight": 33
|
lineHeight: 33
|
||||||
},
|
},
|
||||||
"c": {
|
c: {
|
||||||
"fontSize": 14,
|
fontSize: 14,
|
||||||
"color": "#eee"
|
color: '#eee'
|
||||||
},
|
},
|
||||||
"per": {
|
per: {
|
||||||
"color": "#FDF44E",
|
color: '#FDF44E',
|
||||||
"fontSize": 25,
|
fontSize: 25,
|
||||||
"padding": [5, 6],
|
padding: [5, 6],
|
||||||
"borderRadius": 2
|
borderRadius: 2
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data: this.dataListCopy,
|
data: this.dataListCopy
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "pie",
|
type: 'pie',
|
||||||
"center": ["50%", "40%"],
|
center: ['50%', '40%'],
|
||||||
"radius": ["38%", "39%"],
|
radius: ['38%', '39%'],
|
||||||
"label": {
|
label: {
|
||||||
"show": false
|
show: false
|
||||||
},
|
},
|
||||||
hoverAnimation: false,
|
hoverAnimation: false,
|
||||||
showTooltip: false,
|
showTooltip: false,
|
||||||
color: ['#d8dde8'],
|
color: ['#d8dde8'],
|
||||||
"data": [{
|
data: [{
|
||||||
"value": 0,
|
value: 0,
|
||||||
"name": "线",
|
name: '线'
|
||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
this.myChart && option && this.myChart.setOption(option, true);
|
this.myChart && option && this.myChart.setOption(option, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -100,7 +100,19 @@ import processModule from '@/mixins/process-module'
|
||||||
export default {
|
export default {
|
||||||
mixins: [mixinViewModule, processModule],
|
mixins: [mixinViewModule, processModule],
|
||||||
data () {
|
data () {
|
||||||
return {}
|
return {
|
||||||
|
mixinViewModuleOptions: {
|
||||||
|
createdIsNeed: false, // 此页面是否在创建时,调用查询数据列表接口?
|
||||||
|
activatedIsNeed: false, // 此页面是否在激活(进入)时,调用查询数据列表接口?
|
||||||
|
getDataListURL: '', // 数据列表接口,API地址
|
||||||
|
getDataListIsPage: false, // 数据列表接口,是否需要分页?
|
||||||
|
deleteURL: '', // 删除接口,API地址
|
||||||
|
deleteIsBatch: false, // 删除接口,是否需要批量?
|
||||||
|
deleteIsBatchKey: 'id', // 删除接口,批量状态下由那个key进行标记操作?比如:pid,uid...
|
||||||
|
exportURL: '', // 导出接口,API地址
|
||||||
|
requestCallback: null // 获取列表以后执行的回调
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
dataInfo: {
|
dataInfo: {
|
||||||
|
|
|
@ -61,7 +61,7 @@ export default {
|
||||||
)
|
)
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
console.log(res.data.data)
|
console.log(res.data.data)
|
||||||
if (res.data.data) {
|
if (res.data.data && res.data.data.length > 0) {
|
||||||
this.topData = res.data.data
|
this.topData = res.data.data
|
||||||
this.oneData = this.topData[0].count
|
this.oneData = this.topData[0].count
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -91,6 +91,7 @@ export default {
|
||||||
// if (res.data.code !== 0) {
|
// if (res.data.code !== 0) {
|
||||||
// return
|
// return
|
||||||
// }
|
// }
|
||||||
|
if (res.data.data && res.data.data.length > 0) {
|
||||||
this.data = res.data.data[0].values
|
this.data = res.data.data[0].values
|
||||||
this.data.map((item) => {
|
this.data.map((item) => {
|
||||||
const time = moment(item[0] * 1000).format('YYYY-MM-DD')
|
const time = moment(item[0] * 1000).format('YYYY-MM-DD')
|
||||||
|
@ -104,6 +105,13 @@ export default {
|
||||||
xaxis: this.ydata,
|
xaxis: this.ydata,
|
||||||
ydata: this.xaxis
|
ydata: this.xaxis
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
this.trendChartData = {
|
||||||
|
xaxis: [],
|
||||||
|
ydata: []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
trendLineChart('trendId', this.trendChartData)
|
trendLineChart('trendId', this.trendChartData)
|
||||||
})
|
})
|
||||||
|
|
|
@ -41,7 +41,7 @@ export default {
|
||||||
deptTodoView,
|
deptTodoView,
|
||||||
BottomView,
|
BottomView,
|
||||||
CenterView,
|
CenterView,
|
||||||
DeptChartView,
|
DeptChartView
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
@ -74,15 +74,15 @@ export default {
|
||||||
resourceColor: ['#7b2cff', '#fd5151', , '#2ca1ff', '#0adbfa', '#febe13', '#65e5dd', '#f071ff', '#85f67a'],
|
resourceColor: ['#7b2cff', '#fd5151', , '#2ca1ff', '#0adbfa', '#febe13', '#65e5dd', '#f071ff', '#85f67a'],
|
||||||
// 部门申请
|
// 部门申请
|
||||||
applyData: [],
|
applyData: [],
|
||||||
applyColor: ["#5085f2", "#e75fc3", "#f87be2", "#f2719a", "#fca4bb", "#f59a8f", "#fdb301", "#57e7ec", "#cf9ef1"],
|
applyColor: ['#5085f2', '#e75fc3', '#f87be2', '#f2719a', '#fca4bb', '#f59a8f', '#fdb301', '#57e7ec', '#cf9ef1'],
|
||||||
// 部门需求
|
// 部门需求
|
||||||
requireData: [],
|
requireData: [],
|
||||||
requireColor: ['#FD866A', '#9E87FF', '#58D5FF', '#73DDFF', '#73ACFF', '#FDD56A', '#FDB36A',],
|
requireColor: ['#FD866A', '#9E87FF', '#58D5FF', '#73DDFF', '#73ACFF', '#FDD56A', '#FDB36A'],
|
||||||
loadingToDo: false,
|
loadingToDo: false,
|
||||||
loadingHasToDo: false,
|
loadingHasToDo: false,
|
||||||
loadingResource: false,
|
loadingResource: false,
|
||||||
loadingApply: false,
|
loadingApply: false,
|
||||||
loadingRequire: false,
|
loadingRequire: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
|
@ -100,118 +100,115 @@ export default {
|
||||||
methods: {
|
methods: {
|
||||||
// 待办
|
// 待办
|
||||||
getToDo () {
|
getToDo () {
|
||||||
this.loadingToDo = true;
|
this.loadingToDo = true
|
||||||
let data = {
|
const data = {
|
||||||
limit: 5,
|
limit: 5,
|
||||||
page: 1,
|
page: 1
|
||||||
}
|
}
|
||||||
Apis.getToDoTask(data, res => {
|
Apis.getToDoTask(data, res => {
|
||||||
this.loadingToDo = false;
|
this.loadingToDo = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.data.msg)
|
return this.$message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res----待办-------->', res.data);
|
console.log('res----待办-------->', res.data)
|
||||||
this.toToData.list = res.data.data.records || []
|
this.toToData.list = res.data.data.records || []
|
||||||
this.toToData.num = res.data.data.total || 0
|
this.toToData.num = res.data.data.total || 0
|
||||||
}, err => {
|
}, err => {
|
||||||
this.$message.error(err);
|
this.$message.error(err)
|
||||||
this.loadingToDo = false;
|
this.loadingToDo = false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 已办
|
// 已办
|
||||||
getHasToDo () {
|
getHasToDo () {
|
||||||
let data = {
|
const data = {
|
||||||
limit: 5,
|
limit: 5,
|
||||||
page: 1,
|
page: 1
|
||||||
}
|
}
|
||||||
this.loadingHasToDo = true;
|
this.loadingHasToDo = true
|
||||||
Apis.getHasToDoTask(data, res => {
|
Apis.getHasToDoTask(data, res => {
|
||||||
this.loadingHasToDo = false;
|
this.loadingHasToDo = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.data.msg)
|
return this.$message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res----已办-------->', res.data);
|
console.log('res----已办-------->', res.data)
|
||||||
this.hasToDodoData.list = res.data.data.records || []
|
this.hasToDodoData.list = res.data.data.records || []
|
||||||
this.hasToDodoData.num = res.data.data.total || 0
|
this.hasToDodoData.num = res.data.data.total || 0
|
||||||
|
|
||||||
}, err => {
|
}, err => {
|
||||||
this.$message.error(err)
|
this.$message.error(err)
|
||||||
this.loadingHasToDo = false;
|
this.loadingHasToDo = false
|
||||||
console.log('err-----已办------->', err);
|
console.log('err-----已办------->', err)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 部门上架
|
// 部门上架
|
||||||
getShelvesTotal () {
|
getShelvesTotal () {
|
||||||
this.loadingResource = true;
|
this.loadingResource = true
|
||||||
Apis.getTotalByDept({}, res => {
|
Apis.getTotalByDept({}, res => {
|
||||||
this.loadingResource = false;
|
this.loadingResource = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.data.msg)
|
return this.$message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res----部门上架-------->', res.data);
|
console.log('res----部门上架-------->', res.data)
|
||||||
this.resourceData = this.formatList(res.data.data.total || [])
|
this.resourceData = this.formatList(res.data.data.total || [])
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.resourceChart.initChart(this.resourceData)
|
this.$refs.resourceChart.initChart(this.resourceData)
|
||||||
})
|
})
|
||||||
}, err => {
|
}, err => {
|
||||||
this.$message.error(err)
|
this.$message.error(err)
|
||||||
this.loadingResource = false;
|
this.loadingResource = false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 部门申请
|
// 部门申请
|
||||||
getApplyTotal () {
|
getApplyTotal () {
|
||||||
this.loadingApply = true;
|
this.loadingApply = true
|
||||||
Apis.getApply({}, res => {
|
Apis.getApply({}, res => {
|
||||||
this.loadingApply = false;
|
this.loadingApply = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.data.msg)
|
return this.$message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res----部门申请-------->', res.data);
|
console.log('res----部门申请-------->', res.data)
|
||||||
this.applyData = this.formatList(res.data.data.total || [])
|
this.applyData = this.formatList(res.data.data.total || [])
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
console.log('this.applyData------------>', this.applyData);
|
console.log('this.applyData------------>', this.applyData)
|
||||||
this.$refs.applyChart.initChart(this.applyData)
|
this.$refs.applyChart.initChart(this.applyData)
|
||||||
})
|
})
|
||||||
}, err => {
|
}, err => {
|
||||||
this.$message.error(err)
|
this.$message.error(err)
|
||||||
this.loadingApply = false;
|
this.loadingApply = false
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
formatList (list = [], nameStr = 'type') {
|
formatList (list = [], nameStr = 'type') {
|
||||||
let arr = []
|
const arr = []
|
||||||
list.map(v => {
|
list.map(v => {
|
||||||
let obj = {}
|
const obj = {}
|
||||||
obj.name = v[nameStr];
|
obj.name = v[nameStr]
|
||||||
obj.value = v.count;
|
obj.value = v.count
|
||||||
arr.push(obj)
|
arr.push(obj)
|
||||||
})
|
})
|
||||||
return arr;
|
return arr
|
||||||
},
|
},
|
||||||
// 部门需求
|
// 部门需求
|
||||||
getRequireTotal () {
|
getRequireTotal () {
|
||||||
this.loadingRequire = true;
|
this.loadingRequire = true
|
||||||
Apis.getRequire({}, res => {
|
Apis.getRequire({}, res => {
|
||||||
this.loadingRequire = false;
|
this.loadingRequire = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return this.$message.error(res.data.msg)
|
return this.$message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res----部门需求-------->', res.data);
|
console.log('res----部门需求-------->', res.data)
|
||||||
this.requireData = this.formatList(res.data.data.total || [], 'flag')
|
this.requireData = this.formatList(res.data.data.total || [], 'flag')
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.requireChart.initChart(this.requireData)
|
this.$refs.requireChart.initChart(this.requireData)
|
||||||
})
|
})
|
||||||
|
|
||||||
}, err => {
|
}, err => {
|
||||||
this.$message.error(err)
|
this.$message.error(err)
|
||||||
this.loadingRequire = false;
|
this.loadingRequire = false
|
||||||
})
|
})
|
||||||
},
|
}
|
||||||
|
|
||||||
},
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.margin-h-16 {
|
.margin-h-16 {
|
||||||
margin: 0 16px;
|
margin: 0 16px;
|
||||||
|
|
|
@ -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-08-23 16:38:21
|
* @LastEditTime: 2022-08-29 09:55:26
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
-->
|
-->
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -26,47 +26,6 @@
|
||||||
<link href="<%= BASE_URL %>static/css/loading.css" rel="stylesheet" />
|
<link href="<%= BASE_URL %>static/css/loading.css" rel="stylesheet" />
|
||||||
<script>
|
<script>
|
||||||
</script>
|
</script>
|
||||||
<!-- 站点配置 -->
|
|
||||||
<script>
|
|
||||||
window.SITE_CONFIG = {};
|
|
||||||
// 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['websocketURL'] = '15.72.183.90:8000/renren-admin';
|
|
||||||
// window.SITE_CONFIG['POI_URL'] = 'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address';
|
|
||||||
// 包头
|
|
||||||
// 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://192.168.124.243:9797';
|
|
||||||
window.SITE_CONFIG['previewUrl'] = 'http://192.168.124.243:9796/';
|
|
||||||
window.SITE_CONFIG['frontUrl'] = 'http://192.168.124.243:9796/document/#/devModelFile/';
|
|
||||||
window.SITE_CONFIG['apiURL'] = 'http://192.168.124.243:8888/renren-admin';
|
|
||||||
window.SITE_CONFIG['websocketURL'] = '192.168.124.243:8888/renren-admin';
|
|
||||||
// window.SITE_CONFIG['POI_URL'] = 'http://192.168.124.243:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address';
|
|
||||||
// 西海岸版本
|
|
||||||
// window.SITE_CONFIG['backUrl'] = 'http://10.134.135.9:9797';
|
|
||||||
// window.SITE_CONFIG['previewUrl'] = 'http://10.134.135.9:9796/';
|
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://10.134.135.9:9796/document/#/devModelFile/';
|
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://10.134.135.9:8888/renren-admin';
|
|
||||||
// 开发
|
|
||||||
// window.SITE_CONFIG['backUrl'] = 'http://localhost:8001';
|
|
||||||
// window.SITE_CONFIG['previewUrl'] = 'http://192.168.124.236:9796/';
|
|
||||||
// window.SITE_CONFIG['frontUrl'] = 'http://192.168.124.236:9796/document/#/devModelFile/';
|
|
||||||
// window.SITE_CONFIG['apiURL'] = 'http://192.168.124.236:8888/renren-admin';
|
|
||||||
// window.SITE_CONFIG['websocketURL'] = '192.168.124.236:8888/renren-admin';
|
|
||||||
// window.SITE_CONFIG['POI_URL'] = 'http://192.168.124.236:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address';
|
|
||||||
// 穿透版本
|
|
||||||
// window.SITE_CONFIG['backUrl'] = 'http://124.222.94.39:9797';
|
|
||||||
// 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['apiURL'] = 'http://124.222.94.39:8888/renren-admin';
|
|
||||||
</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">
|
||||||
<link href="./leaflet/dist/leaflet/iclient-leaflet.css" rel="stylesheet">
|
<link href="./leaflet/dist/leaflet/iclient-leaflet.css" rel="stylesheet">
|
||||||
<link href="./leaflet/libs/leaflet/plugins/leaflet.draw/leaflet.draw.css" rel="stylesheet">
|
<link href="./leaflet/libs/leaflet/plugins/leaflet.draw/leaflet.draw.css" rel="stylesheet">
|
||||||
|
@ -74,10 +33,9 @@
|
||||||
<link href="./leaflet/libs/leaflet.markercluster/dist/MarkerCluster.Default.css" rel="stylesheet">
|
<link href="./leaflet/libs/leaflet.markercluster/dist/MarkerCluster.Default.css" rel="stylesheet">
|
||||||
<link href="./supermap/css/supermap.css" rel="stylesheet">
|
<link href="./supermap/css/supermap.css" rel="stylesheet">
|
||||||
<link href="./static/css/widgets.css" rel="stylesheet">
|
<link href="./static/css/widgets.css" rel="stylesheet">
|
||||||
|
<!-- 平台配置文件 -->
|
||||||
<script type="text/javascript" src="./static/config/basicConfig.js"></script>
|
<script type="text/javascript" src="./static/config/basicConfig.js"></script>
|
||||||
<script type="text/javascript" src="./static/config/mapConfig.js"></script>
|
<script type="text/javascript" src="./static/config/mapConfig.js"></script>
|
||||||
<script type="text/javascript" src="./static/config/footerData.js"></script>
|
|
||||||
<script type="text/javascript" src="./static/config/location.js"></script>
|
<script type="text/javascript" src="./static/config/location.js"></script>
|
||||||
<!-- ==========地图相关配置========== -->
|
<!-- ==========地图相关配置========== -->
|
||||||
<script type="text/javascript" src="./leaflet/libs/leaflet/1.3.1/leaflet.js"></script>
|
<script type="text/javascript" src="./leaflet/libs/leaflet/1.3.1/leaflet.js"></script>
|
||||||
|
@ -108,7 +66,16 @@
|
||||||
<!-- 大华平台相关包 -->
|
<!-- 大华平台相关包 -->
|
||||||
<script type="text/javascript" src="./static/js/encrypt.js"></script>
|
<script type="text/javascript" src="./static/js/encrypt.js"></script>
|
||||||
<script type="text/javascript" src="./static/js/DHWs.js"></script>
|
<script type="text/javascript" src="./static/js/DHWs.js"></script>
|
||||||
|
<!-- 站点配置 -->
|
||||||
|
<script>
|
||||||
|
window.SITE_CONFIG = {};
|
||||||
|
window.SITE_CONFIG['backUrl'] = _global.config.backUrl;
|
||||||
|
window.SITE_CONFIG['previewUrl'] = _global.config.previewUrl;
|
||||||
|
window.SITE_CONFIG['frontUrl'] = _global.config.previewUrl + 'document/#/devModelFile/';
|
||||||
|
window.SITE_CONFIG['apiURL'] = 'http://'+ _global.config.websocketURL;
|
||||||
|
window.SITE_CONFIG['websocketURL'] = _global.config.websocketURL;
|
||||||
|
window.SITE_CONFIG['POI_URL'] = _global.config.POI_URL;
|
||||||
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
|
@ -2,55 +2,95 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2020-07-07 16:03:23
|
* @Date: 2020-07-07 16:03:23
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-04-01 10:51:45
|
* @LastEditTime: 2022-08-29 09:57:31
|
||||||
* @Description: 系统静态参数配置
|
* @Description: 系统静态参数配置
|
||||||
*/
|
*/
|
||||||
var _global = {}
|
var _global = {}
|
||||||
var CONFIGITEM = {
|
var CONFIGITEM = {
|
||||||
version: 'qingdao',
|
//version: 'qingdao', //青岛
|
||||||
|
//version: 'xihaian', // 西海岸
|
||||||
|
//version: 'dev', // 开发
|
||||||
|
version: 'test', // 测试
|
||||||
|
//version: 'frp', // 内网穿透
|
||||||
|
vNum: 'v0.8.7.2',
|
||||||
configData: {
|
configData: {
|
||||||
|
// 青岛市大数据局
|
||||||
qingdao: {
|
qingdao: {
|
||||||
// bdMapUrl: 'http://15.2.21.238:9890/tiles-sd/tiles',
|
|
||||||
// bdMapUrl: 'http://15.72.178.129:9890/tiles-sd/tiles',
|
|
||||||
bdMapUrl: 'http://15.72.178.148:9890/tiles-sd/tiles',
|
|
||||||
fileService: 'http://15.72.178.148:1080/files/',
|
|
||||||
websocketService: 'ws://15.72.178.136:8777',
|
|
||||||
gisService: 'http://15.72.178.148:8585',
|
|
||||||
pageOfficeService: 'http://15.72.178.136:9393/',
|
|
||||||
refreshTimerFlag: true,
|
|
||||||
loginInfo: {
|
loginInfo: {
|
||||||
// 视频平台登陆信息
|
// 视频平台登陆信息
|
||||||
// loginIp: '10.132.191.3',
|
|
||||||
loginPort: '8320',
|
|
||||||
// userName: 'chengshiyunnao',
|
|
||||||
// userPwd: 'QDyjj@2021',
|
|
||||||
loginIp: '10.132.191.3',
|
loginIp: '10.132.191.3',
|
||||||
|
loginPort: '8320',
|
||||||
userName: 'ynszdz',
|
userName: 'ynszdz',
|
||||||
userPwd: 'Admin@123',
|
userPwd: 'Admin@123',
|
||||||
channelList: [
|
|
||||||
'37020002001310000022',
|
|
||||||
'37020001001310000210',
|
|
||||||
'37020002001310000026',
|
|
||||||
'37020002001310000031'
|
|
||||||
],
|
|
||||||
channels: [
|
|
||||||
{ channelId: '37020002001310000022' },
|
|
||||||
{ channelId: '37020001001310000210' },
|
|
||||||
{ channelId: '37020002001310000026' },
|
|
||||||
{ channelId: '37020002001310000031' }
|
|
||||||
],
|
|
||||||
name_32:
|
|
||||||
'General_DSS-LightWeight-Client_x86_V2.1.0.2110.R.20211106.exe',
|
|
||||||
url_32:
|
|
||||||
'/static/General_DSS-LightWeight-Client_x86_V2.1.0.2110.R.20211106.exe',
|
|
||||||
name_64:
|
|
||||||
'General_DSS-LightWeight-Client_x64_V2.1.0.2110.R.20211106.exe',
|
|
||||||
url_64:
|
|
||||||
'/static/General_DSS-LightWeight-Client_x64_V2.1.0.2110.R.20211106.exe'
|
|
||||||
},
|
},
|
||||||
MAX_CIRCLE_RADIUS: 20000,
|
backUrl: 'http://15.72.183.90:8001',
|
||||||
maxMapZoom: 10
|
previewUrl: 'http://15.72.183.90:7008/',
|
||||||
|
//frontUrl: 'http://15.72.183.90:7008/document/#/devModelFile/',
|
||||||
|
//apiURL: 'http://15.72.183.90:8000/renren-admin',
|
||||||
|
websocketURL: '15.72.183.90:8000/renren-admin',
|
||||||
|
POI_URL:
|
||||||
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
|
},
|
||||||
|
// 西海岸大数据局
|
||||||
|
xihaian: {
|
||||||
|
loginInfo: {
|
||||||
|
// 视频平台登陆信息
|
||||||
|
loginIp: '',
|
||||||
|
loginPort: '',
|
||||||
|
userName: '',
|
||||||
|
userPwd: '',
|
||||||
|
},
|
||||||
|
backUrl: 'http://10.134.135.9:9797',
|
||||||
|
previewUrl: 'http://10.134.135.9:9796/',
|
||||||
|
websocketURL: '10.134.135.9:8888/renren-admin',
|
||||||
|
POI_URL:
|
||||||
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
|
},
|
||||||
|
// 开发
|
||||||
|
dev: {
|
||||||
|
loginInfo: {
|
||||||
|
// 视频平台登陆信息
|
||||||
|
loginIp: '',
|
||||||
|
loginPort: '',
|
||||||
|
userName: '',
|
||||||
|
userPwd: '',
|
||||||
|
},
|
||||||
|
backUrl: 'http://localhost:8001',
|
||||||
|
previewUrl: 'http://192.168.124.236:9796/',
|
||||||
|
websocketURL: '192.168.124.236:8888/renren-admin',
|
||||||
|
POI_URL:
|
||||||
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
|
},
|
||||||
|
// 测试
|
||||||
|
test: {
|
||||||
|
loginInfo: {
|
||||||
|
// 视频平台登陆信息
|
||||||
|
loginIp: '',
|
||||||
|
loginPort: '',
|
||||||
|
userName: '',
|
||||||
|
userPwd: '',
|
||||||
|
},
|
||||||
|
backUrl: 'http://192.168.124.243:9797',
|
||||||
|
previewUrl: 'http://192.168.124.243:9796/',
|
||||||
|
websocketURL: '192.168.124.243:8888/renren-admin',
|
||||||
|
POI_URL:
|
||||||
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
|
},
|
||||||
|
// 内网穿透
|
||||||
|
frp: {
|
||||||
|
loginInfo: {
|
||||||
|
// 视频平台登陆信息
|
||||||
|
loginIp: '',
|
||||||
|
loginPort: '',
|
||||||
|
userName: '',
|
||||||
|
userPwd: '',
|
||||||
|
},
|
||||||
|
backUrl: 'http://124.222.94.39:9797',
|
||||||
|
previewUrl: 'http://124.222.94.39:9796/',
|
||||||
|
websocketURL: '124.222.94.39:8888/renren-admin',
|
||||||
|
POI_URL:
|
||||||
|
'http://15.72.178.129:8090/iserver/services/addressmatch-qingdaoPOI181015/restjsr/v1/address',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
|
||||||
}
|
}
|
||||||
_global.config = CONFIGITEM.configData[CONFIGITEM.version]
|
_global.config = CONFIGITEM.configData[CONFIGITEM.version]
|
||||||
|
|
|
@ -1,48 +0,0 @@
|
||||||
/*
|
|
||||||
* @Author: zhangfeihu
|
|
||||||
* @Date: 2022-06-16 16:37:31
|
|
||||||
* @LastEditors: hisense.wuhongjian
|
|
||||||
* @LastEditTime: 2022-06-20 16:18:04
|
|
||||||
* @FilePath: \qiantai\front\public\static\config\footerData.js
|
|
||||||
* @Description: 底部菜单数据配置配置
|
|
||||||
*/
|
|
||||||
// const footerDataList = {
|
|
||||||
// 市局
|
|
||||||
// company: {
|
|
||||||
// left: '青岛市大数据发展管理局建设',
|
|
||||||
// right: '海信网络科技股份有限公司'
|
|
||||||
// },
|
|
||||||
// address: [
|
|
||||||
// {
|
|
||||||
// name: '鲁IC备00000000号',
|
|
||||||
// value: '政府标识码3702000106',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: '版权所有:青岛市大数据发展管理局',
|
|
||||||
// value: '地址:山东省青岛市香港中路17号市级机关办公楼',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: '电话:0532-8561234',
|
|
||||||
// value: '传真:0532-2145122',
|
|
||||||
// },
|
|
||||||
// ]
|
|
||||||
// 西海岸
|
|
||||||
// company: {
|
|
||||||
// left: '青岛西海岸新区大数据发展促进局建设',
|
|
||||||
// right: 'v0.81'
|
|
||||||
// },
|
|
||||||
// address: [
|
|
||||||
// {
|
|
||||||
// name: '鲁IC备00000000号',
|
|
||||||
// value: '政府标识码3702000106',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: '版权所有:青岛西海岸新区大数据发展促进局',
|
|
||||||
// value: '地址:青岛市西海岸新区长江中路369号',
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// name: '电话:0532-86986596',
|
|
||||||
// value: '传真:0532-86986596',
|
|
||||||
// },
|
|
||||||
// ]
|
|
||||||
// }
|
|
|
@ -2,12 +2,13 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2020-07-07 16:03:23
|
* @Date: 2020-07-07 16:03:23
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-23 16:38:39
|
* @LastEditTime: 2022-08-29 09:55:56
|
||||||
* @Description: 数据资源参数配置
|
* @Description: 数据资源参数配置
|
||||||
*/
|
*/
|
||||||
//const newLocation = 'qingdao'
|
// eslint-disable-next-line no-undef
|
||||||
|
const newLocation = CONFIGITEM.version
|
||||||
// const newLocation = 'baotou'
|
// const newLocation = 'baotou'
|
||||||
const newLocation = 'qingdao'
|
// const newLocation = 'xihaian'
|
||||||
|
|
||||||
// 数据资源数据
|
// 数据资源数据
|
||||||
const whoShow = {}
|
const whoShow = {}
|
||||||
|
@ -23,7 +24,7 @@ const mapTestNum = {}
|
||||||
// 底部数据
|
// 底部数据
|
||||||
const footerDataList = {}
|
const footerDataList = {}
|
||||||
// qingdao
|
// qingdao
|
||||||
if (newLocation === 'qingdao') {
|
if (newLocation !== 'baotou' && newLocation !== 'xihaian') {
|
||||||
whoShow.itShowQingDao = true
|
whoShow.itShowQingDao = true
|
||||||
infrastructure.deptName = '青岛市大数据发展管理局'
|
infrastructure.deptName = '青岛市大数据发展管理局'
|
||||||
infrastructure.deptId = '1067246875800000066'
|
infrastructure.deptId = '1067246875800000066'
|
||||||
|
@ -38,8 +39,8 @@ if (newLocation === 'qingdao') {
|
||||||
// { name: '个人中心', key: 'personalCenter' },
|
// { name: '个人中心', key: 'personalCenter' },
|
||||||
{ name: '区市站点', key: 'mapTest' },
|
{ name: '区市站点', key: 'mapTest' },
|
||||||
// { name: '后台管理', key: 'houtaiguanli' },
|
// { name: '后台管理', key: 'houtaiguanli' },
|
||||||
{ name: '典型赋能案例', key: 'assignCase' },
|
// { name: '典型赋能案例', key: 'assignCase' },
|
||||||
// { name: '融合服务', key: 'integrationServices' },
|
{ name: '融合服务', key: 'integrationServices' },
|
||||||
{ name: 'CIM专区', key: 'cimSpecialArea' },
|
{ name: 'CIM专区', key: 'cimSpecialArea' },
|
||||||
]
|
]
|
||||||
footerDataList.footerList = {
|
footerDataList.footerList = {
|
||||||
|
@ -502,7 +503,8 @@ else if (newLocation === 'xihaian') {
|
||||||
footerDataList.footerList = {
|
footerDataList.footerList = {
|
||||||
company: {
|
company: {
|
||||||
left: '青岛西海岸新区大数据发展促进局建设',
|
left: '青岛西海岸新区大数据发展促进局建设',
|
||||||
right: 'v0.8.3.3',
|
// eslint-disable-next-line no-undef
|
||||||
|
right: CONFIGITEM.vNum,
|
||||||
},
|
},
|
||||||
address: [
|
address: [
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,21 +2,21 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2020-07-07 16:03:23
|
* @Date: 2020-07-07 16:03:23
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-02 18:19:32
|
* @LastEditTime: 2022-08-25 11:16:44
|
||||||
* @Description: 地图静态参数配置
|
* @Description: 地图静态参数配置
|
||||||
*/
|
*/
|
||||||
var _mapConfig = {}
|
var _mapConfig = {}
|
||||||
|
|
||||||
;(function () {
|
;(function () {
|
||||||
var L = window.L || {}
|
var L = window.L || {}
|
||||||
|
|
||||||
// // 定义底图初始化化参数
|
// // 定义底图初始化化参数
|
||||||
// 请在此处更改你的配置**********************************************
|
// 请在此处更改你的配置**********************************************
|
||||||
var CONFIGKEY = 'qingdao_highgo'
|
// eslint-disable-next-line no-undef
|
||||||
|
var CONFIGKEY = CONFIGITEM.version === 'xihaian' ? 'xihaian' : 'qingdao'
|
||||||
// var CONFIGKEY = 'dev';
|
// var CONFIGKEY = 'dev';
|
||||||
// 请在上面更改你的配置***********************************************
|
// 请在上面更改你的配置***********************************************
|
||||||
var BASECONFIGITEM = {
|
var BASECONFIGITEM = {
|
||||||
qingdao: {
|
xihaian: {
|
||||||
base: 'xihaian',
|
base: 'xihaian',
|
||||||
CURRENT_MAP_OPTIONS: {
|
CURRENT_MAP_OPTIONS: {
|
||||||
// crs: CRS_4490,
|
// crs: CRS_4490,
|
||||||
|
@ -26,7 +26,7 @@ var _mapConfig = {}
|
||||||
zoom: 10,
|
zoom: 10,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
qingdao_highgo: {
|
qingdao: {
|
||||||
DATABASE_TYPE: 'Highgo',
|
DATABASE_TYPE: 'Highgo',
|
||||||
POI_TYPE: 'Supermap', // POI接口类型 'Supermap'、'Amap'、'Survey_Institute'
|
POI_TYPE: 'Supermap', // POI接口类型 'Supermap'、'Amap'、'Survey_Institute'
|
||||||
ISERVER_URL: '15.2.21.238:8090',
|
ISERVER_URL: '15.2.21.238:8090',
|
||||||
|
@ -78,59 +78,6 @@ var _mapConfig = {}
|
||||||
icon: 'other_map.png',
|
icon: 'other_map.png',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
//测试环境地图
|
|
||||||
dev: {
|
|
||||||
DATABASE_TYPE: 'Highgo',
|
|
||||||
POI_TYPE: 'Supermap', // POI接口类型 'Supermap'、'Amap'、'Survey_Institute'
|
|
||||||
ISERVER_URL: '15.2.21.238:8090',
|
|
||||||
WORKPLACE_NAME: 'HIMAP-HIGHGO',
|
|
||||||
MAP_NAME: 'QDMAP',
|
|
||||||
DATASOURCE_NAME: 'HISENSE_map',
|
|
||||||
ATMOSPHERE_URL: 'http://15.2.21.151:9015/service-main',
|
|
||||||
CURRENT_MAP_OPTIONS: {
|
|
||||||
// crs: CRS_4490,
|
|
||||||
center: [36.17, 120.13],
|
|
||||||
maxZoom: 7,
|
|
||||||
minZoom: 0,
|
|
||||||
zoom: 3,
|
|
||||||
},
|
|
||||||
BDMAP_CONFIG: {
|
|
||||||
location: 'qingdao',
|
|
||||||
_initpos: {
|
|
||||||
point: [120.392795, 36.072854],
|
|
||||||
zoom: 2,
|
|
||||||
},
|
|
||||||
_keyframes: [
|
|
||||||
[121.6011191295479, 36.73422934263509],
|
|
||||||
[119.83371870221472, 36.082854],
|
|
||||||
[120.25937000453506, 36.34563716789656],
|
|
||||||
],
|
|
||||||
},
|
|
||||||
MAP_VENDOR: 'Supermap', // 地图厂商 Supermap bdmap 3dbdmap
|
|
||||||
TITLE_LAYER: {
|
|
||||||
mapUrl:
|
|
||||||
'http://15.72.177.174:8195/portalproxy/TileServer/arcgis/rest/services/normal2021/MapServer?key=iOgQotfgfyLvhj6WgfDTpq7F',
|
|
||||||
type: 'tiled',
|
|
||||||
name: '矢量',
|
|
||||||
icon: 'vector_map.png',
|
|
||||||
},
|
|
||||||
TITLE_LAYER_REMOTE: {
|
|
||||||
mapUrl:
|
|
||||||
'http://q3d.qd.gov.cn:8195/portalproxy/s9arfiqe/TileServer/arcgis/rest/services/normal2021_test/MapServer?key=p9PW1ipy9P3QHILzmsNOk8Gc',
|
|
||||||
type: 'tiled',
|
|
||||||
name: '矢量',
|
|
||||||
icon: 'vector_map.png',
|
|
||||||
},
|
|
||||||
// TITLE_LAYER_REMOTE: { mapUrl: 'http://15.72.177.174:8195/portalproxy/TileServer/arcgis/rest/services/normal2021/MapServer?key=iOgQotfgfyLvhj6WgfDTpq7F', type: 'tiled', name: '矢量', icon: 'vector_map.png' },
|
|
||||||
// TITLE_LAYER_REMOTE: { mapUrl: 'http://15.2.21.238:8090/iserver/services/map-ugcv5-QingdaoRemoteImageMap/rest/maps/QingdaoRemoteImageMap', type: 'remote', name: '影像', icon: 'satellite_map.png' },
|
|
||||||
TITLE_LAYER_DARK: {
|
|
||||||
mapUrl:
|
|
||||||
'http://15.2.21.238:8090/iserver/services/map-ugcv5-shandong/rest/maps/shandong',
|
|
||||||
type: 'dark',
|
|
||||||
name: '其他',
|
|
||||||
icon: 'other_map.png',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
var MAPCONFIGMIXTRE = {
|
var MAPCONFIGMIXTRE = {
|
||||||
CURRENT_SERVER_NAME: CONFIGKEY,
|
CURRENT_SERVER_NAME: CONFIGKEY,
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-08-19 14:25:45
|
* @Date: 2022-08-19 14:25:45
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-19 15:25:03
|
* @LastEditTime: 2022-08-27 15:52:54
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
@ -27,7 +27,7 @@ export function cimImgResources(params) {
|
||||||
method: 'get',
|
method: 'get',
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
// cim+算法
|
// CIM+组件
|
||||||
export function cimAssemblyResources() {
|
export function cimAssemblyResources() {
|
||||||
return request({
|
return request({
|
||||||
url: '/resource/cimAssemblyResources',
|
url: '/resource/cimAssemblyResources',
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: hisense.wuhongjian
|
* @Author: hisense.wuhongjian
|
||||||
* @Date: 2022-04-20 17:16:35
|
* @Date: 2022-04-20 17:16:35
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-07-11 19:02:33
|
* @LastEditTime: 2022-08-25 14:13:30
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
import request from '@/utils/request'
|
import request from '@/utils/request'
|
||||||
|
@ -108,7 +108,8 @@ export function getCameraInfoByAreaId(params) {
|
||||||
//能力集市基础设施-摄像头
|
//能力集市基础设施-摄像头
|
||||||
export function getCameraByCondition(params) {
|
export function getCameraByCondition(params) {
|
||||||
return axios.get(
|
return axios.get(
|
||||||
'http://10.134.135.92:9537/data_service/getCamera/getCameraByCondition?' + params,
|
'http://10.134.135.92:9537/data_service/getCamera/getCameraByCondition?' +
|
||||||
|
params,
|
||||||
config2
|
config2
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 35 KiB |
Binary file not shown.
After Width: | Height: | Size: 961 KiB |
Binary file not shown.
After Width: | Height: | Size: 1017 KiB |
Binary file not shown.
After Width: | Height: | Size: 901 KiB |
Binary file not shown.
After Width: | Height: | Size: 985 KiB |
|
@ -134,7 +134,7 @@ export function HieimpMap() {
|
||||||
// console.log('地市级行政区划', result);
|
// console.log('地市级行政区划', result);
|
||||||
// });
|
// });
|
||||||
switch (_mapConfig.config.CURRENT_SERVER_NAME) {
|
switch (_mapConfig.config.CURRENT_SERVER_NAME) {
|
||||||
case 'qingdao_highgo':
|
case 'qingdao':
|
||||||
if (type === 'tiled') {
|
if (type === 'tiled') {
|
||||||
tileMapUrl = _mapConfig.config.TITLE_LAYER.mapUrl
|
tileMapUrl = _mapConfig.config.TITLE_LAYER.mapUrl
|
||||||
} else if (type === 'remote') {
|
} else if (type === 'remote') {
|
||||||
|
@ -144,7 +144,7 @@ export function HieimpMap() {
|
||||||
}
|
}
|
||||||
renderMapFun(mapId, tileMapUrl, centerPoint)
|
renderMapFun(mapId, tileMapUrl, centerPoint)
|
||||||
break
|
break
|
||||||
case 'qingdao':
|
case 'xihaian':
|
||||||
const tileMap = L.map(mapId, {
|
const tileMap = L.map(mapId, {
|
||||||
crs: L.CRS.EPSG4326,
|
crs: L.CRS.EPSG4326,
|
||||||
// renderer: L.svg(),
|
// renderer: L.svg(),
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
/*
|
/*
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-08-22 18:22:16
|
* @Date: 2022-08-22 18:22:16
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-23 09:31:02
|
* @LastEditTime: 2022-08-25 21:05:32
|
||||||
* @Description: 告诉大家这是什么
|
* @Description: 告诉大家这是什么
|
||||||
*/
|
*/
|
||||||
|
|
||||||
const returnLocationStr = () => {
|
const returnLocationStr = () => {
|
||||||
return 'qingdao'
|
// eslint-disable-next-line no-undef
|
||||||
|
return CONFIGITEM.version === 'xihaian' ? 'xihaian' : 'qingdao1'
|
||||||
}
|
}
|
||||||
|
|
||||||
export default returnLocationStr
|
export default returnLocationStr
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
/*
|
||||||
|
* @Author: hisense.wuhongjian
|
||||||
|
* @Date: 2022-08-25 19:41:20
|
||||||
|
* @LastEditors: hisense.wuhongjian
|
||||||
|
* @LastEditTime: 2022-08-25 20:14:53
|
||||||
|
* @Description: 告诉大家这是什么
|
||||||
|
*/
|
||||||
|
export function placeHolderWords(name) {
|
||||||
|
const words = {
|
||||||
|
坐标系: '服务坐标系,如WGS84、CGCS2000等',
|
||||||
|
覆盖区域: '服务覆盖区域,如全国、青岛、城阳区等',
|
||||||
|
切片尺寸: '切片尺寸,切片服务填写,填写瓦片大小,如256*256',
|
||||||
|
切片策略: '切片策略,切片服务填写,如栅格、矢量',
|
||||||
|
最小级别: '地图缩放最小级别,如1、2',
|
||||||
|
最大级别: '地图缩放最大级别,如18、19、20',
|
||||||
|
图层预览地址: '地址,图层预览效果将在详情页展示,如http://xxx.com',
|
||||||
|
服务地址: '服务调用地址',
|
||||||
|
样式服务地址: '样式服务地址,用于获取图层的展示样式,如不同的地图底色样式',
|
||||||
|
}
|
||||||
|
return words[name] || name
|
||||||
|
}
|
|
@ -4,7 +4,8 @@
|
||||||
<div class="banner"></div>
|
<div class="banner"></div>
|
||||||
<div class="mainBox">
|
<div class="mainBox">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<h1>典型赋能案例</h1>
|
<h1 v-if="whoShow1 && whoShow1.itShowQingDao">典型赋能案例</h1>
|
||||||
|
<h1 v-else>赋能案例</h1>
|
||||||
<div></div>
|
<div></div>
|
||||||
<!-- <h3>Enabling Cases</h3> -->
|
<!-- <h3>Enabling Cases</h3> -->
|
||||||
</div>
|
</div>
|
||||||
|
@ -86,7 +87,7 @@
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
// import { pinyin } from 'pinyin-pro'
|
// import { pinyin } from 'pinyin-pro'
|
||||||
// import { Empty } from 'ant-design-vue'
|
// import { Empty } from 'ant-design-vue'
|
||||||
|
const whoShow1 = ref(whoShow)
|
||||||
const router = useRouter()
|
const router = useRouter()
|
||||||
const listBg = ref('')
|
const listBg = ref('')
|
||||||
const contenBox = ref([])
|
const contenBox = ref([])
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-06-17 14:11:08
|
* @Date: 2022-06-17 14:11:08
|
||||||
* @LastEditors: hisense.wuhongjian
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-08-03 11:47:41
|
* @LastEditTime: 2022-08-25 19:52:03
|
||||||
* @Description: 上架
|
* @Description: 上架
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
|
@ -233,7 +233,7 @@
|
||||||
:maxLength="1000"
|
:maxLength="1000"
|
||||||
v-if="item.type == 'input' && item.name.indexOf('名称') == -1"
|
v-if="item.type == 'input' && item.name.indexOf('名称') == -1"
|
||||||
v-model:value="item.note1"
|
v-model:value="item.note1"
|
||||||
:placeholder="'请输入' + item.name"
|
:placeholder="'请输入' + placeHolderWords(item.name)"
|
||||||
@change="changeIiem(item.name, item.note1)"
|
@change="changeIiem(item.name, item.note1)"
|
||||||
/>
|
/>
|
||||||
<a-input
|
<a-input
|
||||||
|
@ -496,6 +496,7 @@
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import VueTemplateDemo from '@/views/personalCenter/VueTemplateDemo'
|
import VueTemplateDemo from '@/views/personalCenter/VueTemplateDemo'
|
||||||
|
import { placeHolderWords } from '@/utils/placeHolder'
|
||||||
import {
|
import {
|
||||||
ref,
|
ref,
|
||||||
defineProps,
|
defineProps,
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="algorithm">
|
<div class="algorithm">
|
||||||
<div class="header">CIM+算法</div>
|
<div class="header">CIM+组件</div>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<div
|
<div
|
||||||
class="item"
|
class="item"
|
||||||
|
|
|
@ -27,7 +27,7 @@
|
||||||
num: 0,
|
num: 0,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'CIM+算法',
|
name: 'CIM+组件',
|
||||||
img: require('@/assets/cimSpecialArea/algorithm.png'),
|
img: require('@/assets/cimSpecialArea/algorithm.png'),
|
||||||
num: 0,
|
num: 0,
|
||||||
},
|
},
|
||||||
|
|
|
@ -8,13 +8,11 @@
|
||||||
></DetalsTitle>
|
></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<!-- 青岛市局 -->
|
<!-- 青岛市局 -->
|
||||||
<div v-if="whoShow1 && whoShow1.itShowQingDao">
|
|
||||||
<div
|
<div
|
||||||
class="content"
|
v-if="whoShow1 && whoShow1.itShowQingDao"
|
||||||
v-for="item in dataFrom.content"
|
style="width: 100%; display: flex; justify-content: center"
|
||||||
:key="item.title"
|
|
||||||
v-show="approveStatus == '通过'"
|
|
||||||
>
|
>
|
||||||
|
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
||||||
<div class="content-left" v-if="item.titleType === '调用接口'">
|
<div class="content-left" v-if="item.titleType === '调用接口'">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<div class="content-left-title">
|
<div class="content-left-title">
|
||||||
|
@ -24,8 +22,16 @@
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.link.name }}</span>
|
<span>{{ item.link.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.link.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.link.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.link.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.link.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
|
@ -91,15 +97,31 @@
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.people.name }}</span>
|
<span>{{ item.people.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.people.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.people.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.people.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.people.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.phone.name }}</span>
|
<span>{{ item.phone.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.phone.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.phone.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.phone.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.phone.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -132,9 +154,13 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="approveStatus !== '通过'" class="contentOther">
|
<!-- <div v-show="approveStatus !== '通过'" class="contentOther">
|
||||||
请申请后查看
|
<img src="~@/assets/detailsAll/uesBefore.png" />
|
||||||
|
<div class="contentOtherRight">
|
||||||
|
<p>请在申请能力后返回查看使用方式</p>
|
||||||
|
<div @click="toView()">进入能力申请</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<!-- 其他 -->
|
<!-- 其他 -->
|
||||||
<div v-else>
|
<div v-else>
|
||||||
|
@ -265,6 +291,9 @@
|
||||||
import { pinyin } from 'pinyin-pro'
|
import { pinyin } from 'pinyin-pro'
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
|
|
||||||
const approveStatus = ref('通过')
|
const approveStatus = ref('通过')
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let dataFrom = ref({
|
let dataFrom = ref({
|
||||||
|
@ -310,6 +339,34 @@
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
|
//立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let obj = true
|
let obj = true
|
||||||
if (!obj) {
|
if (!obj) {
|
||||||
|
@ -451,7 +508,9 @@
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 0.8rem 0;
|
padding: 0.8rem 0;
|
||||||
|
.blur-word {
|
||||||
|
filter: blur(4px);
|
||||||
|
}
|
||||||
.content {
|
.content {
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -583,9 +642,37 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.contentOther {
|
.contentOther {
|
||||||
width: 100%;
|
width: 80%;
|
||||||
height: 0.3rem;
|
height: 4rem;
|
||||||
background: pink;
|
border: 1px dashed #7b98fd;
|
||||||
|
margin-top: 0.3rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.contentOtherRight {
|
||||||
|
p {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
width: 1.3rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
line-height: 0.4rem;
|
||||||
|
background: #0885ff;
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
}
|
||||||
|
div:hover {
|
||||||
|
background: #359bff;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -1,41 +1,64 @@
|
||||||
<!--
|
<!--
|
||||||
* @Author: hisense.liangjunhua
|
* @Author: hisense.liangjunhua
|
||||||
* @Date: 2022-06-09 09:29:29
|
* @Date: 2022-06-09 09:29:29
|
||||||
* @LastEditors: hisense.liangjunhua
|
* @LastEditors: hisense.wuhongjian
|
||||||
* @LastEditTime: 2022-06-13 15:21:26
|
* @LastEditTime: 2022-08-27 15:43:57
|
||||||
* @Description: 应用详情
|
* @Description: 应用详情
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div class="algorithm-on-trial" v-if="flag">
|
<div class="algorithm-on-trial">
|
||||||
<detals-title title="应用详情" type="PROBATION"></detals-title>
|
<detals-title title="应用详情" type="PROBATION"></detals-title>
|
||||||
<div class="main">
|
<div class="main">
|
||||||
<div class="main-left">
|
<div class="main-left">
|
||||||
<p>{{ dataFrom.linkName }}</p>
|
<p>{{ dataFrom.linkName }}</p>
|
||||||
|
<a-tooltip v-if="flag">
|
||||||
|
<template #title>{{ dataFrom.link }}</template>
|
||||||
<p style="cursor: pointer" @click="clickLink(dataFrom.link)">
|
<p style="cursor: pointer" @click="clickLink(dataFrom.link)">
|
||||||
|
{{ dataFrom.link || '暂无' }}
|
||||||
|
</p>
|
||||||
|
</a-tooltip>
|
||||||
|
<a-tooltip v-else>
|
||||||
|
<template #title>请申请后查看</template>
|
||||||
|
<p style="cursor: pointer; filter: blur(4px)">
|
||||||
{{ dataFrom.link }}
|
{{ dataFrom.link }}
|
||||||
</p>
|
</p>
|
||||||
|
</a-tooltip>
|
||||||
</div>
|
</div>
|
||||||
<div class="main-center">
|
<div class="main-center">
|
||||||
<p>{{ dataFrom.numberName }}</p>
|
<p>{{ dataFrom.numberName }}</p>
|
||||||
<p>{{ dataFrom.number }}</p>
|
<a-tooltip v-if="flag">
|
||||||
|
<template #title>{{ dataFrom.number }}</template>
|
||||||
|
<p>{{ dataFrom.number || '暂无' }}</p>
|
||||||
|
</a-tooltip>
|
||||||
|
<a-tooltip v-else>
|
||||||
|
<template #title>请申请后查看</template>
|
||||||
|
<p style="filter: blur(4px)">{{ dataFrom.number }}</p>
|
||||||
|
</a-tooltip>
|
||||||
<div
|
<div
|
||||||
@click="copyFunction(dataFrom.number, '复制账号')"
|
@click="copyFunction(dataFrom.number, '复制账号')"
|
||||||
v-if="dataFrom.number != ''"
|
v-if="dataFrom.number != '' && flag"
|
||||||
>
|
>
|
||||||
复制账号
|
复制账号
|
||||||
</div>
|
</div>
|
||||||
<div v-else id="zanwu">暂无</div>
|
<!-- <div v-else id="zanwu">暂无</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div class="main-right">
|
<div class="main-right">
|
||||||
<p>{{ dataFrom.passwordName }}</p>
|
<p>{{ dataFrom.passwordName }}</p>
|
||||||
<p>{{ dataFrom.password }}</p>
|
<a-tooltip v-if="flag">
|
||||||
|
<template #title>{{ dataFrom.password }}</template>
|
||||||
|
<p>{{ dataFrom.password || '暂无' }}</p>
|
||||||
|
</a-tooltip>
|
||||||
|
<a-tooltip v-else>
|
||||||
|
<template #title>请申请后查看</template>
|
||||||
|
<p style="filter: blur(4px)">{{ dataFrom.password }}</p>
|
||||||
|
</a-tooltip>
|
||||||
<div
|
<div
|
||||||
@click="copyFunction(dataFrom.password2, '复制密码')"
|
@click="copyFunction(dataFrom.password2, '复制密码')"
|
||||||
v-if="dataFrom.password != ''"
|
v-if="dataFrom.password2 != '' && flag"
|
||||||
>
|
>
|
||||||
复制密码
|
复制密码
|
||||||
</div>
|
</div>
|
||||||
<div v-else id="zanwu">暂无</div>
|
<!-- <div v-else id="zanwu">暂无</div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -63,7 +86,7 @@
|
||||||
let obj = props.dataList.approveStatus
|
let obj = props.dataList.approveStatus
|
||||||
if (obj !== '通过' && whoShow1.value.itShowQingDao) {
|
if (obj !== '通过' && whoShow1.value.itShowQingDao) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
}
|
||||||
dataFrom.value.link = props.dataList.link
|
dataFrom.value.link = props.dataList.link
|
||||||
props.dataList.infoList.map((item) => {
|
props.dataList.infoList.map((item) => {
|
||||||
if (item.attrType == '试用用户名' || item.attrType == '试用账号') {
|
if (item.attrType == '试用用户名' || item.attrType == '试用账号') {
|
||||||
|
@ -75,7 +98,7 @@
|
||||||
if (dataFrom.value.password2 === '') {
|
if (dataFrom.value.password2 === '') {
|
||||||
dataFrom.value.password = ''
|
dataFrom.value.password = ''
|
||||||
}
|
}
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
const clickLink = (link) => {
|
const clickLink = (link) => {
|
||||||
window.open(link)
|
window.open(link)
|
||||||
|
@ -111,9 +134,9 @@
|
||||||
(val) => {
|
(val) => {
|
||||||
if (val) {
|
if (val) {
|
||||||
let obj = props.dataList.approveStatus
|
let obj = props.dataList.approveStatus
|
||||||
if (obj !== '通过') {
|
if (obj !== '通过' && whoShow1.value.itShowQingDao) {
|
||||||
flag.value = false
|
flag.value = false
|
||||||
} else {
|
}
|
||||||
dataFrom.value.link = props.dataList.link
|
dataFrom.value.link = props.dataList.link
|
||||||
props.dataList.infoList.map((item) => {
|
props.dataList.infoList.map((item) => {
|
||||||
if (item.attrType == '试用用户名' || item.attrType == '试用账号') {
|
if (item.attrType == '试用用户名' || item.attrType == '试用账号') {
|
||||||
|
@ -127,7 +150,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
)
|
)
|
||||||
</script>
|
</script>
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
|
|
|
@ -7,8 +7,12 @@
|
||||||
:type="dataFrom.englishTitle"
|
:type="dataFrom.englishTitle"
|
||||||
></DetalsTitle>
|
></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="whoShow1 && whoShow1.itShowQingDao">
|
<!-- 青岛市局 -->
|
||||||
<div class="content" v-show="approveStatus == '通过'">
|
<div
|
||||||
|
v-if="whoShow1 && whoShow1.itShowQingDao"
|
||||||
|
style="width: 100%; display: flex; justify-content: center"
|
||||||
|
>
|
||||||
|
<div class="content">
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in dataFrom.content"
|
v-for="(item, index) in dataFrom.content"
|
||||||
:key="index"
|
:key="index"
|
||||||
|
@ -19,7 +23,17 @@
|
||||||
<div v-for="carditem in item.childrenContent" :key="carditem">
|
<div v-for="carditem in item.childrenContent" :key="carditem">
|
||||||
<div style="display: flex">
|
<div style="display: flex">
|
||||||
<span>{{ carditem.attrType }}:</span>
|
<span>{{ carditem.attrType }}:</span>
|
||||||
<a-tooltip>
|
<a-tooltip
|
||||||
|
v-if="
|
||||||
|
approveStatus !== '通过' &&
|
||||||
|
(carditem.attrType === '联系人' ||
|
||||||
|
carditem.attrType === '联系人电话')
|
||||||
|
"
|
||||||
|
>
|
||||||
|
<template #title>请申请后查看</template>
|
||||||
|
<span class="word-filter">{{ carditem.attrValue }}</span>
|
||||||
|
</a-tooltip>
|
||||||
|
<a-tooltip v-else>
|
||||||
<template #title>{{ carditem.attrValue }}</template>
|
<template #title>{{ carditem.attrValue }}</template>
|
||||||
<span>{{ carditem.attrValue }}</span>
|
<span>{{ carditem.attrValue }}</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
|
@ -28,8 +42,15 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="approveStatus !== '通过'">请申请后查看</div>
|
<!-- <div v-show="approveStatus !== '通过'" class="contentOther">
|
||||||
|
<img src="~@/assets/detailsAll/uesBefore.png" />
|
||||||
|
<div class="contentOtherRight">
|
||||||
|
<p>请在申请能力后返回查看归属部门与服务商</p>
|
||||||
|
<div @click="toView()">进入能力申请</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div> -->
|
||||||
|
</div>
|
||||||
|
<!-- 其他 -->
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<div
|
<div
|
||||||
|
@ -58,6 +79,8 @@
|
||||||
<script setup>
|
<script setup>
|
||||||
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
const approveStatus = ref('通过')
|
const approveStatus = ref('通过')
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let dataFrom = ref({
|
let dataFrom = ref({
|
||||||
|
@ -79,6 +102,34 @@
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
|
//立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let obj = {
|
let obj = {
|
||||||
attrType: '归属部门',
|
attrType: '归属部门',
|
||||||
|
@ -206,7 +257,9 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
.word-filter {
|
||||||
|
filter: blur(4px);
|
||||||
|
}
|
||||||
.title {
|
.title {
|
||||||
margin-bottom: 0.3rem;
|
margin-bottom: 0.3rem;
|
||||||
}
|
}
|
||||||
|
@ -220,10 +273,13 @@
|
||||||
height: 1.5rem;
|
height: 1.5rem;
|
||||||
width: 6.2rem;
|
width: 6.2rem;
|
||||||
border-radius: 0.2rem;
|
border-radius: 0.2rem;
|
||||||
background: url('~@/assets/detailsAll/business/business_usage_mode_bg.png')
|
background: linear-gradient(
|
||||||
no-repeat;
|
to right,
|
||||||
background-position: center;
|
rgba(113, 132, 252, 0.4),
|
||||||
background-size: 100% 100%;
|
rgba(148, 163, 252, 0.4)
|
||||||
|
);
|
||||||
|
// background-position: center;
|
||||||
|
// background-size: 100% 100%;
|
||||||
padding: 0 0.3rem;
|
padding: 0 0.3rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
@ -257,11 +313,11 @@
|
||||||
span:last-child {
|
span:last-child {
|
||||||
display: block;
|
display: block;
|
||||||
width: 2.3rem;
|
width: 2.3rem;
|
||||||
overflow: hidden;
|
// overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
// text-overflow: ellipsis;
|
||||||
-webkit-box-orient: vertical;
|
// -webkit-box-orient: vertical;
|
||||||
-webkit-line-clamp: 1;
|
// -webkit-line-clamp: 1;
|
||||||
word-break: break-all;
|
// word-break: break-all;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -272,5 +328,38 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.contentOther {
|
||||||
|
width: 80%;
|
||||||
|
height: 4rem;
|
||||||
|
border: 1px dashed #7b98fd;
|
||||||
|
margin-top: 0.3rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.contentOtherRight {
|
||||||
|
p {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
width: 1.3rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
line-height: 0.4rem;
|
||||||
|
background: #0885ff;
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
}
|
||||||
|
div:hover {
|
||||||
|
background: #359bff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -7,13 +7,11 @@
|
||||||
:type="dataFrom.englishTitle"
|
:type="dataFrom.englishTitle"
|
||||||
></DetalsTitle>
|
></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="whoShow1 && whoShow1.itShowQingDao">
|
|
||||||
<div
|
<div
|
||||||
class="content"
|
v-if="whoShow1 && whoShow1.itShowQingDao"
|
||||||
v-for="item in dataFrom.content"
|
style="width: 100%; display: flex; justify-content: center"
|
||||||
:key="item.title"
|
|
||||||
v-show="approveStatus == '通过'"
|
|
||||||
>
|
>
|
||||||
|
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
||||||
<div class="content-left">
|
<div class="content-left">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<div class="content-left-title">
|
<div class="content-left-title">
|
||||||
|
@ -23,8 +21,14 @@
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.link.name }}</span>
|
<span>{{ item.link.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.linkValue }}</template>
|
<template #title>
|
||||||
<span>{{ item.linkValue }}</span>
|
{{
|
||||||
|
approveStatus === '通过' ? item.linkValue : '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.linkValue }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -48,15 +52,31 @@
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.people.name }}</span>
|
<span>{{ item.people.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.people.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.people.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.people.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.people.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.phone.name }}</span>
|
<span>{{ item.phone.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.phone.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.phone.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.phone.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.phone.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -89,7 +109,13 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="approveStatus !== '通过'">请申请后查看</div>
|
<!-- <div v-show="approveStatus !== '通过'" class="contentOther">
|
||||||
|
<img src="~@/assets/detailsAll/uesBefore.png" />
|
||||||
|
<div class="contentOtherRight">
|
||||||
|
<p>请在申请能力后返回查看使用方式</p>
|
||||||
|
<div @click="toView()">进入能力申请</div>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
||||||
|
@ -177,6 +203,8 @@
|
||||||
import { pinyin } from 'pinyin-pro'
|
import { pinyin } from 'pinyin-pro'
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
const approveStatus = ref('通过')
|
const approveStatus = ref('通过')
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let dataFrom = ref({
|
let dataFrom = ref({
|
||||||
|
@ -211,6 +239,34 @@
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
|
//立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let obj = true
|
let obj = true
|
||||||
if (!obj) {
|
if (!obj) {
|
||||||
|
@ -320,7 +376,9 @@
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 0.8rem 0;
|
padding: 0.8rem 0;
|
||||||
|
.blur-word {
|
||||||
|
filter: blur(4px);
|
||||||
|
}
|
||||||
.content {
|
.content {
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -449,5 +507,38 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.contentOther {
|
||||||
|
width: 80%;
|
||||||
|
height: 4rem;
|
||||||
|
border: 1px dashed #7b98fd;
|
||||||
|
margin-top: 0.3rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.contentOtherRight {
|
||||||
|
p {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
width: 1.3rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
line-height: 0.4rem;
|
||||||
|
background: #0885ff;
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
}
|
||||||
|
div:hover {
|
||||||
|
background: #359bff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -7,14 +7,21 @@
|
||||||
:type="dataFrom.englishTitle"
|
:type="dataFrom.englishTitle"
|
||||||
></DetalsTitle>
|
></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="whoShow1 && whoShow1.itShowQingDao">
|
<div
|
||||||
<div class="content" v-show="approveStatus == '通过'">
|
v-if="whoShow1 && whoShow1.itShowQingDao"
|
||||||
|
style="width: 100%; display: flex; justify-content: center"
|
||||||
|
>
|
||||||
|
<div class="content">
|
||||||
<div class="content-card">
|
<div class="content-card">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<p>{{ dataFrom.linkName }}</p>
|
<p>{{ dataFrom.linkName }}</p>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ dataFrom.link }}</template>
|
<template #title>
|
||||||
<p>{{ dataFrom.link }}</p>
|
{{ approveStatus === '通过' ? dataFrom.link : '请申请后查看' }}
|
||||||
|
</template>
|
||||||
|
<p :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ dataFrom.link }}
|
||||||
|
</p>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
<div class="right">
|
||||||
|
@ -32,8 +39,25 @@
|
||||||
<div>
|
<div>
|
||||||
<span>{{ carditem.attrType }}:</span>
|
<span>{{ carditem.attrType }}:</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ carditem.attrValue }}</template>
|
<template #title>
|
||||||
<span>{{ carditem.attrValue }}</span>
|
{{
|
||||||
|
approveStatus !== '通过' &&
|
||||||
|
(carditem.attrType === '部门联系人' ||
|
||||||
|
carditem.attrType === '联系人电话')
|
||||||
|
? '请申请后查看'
|
||||||
|
: carditem.attrValue
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span
|
||||||
|
:class="{
|
||||||
|
'blur-word':
|
||||||
|
approveStatus !== '通过' &&
|
||||||
|
(carditem.attrType === '部门联系人' ||
|
||||||
|
carditem.attrType === '联系人电话'),
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
{{ carditem.attrValue }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -41,7 +65,13 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="approveStatus !== '通过'">请申请后查看</div>
|
<!-- <div v-show="approveStatus !== '通过'" class="contentOther">
|
||||||
|
<img src="~@/assets/detailsAll/uesBefore.png" />
|
||||||
|
<div class="contentOtherRight">
|
||||||
|
<p>请在申请能力后返回查看使用方式</p>
|
||||||
|
<div @click="toView()">进入能力申请</div>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
|
@ -86,6 +116,8 @@
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
import { pinyin } from 'pinyin-pro'
|
import { pinyin } from 'pinyin-pro'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
const approveStatus = ref('通过')
|
const approveStatus = ref('通过')
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let flag = ref(true)
|
let flag = ref(true)
|
||||||
|
@ -136,6 +168,34 @@
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
|
//立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
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 === '组件地址'
|
||||||
|
@ -255,6 +315,9 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
.blur-word {
|
||||||
|
filter: blur(4px);
|
||||||
|
}
|
||||||
.title {
|
.title {
|
||||||
margin-bottom: 0.3rem;
|
margin-bottom: 0.3rem;
|
||||||
}
|
}
|
||||||
|
@ -360,5 +423,38 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.contentOther {
|
||||||
|
width: 80%;
|
||||||
|
height: 4rem;
|
||||||
|
border: 1px dashed #7b98fd;
|
||||||
|
margin-top: 0.3rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.contentOtherRight {
|
||||||
|
p {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
width: 1.3rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
line-height: 0.4rem;
|
||||||
|
background: #0885ff;
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
}
|
||||||
|
div:hover {
|
||||||
|
background: #359bff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -70,27 +70,23 @@
|
||||||
values: '',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '切片尺寸详情',
|
type: '切片尺寸',
|
||||||
values: '',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '最小级别名称',
|
type: '最小级别',
|
||||||
values: '',
|
values: '',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
})
|
})
|
||||||
const dataFromRight = ref({
|
const dataFromRight = ref({
|
||||||
content: [
|
content: [
|
||||||
{
|
|
||||||
type: '数据范围',
|
|
||||||
values: '',
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
type: '图层名称',
|
type: '图层名称',
|
||||||
values: '',
|
values: '',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: '最大级别名称',
|
type: '最大级别',
|
||||||
values: '',
|
values: '',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
|
@ -7,31 +7,40 @@
|
||||||
:type="dataFrom.englishTitle"
|
:type="dataFrom.englishTitle"
|
||||||
></DetalsTitle>
|
></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="whoShow1 && whoShow1.itShowQingDao">
|
|
||||||
<div
|
<div
|
||||||
class="content"
|
v-if="whoShow1 && whoShow1.itShowQingDao"
|
||||||
v-for="item in dataFrom.content"
|
style="width: 100%; display: flex; justify-content: center"
|
||||||
:key="item.title"
|
|
||||||
v-show="approveStatus == '通过'"
|
|
||||||
>
|
>
|
||||||
|
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
||||||
<div class="content-left">
|
<div class="content-left">
|
||||||
<div class="left">
|
<div class="left">
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.linkValue }}</template>
|
<template #title>
|
||||||
|
{{ approveStatus === '通过' ? item.linkValue : '请申请后查看' }}
|
||||||
|
</template>
|
||||||
<p @click="ServiceAddressFunction(item.linkValue)">
|
<p @click="ServiceAddressFunction(item.linkValue)">
|
||||||
服务地址:
|
<span>服务地址:</span>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
{{ item.linkValue }}
|
{{ item.linkValue }}
|
||||||
|
</span>
|
||||||
</p>
|
</p>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.csslinkValue }}</template>
|
<template #title>
|
||||||
|
{{
|
||||||
|
approveStatus === '通过' ? item.csslinkValue : '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
|
||||||
<p @click="ServiceAddressFunction(item.csslinkValue)">
|
<p @click="ServiceAddressFunction(item.csslinkValue)">
|
||||||
样式服务地址:
|
<span>样式服务地址:</span>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
{{ item.csslinkValue }}
|
{{ item.csslinkValue }}
|
||||||
|
</span>
|
||||||
</p>
|
</p>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</div>
|
</div>
|
||||||
<div class="right">
|
<div class="right" v-show="approveStatus === '通过'">
|
||||||
<div @click="technical()">技术文档</div>
|
<div @click="technical()">技术文档</div>
|
||||||
<div @click="technicalNew()">新手指引</div>
|
<div @click="technicalNew()">新手指引</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -43,22 +52,42 @@
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.facilitator.name }}</span>
|
<span>{{ item.facilitator.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.facilitator.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.facilitator.value }}</span>
|
{{ item.facilitator.value }}
|
||||||
|
</template>
|
||||||
|
<span>
|
||||||
|
{{ item.facilitator.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.people.name }}</span>
|
<span>{{ item.people.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.people.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.people.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.people.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.people.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<span>{{ item.phone.name }}</span>
|
<span>{{ item.phone.name }}</span>
|
||||||
<a-tooltip>
|
<a-tooltip>
|
||||||
<template #title>{{ item.phone.value }}</template>
|
<template #title>
|
||||||
<span>{{ item.phone.value }}</span>
|
{{
|
||||||
|
approveStatus === '通过'
|
||||||
|
? item.phone.value
|
||||||
|
: '请申请后查看'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
<span :class="{ 'blur-word': approveStatus !== '通过' }">
|
||||||
|
{{ item.phone.value }}
|
||||||
|
</span>
|
||||||
</a-tooltip>
|
</a-tooltip>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -91,7 +120,13 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-show="approveStatus !== '通过'">请申请后查看</div>
|
<!-- <div v-show="approveStatus !== '通过'" class="contentOther">
|
||||||
|
<img src="~@/assets/detailsAll/uesBefore.png" />
|
||||||
|
<div class="contentOtherRight">
|
||||||
|
<p>请在申请能力后返回查看使用方式</p>
|
||||||
|
<div @click="toView()">进入能力申请</div>
|
||||||
|
</div>
|
||||||
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
<div class="content" v-for="item in dataFrom.content" :key="item.title">
|
||||||
|
@ -181,6 +216,8 @@
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
import { pinyin } from 'pinyin-pro'
|
import { pinyin } from 'pinyin-pro'
|
||||||
import { ref, defineProps, watch } from 'vue'
|
import { ref, defineProps, watch } from 'vue'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
const approveStatus = ref('通过')
|
const approveStatus = ref('通过')
|
||||||
const whoShow1 = ref(whoShow)
|
const whoShow1 = ref(whoShow)
|
||||||
let dataFrom = ref({
|
let dataFrom = ref({
|
||||||
|
@ -217,6 +254,34 @@
|
||||||
dataList: { type: Object, default: null },
|
dataList: { type: Object, default: null },
|
||||||
})
|
})
|
||||||
const flag = ref(true)
|
const flag = ref(true)
|
||||||
|
//立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
if (props.dataList.infoList) {
|
if (props.dataList.infoList) {
|
||||||
let obj = true
|
let obj = true
|
||||||
if (!obj) {
|
if (!obj) {
|
||||||
|
@ -279,8 +344,10 @@
|
||||||
)
|
)
|
||||||
//服务地址和样式服务地址跳转方法
|
//服务地址和样式服务地址跳转方法
|
||||||
function ServiceAddressFunction(link) {
|
function ServiceAddressFunction(link) {
|
||||||
|
if (link && approveStatus.value === '通过') {
|
||||||
window.open(link)
|
window.open(link)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
function technical() {
|
function technical() {
|
||||||
// 拼接路径
|
// 拼接路径
|
||||||
// const type = pinyin(props.dataList.type, {
|
// const type = pinyin(props.dataList.type, {
|
||||||
|
@ -334,7 +401,9 @@
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
padding: 0.8rem 0;
|
padding: 0.8rem 0;
|
||||||
|
.blur-word {
|
||||||
|
filter: blur(4px);
|
||||||
|
}
|
||||||
.content {
|
.content {
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -461,5 +530,38 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.contentOther {
|
||||||
|
width: 80%;
|
||||||
|
height: 4rem;
|
||||||
|
border: 1px dashed #7b98fd;
|
||||||
|
margin-top: 0.3rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
img {
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.contentOtherRight {
|
||||||
|
p {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
width: 1.3rem;
|
||||||
|
height: 0.4rem;
|
||||||
|
line-height: 0.4rem;
|
||||||
|
background: #0885ff;
|
||||||
|
color: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
text-align: center;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: all 0.3s;
|
||||||
|
}
|
||||||
|
div:hover {
|
||||||
|
background: #359bff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -0,0 +1,352 @@
|
||||||
|
<!--
|
||||||
|
* @Author: hisense.liangjunhua
|
||||||
|
* @Date: 2022-06-08 11:56:28
|
||||||
|
* @LastEditors: hisense.liangjunhua
|
||||||
|
* @LastEditTime: 2022-08-25 20:23:59
|
||||||
|
* @Description: 算法详情页头部
|
||||||
|
-->
|
||||||
|
<template>
|
||||||
|
<div class="algorithm-top-details">
|
||||||
|
<div class="left">
|
||||||
|
<div class="top">
|
||||||
|
<a-tooltip placement="top">
|
||||||
|
<template #title>{{ props.dataList.name }}</template>
|
||||||
|
<span class="name">
|
||||||
|
{{ props.dataList.name }}
|
||||||
|
</span>
|
||||||
|
</a-tooltip>
|
||||||
|
<!-- <span class="name">{{ props.dataList.name }}</span> -->
|
||||||
|
<div class="label-content">
|
||||||
|
<p class="lable-father">
|
||||||
|
<span class="label" v-if="props.dataList.type">
|
||||||
|
{{ props.dataList.type }}
|
||||||
|
</span>
|
||||||
|
<span class="label" v-if="props.dataList.shareType">
|
||||||
|
{{ props.dataList.shareType }}
|
||||||
|
</span>
|
||||||
|
<span class="label" v-if="props.dataList.shareCondition">
|
||||||
|
{{ props.dataList.shareCondition }}
|
||||||
|
</span>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<!-- <span class="label">免费</span> -->
|
||||||
|
</div>
|
||||||
|
<div class="main">
|
||||||
|
<!-- <a-tooltip placement="top">
|
||||||
|
<template #title>应用领域:{{ applicationArea }}</template>
|
||||||
|
<div>应用领域:{{ applicationArea }}</div>
|
||||||
|
</a-tooltip> -->
|
||||||
|
<a-tooltip placement="top">
|
||||||
|
<template #title>{{ props.dataList.description }}</template>
|
||||||
|
<div>
|
||||||
|
{{ props.dataList.description }}
|
||||||
|
</div>
|
||||||
|
</a-tooltip>
|
||||||
|
</div>
|
||||||
|
<div class="bottom" v-if="props.dataList.id">
|
||||||
|
<!-- 融合服务 存在fuseResourceList -->
|
||||||
|
<!-- <a-button
|
||||||
|
type="primary"
|
||||||
|
@click="handleAKeyApplication()"
|
||||||
|
v-if="dataList.fuseResourceList"
|
||||||
|
>
|
||||||
|
<template #icon>
|
||||||
|
<form-outlined />
|
||||||
|
</template>
|
||||||
|
申请使用
|
||||||
|
</a-button>
|
||||||
|
<a-button v-else type="primary" @click="toView()">
|
||||||
|
<template #icon><form-outlined /></template>
|
||||||
|
申请使用
|
||||||
|
</a-button>
|
||||||
|
<a-button
|
||||||
|
v-if="!dataList.fuseResourceList"
|
||||||
|
type="primary"
|
||||||
|
@click="addShoppingCart()"
|
||||||
|
>
|
||||||
|
<template #icon><shopping-cart-outlined /></template>
|
||||||
|
加入购物车
|
||||||
|
</a-button>
|
||||||
|
<a-button type="primary" @click="goTOCollection()">
|
||||||
|
{{ props.dataList.isCollect == 'true' ? '已' : '' }}收藏
|
||||||
|
</a-button> -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="right"></div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
// import { ShoppingCartOutlined } from '@ant-design/icons-vue'
|
||||||
|
import { defineProps, ref, watch } from 'vue'
|
||||||
|
import { scInsert, scDel } from '@/api/personalCenter'
|
||||||
|
import { sgcInsert } from '@/api/home'
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
import mybus from '@/myplugins/mybus'
|
||||||
|
import { message } from 'ant-design-vue'
|
||||||
|
// 获取当前路由地址
|
||||||
|
const router = useRouter()
|
||||||
|
|
||||||
|
const props = defineProps({
|
||||||
|
dataList: { type: Object, default: null },
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log('dataList------------>', props.dataList)
|
||||||
|
const applicationArea = ref('')
|
||||||
|
// // 加入申购车
|
||||||
|
const addShoppingCart = () => {
|
||||||
|
if (props.dataList.isInShoppingCart) {
|
||||||
|
message.error('已经加入申购车了')
|
||||||
|
} else {
|
||||||
|
console.log('加入申购车==================>', props.dataList)
|
||||||
|
sgcInsert({
|
||||||
|
delFlag: '0',
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
// userId: userId.value,
|
||||||
|
}).then((res) => {
|
||||||
|
console.log(res)
|
||||||
|
message.success('添加申购车成功!')
|
||||||
|
mybus.emit('getSgcNum')
|
||||||
|
props.dataList.isInShoppingCart = true
|
||||||
|
console.log(
|
||||||
|
props.dataList.isInShoppingCart,
|
||||||
|
'props.dataList.isInShoppingCart'
|
||||||
|
)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// // 立即申请
|
||||||
|
function toView() {
|
||||||
|
// window.open(newpage.href, '_blank')
|
||||||
|
// router.push({
|
||||||
|
// path: '/apply',
|
||||||
|
// query: {
|
||||||
|
// name: props.dataList.name,
|
||||||
|
// resourceId: [props.dataList.id],
|
||||||
|
// },
|
||||||
|
// })
|
||||||
|
console.log('一键申请===================>', props.dataList)
|
||||||
|
localStorage.setItem(
|
||||||
|
'applyList',
|
||||||
|
JSON.stringify([
|
||||||
|
{
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: props.dataList.delFlag,
|
||||||
|
description: props.dataList.description,
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
resourceName: props.dataList.name,
|
||||||
|
time: props.dataList.createDate,
|
||||||
|
type: props.dataList.type,
|
||||||
|
// componentType: '智能算法',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: props.dataList.deptId,
|
||||||
|
deptName: props.dataList.deptName,
|
||||||
|
},
|
||||||
|
])
|
||||||
|
)
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
// 融合服务--一键申请
|
||||||
|
const handleAKeyApplication = () => {
|
||||||
|
let _applyList = []
|
||||||
|
;(props.dataList.fuseResourceList || []).map((v) => {
|
||||||
|
let resource = v.resource || {}
|
||||||
|
let obj = {
|
||||||
|
arr: [
|
||||||
|
{
|
||||||
|
delFlag: resource.delFlag,
|
||||||
|
description: resource.description,
|
||||||
|
resourceId: resource.id,
|
||||||
|
resourceName: resource.name,
|
||||||
|
time: resource.createDate,
|
||||||
|
type: resource.type,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
deptId: resource.deptId,
|
||||||
|
deptName: resource.deptName,
|
||||||
|
}
|
||||||
|
_applyList.push(obj)
|
||||||
|
})
|
||||||
|
|
||||||
|
localStorage.setItem('applyList', JSON.stringify(_applyList))
|
||||||
|
router.push({
|
||||||
|
path: '/apply',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// 收藏
|
||||||
|
const scFlag2 = ref(true)
|
||||||
|
const goTOCollection = () => {
|
||||||
|
console.log('收藏===================》', props.dataList)
|
||||||
|
if (scFlag2.value) {
|
||||||
|
scFlag2.value = false
|
||||||
|
if (props.dataList.isCollect == 'true') {
|
||||||
|
scDel([props.dataList.id]).then((res) => {
|
||||||
|
if (res.data.msg === 'success') {
|
||||||
|
message.success('取消成功')
|
||||||
|
// eslint-disable-next-line vue/no-mutating-props
|
||||||
|
props.dataList.isCollect = 'false'
|
||||||
|
scFlag2.value = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
scInsert([
|
||||||
|
{
|
||||||
|
resourceId: props.dataList.id,
|
||||||
|
},
|
||||||
|
]).then((res) => {
|
||||||
|
if (res.data.msg === 'success') {
|
||||||
|
message.success('添加收藏成功!')
|
||||||
|
// eslint-disable-next-line vue/no-mutating-props
|
||||||
|
props.dataList.isCollect = 'true'
|
||||||
|
scFlag2.value = true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// scInsert([{ resourceId: props.dataList.id }]).then((res) => {
|
||||||
|
// console.log(res)
|
||||||
|
// message.success('收藏成功')
|
||||||
|
// })
|
||||||
|
}
|
||||||
|
if (props.dataList.infoList) {
|
||||||
|
applicationArea.value = props.dataList.infoList.filter(
|
||||||
|
(val) => val.attrType === '应用领域'
|
||||||
|
)[0].attrValue
|
||||||
|
}
|
||||||
|
watch(
|
||||||
|
() => props.dataList,
|
||||||
|
(val) => {
|
||||||
|
if (val) {
|
||||||
|
console.log('props.dataList-----watch------->', val)
|
||||||
|
|
||||||
|
applicationArea.value = props.dataList.infoList.filter(
|
||||||
|
(val) => val.attrType === '应用领域'
|
||||||
|
)[0].attrValue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
)
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.algorithm-top-details {
|
||||||
|
height: 6rem;
|
||||||
|
padding: 1.8rem 0 0;
|
||||||
|
background: url('~@/assets/detailsAll/sf_top_bg.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.left {
|
||||||
|
max-width: 7.2rem;
|
||||||
|
color: #fff;
|
||||||
|
margin-right: 0.8rem;
|
||||||
|
|
||||||
|
.top {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
span {
|
||||||
|
font-size: 0.14rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.name {
|
||||||
|
// max-width: 3.3rem;
|
||||||
|
// overflow: hidden;
|
||||||
|
// text-overflow: ellipsis;
|
||||||
|
// white-space: nowrap;
|
||||||
|
font-size: 0.4rem;
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
font-size: 0.4rem;
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
max-width: 6rem;
|
||||||
|
text-overflow: -o-ellipsis-lastline;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-line-clamp: 1;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label-content {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.lable-father {
|
||||||
|
position: absolute;
|
||||||
|
min-width: 3.5rem;
|
||||||
|
right: -3.5rem;
|
||||||
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.label {
|
||||||
|
padding: 0.01rem 0.1rem;
|
||||||
|
margin-right: 0.1rem;
|
||||||
|
border-radius: 0.13rem;
|
||||||
|
background: rgba(255, 255, 255, 0.4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.main {
|
||||||
|
margin-top: 0.2rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
line-height: 0.34rem;
|
||||||
|
|
||||||
|
// & > div:nth-of-type(1) {
|
||||||
|
// overflow: hidden;
|
||||||
|
// text-overflow: ellipsis;
|
||||||
|
// white-space: nowrap;
|
||||||
|
// }
|
||||||
|
|
||||||
|
& > div:nth-of-type(1) {
|
||||||
|
max-height: 1rem;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-line-clamp: 3;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.bottom {
|
||||||
|
margin-top: 0.4rem;
|
||||||
|
display: flex;
|
||||||
|
|
||||||
|
.ant-btn {
|
||||||
|
height: 0.5rem;
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
background: #ff8b55;
|
||||||
|
border-radius: 0.06rem;
|
||||||
|
font-size: 0.2rem;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-btn:nth-of-type(1) {
|
||||||
|
width: 1.8rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-btn:nth-of-type(2) {
|
||||||
|
width: 2.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ant-btn:nth-of-type(3) {
|
||||||
|
width: 1.45rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.right {
|
||||||
|
width: 5.8rem;
|
||||||
|
height: 4rem;
|
||||||
|
background: url('~@/assets/detailsAll/sf_right_bg.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
margin-top: -0.4rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -0,0 +1,88 @@
|
||||||
|
<template>
|
||||||
|
<div class="box">
|
||||||
|
<div class="CanCase">
|
||||||
|
<div
|
||||||
|
class="caseBox"
|
||||||
|
v-for="(item, index) in caseList"
|
||||||
|
:key="index"
|
||||||
|
@click="toView(item)"
|
||||||
|
>
|
||||||
|
<a-image
|
||||||
|
:preview="false"
|
||||||
|
:src="
|
||||||
|
item.fuseAttrList.filter((val) => val.attrType == '服务图片')[0]
|
||||||
|
.attrValue
|
||||||
|
"
|
||||||
|
/>
|
||||||
|
<h3>{{ item.name }}</h3>
|
||||||
|
<p>发布时间 {{ item.updateDate }}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
<script setup>
|
||||||
|
import { ref, onMounted, onBeforeUnmount } from 'vue'
|
||||||
|
import { defineProps } from 'vue'
|
||||||
|
|
||||||
|
import { useRouter } from 'vue-router'
|
||||||
|
const router = useRouter()
|
||||||
|
const props = defineProps({
|
||||||
|
resourceList: {
|
||||||
|
type: Object,
|
||||||
|
default: () => {},
|
||||||
|
},
|
||||||
|
selectCardsname: {
|
||||||
|
type: String,
|
||||||
|
default: '组件服务',
|
||||||
|
},
|
||||||
|
})
|
||||||
|
const caseList = ref([])
|
||||||
|
|
||||||
|
onMounted(() => {
|
||||||
|
caseList.value = props.resourceList.data
|
||||||
|
console.log(caseList.value, 'caseList.value')
|
||||||
|
})
|
||||||
|
onBeforeUnmount(() => {})
|
||||||
|
function toView(item) {
|
||||||
|
router.push({
|
||||||
|
path: '/integrationServicesDetails',
|
||||||
|
query: {
|
||||||
|
id: item.id,
|
||||||
|
},
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.box {
|
||||||
|
.CanCase {
|
||||||
|
margin-top: 0.2rem;
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 33.33% 33.33% 33.33%;
|
||||||
|
align-items: center;
|
||||||
|
justify-items: center;
|
||||||
|
.caseBox {
|
||||||
|
width: 3.5rem;
|
||||||
|
height: 3rem;
|
||||||
|
box-shadow: 1px 1px 5px 5px rgba(222, 222, 222, 0.152);
|
||||||
|
background: #ffffff;
|
||||||
|
border-radius: 0.05rem;
|
||||||
|
padding: 0.2rem;
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
cursor: pointer;
|
||||||
|
img {
|
||||||
|
width: 3rem;
|
||||||
|
height: 1.8rem;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
font-size: 0.18rem;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-top: 0.1rem;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
font-size: 0.16rem;
|
||||||
|
color: #797979;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -136,6 +136,7 @@
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span style="display: flex; align-items: center; width: 680px">
|
<span style="display: flex; align-items: center; width: 680px">
|
||||||
{{ item.name }}
|
{{ item.name }}
|
||||||
|
<!-- 已申请--通过 -->
|
||||||
<svg
|
<svg
|
||||||
t="1652322568870"
|
t="1652322568870"
|
||||||
class="icon"
|
class="icon"
|
||||||
|
@ -145,7 +146,9 @@
|
||||||
p-id="3062"
|
p-id="3062"
|
||||||
width="40"
|
width="40"
|
||||||
height="40"
|
height="40"
|
||||||
v-if="item.applyState == '通过'"
|
v-if="
|
||||||
|
item.applyState == '已申请' && item.approveStatus == '通过'
|
||||||
|
"
|
||||||
style="margin-left: 10px; min-width: 40px"
|
style="margin-left: 10px; min-width: 40px"
|
||||||
>
|
>
|
||||||
<path
|
<path
|
||||||
|
@ -164,7 +167,8 @@
|
||||||
p-id="3065"
|
p-id="3065"
|
||||||
></path>
|
></path>
|
||||||
</svg>
|
</svg>
|
||||||
<svg
|
<!-- 审核中 -->
|
||||||
|
<!-- <svg
|
||||||
t="1652322568870"
|
t="1652322568870"
|
||||||
class="icon"
|
class="icon"
|
||||||
viewBox="0 0 3072 1024"
|
viewBox="0 0 3072 1024"
|
||||||
|
@ -173,7 +177,9 @@
|
||||||
p-id="3062"
|
p-id="3062"
|
||||||
width="40"
|
width="40"
|
||||||
height="40"
|
height="40"
|
||||||
v-if="item.applyState == '审核中'"
|
v-if="
|
||||||
|
item.applyState == '已申请' && item.approveStatus == '审核中'
|
||||||
|
"
|
||||||
style="margin-left: 10px; min-width: 40px"
|
style="margin-left: 10px; min-width: 40px"
|
||||||
>
|
>
|
||||||
<path
|
<path
|
||||||
|
@ -188,7 +194,9 @@
|
||||||
></path>
|
></path>
|
||||||
</svg>
|
</svg>
|
||||||
<span
|
<span
|
||||||
v-if="item.applyState == '审核中'"
|
v-if="
|
||||||
|
item.applyState == '已申请' && item.approveStatus == '审核中'
|
||||||
|
"
|
||||||
style="
|
style="
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
-webkit-transform: scale(0.75);
|
-webkit-transform: scale(0.75);
|
||||||
|
@ -200,7 +208,7 @@
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
审核中
|
审核中
|
||||||
</span>
|
</span> -->
|
||||||
</span>
|
</span>
|
||||||
<div class="header-right">
|
<div class="header-right">
|
||||||
<div
|
<div
|
||||||
|
|
|
@ -93,7 +93,7 @@
|
||||||
</a-space>
|
</a-space>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="roomItem" v-for="(item, index) in roomList">
|
<div class="roomItem" v-for="item in roomList" :key="item.id">
|
||||||
<div class="leftImg">
|
<div class="leftImg">
|
||||||
<img
|
<img
|
||||||
:src="
|
:src="
|
||||||
|
@ -438,7 +438,21 @@
|
||||||
</div>
|
</div>
|
||||||
<i class="boundary"></i>
|
<i class="boundary"></i>
|
||||||
<!-- 批量预览 -->
|
<!-- 批量预览 -->
|
||||||
<a-button type="primary" @click="batchPreview" class="buttonAdd">
|
<a-button
|
||||||
|
type="primary"
|
||||||
|
@click="batchPreview"
|
||||||
|
class="buttonAdd"
|
||||||
|
v-if="isXiHaiAn"
|
||||||
|
>
|
||||||
|
批量预览
|
||||||
|
</a-button>
|
||||||
|
<!-- 批量预览 -->
|
||||||
|
<a-button
|
||||||
|
type="primary"
|
||||||
|
@click="batchPicturePreview"
|
||||||
|
class="buttonAdd"
|
||||||
|
v-else
|
||||||
|
>
|
||||||
批量预览
|
批量预览
|
||||||
</a-button>
|
</a-button>
|
||||||
<!-- 添加至申购车 -->
|
<!-- 添加至申购车 -->
|
||||||
|
@ -474,6 +488,7 @@
|
||||||
<template #bodyCell="{ column, record }">
|
<template #bodyCell="{ column, record }">
|
||||||
<template v-if="column.dataIndex === 'operation'">
|
<template v-if="column.dataIndex === 'operation'">
|
||||||
<a
|
<a
|
||||||
|
v-if="isXiHaiAn"
|
||||||
@click="
|
@click="
|
||||||
openVideo(
|
openVideo(
|
||||||
record.channelCode ||
|
record.channelCode ||
|
||||||
|
@ -484,6 +499,18 @@
|
||||||
>
|
>
|
||||||
预览
|
预览
|
||||||
</a>
|
</a>
|
||||||
|
<a
|
||||||
|
v-else
|
||||||
|
@click="
|
||||||
|
openPicture(
|
||||||
|
record.channelCode ||
|
||||||
|
record.channelId ||
|
||||||
|
record.channelCode.channelId
|
||||||
|
)
|
||||||
|
"
|
||||||
|
>
|
||||||
|
预览
|
||||||
|
</a>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>
|
||||||
</a-table>
|
</a-table>
|
||||||
|
@ -532,7 +559,53 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a-modal>
|
</a-modal>
|
||||||
<!-- 批量预览弹窗 -->
|
<!-- 图片预览 -->
|
||||||
|
<a-modal
|
||||||
|
wrapClassName="single-preview-modal"
|
||||||
|
v-model:visible="picVisible"
|
||||||
|
title="图片预览"
|
||||||
|
:width="960"
|
||||||
|
destroyOnClose
|
||||||
|
>
|
||||||
|
<template #footer></template>
|
||||||
|
<div style="width: 100%; display: flex; justify-content: center">
|
||||||
|
<a-image :src="options.src" />
|
||||||
|
</div>
|
||||||
|
</a-modal>
|
||||||
|
<!-- 批量预览图片弹窗 -->
|
||||||
|
<a-modal
|
||||||
|
wrapClassName="batch-preview-modal"
|
||||||
|
v-model:visible="batchPicVisible"
|
||||||
|
title="图片批量预览"
|
||||||
|
:width="1060"
|
||||||
|
destroyOnClose
|
||||||
|
@cancel="videoClean"
|
||||||
|
>
|
||||||
|
<template #footer></template>
|
||||||
|
<div class="batch-video">
|
||||||
|
<div
|
||||||
|
v-for="item in videoList"
|
||||||
|
:key="item.id"
|
||||||
|
style="width: 100%; height: 100%"
|
||||||
|
>
|
||||||
|
<a-image
|
||||||
|
width="500px"
|
||||||
|
height="281px"
|
||||||
|
:src="item.options.src"
|
||||||
|
fallback="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMIAAADDCAYAAADQvc6UAAABRWlDQ1BJQ0MgUHJvZmlsZQAAKJFjYGASSSwoyGFhYGDIzSspCnJ3UoiIjFJgf8LAwSDCIMogwMCcmFxc4BgQ4ANUwgCjUcG3awyMIPqyLsis7PPOq3QdDFcvjV3jOD1boQVTPQrgSkktTgbSf4A4LbmgqISBgTEFyFYuLykAsTuAbJEioKOA7DkgdjqEvQHEToKwj4DVhAQ5A9k3gGyB5IxEoBmML4BsnSQk8XQkNtReEOBxcfXxUQg1Mjc0dyHgXNJBSWpFCYh2zi+oLMpMzyhRcASGUqqCZ16yno6CkYGRAQMDKMwhqj/fAIcloxgHQqxAjIHBEugw5sUIsSQpBobtQPdLciLEVJYzMPBHMDBsayhILEqEO4DxG0txmrERhM29nYGBddr//5/DGRjYNRkY/l7////39v///y4Dmn+LgeHANwDrkl1AuO+pmgAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAAwqADAAQAAAABAAAAwwAAAAD9b/HnAAAHlklEQVR4Ae3dP3PTWBSGcbGzM6GCKqlIBRV0dHRJFarQ0eUT8LH4BnRU0NHR0UEFVdIlFRV7TzRksomPY8uykTk/zewQfKw/9znv4yvJynLv4uLiV2dBoDiBf4qP3/ARuCRABEFAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghggQAQZQKAnYEaQBAQaASKIAQJEkAEEegJmBElAoBEgghgg0Aj8i0JO4OzsrPv69Wv+hi2qPHr0qNvf39+iI97soRIh4f3z58/u7du3SXX7Xt7Z2enevHmzfQe+oSN2apSAPj09TSrb+XKI/f379+08+A0cNRE2ANkupk+ACNPvkSPcAAEibACyXUyfABGm3yNHuAECRNgAZLuYPgEirKlHu7u7XdyytGwHAd8jjNyng4OD7vnz51dbPT8/7z58+NB9+/bt6jU/TI+AGWHEnrx48eJ/EsSmHzx40L18+fLyzxF3ZVMjEyDCiEDjMYZZS5wiPXnyZFbJaxMhQIQRGzHvWR7XCyOCXsOmiDAi1HmPMMQjDpbpEiDCiL358eNHurW/5SnWdIBbXiDCiA38/Pnzrce2YyZ4//59F3ePLNMl4PbpiL2J0L979+7yDtHDhw8vtzzvdGnEXdvUigSIsCLAWavHp/+qM0BcXMd/q25n1vF57TYBp0a3mUzilePj4+7k5KSLb6gt6ydAhPUzXnoPR0dHl79WGTNCfBnn1uvSCJdegQhLI1vvCk+fPu2ePXt2tZOYEV6/fn31dz+shwAR1sP1cqvLntbEN9MxA9xcYjsxS1jWR4AIa2Ibzx0tc44fYX/16lV6NDFLXH+YL32jwiACRBiEbf5KcXoTIsQSpzXx4N28Ja4BQoK7rgXiydbHjx/P25TaQAJEGAguWy0+2Q8PD6/Ki4R8EVl+bzBOnZY95fq9rj9zAkTI2SxdidBHqG9+skdw43borCXO/ZcJdraPWdv22uIEiLA4q7nvvCug8WTqzQveOH26fodo7g6uFe/a17W3+nFBAkRYENRdb1vkkz1CH9cPsVy/jrhr27PqMYvENYNlHAIesRiBYwRy0V+8iXP8+/fvX11Mr7L7ECueb/r48eMqm7FuI2BGWDEG8cm+7G3NEOfmdcTQw4h9/55lhm7DekRYKQPZF2ArbXTAyu4kDYB2YxUzwg0gi/41ztHnfQG26HbGel/crVrm7tNY+/1btkOEAZ2M05r4FB7r9GbAIdxaZYrHdOsgJ/wCEQY0J74TmOKnbxxT9n3FgGGWWsVdowHtjt9Nnvf7yQM2aZU/TIAIAxrw6dOnAWtZZcoEnBpNuTuObWMEiLAx1HY0ZQJEmHJ3HNvGCBBhY6jtaMoEiJB0Z29vL6ls58vxPcO8/zfrdo5qvKO+d3Fx8Wu8zf1dW4p/cPzLly/dtv9Ts/EbcvGAHhHyfBIhZ6NSiIBTo0LNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiECRCjUbEPNCRAhZ6NSiAARCjXbUHMCRMjZqBQiQIRCzTbUnAARcjYqhQgQoVCzDTUnQIScjUohAkQo1GxDzQkQIWejUogAEQo121BzAkTI2agUIkCEQs021JwAEXI2KoUIEKFQsw01J0CEnI1KIQJEKNRsQ80JECFno1KIABEKNdtQcwJEyNmoFCJAhELNNtScABFyNiqFCBChULMNNSdAhJyNSiEC/wGgKKC4YMA4TAAAAABJRU5ErkJggg=="
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a-pagination
|
||||||
|
v-model:current="current"
|
||||||
|
:total="videoTotal"
|
||||||
|
defaultPageSize="4"
|
||||||
|
:showSizeChanger="false"
|
||||||
|
@change="batchPicturePreview"
|
||||||
|
show-less-items
|
||||||
|
/>
|
||||||
|
</a-modal>
|
||||||
|
<!-- 批量预览视频弹窗 -->
|
||||||
<a-modal
|
<a-modal
|
||||||
wrapClassName="batch-preview-modal"
|
wrapClassName="batch-preview-modal"
|
||||||
v-model:visible="batchVisible"
|
v-model:visible="batchVisible"
|
||||||
|
@ -641,6 +714,7 @@
|
||||||
getCameraByParentId,
|
getCameraByParentId,
|
||||||
getStreamByChannelCode,
|
getStreamByChannelCode,
|
||||||
getCameraAllLabel,
|
getCameraAllLabel,
|
||||||
|
selectByChannelCode,
|
||||||
} from '@/api/videoSurveillance'
|
} from '@/api/videoSurveillance'
|
||||||
import { getCameraByCondition } from '@/api/file'
|
import { getCameraByCondition } from '@/api/file'
|
||||||
import {
|
import {
|
||||||
|
@ -691,8 +765,10 @@
|
||||||
], //显示所有按钮,
|
], //显示所有按钮,
|
||||||
})
|
})
|
||||||
const videoList = ref([])
|
const videoList = ref([])
|
||||||
let visible = ref(false)
|
let visible = ref(false) // 视频预览
|
||||||
let batchVisible = ref(false)
|
let picVisible = ref(false) // 图片预览
|
||||||
|
let batchVisible = ref(false) // 视频批量预览
|
||||||
|
let batchPicVisible = ref(false) // 图片批量预览
|
||||||
const jcssType = ref(router.currentRoute.value.query.type)
|
const jcssType = ref(router.currentRoute.value.query.type)
|
||||||
const pagination = ref({
|
const pagination = ref({
|
||||||
total: 0,
|
total: 0,
|
||||||
|
@ -884,6 +960,7 @@
|
||||||
tabList.value[0].content.push('无人机')
|
tabList.value[0].content.push('无人机')
|
||||||
tabList.value[0].content.push('单兵设备')
|
tabList.value[0].content.push('单兵设备')
|
||||||
}
|
}
|
||||||
|
// 打开视频预览
|
||||||
const openVideo = (id) => {
|
const openVideo = (id) => {
|
||||||
console.log('打开视频', id)
|
console.log('打开视频', id)
|
||||||
const param = {
|
const param = {
|
||||||
|
@ -895,6 +972,22 @@
|
||||||
options.src = res.data.data
|
options.src = res.data.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 打开图片预览
|
||||||
|
const openPicture = (id) => {
|
||||||
|
console.log('打开图片', id)
|
||||||
|
const param = {
|
||||||
|
channelCode: id,
|
||||||
|
}
|
||||||
|
selectByChannelCode(param).then((res) => {
|
||||||
|
console.log(res)
|
||||||
|
if (res.data.data && res.data.data[0].picUrl) {
|
||||||
|
options.src = res.data.data[0].picUrl
|
||||||
|
picVisible.value = true
|
||||||
|
} else {
|
||||||
|
message.warning('该点位暂无预览图片!')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
// const dataTypeList = () => {
|
// const dataTypeList = () => {
|
||||||
// if (tabList.value[0].content.indexOf('视频资源') != -1) {
|
// if (tabList.value[0].content.indexOf('视频资源') != -1) {
|
||||||
// tabList.value[1].content = ['123344', '213124']
|
// tabList.value[1].content = ['123344', '213124']
|
||||||
|
@ -1429,6 +1522,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 打开视频批量预览
|
||||||
const batchPreview = async function (page) {
|
const batchPreview = async function (page) {
|
||||||
if (page.layerX) {
|
if (page.layerX) {
|
||||||
page = 1
|
page = 1
|
||||||
|
@ -1486,6 +1580,39 @@
|
||||||
message.error('请选择需要预览的数据')
|
message.error('请选择需要预览的数据')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 打开图片批量预览
|
||||||
|
const batchPicturePreview = async function (page) {
|
||||||
|
if (page.layerX) {
|
||||||
|
page = 1
|
||||||
|
}
|
||||||
|
if (selectedList.value.length > 0) {
|
||||||
|
videoTotal.value = selectedList.value.length
|
||||||
|
const arr = JSON.parse(JSON.stringify(selectedList.value))
|
||||||
|
let start = (page - 1) * 4
|
||||||
|
let list = []
|
||||||
|
list = arr.splice(start, 4)
|
||||||
|
const length = list.length
|
||||||
|
videoList.value = []
|
||||||
|
for (let index = 0; index < length; index++) {
|
||||||
|
const param = {
|
||||||
|
channelCode: list[index].channelId,
|
||||||
|
}
|
||||||
|
let ob = {
|
||||||
|
options: {
|
||||||
|
src: '', //图片源
|
||||||
|
},
|
||||||
|
}
|
||||||
|
selectByChannelCode(param).then((res) => {
|
||||||
|
ob.options.src = (res.data.data && res.data.data[0].picUrl) || ''
|
||||||
|
videoList.value.push(ob)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
console.log('验证数据的准确性', videoList)
|
||||||
|
batchPicVisible.value = true
|
||||||
|
} else {
|
||||||
|
message.error('请选择需要预览的数据')
|
||||||
|
}
|
||||||
|
}
|
||||||
// 清空
|
// 清空
|
||||||
const nullClick = () => {
|
const nullClick = () => {
|
||||||
clickList.value[1].content = []
|
clickList.value[1].content = []
|
||||||
|
@ -2068,8 +2195,8 @@
|
||||||
grid-template-columns: 50% 50%;
|
grid-template-columns: 50% 50%;
|
||||||
grid-template-rows: 50% 50%;
|
grid-template-rows: 50% 50%;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
// grid-row-gap: 14px;
|
grid-row-gap: 10px;
|
||||||
grid-column-gap: 20px;
|
grid-column-gap: 10px;
|
||||||
}
|
}
|
||||||
.ant-pagination-item-link {
|
.ant-pagination-item-link {
|
||||||
background-color: #5580f7;
|
background-color: #5580f7;
|
||||||
|
|
|
@ -5,36 +5,73 @@
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<div class="top-title">
|
<div class="top-title">
|
||||||
全部:
|
全部:
|
||||||
<div v-for="(item, index) in titleName" :key="index" class="tabAll" @click="changeCards(index)"
|
<div
|
||||||
:class="{ sel: index == number }">
|
v-for="(item, index) in titleName"
|
||||||
<span>{{ item.name }}</span>
|
:key="index"
|
||||||
|
class="tabAll"
|
||||||
|
@click="changeCards(index)"
|
||||||
|
:class="{ sel: index == number }"
|
||||||
|
>
|
||||||
|
<span>
|
||||||
|
{{ item.name === '赋能场景' ? '典型赋能场景' : '打包模式' }}
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="resultListSearchInput-father">
|
<div class="resultListSearchInput-father" v-if="number === 0">
|
||||||
<div class="resultListSearchInput-son">
|
<div class="resultListSearchInput-son">
|
||||||
模糊搜索
|
模糊搜索
|
||||||
<a-input-search v-model:value="searchValue" placeholder="请输入关键词" enter-button="搜索" size="large"
|
<a-input-search
|
||||||
@search="getAppResources" @change="onSearch" class="resultListSearchInput" />
|
v-model:value="searchValue"
|
||||||
|
placeholder="请输入关键词"
|
||||||
|
enter-button="搜索"
|
||||||
|
size="large"
|
||||||
|
@search="getAppResources"
|
||||||
|
@change="onSearch"
|
||||||
|
class="resultListSearchInput"
|
||||||
|
/>
|
||||||
<button class="button-reset" @click="chongzhi()">重置</button>
|
<button class="button-reset" @click="chongzhi()">重置</button>
|
||||||
<div class="hengxian"></div>
|
<div class="hengxian"></div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-loading="loadingData">
|
<div v-loading="loadingData">
|
||||||
<searchResultList v-show="resourceList.data && resourceList.data.length > 0" :key="listKey2"
|
<searchResultList
|
||||||
:resourceList="resourceList" :resourceTotal="resourceTotal"
|
v-if="number === 0"
|
||||||
:selectCardsname="number == 0 ? '融合服务' : '赋能场景'" />
|
v-show="resourceList.data && resourceList.data.length > 0"
|
||||||
|
:key="listKey2"
|
||||||
|
:resourceList="resourceList"
|
||||||
|
:resourceTotal="resourceTotal"
|
||||||
|
:selectCardsname="number == 0 ? '融合服务' : '赋能场景'"
|
||||||
|
/>
|
||||||
|
<CanAssignCase
|
||||||
|
v-else
|
||||||
|
v-show="resourceList.data && resourceList.data.length > 0"
|
||||||
|
:key="listKey2"
|
||||||
|
:resourceList="resourceList"
|
||||||
|
:resourceTotal="resourceTotal"
|
||||||
|
:selectCardsname="number == 0 ? '融合服务' : '赋能场景'"
|
||||||
|
/>
|
||||||
<div class="pagination">
|
<div class="pagination">
|
||||||
<a-pagination v-if="resourceList.data && resourceList.data.length > 0" v-model:current="currentPage"
|
<a-pagination
|
||||||
v-model:pageSize="currentPageSize" show-size-changer show-less-items show-quick-jumper
|
v-if="resourceList.data && resourceList.data.length > 0"
|
||||||
:total="resourceTotal" :page-size-options="pageSizeOptions" @change="pageChange"
|
v-model:current="currentPage"
|
||||||
@showSizeChange="onShowSizeChange" />
|
v-model:pageSize="currentPageSize"
|
||||||
|
show-size-changer
|
||||||
|
show-less-items
|
||||||
|
show-quick-jumper
|
||||||
|
:total="resourceTotal"
|
||||||
|
:page-size-options="pageSizeOptions"
|
||||||
|
@change="pageChange"
|
||||||
|
@showSizeChange="onShowSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="resourceList.data && resourceList.data.length <= 0" style="margin-top: 2rem">
|
<div
|
||||||
|
v-if="resourceList.data && resourceList.data.length <= 0"
|
||||||
|
style="margin-top: 2rem"
|
||||||
|
>
|
||||||
<a-empty />
|
<a-empty />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<home-footer></home-footer>
|
<home-footer></home-footer>
|
||||||
</template>
|
</template>
|
||||||
|
@ -47,6 +84,7 @@ import { getIntegrationServicesList } from '@/api/home.js'
|
||||||
import { useRouter } from 'vue-router'
|
import { useRouter } from 'vue-router'
|
||||||
import HomeHeader from '@/views/home/components/header'
|
import HomeHeader from '@/views/home/components/header'
|
||||||
import searchResultList from '@/views/home/components/searchResultList.vue'
|
import searchResultList from '@/views/home/components/searchResultList.vue'
|
||||||
|
import CanAssignCase from '@/views/home/components/CanAssignCase.vue'
|
||||||
import { message } from 'ant-design-vue'
|
import { message } from 'ant-design-vue'
|
||||||
|
|
||||||
export default defineComponent({
|
export default defineComponent({
|
||||||
|
@ -126,8 +164,8 @@ export default defineComponent({
|
||||||
|
|
||||||
// 获取融合服务列表
|
// 获取融合服务列表
|
||||||
const getIntegrationList = () => {
|
const getIntegrationList = () => {
|
||||||
loadingData.value = true;
|
loadingData.value = true
|
||||||
console.log('获取融合服务列表------------>');
|
console.log('获取融合服务列表------------>')
|
||||||
let postData = {
|
let postData = {
|
||||||
limit: currentPageSize.value,
|
limit: currentPageSize.value,
|
||||||
page: currentPage.value,
|
page: currentPage.value,
|
||||||
|
@ -138,17 +176,18 @@ export default defineComponent({
|
||||||
}
|
}
|
||||||
getIntegrationServicesList(postData).then(
|
getIntegrationServicesList(postData).then(
|
||||||
(res) => {
|
(res) => {
|
||||||
loadingData.value = false;
|
loadingData.value = false
|
||||||
if (res.data.code !== 0) {
|
if (res.data.code !== 0) {
|
||||||
return message.error(res.data.msg)
|
return message.error(res.data.msg)
|
||||||
}
|
}
|
||||||
console.log('res.data------------>', res.data);
|
console.log('res.data------------>', res.data)
|
||||||
|
|
||||||
resourceList.data = res.data.data.list || []
|
resourceList.data = res.data.data.list || []
|
||||||
resourceTotal.value = res.data.data.total || 0
|
resourceTotal.value = res.data.data.total || 0
|
||||||
|
listKey2.value++
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
loadingData.value = false;
|
loadingData.value = false
|
||||||
message.error(err)
|
message.error(err)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
@ -192,7 +231,7 @@ export default defineComponent({
|
||||||
}
|
}
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
console.log('222----onMounted-------->', 222);
|
console.log('222----onMounted-------->', 222)
|
||||||
listKey2.value++
|
listKey2.value++
|
||||||
getAppResources()
|
getAppResources()
|
||||||
})
|
})
|
||||||
|
@ -235,6 +274,7 @@ export default defineComponent({
|
||||||
HomeHeader,
|
HomeHeader,
|
||||||
HomeFooter,
|
HomeFooter,
|
||||||
searchResultList,
|
searchResultList,
|
||||||
|
CanAssignCase,
|
||||||
},
|
},
|
||||||
beforeUnmount() {
|
beforeUnmount() {
|
||||||
mybus.off('paramsGetResources')
|
mybus.off('paramsGetResources')
|
||||||
|
|
|
@ -25,17 +25,26 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 场景痛点 -->
|
<!-- 场景痛点 -->
|
||||||
<div
|
<div id="integration-pain-point" class="pain-point scrollBox">
|
||||||
id="integration-pain-point"
|
|
||||||
class="pain-point scrollBox"
|
|
||||||
>
|
|
||||||
<div class="title-1">
|
<div class="title-1">
|
||||||
<DetalsTitle title="场景痛点" type="PAIN POINT"></DetalsTitle>
|
<DetalsTitle title="场景痛点" type="PAIN POINT"></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-row-center">
|
<div class="flex-row-center">
|
||||||
<div class="bg"></div>
|
<div class="bg cjtd"><a-image :preview="false" :src="bgImg" /></div>
|
||||||
<div class="content">
|
|
||||||
<div class="content-item" v-for="(item, i) in painPoint" :key="i">{{i+1}}.{{item.description}}</div>
|
<div class="content" style="margin-left: 0.5rem">
|
||||||
|
<div
|
||||||
|
class="content-item"
|
||||||
|
v-for="(item, i) in painPoint"
|
||||||
|
:key="i"
|
||||||
|
style="
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
line-height: 0.3rem;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
{{ i + 1 + '、' + item.description }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -44,70 +53,95 @@
|
||||||
<div
|
<div
|
||||||
id="integration-solution"
|
id="integration-solution"
|
||||||
class="solution scrollBox"
|
class="solution scrollBox"
|
||||||
|
style="background: #eee"
|
||||||
>
|
>
|
||||||
<div class="title-1">
|
<div class="title-1">
|
||||||
<DetalsTitle title="解决方案" type="SOLUTION"></DetalsTitle>
|
<DetalsTitle title="解决方案" type="SOLUTION"></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-row-center">
|
<div class="flex-row-center">
|
||||||
<div class="content">
|
<div class="content" style="background: #fff; margin-top: 0.2rem">
|
||||||
<div class="content-item" v-for="(item, i) in solution" :key="i">{{i+1}}.{{item.description}}</div>
|
<div
|
||||||
|
class="content-item"
|
||||||
|
v-for="(item, i) in solution"
|
||||||
|
:key="i"
|
||||||
|
style="
|
||||||
|
margin-bottom: 0.2rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
line-height: 0.3rem;
|
||||||
|
"
|
||||||
|
>
|
||||||
|
{{ i + 1 + '、' + item.description }}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 使用能力 -->
|
<!-- 使用能力 -->
|
||||||
<div
|
<div id="integration-ability" class="ability scrollBox">
|
||||||
id="integration-ability"
|
|
||||||
class="ability scrollBox"
|
|
||||||
>
|
|
||||||
<div class="title-1">
|
<div class="title-1">
|
||||||
<DetalsTitle title="使用能力" type="ABILITY"></DetalsTitle>
|
<DetalsTitle title="使用能力" type="ABILITY"></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-row-center combine-content" v-for="(item, i) in combineList" :key="i">
|
<div
|
||||||
<div class="title"></div>
|
class="flex-row-center combine-content"
|
||||||
|
v-for="(item, i) in combineList"
|
||||||
|
:key="i"
|
||||||
|
style="display: block"
|
||||||
|
>
|
||||||
|
<div
|
||||||
|
class="top"
|
||||||
|
style="font-size: 0.24rem; text-align: center; margin-bottom: 0.3rem"
|
||||||
|
>
|
||||||
|
{{ i == 0 ? '基础设施' : i == 1 ? '组件服务' : '数据资源' }}
|
||||||
|
</div>
|
||||||
|
<div class="bottom" style="display: flex; align-items: flex-start">
|
||||||
|
<div class="title" :class="'title' + i"></div>
|
||||||
<div>
|
<div>
|
||||||
<el-table
|
<el-table
|
||||||
class="table"
|
class="table"
|
||||||
:data="item.list"
|
:data="item.list"
|
||||||
stripe
|
stripe
|
||||||
:header-cell-style="{'text-align': 'center'}">
|
:header-cell-style="{ 'text-align': 'center' }"
|
||||||
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="name"
|
prop="name"
|
||||||
label="数据"
|
label="数据"
|
||||||
align="center"
|
align="center"
|
||||||
width="200"
|
width="200"
|
||||||
show-overflow-tooltip="true">
|
show-overflow-tooltip="true"
|
||||||
</el-table-column>
|
></el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="dept"
|
prop="dept"
|
||||||
label="能力来源"
|
label="能力来源"
|
||||||
align="center"
|
align="center"
|
||||||
width="300"
|
width="300"
|
||||||
show-overflow-tooltip="true">
|
show-overflow-tooltip="true"
|
||||||
</el-table-column>
|
></el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="platform"
|
prop="platform"
|
||||||
label="申请平台"
|
label="申请平台"
|
||||||
align="center"
|
align="center"
|
||||||
width="100"
|
width="100"
|
||||||
show-overflow-tooltip="true">
|
show-overflow-tooltip="true"
|
||||||
</el-table-column>
|
></el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- 构建步骤 -->
|
<!-- 构建步骤 -->
|
||||||
<div
|
<div id="integration-step" class="step scrollBox" style="background: #eee">
|
||||||
id="integration-step"
|
|
||||||
class="step scrollBox"
|
|
||||||
>
|
|
||||||
<div class="title-1">
|
<div class="title-1">
|
||||||
<DetalsTitle title="构建步骤" type="STEP"></DetalsTitle>
|
<DetalsTitle title="构建步骤" type="STEP"></DetalsTitle>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-row-center step-content">
|
<div class="flex-row-center step-content">
|
||||||
<el-steps direction="vertical" :space="150" :active="step.length">
|
<el-steps direction="vertical" :space="150" :active="step.length">
|
||||||
<el-step v-for="(item, i) in step" :key="i" :title="item.question" :description="item.answer"></el-step>
|
<el-step
|
||||||
|
v-for="(item, i) in step"
|
||||||
|
:key="i"
|
||||||
|
:title="item.question"
|
||||||
|
:description="item.answer"
|
||||||
|
></el-step>
|
||||||
</el-steps>
|
</el-steps>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -116,7 +150,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import ApplicationTopDetails from '@/views/detailsAll/components/Application/ApplicationTopDetails.vue'
|
import ApplicationTopDetails from './components/ApplicationTopDetails.vue'
|
||||||
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
import DetalsTitle from '@/views/detailsAll/components/DetalsTitle'
|
||||||
import ApplicationCommonProblem from '@/views/detailsAll/components/Application/ApplicationCommonProblem' //常见问题
|
import ApplicationCommonProblem from '@/views/detailsAll/components/Application/ApplicationCommonProblem' //常见问题
|
||||||
import HomeFooter from '@/views/newHome/components/Footer'
|
import HomeFooter from '@/views/newHome/components/Footer'
|
||||||
|
@ -132,6 +166,7 @@
|
||||||
const painPoint = ref([])
|
const painPoint = ref([])
|
||||||
const solution = ref([])
|
const solution = ref([])
|
||||||
const step = ref([])
|
const step = ref([])
|
||||||
|
const bgImg = ref('')
|
||||||
const id = router.currentRoute.value.query.id
|
const id = router.currentRoute.value.query.id
|
||||||
document.documentElement.style.transition = 'all 0.3s ease'
|
document.documentElement.style.transition = 'all 0.3s ease'
|
||||||
document.documentElement.scrollTop = 0
|
document.documentElement.scrollTop = 0
|
||||||
|
@ -248,32 +283,75 @@
|
||||||
attrType: '常见问题',
|
attrType: '常见问题',
|
||||||
attrValue: questionValue.attrValue || '[]',
|
attrValue: questionValue.attrValue || '[]',
|
||||||
}
|
}
|
||||||
painPoint.value = JSON.parse(fuseAttrList.find((v) => v.attrType === '场景痛点').attrValue) || []
|
painPoint.value =
|
||||||
solution.value = JSON.parse(fuseAttrList.find((v) => v.attrType === '解决方案').attrValue) || []
|
JSON.parse(
|
||||||
step.value = JSON.parse(fuseAttrList.find((v) => v.attrType === '使用步骤').attrValue) || []
|
fuseAttrList.find((v) => v.attrType === '场景痛点').attrValue
|
||||||
|
) || []
|
||||||
|
solution.value =
|
||||||
|
JSON.parse(
|
||||||
|
fuseAttrList.find((v) => v.attrType === '解决方案').attrValue
|
||||||
|
) || []
|
||||||
|
step.value =
|
||||||
|
JSON.parse(
|
||||||
|
fuseAttrList.find((v) => v.attrType === '使用步骤').attrValue
|
||||||
|
) || []
|
||||||
|
bgImg.value =
|
||||||
|
fuseAttrList.find((v) => v.attrType === '服务图片').attrValue || ''
|
||||||
let areaObj = {
|
let areaObj = {
|
||||||
attrType: '应用领域',
|
attrType: '应用领域',
|
||||||
attrValue: fuseAttrList.find((v) => v.attrType === '应用领域').attrValue,
|
attrValue: '',
|
||||||
}
|
}
|
||||||
combineList.value.forEach((item) => {
|
combineList.value.forEach((item) => {
|
||||||
let arr = []
|
let arr = []
|
||||||
let resource=fuseResourceList.filter((v)=>v.resource && v.type == item.title)
|
let resource = fuseResourceList.filter(
|
||||||
|
(v) => v.resource && v.type == item.title
|
||||||
|
)
|
||||||
if (resource.length > 0) {
|
if (resource.length > 0) {
|
||||||
if (item.title === '基础设施') {
|
if (item.title === '基础设施') {
|
||||||
arr=resource.map(res=>({
|
arr = resource.map((res) => ({
|
||||||
id: res.resource.idtCameraChannel, name: res.resource.channelName, dept: res.resource.nodeName, platform: 'UCS'
|
id: res.resource.idtCameraChannel,
|
||||||
|
name: res.resource.channelName,
|
||||||
|
dept: res.resource.nodeName,
|
||||||
|
platform: 'UCS',
|
||||||
}))
|
}))
|
||||||
} else if (item.title === '组件服务') {
|
} else if (item.title === '组件服务') {
|
||||||
arr=resource.map(res=>({
|
arr = resource.map((res) => ({
|
||||||
id: res.resource.id, name: res.resource.name, dept: res.resource.deptName, platform: 'UCS'
|
id: res.resource.id,
|
||||||
|
name: res.resource.name,
|
||||||
|
dept: res.resource.deptName,
|
||||||
|
platform: 'UCS',
|
||||||
}))
|
}))
|
||||||
} else if (item.title === '数据资源') {
|
} else if (item.title === '数据资源') {
|
||||||
arr=resource.map(res=>({
|
arr = resource.map((res) => ({
|
||||||
id: res.resource.zycode, name: res.resource.zyname, dept: res.resource.TGBM, platform: '共享交换平台'
|
id: res.resource.zycode,
|
||||||
|
name: res.resource.zyname,
|
||||||
|
dept: res.resource.TGBM,
|
||||||
|
platform: '共享交换平台',
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (item.title === '数据资源') {
|
||||||
|
item.list.push({
|
||||||
|
id: '数据资源1',
|
||||||
|
name: '城管案件数据',
|
||||||
|
dept: '市城管局',
|
||||||
|
platform: '政务信息共享交换网',
|
||||||
|
})
|
||||||
|
item.list.push({
|
||||||
|
id: '数据资源2',
|
||||||
|
name: '手机信令数据',
|
||||||
|
dept: '运营商(移动)',
|
||||||
|
platform: '政务信息共享交换网',
|
||||||
|
})
|
||||||
|
item.list.push({
|
||||||
|
id: '数据资源3',
|
||||||
|
name: '标准地址数据',
|
||||||
|
dept: '市自规局',
|
||||||
|
platform: '政务信息共享交换网',
|
||||||
|
})
|
||||||
|
} else {
|
||||||
item.list = arr
|
item.list = arr
|
||||||
|
}
|
||||||
})
|
})
|
||||||
detailInfoObj.value.infoList = []
|
detailInfoObj.value.infoList = []
|
||||||
detailInfoObj.value.infoList.push(questionObj)
|
detailInfoObj.value.infoList.push(questionObj)
|
||||||
|
@ -463,14 +541,20 @@
|
||||||
.bg {
|
.bg {
|
||||||
height: 3rem;
|
height: 3rem;
|
||||||
width: 3rem;
|
width: 3rem;
|
||||||
background: url('~@/assets/home/rhfw_square.png') no-repeat;
|
// background: url('~@/assets/home/rhfw_square.png') no-repeat;
|
||||||
background-size: 100%;
|
// background-size: 100%;
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
}
|
}
|
||||||
|
.cjtd {
|
||||||
|
width: 5.75rem;
|
||||||
|
height: 3.4rem;
|
||||||
|
background: url('~@/assets/home/fn/cjtd.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
.content {
|
.content {
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
height: 3rem;
|
height: 3rem;
|
||||||
width: 6rem;
|
width: 7rem;
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
.content-item {
|
.content-item {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
|
@ -483,7 +567,7 @@
|
||||||
padding: 0.8rem 0;
|
padding: 0.8rem 0;
|
||||||
background: rgb(247, 248, 250);
|
background: rgb(247, 248, 250);
|
||||||
.content {
|
.content {
|
||||||
width: 9rem;
|
width: 11rem;
|
||||||
.content-item {
|
.content-item {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
margin: 0.3rem;
|
margin: 0.3rem;
|
||||||
|
@ -495,9 +579,16 @@
|
||||||
padding: 0.8rem 0;
|
padding: 0.8rem 0;
|
||||||
background: rgb(247, 248, 250);
|
background: rgb(247, 248, 250);
|
||||||
.step-content {
|
.step-content {
|
||||||
margin-top: 0.3rem;
|
margin: 0.3rem 4.5rem;
|
||||||
|
padding: 0.3rem;
|
||||||
|
background: #fff;
|
||||||
|
:deep(.el-step__description.is-finish) {
|
||||||
|
color: #333;
|
||||||
|
line-height: 0.24rem;
|
||||||
|
margin-top: 0.05rem;
|
||||||
|
}
|
||||||
/deep/ .el-step__title {
|
/deep/ .el-step__title {
|
||||||
font-size: 16px;
|
font-size: 18px;
|
||||||
}
|
}
|
||||||
/deep/ .el-step__description {
|
/deep/ .el-step__description {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
|
@ -516,6 +607,9 @@
|
||||||
.combine-content {
|
.combine-content {
|
||||||
margin-top: 0.3rem;
|
margin-top: 0.3rem;
|
||||||
align-items: flex-start;
|
align-items: flex-start;
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
margin: 0.2rem 4rem 0;
|
||||||
|
padding: 0.2rem 0;
|
||||||
.title {
|
.title {
|
||||||
height: 3rem;
|
height: 3rem;
|
||||||
width: 3rem;
|
width: 3rem;
|
||||||
|
@ -523,12 +617,29 @@
|
||||||
background: url('~@/assets/home/rhfw_square.png') no-repeat;
|
background: url('~@/assets/home/rhfw_square.png') no-repeat;
|
||||||
background-size: 100%;
|
background-size: 100%;
|
||||||
}
|
}
|
||||||
|
.title0 {
|
||||||
|
width: 5.6rem;
|
||||||
|
height: 3.45rem;
|
||||||
|
background: url('~@/assets/home/fn/jcss.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
|
.title1 {
|
||||||
|
width: 5.6rem;
|
||||||
|
height: 3.45rem;
|
||||||
|
background: url('~@/assets/home/fn/zjfw.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
|
.title2 {
|
||||||
|
width: 5.6rem;
|
||||||
|
height: 3.45rem;
|
||||||
|
background: url('~@/assets/home/fn/sjzy.png') no-repeat;
|
||||||
|
background-size: 100%;
|
||||||
|
}
|
||||||
.table {
|
.table {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 16px
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.name-box {
|
.name-box {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
|
|
Loading…
Reference in New Issue