1
0
mirror of https://github.com/PanJiaChen/vue-element-admin.git synced 2025-08-13 07:04:21 +08:00
elsiosanchez a4a1cdb182
raname variable (#475)
* raname variable

* change conditional
2020-04-30 12:26:08 -04:00

175 lines
4.1 KiB
Vue

<template>
<el-container
v-if="isLoadedMetadata"
key="process-loaded"
class="view-base"
style="height: 84vh;"
>
<el-header
v-if="showContextMenu"
style="height: 39px;"
>
<context-menu
:menu-parent-uuid="$route.meta.parentUuid"
:container-uuid="processUuid"
:panel-type="panelType"
:is-report="processMetadata.isReport"
/>
</el-header>
<el-main>
<el-row :gutter="20">
<el-col :span="24">
<el-card class="content-collapse">
<h3 v-show="!isEmptyValue(processTitle)" class="warn-content text-center">
<el-popover
v-if="!isEmptyValue(processMetadata.help)"
ref="helpTitle"
placement="top-start"
:title="processTitle"
width="400"
trigger="hover"
>
<div v-html="processMetadata.help" />
</el-popover>
<el-button
v-popover:helpTitle
type="text"
class="title text-center"
>
{{ processMetadata.name }}
</el-button>
</h3>
<main-panel
:position-tab="processMetadata.accesLevel"
:container-uuid="processUuid"
:metadata="processMetadata"
:is-edit="isEdit"
:panel-type="panelType"
/>
</el-card>
</el-col>
</el-row>
</el-main>
</el-container>
<div
v-else
key="process-loading"
v-loading="!isLoadedMetadata"
:element-loading-text="$t('notifications.loading')"
element-loading-spinner="el-icon-loading"
element-loading-background="rgba(255, 255, 255, 0.8)"
class="loading-process"
/>
</template>
<script>
// When supporting the processes, smart browser and reports,
// the ContextMenu and sticky must be placed in the layout
import ContextMenu from '@/components/ADempiere/ContextMenu'
import MainPanel from '@/components/ADempiere/Panel'
export default {
name: 'ProcessView',
components: {
MainPanel,
ContextMenu
},
props: {
isEdit: {
type: Boolean,
default: false
}
},
data() {
return {
processMetadata: {},
processUuid: this.$route.meta.uuid,
isLoadedMetadata: false,
panelType: 'process'
}
},
computed: {
showContextMenu() {
return this.$store.state.settings.showContextMenu
},
getterProcess() {
return this.$store.getters.getPanel(this.processUuid)
},
processTitle() {
return this.processMetadata.name || this.$route.meta.title
}
},
created() {
this.getProcess()
},
methods: {
getProcess() {
const process = this.getterProcess
if (process) {
this.processMetadata = process
this.isLoadedMetadata = true
} else {
this.$store.dispatch('getPanelAndFields', {
containerUuid: this.processUuid,
panelType: this.panelType,
routeToDelete: this.$route
}).then(processResponse => {
this.processMetadata = processResponse
}).finally(() => {
this.isLoadedMetadata = true
})
}
}
}
}
</script>
<style>
.el-card__body {
padding-top: 0px !important;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}
</style>
<style scoped >
.view-base {
height: 100%;
min-height: calc(100vh - 84px);
}
.loading-process {
padding: 100px 100px;
height: 100%;
}
.title {
color: #000000;
text-size-adjust: 20px;
font-size: 100%;
font-weight: 605!important;
}
.warn-content {
margin: 0px 0px !important;
padding-top: 0px !important;
}
.content-help {
width: 100%;
height: 200%;
padding-left: 39px !important;
}
.el-card {
width: 100% !important;
height: 200% !important;
}
.sticky-submenu {
position: absolute !important;
right: 0;
top: 0;
}
.content-collapse {
padding-left: 20 px !important;
padding-top: 50 px !important;
}
</style>