mirror of
https://github.com/PanJiaChen/vue-element-admin.git
synced 2025-08-10 12:01:57 +08:00
feat: Common title component (#855)
* feat: Title with common component. * fix styles content. * remove unused code. Co-authored-by: EdwinBetanc0urt <EdwinBetanco0urt@outlook.com>
This commit is contained in:
parent
4766b1164a
commit
bbab104d07
@ -31,6 +31,7 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@toast-ui/vue-editor": "2.5.1",
|
"@toast-ui/vue-editor": "2.5.1",
|
||||||
|
"@vue/composition-api": "^1.0.0-rc.8",
|
||||||
"axios": "0.21.1",
|
"axios": "0.21.1",
|
||||||
"babel-plugin-require-context-hook": "^1.0.0",
|
"babel-plugin-require-context-hook": "^1.0.0",
|
||||||
"clipboard": "2.0.6",
|
"clipboard": "2.0.6",
|
||||||
|
126
src/components/ADempiere/TitleAndHelp/index.vue
Normal file
126
src/components/ADempiere/TitleAndHelp/index.vue
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
<!--
|
||||||
|
ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
|
||||||
|
Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
|
||||||
|
Contributor(s): Edwin Betancourt EdwinBetanc0urt@outlook.com www.erpya.com
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program. If not, see <https:www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<h3 class="title-header text-center">
|
||||||
|
<el-popover
|
||||||
|
v-if="!isEmptyValue(help)"
|
||||||
|
ref="helpTitle"
|
||||||
|
placement="top-start"
|
||||||
|
:title="title"
|
||||||
|
:class="cssClassHelp"
|
||||||
|
width="400"
|
||||||
|
trigger="hover"
|
||||||
|
>
|
||||||
|
<div class="content-help" v-html="help" />
|
||||||
|
</el-popover>
|
||||||
|
|
||||||
|
<el-button
|
||||||
|
v-popover:helpTitle
|
||||||
|
type="text"
|
||||||
|
class="container-title text-center"
|
||||||
|
>
|
||||||
|
{{ title }}
|
||||||
|
</el-button>
|
||||||
|
|
||||||
|
<slot />
|
||||||
|
</h3>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { defineComponent, computed } from '@vue/composition-api'
|
||||||
|
|
||||||
|
export default defineComponent({
|
||||||
|
name: 'TitleAndHelp',
|
||||||
|
|
||||||
|
props: {
|
||||||
|
name: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
help: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
setup(props, { root }) {
|
||||||
|
const title = computed(() => {
|
||||||
|
return props.name || root.$route.meta.title
|
||||||
|
})
|
||||||
|
|
||||||
|
const cssClassHelp = computed(() => {
|
||||||
|
if (root.$store.state.app.device === 'mobile') {
|
||||||
|
return 'container-help-mobile'
|
||||||
|
}
|
||||||
|
return 'container-help'
|
||||||
|
})
|
||||||
|
|
||||||
|
return {
|
||||||
|
cssClassHelp,
|
||||||
|
title
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
/* text content title */
|
||||||
|
.el-popover__title {
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-left: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
// title container
|
||||||
|
.title-header {
|
||||||
|
margin: 0px 0px !important;
|
||||||
|
padding-top: 0px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
// text content help into popover
|
||||||
|
.content-help {
|
||||||
|
padding-right: 10px;
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-top: 0px !important;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
word-break: break-word;
|
||||||
|
}
|
||||||
|
// title of the main views into popover
|
||||||
|
.container-title {
|
||||||
|
text-align: center;
|
||||||
|
color: #000000;
|
||||||
|
// text-size-adjust: 20px;
|
||||||
|
font-size: 100%;
|
||||||
|
font-weight: 605 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
// smart browser help in title popover
|
||||||
|
.container-help {
|
||||||
|
width: 100%;
|
||||||
|
height: 200%;
|
||||||
|
padding-left: 39px !important;
|
||||||
|
}
|
||||||
|
// mobile smart browser help in title popover
|
||||||
|
.container-help-mobile {
|
||||||
|
width: 50%;
|
||||||
|
height: 50%;
|
||||||
|
padding-left: 15px !important;
|
||||||
|
}
|
||||||
|
</style>
|
@ -1,4 +1,5 @@
|
|||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
|
import VueCompositionApi from '@vue/composition-api'
|
||||||
|
|
||||||
import Cookies from 'js-cookie'
|
import Cookies from 'js-cookie'
|
||||||
|
|
||||||
@ -47,6 +48,7 @@ if (process.env.NODE_ENV === 'production') {
|
|||||||
const { mockXHR } = require('../mock')
|
const { mockXHR } = require('../mock')
|
||||||
mockXHR()
|
mockXHR()
|
||||||
}
|
}
|
||||||
|
Vue.use(VueCompositionApi)
|
||||||
Vue.use(VMarkdown)
|
Vue.use(VMarkdown)
|
||||||
Vue.use(VueShortkey)
|
Vue.use(VueShortkey)
|
||||||
Vue.use(VueSplit)
|
Vue.use(VueSplit)
|
||||||
|
@ -26,43 +26,7 @@
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
// title of the main views
|
|
||||||
.custom-title {
|
|
||||||
color: #000000;
|
|
||||||
text-size-adjust: 20px;
|
|
||||||
font-size: 100%;
|
|
||||||
font-weight: 605 !important;
|
|
||||||
}
|
|
||||||
// title of the main views in mobile
|
|
||||||
.custom-title-mobile {
|
|
||||||
text-align: center;
|
|
||||||
color: #000000;
|
|
||||||
text-size-adjust: 20px;
|
|
||||||
font-size: 100%;
|
|
||||||
font-weight: 605!important;
|
|
||||||
/* left: 50%; */
|
|
||||||
}
|
|
||||||
|
|
||||||
// smart browser help in title popover
|
|
||||||
.content-help {
|
|
||||||
width: 100%;
|
|
||||||
height: 200%;
|
|
||||||
padding-left: 39px !important;
|
|
||||||
}
|
|
||||||
// mobile smart browser help in title popover
|
|
||||||
.content-help-mobile {
|
|
||||||
width: 50%;
|
|
||||||
height: 50%;
|
|
||||||
padding-left: 15px !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
.content-collapse {
|
.content-collapse {
|
||||||
padding-left: 20 px !important;
|
padding-left: 20 px !important;
|
||||||
padding-top: 50 px !important;
|
padding-top: 50 px !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
// title content
|
|
||||||
.warn-content {
|
|
||||||
margin: 0px 0px !important;
|
|
||||||
padding-top: 0px !important;
|
|
||||||
}
|
|
||||||
|
@ -37,27 +37,14 @@
|
|||||||
/>
|
/>
|
||||||
<div class="w-33">
|
<div class="w-33">
|
||||||
<div class="center">
|
<div class="center">
|
||||||
<el-button
|
<title-and-help
|
||||||
v-popover:helpTitle
|
:name="browserMetadata.name"
|
||||||
type="text"
|
:help="browserMetadata.help"
|
||||||
:class="cssClassTitle + ' warn-content text-center'"
|
/>
|
||||||
>
|
|
||||||
{{ browserTitle }}
|
|
||||||
</el-button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-popover
|
|
||||||
v-if="!isEmptyValue(browserMetadata.help)"
|
|
||||||
ref="helpTitle"
|
|
||||||
placement="top-start"
|
|
||||||
:title="browserTitle"
|
|
||||||
:class="cssClassHelp"
|
|
||||||
width="400"
|
|
||||||
trigger="hover"
|
|
||||||
>
|
|
||||||
<div v-html="browserMetadata.help" />
|
|
||||||
</el-popover>
|
|
||||||
</el-header>
|
</el-header>
|
||||||
|
|
||||||
<el-main>
|
<el-main>
|
||||||
|
|
||||||
<el-collapse
|
<el-collapse
|
||||||
@ -81,6 +68,7 @@
|
|||||||
/>
|
/>
|
||||||
</el-main>
|
</el-main>
|
||||||
</el-container>
|
</el-container>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
v-else
|
v-else
|
||||||
key="browser-loading"
|
key="browser-loading"
|
||||||
@ -99,6 +87,7 @@ import ContextMenu from '@/components/ADempiere/ContextMenu'
|
|||||||
import MainPanel from '@/components/ADempiere/Panel'
|
import MainPanel from '@/components/ADempiere/Panel'
|
||||||
import DataTable from '@/components/ADempiere/DataTable'
|
import DataTable from '@/components/ADempiere/DataTable'
|
||||||
import ModalDialog from '@/components/ADempiere/Dialog'
|
import ModalDialog from '@/components/ADempiere/Dialog'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'BrowserView',
|
name: 'BrowserView',
|
||||||
@ -106,7 +95,8 @@ export default {
|
|||||||
MainPanel,
|
MainPanel,
|
||||||
DataTable,
|
DataTable,
|
||||||
ContextMenu,
|
ContextMenu,
|
||||||
ModalDialog
|
ModalDialog,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
isEdit: {
|
isEdit: {
|
||||||
@ -130,9 +120,6 @@ export default {
|
|||||||
getterBrowser() {
|
getterBrowser() {
|
||||||
return this.$store.getters.getBrowser(this.browserUuid)
|
return this.$store.getters.getBrowser(this.browserUuid)
|
||||||
},
|
},
|
||||||
browserTitle() {
|
|
||||||
return this.browserMetadata.name || this.$route.meta.title
|
|
||||||
},
|
|
||||||
isLoadedRecords() {
|
isLoadedRecords() {
|
||||||
return this.$store.getters.getDataRecordAndSelection(this.browserUuid).isLoaded
|
return this.$store.getters.getDataRecordAndSelection(this.browserUuid).isLoaded
|
||||||
},
|
},
|
||||||
@ -142,21 +129,6 @@ export default {
|
|||||||
}
|
}
|
||||||
return !this.$store.getters.isNotReadyForSubmit(this.browserUuid)
|
return !this.$store.getters.isNotReadyForSubmit(this.browserUuid)
|
||||||
},
|
},
|
||||||
isMobile() {
|
|
||||||
return this.$store.state.app.device === 'mobile'
|
|
||||||
},
|
|
||||||
cssClassTitle() {
|
|
||||||
if (this.isMobile) {
|
|
||||||
return 'custom-title-mobile'
|
|
||||||
}
|
|
||||||
return 'custom-title'
|
|
||||||
},
|
|
||||||
cssClassHelp() {
|
|
||||||
if (this.isMobile) {
|
|
||||||
return 'content-help-mobile'
|
|
||||||
}
|
|
||||||
return 'content-help'
|
|
||||||
},
|
|
||||||
isShowedCriteria() {
|
isShowedCriteria() {
|
||||||
if (this.browserMetadata) {
|
if (this.browserMetadata) {
|
||||||
return this.browserMetadata.isShowedCriteria
|
return this.browserMetadata.isShowedCriteria
|
||||||
@ -278,13 +250,7 @@ export default {
|
|||||||
.menu {
|
.menu {
|
||||||
height: 40px;
|
height: 40px;
|
||||||
}
|
}
|
||||||
.content-help {
|
.center {
|
||||||
padding-left: 15px !important;
|
|
||||||
}
|
|
||||||
.content-help-mobile {
|
|
||||||
padding-left: 15px !important;
|
|
||||||
}
|
|
||||||
.center{
|
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
.w-33 {
|
.w-33 {
|
||||||
|
@ -44,33 +44,19 @@
|
|||||||
class="content-collapse"
|
class="content-collapse"
|
||||||
:style="isEmptyValue(formMetadata.fieldsList) ? 'height: 100% !important;' : ''"
|
:style="isEmptyValue(formMetadata.fieldsList) ? 'height: 100% !important;' : ''"
|
||||||
>
|
>
|
||||||
<h3 v-if="isShowTitleForm" class="warn-content text-center">
|
<title-and-help
|
||||||
<el-popover
|
v-if="isShowTitleForm"
|
||||||
v-if="!isEmptyValue(formMetadata.help)"
|
:name="formName"
|
||||||
ref="helpTitle"
|
:help="formMetadata.help"
|
||||||
placement="top-start"
|
>
|
||||||
:title="formTitle"
|
|
||||||
width="400"
|
|
||||||
trigger="hover"
|
|
||||||
>
|
|
||||||
<div v-html="formMetadata.help" />
|
|
||||||
</el-popover>
|
|
||||||
<el-button
|
<el-button
|
||||||
v-popover:helpTitle
|
|
||||||
type="text"
|
|
||||||
class="custom-title text-center"
|
|
||||||
>
|
|
||||||
{{ formTitle }}
|
|
||||||
</el-button>
|
|
||||||
<el-button
|
|
||||||
v-if="isShowTitleForm"
|
|
||||||
type="text"
|
type="text"
|
||||||
style="float: right"
|
style="float: right"
|
||||||
:circle="true"
|
:circle="true"
|
||||||
icon="el-icon-arrow-up"
|
icon="el-icon-arrow-up"
|
||||||
@click="changeDisplatedTitle"
|
@click="changeDisplatedTitle"
|
||||||
/>
|
/>
|
||||||
</h3>
|
</title-and-help>
|
||||||
<el-button
|
<el-button
|
||||||
v-if="!isShowTitleForm"
|
v-if="!isShowTitleForm"
|
||||||
type="text"
|
type="text"
|
||||||
@ -79,11 +65,12 @@
|
|||||||
icon="el-icon-arrow-down"
|
icon="el-icon-arrow-down"
|
||||||
@click="changeDisplatedTitle"
|
@click="changeDisplatedTitle"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<form-panel
|
<form-panel
|
||||||
:metadata="{
|
:metadata="{
|
||||||
...formMetadata,
|
...formMetadata,
|
||||||
fileName: fromFileName,
|
fileName: formFileName,
|
||||||
title: formTitle
|
title: formName
|
||||||
}"
|
}"
|
||||||
/>
|
/>
|
||||||
</el-card>
|
</el-card>
|
||||||
@ -106,13 +93,15 @@
|
|||||||
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
||||||
import FormPanel from '@/components/ADempiere/Form'
|
import FormPanel from '@/components/ADempiere/Form'
|
||||||
import ModalDialog from '@/components/ADempiere/Dialog'
|
import ModalDialog from '@/components/ADempiere/Dialog'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'FormView',
|
name: 'FormView',
|
||||||
components: {
|
components: {
|
||||||
ContextMenu,
|
ContextMenu,
|
||||||
FormPanel,
|
FormPanel,
|
||||||
ModalDialog
|
ModalDialog,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -123,15 +112,15 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
formTitle() {
|
formName() {
|
||||||
if (this.$route.meta.title === 'PriceChecking') {
|
if (this.$route.meta.title === 'PriceChecking') {
|
||||||
return this.$t('route.PriceChecking')
|
return this.$t('route.PriceChecking')
|
||||||
} else if (this.$route.meta.title === 'ProductInfo') {
|
} else if (this.$route.meta.title === 'ProductInfo') {
|
||||||
return this.$t('route.ProductInfo')
|
return this.$t('route.ProductInfo')
|
||||||
}
|
}
|
||||||
return this.formMetadata.name || this.$route.meta.title
|
return this.formMetadata.name
|
||||||
},
|
},
|
||||||
fromFileName() {
|
formFileName() {
|
||||||
return this.formMetadata.fileName || this.$route.meta.title
|
return this.formMetadata.fileName || this.$route.meta.title
|
||||||
},
|
},
|
||||||
getterForm() {
|
getterForm() {
|
||||||
|
@ -37,25 +37,11 @@
|
|||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-card class="content-collapse">
|
<el-card class="content-collapse">
|
||||||
<h3 v-show="!isEmptyValue(processTitle)" class="warn-content text-center">
|
<title-and-help
|
||||||
<el-popover
|
:name="processMetadata.name"
|
||||||
v-if="!isEmptyValue(processMetadata.help)"
|
:help="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="custom-title text-center"
|
|
||||||
>
|
|
||||||
{{ processMetadata.name }}
|
|
||||||
</el-button>
|
|
||||||
</h3>
|
|
||||||
<main-panel
|
<main-panel
|
||||||
:position-tab="processMetadata.accesLevel"
|
:position-tab="processMetadata.accesLevel"
|
||||||
:container-uuid="processUuid"
|
:container-uuid="processUuid"
|
||||||
@ -84,12 +70,14 @@
|
|||||||
// the ContextMenu and sticky must be placed in the layout
|
// the ContextMenu and sticky must be placed in the layout
|
||||||
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
||||||
import MainPanel from '@/components/ADempiere/Panel'
|
import MainPanel from '@/components/ADempiere/Panel'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'ProcessView',
|
name: 'ProcessView',
|
||||||
components: {
|
components: {
|
||||||
MainPanel,
|
MainPanel,
|
||||||
ContextMenu
|
ContextMenu,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
props: {
|
props: {
|
||||||
isEdit: {
|
isEdit: {
|
||||||
@ -111,9 +99,6 @@ export default {
|
|||||||
},
|
},
|
||||||
getterProcess() {
|
getterProcess() {
|
||||||
return this.$store.getters.getPanel(this.processUuid)
|
return this.$store.getters.getPanel(this.processUuid)
|
||||||
},
|
|
||||||
processTitle() {
|
|
||||||
return this.processMetadata.name || this.$route.meta.title
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
@ -158,9 +143,4 @@ export default {
|
|||||||
width: 100% !important;
|
width: 100% !important;
|
||||||
height: 100% !important;
|
height: 100% !important;
|
||||||
}
|
}
|
||||||
.sticky-submenu {
|
|
||||||
position: absolute !important;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
@ -30,25 +30,12 @@
|
|||||||
<el-row type="flex" style="min-height: inherit;">
|
<el-row type="flex" style="min-height: inherit;">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<h3 class="text-center" style="margin: 0 !important;">
|
<title-and-help
|
||||||
<el-popover
|
style="margin: 0 !important;"
|
||||||
v-if="!isEmptyValue(processMetadata.help)"
|
:name="processMetadata.name"
|
||||||
ref="helpTitle"
|
:help="processMetadata.help"
|
||||||
placement="top-start"
|
/>
|
||||||
:title="reportTitle"
|
|
||||||
width="400"
|
|
||||||
trigger="hover"
|
|
||||||
>
|
|
||||||
<div v-html="processMetadata.help" />
|
|
||||||
</el-popover>
|
|
||||||
<el-button
|
|
||||||
v-popover:helpTitle
|
|
||||||
type="text"
|
|
||||||
class="custom-title"
|
|
||||||
>
|
|
||||||
{{ reportTitle }}
|
|
||||||
</el-button>
|
|
||||||
</h3>
|
|
||||||
<iframe
|
<iframe
|
||||||
v-if="reportFormat === 'pdf'"
|
v-if="reportFormat === 'pdf'"
|
||||||
key="report-content-pdf"
|
key="report-content-pdf"
|
||||||
@ -88,6 +75,7 @@
|
|||||||
:panel-type="panelType"
|
:panel-type="panelType"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
v-else
|
v-else
|
||||||
key="report-viewer-loading"
|
key="report-viewer-loading"
|
||||||
@ -102,6 +90,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
||||||
import ModalDialog from '@/components/ADempiere/Dialog'
|
import ModalDialog from '@/components/ADempiere/Dialog'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
import { showNotification } from '@/utils/ADempiere/notification'
|
import { showNotification } from '@/utils/ADempiere/notification'
|
||||||
import { reportFormatsList } from '@/utils/ADempiere/exportUtil.js'
|
import { reportFormatsList } from '@/utils/ADempiere/exportUtil.js'
|
||||||
|
|
||||||
@ -109,7 +98,8 @@ export default {
|
|||||||
name: 'ReportViewer',
|
name: 'ReportViewer',
|
||||||
components: {
|
components: {
|
||||||
ContextMenu,
|
ContextMenu,
|
||||||
ModalDialog
|
ModalDialog,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -130,9 +120,6 @@ export default {
|
|||||||
getterProcess() {
|
getterProcess() {
|
||||||
return this.$store.getters.getProcessById(this.$route.params.processId)
|
return this.$store.getters.getProcessById(this.$route.params.processId)
|
||||||
},
|
},
|
||||||
reportTitle() {
|
|
||||||
return this.processMetadata.name || this.$route.meta.title
|
|
||||||
},
|
|
||||||
url() {
|
url() {
|
||||||
return this.$store.getters.getProcessResult.url
|
return this.$store.getters.getProcessResult.url
|
||||||
},
|
},
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<!--
|
<!--
|
||||||
ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
|
ADempiere-Vue (Frontend) for ADempiere ERP & CRM Smart Business Solution
|
||||||
Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
|
Copyright (C) 2017-Present E.R.P. Consultores y Asociados, C.A.
|
||||||
Contributor(s): Edwin Betancourt edwinBetanc0urt@hotmail.com www.erpya.com
|
Contributor(s): Edwin Betancourt EdwinBetanc0urt@outlook.com www.erpya.com
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
the Free Software Foundation, either version 3 of the License, or
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
@ -17,15 +17,11 @@
|
|||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<div v-if="isIndex" key="sumary" class="app-container">
|
<div v-if="isIndex" key="sumary" class="app-container">
|
||||||
<el-popover
|
<title-and-help
|
||||||
v-if="!isEmptyValue($route.meta.description)"
|
:name="$route.meta.title"
|
||||||
ref="routeDescription"
|
:help="$route.meta.description"
|
||||||
placement="top"
|
|
||||||
width="400"
|
|
||||||
trigger="hover"
|
|
||||||
:content="$route.meta.description"
|
|
||||||
/>
|
/>
|
||||||
<h3 v-popover:routeDescription class="description">{{ $route.meta.title }}</h3>
|
|
||||||
<el-row :gutter="10">
|
<el-row :gutter="10">
|
||||||
<template v-if="!isEmptyValue(optionList.children)">
|
<template v-if="!isEmptyValue(optionList.children)">
|
||||||
<template v-for="(item, key) in optionList.children">
|
<template v-for="(item, key) in optionList.children">
|
||||||
@ -56,11 +52,13 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import DropdownMenu from '@/components/ADempiere/DropdownMenu'
|
import DropdownMenu from '@/components/ADempiere/DropdownMenu'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'SummaryView',
|
name: 'SummaryView',
|
||||||
components: {
|
components: {
|
||||||
DropdownMenu
|
DropdownMenu,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -37,25 +37,10 @@
|
|||||||
class="content-collapse"
|
class="content-collapse"
|
||||||
:style="isEmptyValue(metadata.fieldsList) ? 'height: max-content !important;' : ''"
|
:style="isEmptyValue(metadata.fieldsList) ? 'height: max-content !important;' : ''"
|
||||||
>
|
>
|
||||||
<h3 class="warn-content text-center">
|
<title-and-help
|
||||||
<el-popover
|
:name="metadata.name"
|
||||||
v-if="!isEmptyValue(metadata.help)"
|
:help="metadata.help"
|
||||||
ref="helpTitle"
|
/>
|
||||||
placement="top-start"
|
|
||||||
:title="formTitle"
|
|
||||||
width="400"
|
|
||||||
trigger="hover"
|
|
||||||
>
|
|
||||||
<div v-html="metadata.help" />
|
|
||||||
</el-popover>
|
|
||||||
<el-button
|
|
||||||
v-popover:helpTitle
|
|
||||||
type="text"
|
|
||||||
class="custom-title text-center"
|
|
||||||
>
|
|
||||||
{{ formTitle }}
|
|
||||||
</el-button>
|
|
||||||
</h3>
|
|
||||||
|
|
||||||
<!-- emulated component form -->
|
<!-- emulated component form -->
|
||||||
<div class="wrapper">
|
<div class="wrapper">
|
||||||
@ -93,11 +78,13 @@
|
|||||||
import formMixin from '@/components/ADempiere/Form/formMixin'
|
import formMixin from '@/components/ADempiere/Form/formMixin'
|
||||||
import fieldsList from './fieldsList.js'
|
import fieldsList from './fieldsList.js'
|
||||||
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
import ContextMenu from '@/components/ADempiere/ContextMenu'
|
||||||
|
import TitleAndHelp from '@/components/ADempiere/TitleAndHelp'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'TestView',
|
name: 'TestView',
|
||||||
components: {
|
components: {
|
||||||
ContextMenu
|
ContextMenu,
|
||||||
|
TitleAndHelp
|
||||||
},
|
},
|
||||||
mixins: [formMixin],
|
mixins: [formMixin],
|
||||||
props: {
|
props: {
|
||||||
@ -118,11 +105,6 @@ export default {
|
|||||||
unsubscribe: () => {}
|
unsubscribe: () => {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
|
||||||
formTitle() {
|
|
||||||
return this.metadata.name || this.$route.meta.title
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
created() {
|
||||||
this.unsubscribe = this.subscribeChanges()
|
this.unsubscribe = this.subscribeChanges()
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user