大屏应用位置整合
This commit is contained in:
@@ -9,10 +9,12 @@ import 'dvcp-ui/lib/styles/common.scss';
|
|||||||
import 'dvcp-ui/lib/dvcp-ui.css';
|
import 'dvcp-ui/lib/dvcp-ui.css';
|
||||||
import store from './store';
|
import store from './store';
|
||||||
import dataV from '@jiaminghi/data-view';
|
import dataV from '@jiaminghi/data-view';
|
||||||
|
import dvui from '../project/dvui/entries'
|
||||||
|
|
||||||
Vue.use(dataV);
|
Vue.use(dataV);
|
||||||
Vue.use(ui);
|
Vue.use(ui);
|
||||||
Vue.use(vcUI);
|
Vue.use(vcUI);
|
||||||
|
Vue.use(dvui)
|
||||||
//富文本编辑器配置
|
//富文本编辑器配置
|
||||||
Vue.config.productionTip = false;
|
Vue.config.productionTip = false;
|
||||||
Vue.prototype.$axios = axios;
|
Vue.prototype.$axios = axios;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
"lib:core": "vue-cli-service build --target lib --dest core/dist core/index.js --name dvcp-core&&npm unpublish dvcp-core --force&&npm publish core/",
|
"lib:core": "vue-cli-service build --target lib --dest core/dist core/index.js --name dvcp-core&&npm unpublish dvcp-core --force&&npm publish core/",
|
||||||
"lib:project": "node project/build.js",
|
"lib:project": "node project/build.js",
|
||||||
"lib:all": "node project/allProject.js&&npm unpublish --workspaces --force&&npm publish --workspaces",
|
"lib:all": "node project/allProject.js&&npm unpublish --workspaces --force&&npm publish --workspaces",
|
||||||
"ui": "npm i dvcp-ui@latest dvcp-dv-ui@latest"
|
"ui": "npm i dvcp-ui@latest"
|
||||||
},
|
},
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
"project/*"
|
"project/*"
|
||||||
@@ -20,8 +20,6 @@
|
|||||||
"@jiaminghi/data-view": "^2.10.0",
|
"@jiaminghi/data-view": "^2.10.0",
|
||||||
"bin-code-editor": "^0.9.0",
|
"bin-code-editor": "^0.9.0",
|
||||||
"dayjs": "^1.8.35",
|
"dayjs": "^1.8.35",
|
||||||
"dvcp-dv": "^1.0.0",
|
|
||||||
"dvcp-dv-ui": "file:project/dvui",
|
|
||||||
"dvcp-ui": "^1.42.2",
|
"dvcp-ui": "^1.42.2",
|
||||||
"echarts": "^5.1.2",
|
"echarts": "^5.1.2",
|
||||||
"mp4box": "^0.4.1",
|
"mp4box": "^0.4.1",
|
||||||
|
|||||||
@@ -6,32 +6,28 @@
|
|||||||
<template slot="tabs">
|
<template slot="tabs">
|
||||||
<el-tabs v-model="currIndex">
|
<el-tabs v-model="currIndex">
|
||||||
<el-tab-pane v-for="(tab,i) in tabs" :key="i" :label="tab.label">
|
<el-tab-pane v-for="(tab,i) in tabs" :key="i" :label="tab.label">
|
||||||
<component :urlPrefix="urlPrefix" :areaId="areaId" :ref="tab.name" v-if="currIndex == i" :is="tab.comp" @change="onChange" lazy :instance="instance" :dict="dict" :permissions="permissions" />
|
<component :urlPrefix="urlPrefix" :areaId="areaId" :ref="tab.name" v-if="currIndex == i" :is="tab.comp" @change="onChange" lazy :instance="instance"
|
||||||
|
:dict="dict" :permissions="permissions"/>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
</el-tabs>
|
</el-tabs>
|
||||||
</template>
|
</template>
|
||||||
</ai-list>
|
</ai-list>
|
||||||
<Add v-else-if="componentName === 'Add'" :urlPrefix="urlPrefix" :areaId="areaId" :params="params" :instance="instance" :dict="dict" :permissions="permissions" @change="onChange"></Add>
|
<Add v-else-if="componentName === 'Add'" :urlPrefix="urlPrefix" :areaId="areaId" :params="params" :instance="instance" :dict="dict" :permissions="permissions"
|
||||||
<SourceData v-else-if="componentName === 'SourceData'" :urlPrefix="urlPrefix" :params="params" :instance="instance" :dict="dict" :permissions="permissions" @change="onChange"></SourceData>
|
@change="onChange"></Add>
|
||||||
|
<SourceData v-else-if="componentName === 'SourceData'" :urlPrefix="urlPrefix" :params="params" :instance="instance" :dict="dict" :permissions="permissions"
|
||||||
|
@change="onChange"></SourceData>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import List from './components/List.vue'
|
import List from './components/List.vue'
|
||||||
import Add from './components/Add'
|
import Add from './components/Add'
|
||||||
import SourceData from './components/SourceData'
|
import SourceData from './components/SourceData'
|
||||||
import dvui from '../../../project/dvui/entries'
|
|
||||||
import Vue from "vue";
|
|
||||||
|
|
||||||
Vue.use(dvui)
|
|
||||||
export default {
|
export default {
|
||||||
name: 'AppDesigner',
|
name: 'AppDesigner',
|
||||||
label: '大屏设计',
|
label: '大屏设计',
|
||||||
|
|
||||||
components: {
|
components: {List, Add, SourceData},
|
||||||
List,
|
|
||||||
Add,
|
|
||||||
SourceData
|
|
||||||
},
|
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
instance: Function,
|
instance: Function,
|
||||||
@@ -84,8 +80,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -65,12 +65,12 @@
|
|||||||
@close="isShowLayout = false">
|
@close="isShowLayout = false">
|
||||||
</Layout>
|
</Layout>
|
||||||
<ai-dv-wrapper :views="[{label: '返回'}]" :theme="config.theme" @change="screenId = false" v-if="screenId" :title="form.name">
|
<ai-dv-wrapper :views="[{label: '返回'}]" :theme="config.theme" @change="screenId = false" v-if="screenId" :title="form.name">
|
||||||
<AiDvBackground
|
<ai-dv-background
|
||||||
:theme="config.theme"
|
:theme="config.theme"
|
||||||
v-if="config.length || config.theme === '1'"
|
v-if="config.length || config.theme === '1'"
|
||||||
:src="config.theme === '1' ? 'https://cdn.cunwuyun.cn/dvcp/dv/img/dj-bg.png' : config.backgroundImage[0].url">
|
:src="config.theme === '1' ? 'https://cdn.cunwuyun.cn/dvcp/dv/img/dj-bg.png' : config.backgroundImage[0].url">
|
||||||
</AiDvBackground>
|
</ai-dv-background>
|
||||||
<AppGigscreenViewer :urlPrefix="urlPrefix" :instance="instance" :dict="dict" :id="screenId"></AppGigscreenViewer>
|
<app-gigscreen-viewer :urlPrefix="urlPrefix" :instance="instance" :dict="dict" :id="screenId"/>
|
||||||
</ai-dv-wrapper>
|
</ai-dv-wrapper>
|
||||||
<ai-dialog :visible.sync="dialog" title="定制大屏" @closed="custom={}" @onConfirm="handleCustomizedDV">
|
<ai-dialog :visible.sync="dialog" title="定制大屏" @closed="custom={}" @onConfirm="handleCustomizedDV">
|
||||||
<el-form ref="CustomDVFrom" size="small" :model="custom" :rules="rules" label-width="80px">
|
<el-form ref="CustomDVFrom" size="small" :model="custom" :rules="rules" label-width="80px">
|
||||||
@@ -94,29 +94,22 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import AppGigscreenViewer from '../../viewer/AppGigscreenViewer'
|
|
||||||
import Layout from './Layout.vue'
|
import Layout from './Layout.vue'
|
||||||
import Sortable from 'sortablejs'
|
import Sortable from 'sortablejs'
|
||||||
|
import AppGigscreenViewer from "../../viewer/AppGigscreenViewer";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'Add',
|
name: 'Add',
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
instance: Function,
|
instance: Function,
|
||||||
dict: Object,
|
dict: Object,
|
||||||
params: Object,
|
params: Object,
|
||||||
urlPrefix: String
|
urlPrefix: String
|
||||||
},
|
},
|
||||||
|
|
||||||
inject: {
|
inject: {
|
||||||
home: {default: ''}
|
home: {default: ''}
|
||||||
},
|
},
|
||||||
|
components: {AppGigscreenViewer, Layout},
|
||||||
components: {
|
|
||||||
Layout,
|
|
||||||
AppGigscreenViewer
|
|
||||||
},
|
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
info: {},
|
info: {},
|
||||||
|
|||||||
@@ -91,7 +91,7 @@
|
|||||||
<div class="coordinate-top"></div>
|
<div class="coordinate-top"></div>
|
||||||
<div class="coordinate-label">{{ item.left }}, {{ item.top }}</div>
|
<div class="coordinate-label">{{ item.left }}, {{ item.top }}</div>
|
||||||
</div>
|
</div>
|
||||||
<RenderElement :data="item" :theme="dashboard.theme" :index="index"></RenderElement>
|
<ai-dv-render :data="item" :theme="dashboard.theme" :index="index"/>
|
||||||
</vue-draggable-resizable>
|
</vue-draggable-resizable>
|
||||||
</div>
|
</div>
|
||||||
</ai-dv-wrapper>
|
</ai-dv-wrapper>
|
||||||
@@ -353,7 +353,6 @@ import VueRulerTool from 'vue-ruler-tool'
|
|||||||
import VueDraggableResizable from 'vue-draggable-resizable'
|
import VueDraggableResizable from 'vue-draggable-resizable'
|
||||||
import 'vue-draggable-resizable/dist/VueDraggableResizable.css'
|
import 'vue-draggable-resizable/dist/VueDraggableResizable.css'
|
||||||
import DataConfig from './form/DataConfig.vue'
|
import DataConfig from './form/DataConfig.vue'
|
||||||
import RenderElement from './RenderElement'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
@@ -416,7 +415,6 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
RenderElement,
|
|
||||||
DataConfig,
|
DataConfig,
|
||||||
VueRulerTool,
|
VueRulerTool,
|
||||||
VueDraggableResizable,
|
VueDraggableResizable,
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="AppGigscreenViewer">
|
<section class="AppGigscreenViewer">
|
||||||
<div v-if="!component">
|
<div v-if="!component">
|
||||||
<div
|
<div
|
||||||
class="component-item"
|
class="component-item"
|
||||||
@@ -14,21 +14,18 @@
|
|||||||
}"
|
}"
|
||||||
v-for="(item, index) in componentList"
|
v-for="(item, index) in componentList"
|
||||||
:key="index">
|
:key="index">
|
||||||
<RenderElement :instance="instance" :data="item" :index="index" :theme="dashboard.theme"></RenderElement>
|
<ai-dv-render :instance="instance" :data="item" :index="index" :theme="dashboard.theme"/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<components v-else :is="component" :dict="dict" :instance="instance" :nav="meta"/>
|
<components v-else :is="component" :dict="dict" :instance="instance" :nav="meta"/>
|
||||||
</div>
|
</section>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
import RenderElement from '../designer/components/RenderElement'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'AppGigscreenViewer',
|
name: 'AppGigscreenViewer',
|
||||||
label: '大屏预览',
|
label: '大屏预览',
|
||||||
|
|
||||||
props: {
|
props: {
|
||||||
instance: Function,
|
instance: Function,
|
||||||
dict: Object,
|
dict: Object,
|
||||||
@@ -38,17 +35,11 @@ export default {
|
|||||||
default: '/app'
|
default: '/app'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
watch: {
|
watch: {
|
||||||
id(v) {
|
id(v) {
|
||||||
this.getInfo(v)
|
this.getInfo(v)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
components: {
|
|
||||||
RenderElement
|
|
||||||
},
|
|
||||||
|
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
component: '',
|
component: '',
|
||||||
@@ -65,32 +56,25 @@ export default {
|
|||||||
meta: {}
|
meta: {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
created() {
|
created() {
|
||||||
this.getInfo(this.id)
|
this.getInfo(this.id)
|
||||||
|
|
||||||
// this.scale = document.body.clientWidth / 1920
|
|
||||||
},
|
},
|
||||||
|
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
let content = document.querySelector('#dv-full-screen-container')
|
let content = document.querySelector('#dv-full-screen-container')
|
||||||
if (content) {
|
if (content) {
|
||||||
const transform = content.style.transform
|
const transform = content.style.transform
|
||||||
const scale = transform.replace('scale', '').replace('(', '').replace(')', '')
|
const scale = transform.replace('scale', '').replace('(', '').replace(')', '')
|
||||||
|
|
||||||
if (scale == 1) {
|
if (scale == 1) {
|
||||||
this.scale = document.body.clientWidth / 1920
|
this.scale = document.body.clientWidth / 1920
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
methods: {
|
methods: {
|
||||||
getInfo(id) {
|
getInfo(id) {
|
||||||
this.component = null
|
this.component = null
|
||||||
this.instance.post(`${this.urlPrefix}/appdiylargescreen/queryLargeScreenDetailById?id=${id}`).then(res => {
|
id && this.instance.post(`${this.urlPrefix}/appdiylargescreen/queryLargeScreenDetailById?id=${id}`).then(res => {
|
||||||
if (res?.data) {
|
if (res?.data) {
|
||||||
const config = JSON.parse(res.data.config)
|
const config = JSON.parse(res.data.config)
|
||||||
if (config.custom) {
|
if (config.custom) {
|
||||||
@@ -123,7 +107,6 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
getSourceData(item, index) {
|
getSourceData(item, index) {
|
||||||
const api = item.dataType === 'apiData' ? item.api : `${this.urlPrefix}/appdiylargescreen/statisticsByLsid?id=${item.sourceDataId}`
|
const api = item.dataType === 'apiData' ? item.api : `${this.urlPrefix}/appdiylargescreen/statisticsByLsid?id=${item.sourceDataId}`
|
||||||
this.instance.post(api).then(res => {
|
this.instance.post(api).then(res => {
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
* @param params showList:打印加载的应用;apps:加载的应用文件名数组
|
* @param params showList:打印加载的应用;apps:加载的应用文件名数组
|
||||||
*/
|
*/
|
||||||
import core from './core.import'
|
import core from './core.import'
|
||||||
|
import dvui from '../project/dvui/entries'
|
||||||
|
|
||||||
const install = function (Vue, params) {
|
const install = function (Vue, params) {
|
||||||
if (install.installed) return
|
if (install.installed) return
|
||||||
@@ -31,6 +32,7 @@ const install = function (Vue, params) {
|
|||||||
apps.push(app.component)
|
apps.push(app.component)
|
||||||
Vue.component(app.name, app.component)
|
Vue.component(app.name, app.component)
|
||||||
})
|
})
|
||||||
|
Vue.use(dvui)
|
||||||
return Promise.resolve(apps)
|
return Promise.resolve(apps)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,157 +0,0 @@
|
|||||||
<template>
|
|
||||||
<section class="AppDVDemo">
|
|
||||||
<ai-list>
|
|
||||||
<ai-title slot="title" title="数据大屏草稿板" isShowBottomBorder/>
|
|
||||||
<template #content>
|
|
||||||
<div class="showPanel">
|
|
||||||
<ai-dv-wrapper :views="views" v-model="active">
|
|
||||||
<ai-echart :ops="ops" :data="views" theme="1"></ai-echart>
|
|
||||||
</ai-dv-wrapper>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
</ai-list>
|
|
||||||
</section>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
|
|
||||||
import AiDvWrapper from "./layout/AiDvWrapper/AiDvWrapper";
|
|
||||||
import ops from './components/AiEchart/template/pie/pieChart3'
|
|
||||||
import AiDvPanel from "./layout/AiDvPanel/AiDvPanel";
|
|
||||||
import AiDvDisplay from "./layout/AiDvDisplay/AiDvDisplay";
|
|
||||||
import AiDvSummary from "./layout/AiDvSummary/AiDvSummary";
|
|
||||||
import AiMonitor from "./components/AiMonitor/AiMonitor";
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: "AppDVDemo",
|
|
||||||
label: "数据大屏草稿板",
|
|
||||||
components: {AiMonitor, AiDvPanel, AiDvWrapper, AiDvDisplay, AiDvSummary},
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
ops,
|
|
||||||
active: '',
|
|
||||||
views: [
|
|
||||||
{
|
|
||||||
"name": "阿斯达",
|
|
||||||
"v1": 23,
|
|
||||||
"v2": 33
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "水电费",
|
|
||||||
"v1": 12,
|
|
||||||
"v2": 34
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "凡哥",
|
|
||||||
"v1": 67,
|
|
||||||
"v2": 25
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "党费",
|
|
||||||
"v1": 98,
|
|
||||||
"v2": 85
|
|
||||||
}
|
|
||||||
],
|
|
||||||
list: [
|
|
||||||
{name: '阿斯达', v1: 23, v2: 33},
|
|
||||||
{name: '水电费', v1: 12, v2: 34},
|
|
||||||
{name: '凡哥', v1: 67, v2: 25},
|
|
||||||
{name: '党费', v1: 98, v2: 85},
|
|
||||||
{name: '阿萨德', v1: 98, v2: 85},
|
|
||||||
{name: '电饭锅', v1: 98, v2: 85},
|
|
||||||
{name: '户籍科', v1: 98, v2: 85},
|
|
||||||
],
|
|
||||||
data: [
|
|
||||||
{
|
|
||||||
"key": "阿斯达",
|
|
||||||
"value": '22',
|
|
||||||
"percentage": 33,
|
|
||||||
text: '同比上月'
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"key": "阿斯达",
|
|
||||||
"value": '22',
|
|
||||||
"percentage": -33,
|
|
||||||
text: '同比上月'
|
|
||||||
}
|
|
||||||
],
|
|
||||||
value: [
|
|
||||||
{
|
|
||||||
"key": "宅基地 ",
|
|
||||||
"value": 1252292,
|
|
||||||
"value1": 12592,
|
|
||||||
"value2": 12592,
|
|
||||||
"value3": 12592,
|
|
||||||
"value4": 12592
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"key": "人数",
|
|
||||||
"value": 12592,
|
|
||||||
"value1": 12592,
|
|
||||||
"value2": 12592,
|
|
||||||
"value3": 12592,
|
|
||||||
"value4": 12592
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"key": "户数 ",
|
|
||||||
"value": 12592,
|
|
||||||
"value1": 12592,
|
|
||||||
"value2": 12592,
|
|
||||||
"value3": 12592,
|
|
||||||
"value4": 12592
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"key": "村社区",
|
|
||||||
"value": 12592,
|
|
||||||
"value1": 12592,
|
|
||||||
"value2": 12592,
|
|
||||||
"value3": 12592,
|
|
||||||
"value4": 12592
|
|
||||||
}
|
|
||||||
],
|
|
||||||
markers: []
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
getMarkers() {
|
|
||||||
this.$request.post('/app/appcommunitybuildinginfo/listByBuildingAndHomestead', null, {
|
|
||||||
params: {current: 1, size: 1000000},
|
|
||||||
withoutToken: true
|
|
||||||
}).then(res => {
|
|
||||||
if (res?.data) {
|
|
||||||
this.markers = res.data.map(e => ({
|
|
||||||
...e,
|
|
||||||
icon: "https://cdn.cunwuyun.cn/dvcp/dv/monitor.svg",
|
|
||||||
label: e.communityName
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
// this.getMarkers()
|
|
||||||
setTimeout(() => {
|
|
||||||
this.list = this.list.map(e => ({name: e.name, '电费': e.v1, '水费': e.v2 * 2}))
|
|
||||||
}, 2000)
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
this.$initWxOpenData()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
|
||||||
@import "./lib/animation";
|
|
||||||
|
|
||||||
.AppDVDemo {
|
|
||||||
height: 100%;
|
|
||||||
|
|
||||||
.showPanel {
|
|
||||||
height: 600px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.AiDvPanel {
|
|
||||||
width: 600px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="render-element" style="width: 100%; height: 100%;">
|
<div class="AiDvRender" style="width: 100%; height: 100%;">
|
||||||
<ai-dv-display v-if="data.type === 'display'" :title="data.title" :list="values"></ai-dv-display>
|
<ai-dv-display v-if="data.type === 'display'" :title="data.title" :list="values"></ai-dv-display>
|
||||||
<ai-dv-panel
|
<ai-dv-panel
|
||||||
style="height: 100%; width: 100%;"
|
style="height: 100%; width: 100%;"
|
||||||
@@ -137,9 +137,9 @@
|
|||||||
:ops="pieChart3"/>
|
:ops="pieChart3"/>
|
||||||
<ai-map :markers="values" v-else-if="data.type=='map'" :mask="data.mask === '1'" :areaId="data.areaId || user.info.areaId"
|
<ai-map :markers="values" v-else-if="data.type=='map'" :mask="data.mask === '1'" :areaId="data.areaId || user.info.areaId"
|
||||||
:map-style="`amap://styles/${data.mapStyle}`" :pulseLines="data.pulseLines==1" :map.sync="map" :lib.sync="lib"/>
|
:map-style="`amap://styles/${data.mapStyle}`" :pulseLines="data.pulseLines==1" :map.sync="map" :lib.sync="lib"/>
|
||||||
<ai-monitor :src="data.src" v-else-if="data.type === 'monitor'" :type="data.monitorType"></ai-monitor>
|
<ai-monitor :src="data.src" v-else-if="data.type === 'monitor'" :type="data.monitorType"/>
|
||||||
<video style="width: 100%; height: 100%; object-fit: fill;" loop :src="data.src" autoplay v-else-if="data.type === 'video'"></video>
|
<video style="width: 100%; height: 100%; object-fit: fill;" loop :src="data.src" autoplay v-else-if="data.type === 'video'"/>
|
||||||
<AiDvPartyOrg style="width: 100%; height: 100%;" v-else-if="data.type === 'partyOrg'" :instance="instance"></AiDvPartyOrg>
|
<AiDvPartyOrg style="width: 100%; height: 100%;" v-else-if="data.type === 'partyOrg'" :instance="instance"/>
|
||||||
</ai-dv-panel>
|
</ai-dv-panel>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -147,19 +147,26 @@
|
|||||||
<script>
|
<script>
|
||||||
import {mapState} from 'vuex'
|
import {mapState} from 'vuex'
|
||||||
import AiSwiper from './AiSwiper.vue'
|
import AiSwiper from './AiSwiper.vue'
|
||||||
import pieChart from 'dvcp-dv-ui/components/AiEchart/template/pie/pieChart2'
|
import pieChart from './AiEchart/template/pie/pieChart2'
|
||||||
import pieChart1 from 'dvcp-dv-ui/components/AiEchart/template/pie/pieChart1'
|
import pieChart1 from './AiEchart/template/pie/pieChart1'
|
||||||
import pieChart3 from 'dvcp-dv-ui/components/AiEchart/template/pie/pieChart3'
|
import pieChart3 from './AiEchart/template/pie/pieChart3'
|
||||||
import lineChart1 from 'dvcp-dv-ui/components/AiEchart/template/line/lineChart1'
|
import lineChart1 from './AiEchart/template/line/lineChart1'
|
||||||
import lineChart2 from 'dvcp-dv-ui/components/AiEchart/template/line/lineChart2'
|
import lineChart2 from './AiEchart/template/line/lineChart2'
|
||||||
import lineChart5 from 'dvcp-dv-ui/components/AiEchart/template/line/lineChart5'
|
import lineChart5 from './AiEchart/template/line/lineChart5'
|
||||||
|
import AiMonitor from "./AiMonitor/AiMonitor";
|
||||||
|
import AiDvPanel from "../layout/AiDvPanel/AiDvPanel";
|
||||||
|
import AiDvDisplay from "../layout/AiDvDisplay/AiDvDisplay";
|
||||||
|
import AiDvSummary from "../layout/AiDvSummary/AiDvSummary";
|
||||||
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'RenderElement',
|
name: 'AiDvRender',
|
||||||
|
|
||||||
props: ['data', 'index', 'theme', 'instance'],
|
props: ['data', 'index', 'theme', 'instance'],
|
||||||
|
|
||||||
components: {
|
components: {
|
||||||
|
AiDvSummary,
|
||||||
|
AiDvDisplay,
|
||||||
|
AiDvPanel,
|
||||||
|
AiMonitor,
|
||||||
AiSwiper
|
AiSwiper
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -267,7 +274,7 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.render-element {
|
.AiDvRender {
|
||||||
::v-deep .dvScrollBoard1 {
|
::v-deep .dvScrollBoard1 {
|
||||||
|
|
||||||
.header {
|
.header {
|
||||||
Reference in New Issue
Block a user