Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
功
功能演示系统
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
示例
功能演示系统
提交
ed0752a5
提交
ed0752a5
编写于
11月 04, 2022
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Mosher 发布系统代码 [后台服务,演示应用]
上级
2a784cb2
变更
53
显示空白字符变更
内嵌
并排
正在显示
53 个修改的文件
包含
3364 行增加
和
742 行删除
+3364
-742
view-config.json
app_Web/public/assets/json/view-config.json
+16
-0
view-message-group.json
app_Web/public/assets/json/view-message-group.json
+3
-3
ibizbook_BO_CN_base.ts
...rc/locale/lanres/entities/ibizbook/ibizbook_BO_CN_base.ts
+4
-0
ibizbook_en_US_base.ts
...rc/locale/lanres/entities/ibizbook/ibizbook_en_US_base.ts
+4
-0
ibizbook_zh_CN_base.ts
...rc/locale/lanres/entities/ibizbook/ibizbook_zh_CN_base.ts
+4
-0
ibizsample0003_BO_CN_base.ts
...nres/entities/ibizsample0003/ibizsample0003_BO_CN_base.ts
+4
-0
ibizsample0003_en_US_base.ts
...nres/entities/ibizsample0003/ibizsample0003_en_US_base.ts
+4
-0
ibizsample0003_zh_CN_base.ts
...nres/entities/ibizsample0003/ibizsample0003_zh_CN_base.ts
+4
-0
main-menu-appmenu.ts
app_Web/src/mock/app/main-menu-appmenu/main-menu-appmenu.ts
+1
-1
viewconfig.ts
app_Web/src/mock/viewconfig/viewconfig.ts
+19
-3
ibizbookedit-view4-base.vue
...ges/sample/ibizbookedit-view4/ibizbookedit-view4-base.vue
+44
-29
ibizorder-sedit-view3-layout-base.vue
...-sedit-view3-layout/ibizorder-sedit-view3-layout-base.vue
+72
-26
ibizorder-sedit-view3-base.vue
...mple/ibizorder-sedit-view3/ibizorder-sedit-view3-base.vue
+72
-26
ibizorder-sedit-view4-layout-base.vue
...-sedit-view4-layout/ibizorder-sedit-view4-layout-base.vue
+44
-29
ibizorder-sedit-view4-base.vue
...mple/ibizorder-sedit-view4/ibizorder-sedit-view4-base.vue
+44
-29
ibizsample0003-stab-exp-view-layout-base.vue
...-view-layout/ibizsample0003-stab-exp-view-layout-base.vue
+658
-0
ibizsample0003-stab-exp-view-layout.less
...-exp-view-layout/ibizsample0003-stab-exp-view-layout.less
+12
-0
ibizsample0003-stab-exp-view-layout.vue
...b-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue
+22
-0
page-register.ts
app_Web/src/pages/sample/index/page-register.ts
+1
-0
router.ts
app_Web/src/pages/sample/index/router.ts
+27
-0
router.ts
app_Web/src/pages/ungroup/app-index-view/router.ts
+13
-0
state.ts
app_Web/src/store/modules/view-action/state.ts
+13
-0
ibizbook-ui-service-base.ts
app_Web/src/uiservice/ibizbook/ibizbook-ui-service-base.ts
+1
-0
ibizsample0003-ui-service-base.ts
...iservice/ibizsample0003/ibizsample0003-ui-service-base.ts
+1
-0
main-menu-appmenu-base.vue
.../widgets/app/main-menu-appmenu/main-menu-appmenu-base.vue
+26
-0
main-menu-appmenu-model.ts
.../widgets/app/main-menu-appmenu/main-menu-appmenu-model.ts
+13
-1
default-drtab-base.vue
...src/widgets/ibizbook/default-drtab/default-drtab-base.vue
+220
-277
default-searchform-base.vue
...s/ibizbook/default-searchform/default-searchform-base.vue
+2
-2
usr4-dataview-base.vue
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-base.vue
+4
-4
usr4-dataview-model.ts
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
+5
-0
default-drtab-base.vue
...rc/widgets/ibizorder/default-drtab/default-drtab-base.vue
+235
-307
stab-exp-view-layouttabexppanel-tabexppanel-base.vue
...anel/stab-exp-view-layouttabexppanel-tabexppanel-base.vue
+459
-0
stab-exp-view-layouttabexppanel-tabexppanel-model.ts
...anel/stab-exp-view-layouttabexppanel-tabexppanel-model.ts
+52
-0
stab-exp-view-layouttabexppanel-tabexppanel-service.ts
...el/stab-exp-view-layouttabexppanel-tabexppanel-service.ts
+45
-0
stab-exp-view-layouttabexppanel-tabexppanel.less
...exppanel/stab-exp-view-layouttabexppanel-tabexppanel.less
+15
-0
stab-exp-view-layouttabexppanel-tabexppanel.vue
...bexppanel/stab-exp-view-layouttabexppanel-tabexppanel.vue
+20
-0
stab-exp-view-layouttabviewpanel-tabviewpanel-base.vue
...el/stab-exp-view-layouttabviewpanel-tabviewpanel-base.vue
+309
-0
stab-exp-view-layouttabviewpanel-tabviewpanel-model.ts
...el/stab-exp-view-layouttabviewpanel-tabviewpanel-model.ts
+52
-0
stab-exp-view-layouttabviewpanel-tabviewpanel-service.ts
.../stab-exp-view-layouttabviewpanel-tabviewpanel-service.ts
+11
-0
stab-exp-view-layouttabviewpanel-tabviewpanel.less
...wpanel/stab-exp-view-layouttabviewpanel-tabviewpanel.less
+6
-0
stab-exp-view-layouttabviewpanel-tabviewpanel.vue
...ewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel.vue
+14
-0
stab-exp-view-layouttabviewpanel2-tabviewpanel-base.vue
...l/stab-exp-view-layouttabviewpanel2-tabviewpanel-base.vue
+309
-0
stab-exp-view-layouttabviewpanel2-tabviewpanel-model.ts
...l/stab-exp-view-layouttabviewpanel2-tabviewpanel-model.ts
+52
-0
stab-exp-view-layouttabviewpanel2-tabviewpanel-service.ts
...stab-exp-view-layouttabviewpanel2-tabviewpanel-service.ts
+11
-0
stab-exp-view-layouttabviewpanel2-tabviewpanel.less
...panel/stab-exp-view-layouttabviewpanel2-tabviewpanel.less
+6
-0
stab-exp-view-layouttabviewpanel2-tabviewpanel.vue
...wpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel.vue
+14
-0
stab-exp-view-layouttabviewpanel3-tabviewpanel-base.vue
...l/stab-exp-view-layouttabviewpanel3-tabviewpanel-base.vue
+309
-0
stab-exp-view-layouttabviewpanel3-tabviewpanel-model.ts
...l/stab-exp-view-layouttabviewpanel3-tabviewpanel-model.ts
+52
-0
stab-exp-view-layouttabviewpanel3-tabviewpanel-service.ts
...stab-exp-view-layouttabviewpanel3-tabviewpanel-service.ts
+11
-0
stab-exp-view-layouttabviewpanel3-tabviewpanel.less
...panel/stab-exp-view-layouttabviewpanel3-tabviewpanel.less
+6
-0
stab-exp-view-layouttabviewpanel3-tabviewpanel.vue
...wpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel.vue
+14
-0
h2_table.xml
demo-core/src/main/resources/liquibase/h2_table.xml
+3
-3
view.xml
demo-core/src/main/resources/liquibase/view.xml
+2
-2
未找到文件。
app_Web/public/assets/json/view-config.json
浏览文件 @
ed0752a5
...
...
@@ -623,6 +623,14 @@
"viewname"
:
"IBIZOrderODSP_W10_WFGridView"
,
"viewtag"
:
"48c367034d03222fb9021eb97531330e"
},
"ibizsample0003stabexpview_layout"
:
{
"title"
:
"实体分页导航视图"
,
"caption"
:
"示例实体03"
,
"viewtype"
:
"DETABEXPVIEW"
,
"viewmodule"
:
"Sample"
,
"viewname"
:
"IBIZSample0003STabExpView_layout"
,
"viewtag"
:
"4a0d51e3bca39ffa8dc989e13a1a613f"
},
"ibizsample0003f3treeexpview"
:
{
"title"
:
"示例实体03树导航视图"
,
"caption"
:
"示例实体03"
,
...
...
@@ -2191,6 +2199,14 @@
"viewname"
:
"IBIZOrderDashboardView"
,
"viewtag"
:
"fc7153dc2bad2d7b6242bb4e9df1f06a"
},
"ibizbookdashboardview_layout"
:
{
"title"
:
"实体数据看板视图"
,
"caption"
:
"实体数据看板视图"
,
"viewtype"
:
"DEPORTALVIEW"
,
"viewmodule"
:
"Sample"
,
"viewname"
:
"IBIZBOOKDashboardView_layout"
,
"viewtag"
:
"fd181f2767ed6c82915d092a2ff51e01"
},
"ibizorderf13editview"
:
{
"title"
:
"订单编辑视图"
,
"caption"
:
"订单"
,
...
...
app_Web/public/assets/json/view-message-group.json
浏览文件 @
ed0752a5
...
...
@@ -74,6 +74,9 @@
"VMGroup72"
:[
{
"tag"
:
"ViewMsg71"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup34"
:[
{
"tag"
:
"ViewMsg33"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup56"
:[
{
"tag"
:
"ViewMsg55"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
...
...
@@ -137,9 +140,6 @@
"VMGroup28"
:[
{
"tag"
:
"ViewMsg27"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup34"
:[
{
"tag"
:
"ViewMsg33"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup79"
:[
{
"tag"
:
"ViewMsg78"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
...
...
app_Web/src/locale/lanres/entities/ibizbook/ibizbook_BO_CN_base.ts
浏览文件 @
ed0752a5
...
...
@@ -302,6 +302,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"图书"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"图书表格视图(主状态)"
,
null
),
},
dashboardview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"实体数据看板视图"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体数据看板视图"
,
null
),
},
},
majorstateform_form
:
{
details
:
{
...
...
app_Web/src/locale/lanres/entities/ibizbook/ibizbook_en_US_base.ts
浏览文件 @
ed0752a5
...
...
@@ -302,6 +302,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"Grid Main State"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"图书表格视图(主状态)"
,
null
),
},
dashboardview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"Entity Data Kanban View"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体数据看板视图"
,
null
),
},
},
majorstateform_form
:
{
details
:
{
...
...
app_Web/src/locale/lanres/entities/ibizbook/ibizbook_zh_CN_base.ts
浏览文件 @
ed0752a5
...
...
@@ -302,6 +302,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"图书"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"图书表格视图(主状态)"
,
null
),
},
dashboardview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"实体数据看板视图"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体数据看板视图"
,
null
),
},
},
majorstateform_form
:
{
details
:
{
...
...
app_Web/src/locale/lanres/entities/ibizsample0003/ibizsample0003_BO_CN_base.ts
浏览文件 @
ed0752a5
...
...
@@ -39,6 +39,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03编辑视图"
,
null
),
},
stabexpview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体分页导航视图"
,
null
),
},
f3treeexpview
:
{
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03树导航视图"
,
null
),
...
...
app_Web/src/locale/lanres/entities/ibizsample0003/ibizsample0003_en_US_base.ts
浏览文件 @
ed0752a5
...
...
@@ -39,6 +39,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03编辑视图"
,
null
),
},
stabexpview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"Entity Pagination Navigation View"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体分页导航视图"
,
null
),
},
f3treeexpview
:
{
caption
:
commonLogic
.
appcommonhandle
(
"Dynamic Node (entity)"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03树导航视图"
,
null
),
...
...
app_Web/src/locale/lanres/entities/ibizsample0003/ibizsample0003_zh_CN_base.ts
浏览文件 @
ed0752a5
...
...
@@ -39,6 +39,10 @@ function getLocaleResourceBase(){
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03编辑视图"
,
null
),
},
stabexpview_layout
:
{
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"实体分页导航视图"
,
null
),
},
f3treeexpview
:
{
caption
:
commonLogic
.
appcommonhandle
(
"示例实体03"
,
null
),
title
:
commonLogic
.
appcommonhandle
(
"示例实体03树导航视图"
,
null
),
...
...
app_Web/src/mock/app/main-menu-appmenu/main-menu-appmenu.ts
浏览文件 @
ed0752a5
...
...
@@ -3237,7 +3237,7 @@ mock.onGet('v7/main-menuappmenu').reply((config: any) => {
iconcls
:
''
,
icon
:
''
,
textcls
:
''
,
appfunctag
:
'A
uto213
'
,
appfunctag
:
'A
ppFunc107
'
,
resourcetag
:
''
,
},
{
...
...
app_Web/src/mock/viewconfig/viewconfig.ts
浏览文件 @
ed0752a5
...
...
@@ -631,6 +631,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"IBIZOrderODSP_W10_WFGridView"
,
"viewtag"
:
"48c367034d03222fb9021eb97531330e"
},
"ibizsample0003stabexpview_layout"
:
{
"title"
:
"实体分页导航视图"
,
"caption"
:
"示例实体03"
,
"viewtype"
:
"DETABEXPVIEW"
,
"viewmodule"
:
"Sample"
,
"viewname"
:
"IBIZSample0003STabExpView_layout"
,
"viewtag"
:
"4a0d51e3bca39ffa8dc989e13a1a613f"
},
"ibizsample0003f3treeexpview"
:
{
"title"
:
"示例实体03树导航视图"
,
"caption"
:
"示例实体03"
,
...
...
@@ -2199,6 +2207,14 @@ mock.onGet('./assets/json/view-config.json').reply((config: any) => {
"viewname"
:
"IBIZOrderDashboardView"
,
"viewtag"
:
"fc7153dc2bad2d7b6242bb4e9df1f06a"
},
"ibizbookdashboardview_layout"
:
{
"title"
:
"实体数据看板视图"
,
"caption"
:
"实体数据看板视图"
,
"viewtype"
:
"DEPORTALVIEW"
,
"viewmodule"
:
"Sample"
,
"viewname"
:
"IBIZBOOKDashboardView_layout"
,
"viewtag"
:
"fd181f2767ed6c82915d092a2ff51e01"
},
"ibizorderf13editview"
:
{
"title"
:
"订单编辑视图"
,
"caption"
:
"订单"
,
...
...
@@ -2337,6 +2353,9 @@ mock.onGet('./assets/json/view-message-group.json').reply((config: any) => {
"VMGroup72"
:[
{
"tag"
:
"ViewMsg71"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup34"
:[
{
"tag"
:
"ViewMsg33"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup56"
:[
{
"tag"
:
"ViewMsg55"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
...
...
@@ -2400,9 +2419,6 @@ mock.onGet('./assets/json/view-message-group.json').reply((config: any) => {
"VMGroup28"
:[
{
"tag"
:
"ViewMsg27"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup34"
:[
{
"tag"
:
"ViewMsg33"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
"VMGroup79"
:[
{
"tag"
:
"ViewMsg78"
,
"position"
:
"TOP"
,
"type"
:
"ERROR"
}
],
...
...
app_Web/src/pages/sample/ibizbookedit-view4/ibizbookedit-view4-base.vue
浏览文件 @
ed0752a5
...
...
@@ -10,6 +10,8 @@
</div>
</div>
<div
class=
"content-container"
>
<div
class=
"edit-view4"
>
<div
class=
"edit-view4-form"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
...
...
@@ -32,6 +34,9 @@
@
remove=
"form_remove($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
</div>
<div
class=
"edit-view4-content"
>
<view
_drtab
:viewState=
"viewState"
name=
'drtab'
...
...
@@ -43,6 +48,16 @@
@
selectionchange=
'drtab_selectionchange($event)'
@
closeview=
'closeView($event)'
>
</view
_drtab
>
<component
class=
"view-container2"
v-if=
"drItem && !drItem.disabled"
:is=
"drItem.navView"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(drItem.srfnavdata.context)"
:viewparam=
"JSON.stringify(drItem.srfnavdata.viewparams)"
>
</component>
</div>
</div>
</div>
</card>
</div>
...
...
@@ -729,7 +744,7 @@ export default class IBIZBOOKEditView4Base extends Vue {
* @type {*}
* @memberof IBIZBOOKEditView4Base
*/
public
selection
:
any
=
{};
public
drItem
:
any
=
{};
...
...
app_Web/src/pages/sample/ibizorder-sedit-view3-layout/ibizorder-sedit-view3-layout-base.vue
浏览文件 @
ed0752a5
...
...
@@ -3,7 +3,6 @@
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizorderseditview3_layout"
></app-studioaction>
<card
class=
'view-card '
:dis-hover=
"true"
:bordered=
"false"
>
<div
slot=
'title'
class=
"header-container"
>
<span
class=
'caption-info'
>
{{
$t
(
model
.
srfCaption
)
}}
</span>
<template
v-if=
"Object.is(this.selection.id, 'form')"
>
...
...
@@ -48,10 +47,12 @@
</div>
</
template
>
</div>
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup32'
viewname=
'ibizorderseditview3_layout'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"edit-view3"
>
<div
class=
"edit-view3-drheader"
>
<span
:class=
"{ 'dr-tab-item': true, 'is-active': drItem && drItem.id !== 'form' }"
@
click=
"handleDrTabChange"
>
订单
</span>
<view
_drtab
:viewState=
"viewState"
name=
'drtab'
...
...
@@ -85,6 +86,42 @@
</view
_form
>
</view
_drtab
>
</div>
<div
class=
"edit-view3-content"
>
<div
class=
"edit-view3-content__form"
:style=
"drItem && drItem.id !== 'form' ? 'display: none;' : ''"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:autosave=
"false"
:viewtag=
"viewtag"
:showBusyIndicator=
"true"
updateAction=
"Update"
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
"Get"
createAction=
"Create"
WFSubmitAction=
""
WFStartAction=
""
style=
''
name=
"form"
ref=
'form'
@
load=
"form_load($event)"
@
save=
"form_save($event)"
@
remove=
"form_remove($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
</div>
<component
class=
"view-container2"
v-if=
"drItem && drItem.id && drItem.id !== 'form'"
:is=
"drItem.navView"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(drItem.srfnavdata.context)"
:viewparam=
"JSON.stringify(drItem.srfnavdata.viewparams)"
>
</component>
</div>
</div>
</div>
</card>
</div>
...
...
@@ -1168,7 +1205,16 @@ export default class IBIZOrderSEditView3_layoutBase extends Vue {
* @type {*}
* @memberof IBIZOrderSEditView3_layoutBase
*/
public
selection
:
any
=
{};
public
drItem
:
any
=
{};
/**
* 处理分页项变化
*
* @memberof IBIZOrderSEditView3_layoutBase
*/
public
handleDrTabChange
()
{
}
}
</
script
>
...
...
app_Web/src/pages/sample/ibizorder-sedit-view3/ibizorder-sedit-view3-base.vue
浏览文件 @
ed0752a5
...
...
@@ -3,7 +3,6 @@
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizorderseditview3"
></app-studioaction>
<card
class=
'view-card '
:dis-hover=
"true"
:bordered=
"false"
>
<div
slot=
'title'
class=
"header-container"
>
<span
class=
'caption-info'
>
{{
$t
(
model
.
srfCaption
)
}}
</span>
<template
v-if=
"Object.is(this.selection.id, 'form')"
>
...
...
@@ -48,10 +47,12 @@
</div>
</
template
>
</div>
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup32'
viewname=
'ibizorderseditview3'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"edit-view3"
>
<div
class=
"edit-view3-drheader"
>
<span
:class=
"{ 'dr-tab-item': true, 'is-active': drItem && drItem.id !== 'form' }"
@
click=
"handleDrTabChange"
>
订单
</span>
<view
_drtab
:viewState=
"viewState"
name=
'drtab'
...
...
@@ -85,6 +86,42 @@
</view
_form
>
</view
_drtab
>
</div>
<div
class=
"edit-view3-content"
>
<div
class=
"edit-view3-content__form"
:style=
"drItem && drItem.id !== 'form' ? 'display: none;' : ''"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:autosave=
"false"
:viewtag=
"viewtag"
:showBusyIndicator=
"true"
updateAction=
"Update"
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
"Get"
createAction=
"Create"
WFSubmitAction=
""
WFStartAction=
""
style=
''
name=
"form"
ref=
'form'
@
load=
"form_load($event)"
@
save=
"form_save($event)"
@
remove=
"form_remove($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
</div>
<component
class=
"view-container2"
v-if=
"drItem && drItem.id && drItem.id !== 'form'"
:is=
"drItem.navView"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(drItem.srfnavdata.context)"
:viewparam=
"JSON.stringify(drItem.srfnavdata.viewparams)"
>
</component>
</div>
</div>
</div>
</card>
</div>
...
...
@@ -1168,7 +1205,16 @@ export default class IBIZOrderSEditView3Base extends Vue {
* @type {*}
* @memberof IBIZOrderSEditView3Base
*/
public
selection
:
any
=
{};
public
drItem
:
any
=
{};
/**
* 处理分页项变化
*
* @memberof IBIZOrderSEditView3Base
*/
public
handleDrTabChange
()
{
}
}
</
script
>
...
...
app_Web/src/pages/sample/ibizorder-sedit-view4-layout/ibizorder-sedit-view4-layout-base.vue
浏览文件 @
ed0752a5
...
...
@@ -49,6 +49,8 @@
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup31'
viewname=
'ibizorderseditview4_layout'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"edit-view4"
>
<div
class=
"edit-view4-form"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
...
...
@@ -71,6 +73,9 @@
@
remove=
"form_remove($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
</div>
<div
class=
"edit-view4-content"
>
<view
_drtab
:viewState=
"viewState"
name=
'drtab'
...
...
@@ -82,6 +87,16 @@
@
selectionchange=
'drtab_selectionchange($event)'
@
closeview=
'closeView($event)'
>
</view
_drtab
>
<component
class=
"view-container2"
v-if=
"drItem && !drItem.disabled"
:is=
"drItem.navView"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(drItem.srfnavdata.context)"
:viewparam=
"JSON.stringify(drItem.srfnavdata.viewparams)"
>
</component>
</div>
</div>
</div>
</card>
</div>
...
...
@@ -1165,7 +1180,7 @@ export default class IBIZOrderSEditView4_layoutBase extends Vue {
* @type {*}
* @memberof IBIZOrderSEditView4_layoutBase
*/
public
selection
:
any
=
{};
public
drItem
:
any
=
{};
...
...
app_Web/src/pages/sample/ibizorder-sedit-view4/ibizorder-sedit-view4-base.vue
浏览文件 @
ed0752a5
...
...
@@ -49,6 +49,8 @@
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup31'
viewname=
'ibizorderseditview4'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"edit-view4"
>
<div
class=
"edit-view4-form"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
...
...
@@ -71,6 +73,9 @@
@
remove=
"form_remove($event)"
@
closeview=
"closeView($event)"
>
</view
_form
>
</div>
<div
class=
"edit-view4-content"
>
<view
_drtab
:viewState=
"viewState"
name=
'drtab'
...
...
@@ -82,6 +87,16 @@
@
selectionchange=
'drtab_selectionchange($event)'
@
closeview=
'closeView($event)'
>
</view
_drtab
>
<component
class=
"view-container2"
v-if=
"drItem && !drItem.disabled"
:is=
"drItem.navView"
:viewDefaultUsage=
"false"
:viewdata=
"JSON.stringify(drItem.srfnavdata.context)"
:viewparam=
"JSON.stringify(drItem.srfnavdata.viewparams)"
>
</component>
</div>
</div>
</div>
</card>
</div>
...
...
@@ -1165,7 +1180,7 @@ export default class IBIZOrderSEditView4Base extends Vue {
* @type {*}
* @memberof IBIZOrderSEditView4Base
*/
public
selection
:
any
=
{};
public
drItem
:
any
=
{};
...
...
app_Web/src/pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout-base.vue
0 → 100644
浏览文件 @
ed0752a5
<
template
>
<div
class=
'view-container detabexpview ibizsample0003-stab-exp-view-layout'
>
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizsample0003stabexpview_layout"
></app-studioaction>
<card
class=
'view-card view-no-caption view-no-toolbar'
:dis-hover=
"true"
:bordered=
"false"
>
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup34'
viewname=
'ibizsample0003stabexpview_layout'
></app-alert-group></div>
<div
class=
'content-container'
>
<view
_tabexppanel
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
name=
"tabexppanel"
ref=
'tabexppanel'
@
closeview=
"closeView($event)"
>
</view
_tabexppanel
>
</div>
</card>
</div>
</
template
>
<
script
lang=
'tsx'
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
,
Inject
}
from
'vue-property-decorator'
;
import
{
UIActionTool
,
Util
}
from
'@/utils'
;
import
NavDataService
from
'@/service/app/navdata-service'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
IBIZSample0003Service
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
IBIZSample0003AuthService
from
'@/authservice/ibizsample0003/ibizsample0003-auth-service'
;
import
TabExpViewEngine
from
'@engine/view/tab-exp-view-engine'
;
import
IBIZSample0003UIService
from
'@/uiservice/ibizsample0003/ibizsample0003-ui-service'
;
@
Component
({
components
:
{
},
})
export
default
class
IBIZSample0003STabExpView_layoutBase
extends
Vue
{
/**
* 实体服务对象
*
* @type {IBIZSample0003Service}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
appEntityService
:
IBIZSample0003Service
=
new
IBIZSample0003Service
;
/**
* 实体UI服务对象
*
* @type IBIZSample0003UIService
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
appUIService
:
IBIZSample0003UIService
=
new
IBIZSample0003UIService
();
/**
* 数据变化
*
* @param {*} val
* @returns {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Emit
()
public
viewDatasChange
(
val
:
any
):
any
{
return
val
;
}
/**
* 传入视图上下文
*
* @type {string}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Prop
()
public
viewdata
!
:
string
;
/**
* 传入视图参数
*
* @type {string}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Prop
()
public
viewparam
!
:
string
;
/**
* 视图默认使用
*
* @type {boolean}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Prop
({
default
:
true
})
public
viewDefaultUsage
!
:
boolean
;
/**
* 视图默认使用
*
* @type {string}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Inject
({
from
:
'navModel'
,
default
:
'tab'
})
public
navModel
!
:
string
;
/**
* 视图标识
*
* @type {string}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
viewtag
:
string
=
'4a0d51e3bca39ffa8dc989e13a1a613f'
;
/**
* 自定义视图导航上下文集合
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
customViewNavContexts
:
any
=
{
};
/**
* 自定义视图导航参数集合
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
customViewParams
:
any
=
{
};
/**
* 视图模型数据
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
model
:
any
=
{
srfCaption
:
'entities.ibizsample0003.views.stabexpview_layout.caption'
,
srfTitle
:
'entities.ibizsample0003.views.stabexpview_layout.title'
,
srfSubTitle
:
'entities.ibizsample0003.views.stabexpview_layout.subtitle'
,
dataInfo
:
''
}
/**
* 视图参数变化
*
* @param {*} newVal
* @param {*} oldVal
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Watch
(
'viewparam'
,{
immediate
:
true
,
deep
:
true
})
onParamData
(
newVal
:
any
,
oldVal
:
any
)
{
if
(
newVal
){
this
.
viewparams
=
{};
if
(
typeof
newVal
==
'string'
)
{
Object
.
assign
(
this
.
viewparams
,
JSON
.
parse
(
this
.
viewparam
));
}
else
{
this
.
viewparams
=
Util
.
deepCopy
(
this
.
viewparam
);
}
}
}
/**
* 处理应用上下文变化
*
* @param {*} newVal
* @param {*} oldVal
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Watch
(
'viewdata'
)
onViewData
(
newVal
:
any
,
oldVal
:
any
)
{
const
_this
:
any
=
this
;
if
(
!
Object
.
is
(
newVal
,
oldVal
)
&&
_this
.
engine
)
{
this
.
$nextTick
(()
=>
{
_this
.
parseViewParam
();
_this
.
engine
.
load
();
});
}
else
if
(
!
Object
.
is
(
newVal
,
oldVal
)
&&
_this
.
refresh
&&
_this
.
refresh
instanceof
Function
)
{
_this
.
refresh
();
}
}
/**
* 容器模型
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
containerModel
:
any
=
{
view_tabexppanel
:
{
name
:
'tabexppanel'
,
type
:
'TABEXPPANEL'
},
};
/**
* 计数器刷新
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
counterRefresh
(){
const
_this
:
any
=
this
;
if
(
_this
.
counterServiceArray
&&
_this
.
counterServiceArray
.
length
>
0
){
_this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
refreshData
&&
item
.
refreshData
instanceof
Function
){
item
.
refreshData
();
}
})
}
}
/**
* 视图状态订阅对象
*
* @public
* @type {Subject<{action: string, data: any}>}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图引擎
*
* @public
* @type {Engine}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
engine
:
TabExpViewEngine
=
new
TabExpViewEngine
();
/**
* 引擎初始化
*
* @public
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
engineInit
():
void
{
this
.
engine
.
init
({
view
:
this
,
keyPSDEField
:
'ibizsample0003'
,
majorPSDEField
:
'ibizsample0003name'
,
isLoadDefault
:
true
,
});
}
/**
* 应用导航服务
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
navDataService
=
NavDataService
.
getInstance
();
/**
* 导航服务事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
serviceStateEvent
:
Subscription
|
undefined
;
/**
* 门户部件状态对象
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
@
Prop
()
public
portletState
?:
any
;
/**
* 门户部件状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
portletStateEvent
:
Subscription
|
undefined
;
/**
* 门户部件状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
formDruipartEvent
:
Subscription
|
undefined
;
/**
* 应用上下文
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
context
:
any
=
{};
/**
* 视图参数
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
viewparams
:
any
=
{};
/**
* 视图缓存数据
*
* @type {*}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
viewCacheData
:
any
;
/**
* 计数器服务对象集合
*
* @type {Array<*>}
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
counterServiceArray
:
Array
<
any
>
=
[];
/**
* 解析视图参数
*
* @public
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
parseViewParam
(
inputvalue
:
any
=
null
):
void
{
for
(
let
key
in
this
.
context
){
delete
this
.
context
[
key
];
}
if
(
this
.
$store
.
getters
.
getAppData
()
&&
this
.
$store
.
getters
.
getAppData
().
context
){
Object
.
assign
(
this
.
context
,
this
.
$store
.
getters
.
getAppData
().
context
);
}
if
(
!
this
.
viewDefaultUsage
&&
this
.
viewdata
&&
!
Object
.
is
(
this
.
viewdata
,
''
))
{
if
(
typeof
this
.
viewdata
==
'string'
)
{
Object
.
assign
(
this
.
context
,
JSON
.
parse
(
this
.
viewdata
));
}
if
(
this
.
context
&&
this
.
context
.
srfparentdename
){
Object
.
assign
(
this
.
viewparams
,{
srfparentdename
:
this
.
context
.
srfparentdename
});
}
if
(
this
.
context
&&
this
.
context
.
srfparentkey
){
Object
.
assign
(
this
.
viewparams
,{
srfparentkey
:
this
.
context
.
srfparentkey
});
}
this
.
handleCustomViewData
();
return
;
}
const
path
=
(
this
.
$route
.
matched
[
this
.
$route
.
matched
.
length
-
1
]).
path
;
const
keys
:
Array
<
any
>
=
[];
const
curReg
=
this
.
$pathToRegExp
.
pathToRegexp
(
path
,
keys
);
const
matchArray
=
curReg
.
exec
(
this
.
$route
.
path
);
let
tempValue
:
Object
=
{};
keys
.
forEach
((
item
:
any
,
index
:
number
)
=>
{
if
(
matchArray
[
index
+
1
]){
Object
.
defineProperty
(
tempValue
,
item
.
name
,
{
enumerable
:
true
,
value
:
decodeURIComponent
(
matchArray
[
index
+
1
])
});
}
});
this
.
$viewTool
.
formatRouteParams
(
tempValue
,
this
.
$route
,
this
.
context
,
this
.
viewparams
);
if
(
inputvalue
){
Object
.
assign
(
this
.
context
,{
'ibizsample0003'
:
inputvalue
});
}
//初始化视图唯一标识
Object
.
assign
(
this
.
context
,{
srfsessionid
:
this
.
$util
.
createUUID
()});
this
.
handleCustomViewData
();
//初始化导航数据
this
.
initNavDataWithRoute
();
}
/**
* 处理自定义视图数据
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
handleCustomViewData
(){
if
(
Object
.
keys
(
this
.
customViewNavContexts
).
length
>
0
){
Object
.
keys
(
this
.
customViewNavContexts
).
forEach
((
item
:
any
)
=>
{
let
tempContext
:
any
=
{};
let
curNavContext
:
any
=
this
.
customViewNavContexts
[
item
];
this
.
handleCustomDataLogic
(
curNavContext
,
tempContext
,
item
);
Object
.
assign
(
this
.
context
,
tempContext
);
})
}
if
(
Object
.
keys
(
this
.
customViewParams
).
length
>
0
){
Object
.
keys
(
this
.
customViewParams
).
forEach
((
item
:
any
)
=>
{
let
tempParam
:
any
=
{};
let
curNavParam
:
any
=
this
.
customViewParams
[
item
];
this
.
handleCustomDataLogic
(
curNavParam
,
tempParam
,
item
);
Object
.
assign
(
this
.
viewparams
,
tempParam
);
})
}
}
/**
* 处理自定义视图数据逻辑
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
handleCustomDataLogic
(
curNavData
:
any
,
tempData
:
any
,
item
:
string
){
// 直接值直接赋值
if
(
curNavData
.
isRawValue
){
if
(
Object
.
is
(
curNavData
.
value
,
"null"
)
||
Object
.
is
(
curNavData
.
value
,
""
)){
Object
.
defineProperty
(
tempData
,
item
.
toLowerCase
(),
{
value
:
null
,
writable
:
true
,
enumerable
:
true
,
configurable
:
true
});
}
else
{
Object
.
defineProperty
(
tempData
,
item
.
toLowerCase
(),
{
value
:
curNavData
.
value
,
writable
:
true
,
enumerable
:
true
,
configurable
:
true
});
}
}
else
{
// 先从导航上下文取数,没有再从导航参数(URL)取数,如果导航上下文和导航参数都没有则为null
if
(
this
.
context
[(
curNavData
.
value
).
toLowerCase
()]
!=
null
){
Object
.
defineProperty
(
tempData
,
item
.
toLowerCase
(),
{
value
:
this
.
context
[(
curNavData
.
value
).
toLowerCase
()],
writable
:
true
,
enumerable
:
true
,
configurable
:
true
});
}
else
{
if
(
this
.
viewparams
[(
curNavData
.
value
).
toLowerCase
()]
!=
null
){
Object
.
defineProperty
(
tempData
,
item
.
toLowerCase
(),
{
value
:
this
.
viewparams
[(
curNavData
.
value
).
toLowerCase
()],
writable
:
true
,
enumerable
:
true
,
configurable
:
true
});
}
else
{
Object
.
defineProperty
(
tempData
,
item
.
toLowerCase
(),
{
value
:
null
,
writable
:
true
,
enumerable
:
true
,
configurable
:
true
});
}
}
}
}
/**
* 初始化导航数据(路由模式)
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
initNavDataWithRoute
(
data
:
any
=
null
,
isNew
:
boolean
=
false
,
isAlways
:
boolean
=
false
){
if
(
isAlways
||
(
this
.
viewDefaultUsage
&&
Object
.
is
(
this
.
navModel
,
"route"
))
){
this
.
navDataService
.
addNavData
({
id
:
'ibizsample0003-stab-exp-view-layout'
,
tag
:
this
.
viewtag
,
srfkey
:
isNew
?
null
:
this
.
context
.
ibizsample0003
,
title
:
this
.
$t
(
this
.
model
.
srfCaption
),
data
:
data
,
context
:
this
.
context
,
viewparams
:
this
.
viewparams
,
path
:
this
.
$route
.
fullPath
});
}
}
/**
* 初始化导航数据(分页模式)
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
initNavDataWithTab
(
data
:
any
=
null
,
isOnlyAdd
:
boolean
=
true
,
isAlways
:
boolean
=
false
){
if
(
isAlways
||
(
this
.
viewDefaultUsage
&&
!
Object
.
is
(
this
.
navModel
,
"route"
))
){
this
.
navDataService
.
addNavDataByOnly
({
id
:
'ibizsample0003-stab-exp-view-layout'
,
tag
:
this
.
viewtag
,
srfkey
:
this
.
context
.
ibizsample0003
,
title
:
this
.
$t
(
this
.
model
.
srfCaption
),
data
:
data
,
context
:
this
.
context
,
viewparams
:
this
.
viewparams
,
path
:
this
.
$route
.
fullPath
},
isOnlyAdd
);
}
}
/**
* Vue声明周期
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
afterCreated
(){
let
_this
:
any
=
this
;
const
secondtag
=
_this
.
$util
.
createUUID
();
_this
.
$store
.
commit
(
'viewaction/createdView'
,
{
viewtag
:
_this
.
viewtag
,
secondtag
:
secondtag
});
_this
.
viewtag
=
secondtag
;
_this
.
parseViewParam
();
_this
.
serviceStateEvent
=
_this
.
navDataService
.
serviceState
.
subscribe
(({
action
,
name
,
data
}:{
action
:
string
,
name
:
any
,
data
:
any
})
=>
{
if
(
!
Object
.
is
(
name
,
'ibizsample0003-stab-exp-view-layout'
)){
return
;
}
if
(
Object
.
is
(
action
,
'viewrefresh'
))
{
_this
.
$nextTick
(()
=>
{
_this
.
parseViewParam
(
data
);
if
(
_this
.
engine
){
_this
.
engine
.
load
();
}
});
}
});
if
(
_this
.
portletState
){
_this
.
portletStateEvent
=
_this
.
portletState
.
subscribe
((
res
:
any
)
=>
{
if
(
!
Object
.
is
(
res
.
name
,
'IBIZSample0003STabExpView_layout'
)){
return
;
}
if
(
Object
.
is
(
res
.
action
,
'refresh'
)
&&
_this
.
refresh
&&
_this
.
refresh
instanceof
Function
){
_this
.
refresh
();
}
})
}
}
/**
* 销毁之前
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
beforeDestroy
()
{
this
.
$store
.
commit
(
'viewaction/removeView'
,
this
.
viewtag
);
let
_this
:
any
=
this
if
(
_this
.
serviceStateEvent
)
{
_this
.
serviceStateEvent
.
unsubscribe
();
}
if
(
_this
.
portletStateEvent
)
{
_this
.
portletStateEvent
.
unsubscribe
();
}
if
(
_this
.
engine
)
{
_this
.
engine
.
destroy
();
}
}
/**
* Vue声明周期(组件初始化完毕)
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
mounted
()
{
this
.
afterMounted
();
}
/**
* 执行mounted后的逻辑
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
afterMounted
(){
const
_this
:
any
=
this
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
}
/**
* 关闭视图
*
* @param {any[]} args
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
closeView
(
args
:
any
[]):
void
{
let
_view
:
any
=
this
;
if
(
_view
.
viewdata
)
{
_view
.
$emit
(
'viewdataschange'
,
Array
.
isArray
(
args
)?
args
:[
args
]);
_view
.
$emit
(
'close'
,
Array
.
isArray
(
args
)?
args
:[
args
]);
}
else
if
(
_view
.
$tabPageExp
)
{
_view
.
$tabPageExp
.
onClose
(
_view
.
$route
.
fullPath
);
}
}
/**
* 销毁视图回调
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
destroyed
(){
this
.
afterDestroyed
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
afterDestroyed
(){
if
(
this
.
viewDefaultUsage
){
let
localStoreLength
=
Object
.
keys
(
localStorage
);
if
(
localStoreLength
.
length
>
0
){
localStoreLength
.
forEach
((
item
:
string
)
=>
{
if
(
item
.
startsWith
(
this
.
context
.
srfsessionid
)){
localStorage
.
removeItem
(
item
);
}
})
}
if
(
Object
.
is
(
this
.
navModel
,
"tab"
)){
this
.
navDataService
.
removeNavDataByTag
(
this
.
viewtag
);
}
}
if
(
this
.
serviceStateEvent
)
{
this
.
serviceStateEvent
.
unsubscribe
();
}
// 销毁计数器定时器
if
(
this
.
counterServiceArray
&&
this
.
counterServiceArray
.
length
>
0
){
this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
destroyCounter
&&
item
.
destroyCounter
instanceof
Function
){
item
.
destroyCounter
();
}
})
}
if
(
this
.
portletStateEvent
){
this
.
portletStateEvent
.
unsubscribe
();
}
if
(
this
.
formDruipartEvent
)
{
this
.
formDruipartEvent
.
unsubscribe
();
}
this
.
viewState
.
complete
();
}
/**
* 加载模型
*
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
loadModel
(){
if
(
this
.
context
.
ibizsample0003
){
this
.
appEntityService
.
getDataInfo
(
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),{},
false
).
then
((
response
:
any
)
=>
{
if
(
!
response
||
response
.
status
!==
200
)
{
return
;
}
const
{
data
:
_data
}
=
response
;
this
.
engine
.
computeToolbarState
(
false
,
_data
);
this
.
viewState
.
next
({
tag
:
'tabexppanel'
,
action
:
'loadmodel'
,
data
:
_data
});
if
(
_data
.
ibizsample0003name
)
{
Object
.
assign
(
this
.
model
,
{
dataInfo
:
_data
.
ibizsample0003name
});
if
(
this
.
$tabPageExp
){
let
_this
:
any
=
this
;
this
.
$tabPageExp
.
setCurPageCaption
(
_this
.
$t
(
this
.
model
.
srfCaption
),
this
.
model
.
srfCaption
,
_this
.
model
.
dataInfo
);
}
if
(
this
.
$route
&&
this
.
$route
.
meta
){
this
.
$route
.
meta
.
info
=
this
.
model
.
dataInfo
;
}
Object
.
assign
(
this
.
model
,
{
srfCaption
:
`
${
this
.
$t
(
this
.
model
.
srfCaption
)}
-
${
this
.
$t
(
this
.
model
.
dataInfo
)}
`
});
}
})
}
}
}
</
script
>
<
style
lang=
'less'
>
@import './ibizsample0003-stab-exp-view-layout.less';
</
style
>
\ No newline at end of file
app_Web/src/pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.less
0 → 100644
浏览文件 @
ed0752a5
.ibizsample0003-stab-exp-view-layout{
position: relative;
}
.ibizsample0003-stab-exp-view-layout {
> .view-card > .ivu-card-body > .content-container > .tabviewpanel {
overflow: auto;
}
}
app_Web/src/pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue
0 → 100644
浏览文件 @
ed0752a5
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
IBIZSample0003STabExpView_layoutBase
from
'./ibizsample0003-stab-exp-view-layout-base.vue'
;
import
view_tabexppanel
from
'@widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel.vue'
;
@
Component
({
components
:
{
view_tabexppanel
,
},
beforeRouteEnter
:
(
to
:
any
,
from
:
any
,
next
:
any
)
=>
{
next
((
vm
:
any
)
=>
{
if
(
!
Object
.
is
(
vm
.
navModel
,
"route"
)){
vm
.
initNavDataWithTab
(
vm
.
viewCacheData
);
}
vm
.
$store
.
commit
(
'addCurPageViewtag'
,
{
fullPath
:
to
.
fullPath
,
viewtag
:
vm
.
viewtag
});
});
},
})
export
default
class
IBIZSample0003STabExpView_layout
extends
IBIZSample0003STabExpView_layoutBase
{
}
</
script
>
\ No newline at end of file
app_Web/src/pages/sample/index/page-register.ts
浏览文件 @
ed0752a5
...
...
@@ -119,6 +119,7 @@ export const PageComponents = {
Vue
.
component
(
'ibizorder-sedit-view3-layout'
,
()
=>
import
(
'@pages/sample/ibizorder-sedit-view3-layout/ibizorder-sedit-view3-layout.vue'
));
Vue
.
component
(
'ibizorder-sedit-view4-layout'
,
()
=>
import
(
'@pages/sample/ibizorder-sedit-view4-layout/ibizorder-sedit-view4-layout.vue'
));
Vue
.
component
(
'ibizorder-sedit-view2-layout'
,
()
=>
import
(
'@pages/sample/ibizorder-sedit-view2-layout/ibizorder-sedit-view2-layout.vue'
));
Vue
.
component
(
'ibizsample0003-stab-exp-view-layout'
,
()
=>
import
(
'@pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue'
));
Vue
.
component
(
'ibizappviewgrid-view'
,
()
=>
import
(
'@pages/sample/ibizappviewgrid-view/ibizappviewgrid-view.vue'
));
Vue
.
component
(
'ibizappviewlist-view'
,
()
=>
import
(
'@pages/sample/ibizappviewlist-view/ibizappviewlist-view.vue'
));
Vue
.
component
(
'ibizappctrlgrid-view'
,
()
=>
import
(
'@pages/sample/ibizappctrlgrid-view/ibizappctrlgrid-view.vue'
));
...
...
app_Web/src/pages/sample/index/router.ts
浏览文件 @
ed0752a5
...
...
@@ -1832,6 +1832,20 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/sample/ibizorder-sedit-view2-layout/ibizorder-sedit-view2-layout.vue'
),
},
{
path
:
'ibizsample0003s/:ibizsample0003?/stabexpview_layout/:stabexpview_layout?'
,
meta
:
{
caption
:
'entities.ibizsample0003.views.stabexpview_layout.caption'
,
info
:
''
,
parameters
:
[
{
pathName
:
'index'
,
parameterName
:
'index'
},
{
pathName
:
'ibizsample0003s'
,
parameterName
:
'ibizsample0003'
},
{
pathName
:
'stabexpview_layout'
,
parameterName
:
'stabexpview_layout'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue'
),
},
{
path
:
'ibizappviews/:ibizappview?/gridview/:gridview?'
,
meta
:
{
...
...
@@ -3682,6 +3696,19 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/sample/ibizappeditorgrid-view/ibizappeditorgrid-view.vue'
),
},
{
path
:
'/ibizsample0003s/:ibizsample0003?/stabexpview_layout/:stabexpview_layout?'
,
meta
:
{
caption
:
'entities.ibizsample0003.views.stabexpview_layout.caption'
,
info
:
''
,
parameters
:
[
{
pathName
:
'ibizsample0003s'
,
parameterName
:
'ibizsample0003'
},
{
pathName
:
'stabexpview_layout'
,
parameterName
:
'stabexpview_layout'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue'
),
},
{
path
:
'/ibizsample0003s/:ibizsample0003?/f3treeexpview/:f3treeexpview?'
,
meta
:
{
...
...
app_Web/src/pages/ungroup/app-index-view/router.ts
浏览文件 @
ed0752a5
...
...
@@ -756,6 +756,19 @@ const router = new Router({
},
component
:
()
=>
import
(
'@pages/sample/ibizappeditorgrid-view/ibizappeditorgrid-view.vue'
),
},
{
path
:
'/ibizsample0003s/:ibizsample0003?/stabexpview_layout/:stabexpview_layout?'
,
meta
:
{
caption
:
'entities.ibizsample0003.views.stabexpview_layout.caption'
,
info
:
''
,
parameters
:
[
{
pathName
:
'ibizsample0003s'
,
parameterName
:
'ibizsample0003'
},
{
pathName
:
'stabexpview_layout'
,
parameterName
:
'stabexpview_layout'
},
],
requireAuth
:
true
,
},
component
:
()
=>
import
(
'@pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout.vue'
),
},
{
path
:
'/ibizsample0003s/:ibizsample0003?/f3treeexpview/:f3treeexpview?'
,
meta
:
{
...
...
app_Web/src/store/modules/view-action/state.ts
浏览文件 @
ed0752a5
...
...
@@ -534,6 +534,18 @@ export const viewstate: any = {
'6d3a1e5d74674f7d9ba445e4708216e0'
,
],
},
{
viewtag
:
'4a0d51e3bca39ffa8dc989e13a1a613f'
,
viewmodule
:
'Sample'
,
viewname
:
'IBIZSample0003STabExpView_layout'
,
viewaction
:
''
,
viewdatachange
:
false
,
refviews
:
[
'1ec7069b18d0c9b18fb55c839b2e0822'
,
'2e7cbc7793bdd49ea744b56e6e14571c'
,
'cbf09cbd2a5b6c65479dec84af3fe874'
,
],
},
{
viewtag
:
'4a775e162843247ba343984bd5e7d634'
,
viewmodule
:
'Sample'
,
...
...
@@ -839,6 +851,7 @@ export const viewstate: any = {
'5b7402fd99632895f9f6d32d6477cb20'
,
'880efe9c98faa665c18ad955496112bf'
,
'1a158d1e7cdd8c8e17b54bfa91846b4c'
,
'4a0d51e3bca39ffa8dc989e13a1a613f'
,
],
},
{
...
...
app_Web/src/uiservice/ibizbook/ibizbook-ui-service-base.ts
浏览文件 @
ed0752a5
...
...
@@ -163,6 +163,7 @@ export default class IBIZBOOKUIServiceBase extends UIService {
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'groupbycodelistlistview'
,
srfappde
:
'ibizbooks'
,
component
:
'ibizbookgroup-by-codelist-list-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'usr8gridview'
,
srfappde
:
'ibizbooks'
,
component
:
'ibizbookusr8-grid-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'usr9gridview'
,
srfappde
:
'ibizbooks'
,
component
:
'ibizbookusr9-grid-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'dashboardview_layout'
,
srfappde
:
'ibizbooks'
,
component
:
'ibizbookdashboard-view-layout'
});
}
/**
...
...
app_Web/src/uiservice/ibizsample0003/ibizsample0003-ui-service-base.ts
浏览文件 @
ed0752a5
...
...
@@ -102,6 +102,7 @@ export default class IBIZSample0003UIServiceBase extends UIService {
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'sf3editview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-sf3-edit-view'
});
this
.
allViewMap
.
set
(
'MDATAVIEW:'
,{
viewname
:
'gridview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-grid-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'sf1editview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-sf1-edit-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'stabexpview_layout'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-stab-exp-view-layout'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'f3treeexpview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-f3-tree-exp-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'sf5editview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-sf5-edit-view'
});
this
.
allViewMap
.
set
(
':'
,{
viewname
:
'spickuptreeview'
,
srfappde
:
'ibizsample0003s'
,
component
:
'ibizsample0003-spickup-tree-view'
});
...
...
app_Web/src/widgets/app/main-menu-appmenu/main-menu-appmenu-base.vue
浏览文件 @
ed0752a5
...
...
@@ -961,6 +961,9 @@ export default class MainMenuBase extends Vue implements ControlInterface {
case
'AppFunc106'
:
this
.
clickAppFunc106
(
item
);
return
;
case
'AppFunc107'
:
this
.
clickAppFunc107
(
item
);
return
;
default
:
console
.
warn
(
'未指定应用功能'
);
}
...
...
@@ -3747,6 +3750,29 @@ export default class MainMenuBase extends Vue implements ControlInterface {
})
}
/**
* 分页导航(布局面板)
*
* @param {*} [item={}]
* @memberof MainMenu
*/
public
clickAppFunc107
(
item
:
any
=
{})
{
const
viewparam
:
any
=
{};
Object
.
assign
(
viewparam
,
{});
const
deResParameters
:
any
[]
=
[];
const
parameters
:
any
[]
=
[
{
pathName
:
'ibizsample0003s'
,
parameterName
:
'ibizsample0003'
},
{
pathName
:
'stabexpview_layout'
,
parameterName
:
'stabexpview_layout'
},
];
const
path
:
string
=
this
.
$viewTool
.
buildUpRoutePath
(
this
.
$route
,
{},
deResParameters
,
parameters
,
[],
viewparam
);
if
(
Object
.
is
(
this
.
$route
.
fullPath
,
path
)){
return
;
}
this
.
$nextTick
(
function
(){
this
.
$router
.
push
(
path
);
})
}
/**
* 数据加载
*
...
...
app_Web/src/widgets/app/main-menu-appmenu/main-menu-appmenu-model.ts
浏览文件 @
ed0752a5
...
...
@@ -3416,7 +3416,7 @@ export default class MainMenuModel {
iconcls
:
''
,
icon
:
''
,
textcls
:
''
,
appfunctag
:
'A
uto213
'
,
appfunctag
:
'A
ppFunc107
'
,
resourcetag
:
''
,
authtag
:
'Web-MainMenu-menuitem197'
,
},
...
...
@@ -5423,6 +5423,18 @@ export default class MainMenuModel {
{
pathName
:
'seditview2_layout'
,
parameterName
:
'seditview2_layout'
},
],
},
{
appfunctag
:
'AppFunc107'
,
appfuncyype
:
'APPVIEW'
,
openmode
:
''
,
codename
:
'ibizsample0003stabexpview_layout'
,
deResParameters
:
[],
routepath
:
'/index/:index?/ibizsample0003s/:ibizsample0003?/stabexpview_layout/:stabexpview_layout?'
,
parameters
:
[
{
pathName
:
'ibizsample0003s'
,
parameterName
:
'ibizsample0003'
},
{
pathName
:
'stabexpview_layout'
,
parameterName
:
'stabexpview_layout'
},
],
},
];
/**
...
...
app_Web/src/widgets/ibizbook/default-drtab/default-drtab-base.vue
浏览文件 @
ed0752a5
<
template
>
<div
class =
"drtab"
>
<tabs
:animated=
'false'
class=
'app-dr-tab'
name=
'default'
@
on-click=
"tabPanelClick"
>
<tab-pane
v-if=
"isShowSlot"
:index=
'0'
name=
'form'
tab=
'default'
class=
''
:disabled=
'items[0].disabled'
label=
'图书'
>
<div
class=
'main-data'
>
<slot></slot>
<div
class=
"app-dr-tab"
>
<div
v-for=
"(item, index) in items"
:class=
"
{ 'app-dr-tab-item': true, 'dr-tab-item': true, 'is-disabled': item.disabled, 'is-active': selection.id === item.id">
<span
class=
"text"
>
{{
item
.
text
}}
</span>
</div>
</tab-pane>
</tabs>
</div>
</
template
>
...
...
@@ -175,7 +170,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @type {*}
* @memberof DefaultBase
*/
public
formData
:
any
;
public
formData
:
any
;
/**
* 获取多项数据
...
...
@@ -221,22 +216,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
items
:
any
[]
=
[
{
index
:
0
,
id
:
'form'
,
name
:
'form'
,
text
:
'图书'
,
disabled
:
false
,
},
];
/**
* 关系栏数据项导航参数集合
*
* @type {any[]}
* @memberof DefaultBase
*/
public
navParamsArray
:
Array
<
any
>
=
[
];
/**
...
...
@@ -254,7 +233,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
selectFirst
(){
if
(
this
.
items
.
length
>
0
){
if
(
this
.
items
.
length
>
0
){
this
.
isShowSlot
?
this
.
tabPanelClick
(
this
.
items
[
0
].
name
):
this
.
items
.
length
>
1
?
this
.
tabPanelClick
(
this
.
items
[
1
].
name
):()
=>
{};
}
}
...
...
@@ -278,9 +257,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
}
});
}
this
.
$nextTick
(()
=>
{
this
.
$emit
(
'selectionchange'
,
[
this
.
items
[
0
]]);
});
}
/**
...
...
@@ -319,22 +295,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
return
undefined
;
}
/**
* 设置关系项状态
*
* @param {boolean} state
* @memberof DefaultBase
*/
public
setItemDisabled
(
state
:
boolean
):
void
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
if
(
Object
.
is
(
item
.
name
,
'form'
))
{
item
.
disabled
=
false
;
}
else
{
item
.
disabled
=
state
;
}
});
}
/**
* 获取数据项
*
...
...
@@ -351,33 +311,16 @@ export default class DefaultBase extends Vue implements ControlInterface {
return
null
;
}
/**
* 初始化导航参数
*
* @param {*} drItem
* @memberof DefaultBase
*/
public
initNavParam
(
drItem
:
any
){
let
returnNavParam
:
any
=
{};
if
(
drItem
&&
drItem
.
id
){
let
curDRItem
:
any
=
this
.
navParamsArray
.
find
((
item
:
any
)
=>
{
return
Object
.
is
(
item
.
id
,
drItem
.
id
);
public
handleFormDataChange
(
data
:
any
)
{
this
.
formData
=
data
;
if
(
data
&&
Object
.
is
(
data
.
srfuf
,
'1'
))
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
item
.
disabled
=
false
;
})
}
else
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
item
.
disabled
=
true
;
})
if
(
curDRItem
){
let
localContext
:
any
=
curDRItem
.
localContext
;
let
localViewParam
:
any
=
curDRItem
.
localViewParam
;
if
(
localContext
&&
Object
.
keys
(
localContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
this
.
formData
,
this
.
context
,
this
.
viewparams
,
localContext
);
returnNavParam
.
localContext
=
_context
;
}
if
(
localViewParam
&&
Object
.
keys
(
localViewParam
).
length
>
0
){
let
_params
:
any
=
this
.
$util
.
computedNavData
(
this
.
formData
,
this
.
context
,
this
.
viewparams
,
localViewParam
);
returnNavParam
.
localViewParam
=
_params
;
}
return
returnNavParam
;
}
else
{
return
null
;
}
}
}
...
...
@@ -388,28 +331,28 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
tabPanelClick
(
$event
:
any
):
void
{
const
item
=
this
.
getItem
(
$event
);
if
(
Object
.
is
(
item
.
id
,
this
.
selection
.
id
))
{
return
;
}
this
.
$emit
(
'selectionchange'
,
[
item
]);
let
localNavParam
:
any
=
this
.
initNavParam
(
item
);
const
refview
=
this
.
getDRTabItem
({
nodetype
:
item
.
id
});
this
.
selection
=
{};
const
_context
:
any
=
{
...
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
};
if
(
localNavParam
&&
localNavParam
.
localContext
){
Object
.
assign
(
_context
,
localNavParam
.
localContext
);
}
Object
.
assign
(
_context
,{
srfparentdename
:
this
.
parentName
,
srfparentkey
:
_context
[
this
.
parentName
.
toLowerCase
()]});
const
_params
:
any
=
{};
if
(
localNavParam
&&
localNavParam
.
localViewParam
){
Object
.
assign
(
_params
,
localNavParam
.
localViewParam
);
}
if
(
refview
&&
refview
.
parentdatajo
)
{
Object
.
assign
(
_context
,
refview
.
parentdatajo
);
Object
.
assign
(
this
.
selection
,
{
view
:
{
viewname
:
refview
.
viewname
},
data
:
_context
,
param
:
_params
});
}
Object
.
assign
(
this
.
selection
,
item
);
// const item = this.getItem($event);
// if (Object.is(item.id, this.selection.id)) {
// return;
// }
// this.$emit('selectionchange', [item]);
// let localNavParam:any = this.initNavParam(item);
// const refview = this.getDRTabItem({ nodetype: item.id });
// this.selection = {};
// const _context: any = { ...JSON.parse(JSON.stringify(this.context)) };
// if(localNavParam && localNavParam.localContext){
// Object.assign(_context,localNavParam.localContext);
// }
// Object.assign(_context,{srfparentdename:this.parentName,srfparentkey:_context[this.parentName.toLowerCase()]});
// const _params: any = {};
// if(localNavParam && localNavParam.localViewParam){
// Object.assign(_params,localNavParam.localViewParam);
// }
// if (refview && refview.parentdatajo) {
// Object.assign(_context, refview.parentdatajo);
// Object.assign(this.selection, { view: { viewname: refview.viewname }, data: _context, param: _params });
// }
// Object.assign(this.selection, item);
}
}
...
...
app_Web/src/widgets/ibizbook/default-searchform/default-searchform-base.vue
浏览文件 @
ed0752a5
...
...
@@ -663,7 +663,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public
load
(
opt
:
any
=
{}):
void
{
if
(
!
this
.
loadAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
GroupByCodelistList
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr9Grid
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
};
...
...
@@ -699,7 +699,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public
loadDraft
(
opt
:
any
=
{},
mode
?:
string
):
void
{
if
(
!
this
.
loaddraftAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
GroupByCodelistList
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr9Grid
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-base.vue
浏览文件 @
ed0752a5
...
...
@@ -649,7 +649,7 @@ export default class Usr4Base extends Vue implements ControlInterface {
*/
public
load
(
opt
:
any
=
{},
isReset
:
boolean
=
false
):
void
{
if
(
!
this
.
fetchAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.list.notConfig.fetchAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{...
opt
};
...
...
@@ -728,7 +728,7 @@ export default class Usr4Base extends Vue implements ControlInterface {
*/
public
async
remove
(
datas
:
any
[]):
Promise
<
any
>
{
if
(
!
this
.
removeAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
TestCL
DataView'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.gridpage.notConfig.removeAction'
)
as
string
)
});
return
;
}
let
_datas
:
any
[]
=
[];
...
...
@@ -837,7 +837,7 @@ export default class Usr4Base extends Vue implements ControlInterface {
try
{
if
(
Object
.
is
(
item
.
rowDataState
,
'create'
)){
if
(
!
this
.
createAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.createAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.list.notConfig.createAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,{
viewparams
:
this
.
viewparams
});
let
response
=
await
this
.
service
.
add
(
this
.
createAction
,
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
)),
item
,
this
.
showBusyIndicator
);
...
...
@@ -845,7 +845,7 @@ export default class Usr4Base extends Vue implements ControlInterface {
}
}
else
if
(
Object
.
is
(
item
.
rowDataState
,
'update'
)){
if
(
!
this
.
updateAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
TestCL
DataView'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOK
Usr4
DataView'
+
(
this
.
$t
(
'app.list.notConfig.updateAction'
)
as
string
)
});
}
else
{
Object
.
assign
(
item
,{
viewparams
:
this
.
viewparams
});
if
(
item
.
ibizbook
){
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
浏览文件 @
ed0752a5
...
...
@@ -69,6 +69,11 @@ export default class Usr4Model {
prop
:
'n_ibizbookname_like'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'n_price_gtandeq'
,
prop
:
'n_price_gtandeq'
,
dataType
:
'QUERYPARAM'
},
{
...
...
app_Web/src/widgets/ibizorder/default-drtab/default-drtab-base.vue
浏览文件 @
ed0752a5
<
template
>
<div
class =
"drtab"
>
<tabs
:animated=
'false'
class=
'app-dr-tab'
name=
'default'
@
on-click=
"tabPanelClick"
>
<tab-pane
v-if=
"isShowSlot"
:index=
'0'
name=
'form'
tab=
'default'
class=
''
:disabled=
'items[0].disabled'
label=
'订单'
>
<div
class=
'main-data'
>
<slot></slot>
<div
class=
"app-dr-tab"
>
<div
v-for=
"(item, index) in items"
:class=
"
{ 'app-dr-tab-item': true, 'dr-tab-item': true, 'is-disabled': item.disabled, 'is-active': selection.id === item.id">
<span
class=
"text"
>
{{
item
.
text
}}
</span>
</div>
</tab-pane>
<tab-pane
:index=
'1'
name=
'dritem2'
tab=
'default'
class=
''
:disabled=
'items[1].disabled'
label=
'订单明细'
>
<component
v-if=
"Object.is(this.selection.id, 'dritem2') && this.selection.view && !Object.is(this.selection.view.viewname, '')"
:is=
"selection.view.viewname"
class=
"viewcontainer2"
:viewdata=
"JSON.stringify(selection.data)"
:viewparam=
"JSON.stringify(selection.param)"
:viewDefaultUsage=
"false"
:key=
"this.$util.createUUID()"
>
</component>
</tab-pane>
</tabs>
</div>
</
template
>
...
...
@@ -196,7 +179,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @type {*}
* @memberof DefaultBase
*/
public
formData
:
any
;
public
formData
:
any
;
/**
* 获取多项数据
...
...
@@ -243,32 +226,13 @@ export default class DefaultBase extends Vue implements ControlInterface {
*/
public
items
:
any
[]
=
[
{
index
:
0
,
id
:
'form'
,
name
:
'form'
,
text
:
'订单'
,
disabled
:
false
,
},
{
index
:
1
,
id
:
'dritem2'
,
name
:
'dritem2'
,
id
:
'e3de96606cd87a3561ec172c1da48022'
,
name
:
'e3de96606cd87a3561ec172c1da48022'
,
text
:
'订单明细'
,
disabled
:
false
,
},
];
/**
* 关系栏数据项导航参数集合
*
* @type {any[]}
* @memberof DefaultBase
*/
public
navParamsArray
:
Array
<
any
>
=
[
{
id
:
'dritem2'
,
localContext
:{
CONTEXTPARAM1
:
"%orderstate%"
},
localViewParam
:{
param2
:
"%orderstate%"
}
disabled
:
true
,
navView
:
'ibizorder-detail-sgrid-view'
,
localContext
:
{
CONTEXTPARAM1
:
"%orderstate%"
},
localViewParam
:
{
param2
:
"%orderstate%"
}
}
];
...
...
@@ -287,7 +251,7 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
selectFirst
(){
if
(
this
.
items
.
length
>
0
){
if
(
this
.
items
.
length
>
0
){
this
.
isShowSlot
?
this
.
tabPanelClick
(
this
.
items
[
0
].
name
):
this
.
items
.
length
>
1
?
this
.
tabPanelClick
(
this
.
items
[
1
].
name
):()
=>
{};
}
}
...
...
@@ -311,9 +275,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
}
});
}
this
.
$nextTick
(()
=>
{
this
.
$emit
(
'selectionchange'
,
[
this
.
items
[
0
]]);
});
}
/**
...
...
@@ -358,22 +319,6 @@ export default class DefaultBase extends Vue implements ControlInterface {
return
undefined
;
}
/**
* 设置关系项状态
*
* @param {boolean} state
* @memberof DefaultBase
*/
public
setItemDisabled
(
state
:
boolean
):
void
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
if
(
Object
.
is
(
item
.
name
,
'form'
))
{
item
.
disabled
=
false
;
}
else
{
item
.
disabled
=
state
;
}
});
}
/**
* 获取数据项
*
...
...
@@ -390,33 +335,16 @@ export default class DefaultBase extends Vue implements ControlInterface {
return
null
;
}
/**
* 初始化导航参数
*
* @param {*} drItem
* @memberof DefaultBase
*/
public
initNavParam
(
drItem
:
any
){
let
returnNavParam
:
any
=
{};
if
(
drItem
&&
drItem
.
id
){
let
curDRItem
:
any
=
this
.
navParamsArray
.
find
((
item
:
any
)
=>
{
return
Object
.
is
(
item
.
id
,
drItem
.
id
);
public
handleFormDataChange
(
data
:
any
)
{
this
.
formData
=
data
;
if
(
data
&&
Object
.
is
(
data
.
srfuf
,
'1'
))
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
item
.
disabled
=
false
;
})
}
else
{
this
.
items
.
forEach
((
item
:
any
)
=>
{
item
.
disabled
=
true
;
})
if
(
curDRItem
){
let
localContext
:
any
=
curDRItem
.
localContext
;
let
localViewParam
:
any
=
curDRItem
.
localViewParam
;
if
(
localContext
&&
Object
.
keys
(
localContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
this
.
formData
,
this
.
context
,
this
.
viewparams
,
localContext
);
returnNavParam
.
localContext
=
_context
;
}
if
(
localViewParam
&&
Object
.
keys
(
localViewParam
).
length
>
0
){
let
_params
:
any
=
this
.
$util
.
computedNavData
(
this
.
formData
,
this
.
context
,
this
.
viewparams
,
localViewParam
);
returnNavParam
.
localViewParam
=
_params
;
}
return
returnNavParam
;
}
else
{
return
null
;
}
}
}
...
...
@@ -427,28 +355,28 @@ export default class DefaultBase extends Vue implements ControlInterface {
* @memberof DefaultBase
*/
public
tabPanelClick
(
$event
:
any
):
void
{
const
item
=
this
.
getItem
(
$event
);
if
(
Object
.
is
(
item
.
id
,
this
.
selection
.
id
))
{
return
;
}
this
.
$emit
(
'selectionchange'
,
[
item
]);
let
localNavParam
:
any
=
this
.
initNavParam
(
item
);
const
refview
=
this
.
getDRTabItem
({
nodetype
:
item
.
id
});
this
.
selection
=
{};
const
_context
:
any
=
{
...
JSON
.
parse
(
JSON
.
stringify
(
this
.
context
))
};
if
(
localNavParam
&&
localNavParam
.
localContext
){
Object
.
assign
(
_context
,
localNavParam
.
localContext
);
}
Object
.
assign
(
_context
,{
srfparentdename
:
this
.
parentName
,
srfparentkey
:
_context
[
this
.
parentName
.
toLowerCase
()]});
const
_params
:
any
=
{};
if
(
localNavParam
&&
localNavParam
.
localViewParam
){
Object
.
assign
(
_params
,
localNavParam
.
localViewParam
);
}
if
(
refview
&&
refview
.
parentdatajo
)
{
Object
.
assign
(
_context
,
refview
.
parentdatajo
);
Object
.
assign
(
this
.
selection
,
{
view
:
{
viewname
:
refview
.
viewname
},
data
:
_context
,
param
:
_params
});
}
Object
.
assign
(
this
.
selection
,
item
);
// const item = this.getItem($event);
// if (Object.is(item.id, this.selection.id)) {
// return;
// }
// this.$emit('selectionchange', [item]);
// let localNavParam:any = this.initNavParam(item);
// const refview = this.getDRTabItem({ nodetype: item.id });
// this.selection = {};
// const _context: any = { ...JSON.parse(JSON.stringify(this.context)) };
// if(localNavParam && localNavParam.localContext){
// Object.assign(_context,localNavParam.localContext);
// }
// Object.assign(_context,{srfparentdename:this.parentName,srfparentkey:_context[this.parentName.toLowerCase()]});
// const _params: any = {};
// if(localNavParam && localNavParam.localViewParam){
// Object.assign(_params,localNavParam.localViewParam);
// }
// if (refview && refview.parentdatajo) {
// Object.assign(_context, refview.parentdatajo);
// Object.assign(this.selection, { view: { viewname: refview.viewname }, data: _context, param: _params });
// }
// Object.assign(this.selection, item);
}
}
...
...
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel-base.vue
0 → 100644
浏览文件 @
ed0752a5
<
template
>
<div
class=
'tabviewpanel'
style=
"height:100%;"
>
<tabs
:value=
"activiedTabViewPanel"
:animated=
"false"
class=
'tabexppanel'
name=
'stabexpview_layouttabexppanel'
@
on-click=
"tabPanelClick"
>
<tab-pane
:index=
"0"
name=
'tabviewpanel'
tab=
'stabexpview_layouttabexppanel'
class=
''
v-if=
"authResourceObject['tabviewpanel'].visabled"
:label=
"(h) =>
{
return h('div', [
h('span', '统一产品'),
h('Badge', {
props: {
count: undefined,
type: 'primary'
}
})
])
}" >
<view
_tabviewpanel
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
:activeData=
"JSON.stringify(activeData)"
v-if=
"isInit.tabviewpanel"
name=
"tabviewpanel"
ref=
'tabviewpanel'
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel
>
</tab-pane>
<tab-pane
:index=
"1"
name=
'tabviewpanel2'
tab=
'stabexpview_layouttabexppanel'
class=
''
v-if=
"authResourceObject['tabviewpanel2'].visabled"
:label=
"(h) =>
{
return h('div', [
h('span', '硬件'),
h('Badge', {
props: {
count: undefined,
type: 'primary'
}
})
])
}" >
<view
_tabviewpanel2
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
:activeData=
"JSON.stringify(activeData)"
v-if=
"isInit.tabviewpanel2"
name=
"tabviewpanel2"
ref=
'tabviewpanel2'
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel2
>
</tab-pane>
<tab-pane
:index=
"2"
name=
'tabviewpanel3'
tab=
'stabexpview_layouttabexppanel'
class=
''
v-if=
"authResourceObject['tabviewpanel3'].visabled"
:label=
"(h) =>
{
return h('div', [
h('span', '软件'),
h('Badge', {
props: {
count: undefined,
type: 'primary'
}
})
])
}" >
<view
_tabviewpanel3
:viewState=
"viewState"
:viewparams=
"JSON.parse(JSON.stringify(viewparams))"
:context=
"JSON.parse(JSON.stringify(context))"
:activeData=
"JSON.stringify(activeData)"
v-if=
"isInit.tabviewpanel3"
name=
"tabviewpanel3"
ref=
'tabviewpanel3'
@
viewpanelDatasChange =
"tabViewPanelDatasChange"
@
closeview=
"closeView($event)"
>
</view
_tabviewpanel3
>
</tab-pane>
</tabs>
</div>
</
template
>
<
script
lang=
'tsx'
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
,
Model
,
Inject
}
from
'vue-property-decorator'
;
import
{
CreateElement
}
from
'vue'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
ControlInterface
}
from
'@/interface/control'
;
import
{
UIActionTool
,
Util
,
ViewTool
}
from
'@/utils'
;
import
NavDataService
from
'@/service/app/navdata-service'
;
import
AppCenterService
from
"@service/app/app-center-service"
;
import
IBIZSample0003EntityService
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
STabExpView_layouttabexppanelService
from
'./stab-exp-view-layouttabexppanel-tabexppanel-service'
;
import
IBIZSample0003UIService
from
'@/uiservice/ibizsample0003/ibizsample0003-ui-service'
;
import
IBIZSample0003AuthService
from
'@/authservice/ibizsample0003/ibizsample0003-auth-service'
;
import
{
Environment
}
from
'@/environments/environment'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabexppanelBase
extends
Vue
implements
ControlInterface
{
/**
* 名称
*
* @type {string}
* @memberof STabExpView_layouttabexppanelBase
*/
@
Prop
()
public
name
?:
string
;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof STabExpView_layouttabexppanelBase
*/
@
Prop
()
public
viewState
!
:
Subject
<
ViewState
>
;
/**
* 应用上下文
*
* @type {*}
* @memberof STabExpView_layouttabexppanelBase
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof STabExpView_layouttabexppanelBase
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof STabExpView_layouttabexppanelBase
*/
public
viewStateEvent
:
Subscription
|
undefined
;
/**
* 获取部件类型
*
* @returns {string}
* @memberof STabExpView_layouttabexppanelBase
*/
public
getControlType
():
string
{
return
'TABEXPPANEL'
}
/**
* 计数器服务对象集合
*
* @type {Array<*>}
* @memberof STabExpView_layouttabexppanelBase
*/
public
counterServiceArray
:
Array
<
any
>
=
[];
/**
* 建构部件服务对象
*
* @type {STabExpView_layouttabexppanelService}
* @memberof STabExpView_layouttabexppanelBase
*/
public
service
:
STabExpView_layouttabexppanelService
=
new
STabExpView_layouttabexppanelService
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {IBIZSample0003Service}
* @memberof STabExpView_layouttabexppanelBase
*/
public
appEntityService
:
IBIZSample0003EntityService
=
new
IBIZSample0003EntityService
({
$store
:
this
.
$store
});
/**
* 转化数据
*
* @param {any} args
* @memberof STabExpView_layouttabexppanelBase
*/
public
transformData
(
args
:
any
)
{
let
_this
:
any
=
this
;
if
(
_this
.
service
&&
_this
.
service
.
handleRequestData
instanceof
Function
&&
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)){
return
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)[
'data'
];
}
}
/**
* 关闭视图
*
* @param {any} args
* @memberof STabExpView_layouttabexppanelBase
*/
public
closeView
(
args
:
any
):
void
{
let
_this
:
any
=
this
;
_this
.
$emit
(
'closeview'
,
[
args
]);
}
/**
* 计数器刷新
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
counterRefresh
(){
const
_this
:
any
=
this
;
if
(
_this
.
counterServiceArray
&&
_this
.
counterServiceArray
.
length
>
0
){
_this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
refreshData
&&
item
.
refreshData
instanceof
Function
){
item
.
refreshData
();
}
})
}
}
/**
* 实体权限服务对象
*
* @type {IBIZSample0003AuthService}
* @memberof TabExpViewtabexppanelBase
*/
public
appAuthService
:
IBIZSample0003AuthService
=
new
IBIZSample0003AuthService
();
/**
* 界面UI服务对象
*
* @type {IBIZSample0003UIService}
* @memberof STabExpView_layouttabexppanelBase
*/
public
appUIService
:
IBIZSample0003UIService
=
new
IBIZSample0003UIService
();
/**
* 是否初始化
*
* @returns {any}
* @memberof STabExpView_layouttabexppanelBase
*/
public
isInit
:
any
=
{
tabviewpanel
:
true
,
tabviewpanel2
:
false
,
tabviewpanel3
:
false
,
}
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof STabExpView_layouttabexppanelBase
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof STabExpView_layouttabexppanelBase
*/
public
getData
():
any
{
return
null
;
}
/**
* 从父传入的当前分页面板panel值
*
* @type {string}
* @memberof STabExpView_layouttabexppanelBase
*/
@
Prop
()
public
tabValue
?:
string
;
/**
* 值变化
*
* @param {*} newVal
* @param {*} oldVal
* @memberof STabExpView_layouttabexppanelBase
*/
@
Watch
(
'tabValue'
)
public
onValueChange
(
newVal
:
any
,
oldVal
:
any
)
{
this
.
tabPanelClick
(
newVal
);
}
/**
* 行为参数
*
* @public
* @type {*}
* @memberof STabExpView_layouttabexppanelBase
*/
public
action
:
any
=
''
;
/**
* 当前激活数据
*
* @public
* @type {*}
* @memberof STabExpView_layouttabexppanelBase
*/
public
activeData
:
any
=
{};
/**
* 分页面板权限标识存储对象
*
* @public
* @type {*}
* @memberof STabExpView_layouttabexppanelBase
*/
public
authResourceObject
:
any
=
{
'tabviewpanel'
:{
resourcetag
:
null
,
visabled
:
true
,
disabled
:
false
},
'tabviewpanel2'
:{
resourcetag
:
null
,
visabled
:
true
,
disabled
:
false
},
'tabviewpanel3'
:{
resourcetag
:
null
,
visabled
:
true
,
disabled
:
false
}};
/**
* 被激活的分页面板
*
* @type {string}
* @memberof STabExpView_layouttabexppanelBase
*/
public
activiedTabViewPanel
:
string
=
'tabviewpanel'
;
/**
* 计算分页面板权限
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
computedAuthPanel
(
data
:
any
){
if
(
!
data
||
Object
.
keys
(
data
).
length
===
0
){
return
;
}
if
(
this
.
authResourceObject
&&
Object
.
keys
(
this
.
authResourceObject
).
length
>
0
){
Object
.
keys
(
this
.
authResourceObject
).
forEach
((
key
:
string
)
=>
{
if
(
this
.
authResourceObject
[
key
]
&&
this
.
authResourceObject
[
key
][
'dataaccaction'
]){
let
tempUIAction
:
any
=
Util
.
deepCopy
(
this
.
authResourceObject
[
key
]);
let
result
:
any
[]
=
ViewTool
.
calcActionItemAuthState
(
data
,[
tempUIAction
],
this
.
appUIService
);
this
.
authResourceObject
[
key
].
visabled
=
this
.
computedPanelWithResource
(
key
,
tempUIAction
.
visabled
);
this
.
authResourceObject
[
key
].
disabled
=
this
.
computedPanelWithResource
(
key
,
tempUIAction
.
disabled
);
}
})
const
keys
:
any
=
Object
.
keys
(
this
.
authResourceObject
);
for
(
let
i
=
0
;
i
<
keys
.
length
;
i
++
){
if
(
this
.
authResourceObject
[
keys
[
i
]].
visabled
){
this
.
tabPanelClick
(
keys
[
i
]);
return
;
}
}
}
}
/**
* 合入统一资源权限
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
computedPanelWithResource
(
name
:
string
,
mainState
:
boolean
){
if
(
!
this
.
$store
.
getters
[
'authresource/getEnablePermissionValid'
])
return
mainState
===
false
?
false
:
true
;
if
(
!
this
.
authResourceObject
[
name
])
return
mainState
===
false
?
false
:
true
;
const
resourceAuth
:
boolean
=
this
.
appAuthService
.
getResourcePermission
(
this
.
authResourceObject
[
name
][
'resourcetag'
]);
return
!
resourceAuth
?
false
:
mainState
?
true
:
false
;
}
/**
* 分页视图面板数据变更
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
tabViewPanelDatasChange
(){
this
.
counterRefresh
();
}
/**
* vue 生命周期
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
afterCreated
(){
//设置分页导航srfparentdename和srfparentkey
if
(
this
.
context
.
ibizsample0003
){
Object
.
assign
(
this
.
context
,{
srfparentdename
:
'IBIZSample0003'
,
srfparentkey
:
this
.
context
.
ibizsample0003
})
}
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
!
Object
.
is
(
tag
,
this
.
name
))
{
return
;
}
if
(
Object
.
is
(
action
,
'loadmodel'
)){
this
.
activeData
=
data
;
this
.
computedAuthPanel
(
data
);
}
else
{
this
.
action
=
action
;
this
.
viewState
.
next
({
tag
:
this
.
activiedTabViewPanel
,
action
:
action
,
data
:
data
});
this
.
$forceUpdate
();
}
});
}
}
/**
* vue 生命周期
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
destroyed
()
{
this
.
afterDestroy
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof STabExpView_layouttabexppanelBase
*/
public
afterDestroy
()
{
if
(
this
.
viewStateEvent
)
{
this
.
viewStateEvent
.
unsubscribe
();
}
}
/**
* 分页面板选中
*
* @param {*} $event
* @returns
* @memberof STabExpView_layouttabexppanelBase
*/
public
tabPanelClick
(
$event
:
any
)
{
if
(
!
$event
)
{
return
;
}
this
.
isInit
=
[];
this
.
isInit
[
$event
]
=
true
;
if
(
!
this
.
viewState
)
{
return
;
}
this
.
activiedTabViewPanel
=
$event
;
this
.
viewState
.
next
({
tag
:
this
.
activiedTabViewPanel
,
action
:
this
.
action
,
data
:
this
.
activeData
});
}
}
</
script
>
<
style
lang=
'less'
>
@import './stab-exp-view-layouttabexppanel-tabexppanel.less';
</
style
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel-model.ts
0 → 100644
浏览文件 @
ed0752a5
/**
* STabExpView_layouttabexppanel 部件模型
*
* @export
* @class STabExpView_layouttabexppanelModel
*/
export
default
class
STabExpView_layouttabexppanelModel
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof STabExpView_layouttabexppanelModel
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'ibizsample0003name'
,
},
{
name
:
'memo'
,
},
{
name
:
'updatedate'
,
},
{
name
:
'field01'
,
},
{
name
:
'createdate'
,
},
{
name
:
'updateman'
,
},
{
name
:
'ibizsample0003'
,
prop
:
'ibizsample0003id'
,
},
{
name
:
'createman'
,
},
{
name
:
'pibizsample0003name'
,
},
{
name
:
'pibizsample0003id'
,
},
]
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel-service.ts
0 → 100644
浏览文件 @
ed0752a5
import
{
Http
,
Util
,
Errorlog
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
import
IBIZSample0003Service
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
STabExpView_layouttabexppanelModel
from
'./stab-exp-view-layouttabexppanel-tabexppanel-model'
;
/**
* STabExpView_layouttabexppanel 部件服务对象
*
* @export
* @class STabExpView_layouttabexppanelService
*/
export
default
class
STabExpView_layouttabexppanelService
extends
ControlService
{
/**
* 示例实体03服务对象
*
* @type {IBIZSample0003Service}
* @memberof STabExpView_layouttabexppanelService
*/
public
appEntityService
:
IBIZSample0003Service
=
new
IBIZSample0003Service
();
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof STabExpView_layouttabexppanelService
*/
public
setTempMode
(){
this
.
isTempMode
=
false
;
}
/**
* Creates an instance of STabExpView_layouttabexppanelService.
*
* @param {*} [opts={}]
* @memberof STabExpView_layouttabexppanelService
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
model
=
new
STabExpView_layouttabexppanelModel
();
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel.less
0 → 100644
浏览文件 @
ed0752a5
// this is less
.tabexppanel {
height: 100%;
>.ivu-tabs-bar {
margin-bottom: 0px;
}
>.ivu-tabs-content {
height: calc(100% - 36px);
padding: 4px !important;
.ivu-tabs-tabpane {
height: 100%;
}
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabexppanel-tabexppanel/stab-exp-view-layouttabexppanel-tabexppanel.vue
0 → 100644
浏览文件 @
ed0752a5
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
STabExpView_layouttabexppanelBase
from
'./stab-exp-view-layouttabexppanel-tabexppanel-base.vue'
;
import
view_tabviewpanel
from
'@widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel.vue'
;
import
view_tabviewpanel2
from
'@widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel.vue'
;
import
view_tabviewpanel3
from
'@widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel.vue'
;
@
Component
({
components
:
{
view_tabviewpanel
,
view_tabviewpanel2
,
view_tabviewpanel3
,
}
})
export
default
class
STabExpView_layouttabexppanel
extends
STabExpView_layouttabexppanelBase
{
}
</
script
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel-base.vue
0 → 100644
浏览文件 @
ed0752a5
<
template
>
<div
class=
'tabviewpanel'
style=
"height:100%;"
v-if =
'isActivied'
>
<ibizuniproduct-grid-view9
class=
'viewcontainer2'
:viewdata=
"viewdata"
:viewparam=
"viewparam"
@
viewload=
"viewDatasChange($event)"
:viewDefaultUsage=
"false"
>
</ibizuniproduct-grid-view9>
</div>
</
template
>
<
script
lang=
'tsx'
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
,
Model
,
Inject
}
from
'vue-property-decorator'
;
import
{
CreateElement
}
from
'vue'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
ControlInterface
}
from
'@/interface/control'
;
import
{
UIActionTool
,
Util
,
ViewTool
}
from
'@/utils'
;
import
NavDataService
from
'@/service/app/navdata-service'
;
import
AppCenterService
from
"@service/app/app-center-service"
;
import
IBIZSample0003EntityService
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
STabExpView_layouttabviewpanelService
from
'./stab-exp-view-layouttabviewpanel-tabviewpanel-service'
;
import
IBIZSample0003UIService
from
'@/uiservice/ibizsample0003/ibizsample0003-ui-service'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanelBase
extends
Vue
implements
ControlInterface
{
/**
* 名称
*
* @type {string}
* @memberof STabExpView_layouttabviewpanelBase
*/
@
Prop
()
public
name
?:
string
;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof STabExpView_layouttabviewpanelBase
*/
@
Prop
()
public
viewState
!
:
Subject
<
ViewState
>
;
/**
* 应用上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanelBase
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanelBase
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
viewStateEvent
:
Subscription
|
undefined
;
/**
* 获取部件类型
*
* @returns {string}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
getControlType
():
string
{
return
'TABVIEWPANEL'
}
/**
* 建构部件服务对象
*
* @type {STabExpView_layouttabviewpanelService}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
service
:
STabExpView_layouttabviewpanelService
=
new
STabExpView_layouttabviewpanelService
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {IBIZSample0003Service}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
appEntityService
:
IBIZSample0003EntityService
=
new
IBIZSample0003EntityService
({
$store
:
this
.
$store
});
/**
* 转化数据
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanelBase
*/
public
transformData
(
args
:
any
)
{
let
_this
:
any
=
this
;
if
(
_this
.
service
&&
_this
.
service
.
handleRequestData
instanceof
Function
&&
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)){
return
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)[
'data'
];
}
}
/**
* 关闭视图
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanelBase
*/
public
closeView
(
args
:
any
):
void
{
let
_this
:
any
=
this
;
_this
.
$emit
(
'closeview'
,
[
args
]);
}
/**
* 计数器刷新
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
counterRefresh
(){
const
_this
:
any
=
this
;
if
(
_this
.
counterServiceArray
&&
_this
.
counterServiceArray
.
length
>
0
){
_this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
refreshData
&&
item
.
refreshData
instanceof
Function
){
item
.
refreshData
();
}
})
}
}
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
getData
():
any
{
return
null
;
}
/**
* 是否被激活
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
isActivied
:
boolean
=
true
;
/**
* 当前激活数据
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanelBase
*/
@
Prop
()
public
activeData
?:
any
;
/**
* 局部上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
localContext
:
any
=
null
;
/**
* 局部视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
localViewParam
:
any
=
null
;
/**
* 传入上下文
*
* @type {string}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
viewdata
:
string
=
JSON
.
stringify
(
this
.
context
);
/**
* 传入视图参数
*
* @type {string}
* @memberof PickupViewpickupviewpanel
*/
public
viewparam
:
string
=
JSON
.
stringify
(
this
.
viewparams
);
/**
* 视图面板过滤项
*
* @type {string}
* @memberof STabExpView_layouttabviewpanelBase
*/
public
navfilter
:
string
=
""
;
/**
* vue 生命周期
*
* @returns
* @memberof STabExpView_layouttabviewpanelBase
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
afterCreated
(){
this
.
initNavParam
();
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
!
Object
.
is
(
tag
,
this
.
name
))
{
return
;
}
this
.
$forceUpdate
();
this
.
$nextTick
(()
=>
{
this
.
initNavParam
();
});
});
}
}
/**
* 初始化导航参数
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
initNavParam
(){
if
(
!
Object
.
is
(
this
.
navfilter
,
""
)){
Object
.
assign
(
this
.
viewparams
,{[
this
.
navfilter
]:
this
.
context
[
'ibizsample0003'
]})
}
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localContext
);
Object
.
assign
(
this
.
context
,
_context
);
}
if
(
this
.
localViewParam
&&
Object
.
keys
(
this
.
localViewParam
).
length
>
0
){
let
_param
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localViewParam
);
Object
.
assign
(
this
.
viewparams
,
_param
);
}
this
.
viewdata
=
JSON
.
stringify
(
this
.
context
);
this
.
viewparam
=
JSON
.
stringify
(
this
.
viewparams
);
}
/**
* 视图数据变化
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
viewDatasChange
(
$event
:
any
){
this
.
$emit
(
'viewpanelDatasChange'
,
$event
);
}
/**
* vue 生命周期
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
destroyed
()
{
this
.
afterDestroy
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof STabExpView_layouttabviewpanelBase
*/
public
afterDestroy
()
{
if
(
this
.
viewStateEvent
)
{
this
.
viewStateEvent
.
unsubscribe
();
}
}
}
</
script
>
<
style
lang=
'less'
>
@import './stab-exp-view-layouttabviewpanel-tabviewpanel.less';
</
style
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel-model.ts
0 → 100644
浏览文件 @
ed0752a5
/**
* STabExpView_layouttabviewpanel 部件模型
*
* @export
* @class STabExpView_layouttabviewpanelModel
*/
export
default
class
STabExpView_layouttabviewpanelModel
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanelModel
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'ibizsample0003name'
,
},
{
name
:
'memo'
,
},
{
name
:
'updatedate'
,
},
{
name
:
'field01'
,
},
{
name
:
'createdate'
,
},
{
name
:
'updateman'
,
},
{
name
:
'ibizsample0003'
,
prop
:
'ibizsample0003id'
,
},
{
name
:
'createman'
,
},
{
name
:
'pibizsample0003name'
,
},
{
name
:
'pibizsample0003id'
,
},
]
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel-service.ts
0 → 100644
浏览文件 @
ed0752a5
import
{
Http
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
/**
* STabExpView_layouttabviewpanel 部件服务对象
*
* @export
* @class STabExpView_layouttabviewpanelService
*/
export
default
class
STabExpView_layouttabviewpanelService
extends
ControlService
{
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel.less
0 → 100644
浏览文件 @
ed0752a5
// this is less
.tabviewpanel{
>.view-container {
height: 100%;
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel-tabviewpanel/stab-exp-view-layouttabviewpanel-tabviewpanel.vue
0 → 100644
浏览文件 @
ed0752a5
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
STabExpView_layouttabviewpanelBase
from
'./stab-exp-view-layouttabviewpanel-tabviewpanel-base.vue'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanel
extends
STabExpView_layouttabviewpanelBase
{
}
</
script
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel-base.vue
0 → 100644
浏览文件 @
ed0752a5
<
template
>
<div
class=
'tabviewpanel'
style=
"height:100%;"
v-if =
'isActivied'
>
<ibizhardware-grid-view9
class=
'viewcontainer2'
:viewdata=
"viewdata"
:viewparam=
"viewparam"
@
viewload=
"viewDatasChange($event)"
:viewDefaultUsage=
"false"
>
</ibizhardware-grid-view9>
</div>
</
template
>
<
script
lang=
'tsx'
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
,
Model
,
Inject
}
from
'vue-property-decorator'
;
import
{
CreateElement
}
from
'vue'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
ControlInterface
}
from
'@/interface/control'
;
import
{
UIActionTool
,
Util
,
ViewTool
}
from
'@/utils'
;
import
NavDataService
from
'@/service/app/navdata-service'
;
import
AppCenterService
from
"@service/app/app-center-service"
;
import
IBIZSample0003EntityService
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
STabExpView_layouttabviewpanel2Service
from
'./stab-exp-view-layouttabviewpanel2-tabviewpanel-service'
;
import
IBIZSample0003UIService
from
'@/uiservice/ibizsample0003/ibizsample0003-ui-service'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanel2Base
extends
Vue
implements
ControlInterface
{
/**
* 名称
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel2Base
*/
@
Prop
()
public
name
?:
string
;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof STabExpView_layouttabviewpanel2Base
*/
@
Prop
()
public
viewState
!
:
Subject
<
ViewState
>
;
/**
* 应用上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel2Base
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel2Base
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
viewStateEvent
:
Subscription
|
undefined
;
/**
* 获取部件类型
*
* @returns {string}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
getControlType
():
string
{
return
'TABVIEWPANEL'
}
/**
* 建构部件服务对象
*
* @type {STabExpView_layouttabviewpanel2Service}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
service
:
STabExpView_layouttabviewpanel2Service
=
new
STabExpView_layouttabviewpanel2Service
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {IBIZSample0003Service}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
appEntityService
:
IBIZSample0003EntityService
=
new
IBIZSample0003EntityService
({
$store
:
this
.
$store
});
/**
* 转化数据
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
transformData
(
args
:
any
)
{
let
_this
:
any
=
this
;
if
(
_this
.
service
&&
_this
.
service
.
handleRequestData
instanceof
Function
&&
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)){
return
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)[
'data'
];
}
}
/**
* 关闭视图
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
closeView
(
args
:
any
):
void
{
let
_this
:
any
=
this
;
_this
.
$emit
(
'closeview'
,
[
args
]);
}
/**
* 计数器刷新
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
counterRefresh
(){
const
_this
:
any
=
this
;
if
(
_this
.
counterServiceArray
&&
_this
.
counterServiceArray
.
length
>
0
){
_this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
refreshData
&&
item
.
refreshData
instanceof
Function
){
item
.
refreshData
();
}
})
}
}
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
getData
():
any
{
return
null
;
}
/**
* 是否被激活
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
isActivied
:
boolean
=
true
;
/**
* 当前激活数据
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanel2Base
*/
@
Prop
()
public
activeData
?:
any
;
/**
* 局部上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
localContext
:
any
=
null
;
/**
* 局部视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
localViewParam
:
any
=
null
;
/**
* 传入上下文
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
viewdata
:
string
=
JSON
.
stringify
(
this
.
context
);
/**
* 传入视图参数
*
* @type {string}
* @memberof PickupViewpickupviewpanel
*/
public
viewparam
:
string
=
JSON
.
stringify
(
this
.
viewparams
);
/**
* 视图面板过滤项
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
navfilter
:
string
=
""
;
/**
* vue 生命周期
*
* @returns
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
afterCreated
(){
this
.
initNavParam
();
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
!
Object
.
is
(
tag
,
this
.
name
))
{
return
;
}
this
.
$forceUpdate
();
this
.
$nextTick
(()
=>
{
this
.
initNavParam
();
});
});
}
}
/**
* 初始化导航参数
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
initNavParam
(){
if
(
!
Object
.
is
(
this
.
navfilter
,
""
)){
Object
.
assign
(
this
.
viewparams
,{[
this
.
navfilter
]:
this
.
context
[
'ibizsample0003'
]})
}
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localContext
);
Object
.
assign
(
this
.
context
,
_context
);
}
if
(
this
.
localViewParam
&&
Object
.
keys
(
this
.
localViewParam
).
length
>
0
){
let
_param
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localViewParam
);
Object
.
assign
(
this
.
viewparams
,
_param
);
}
this
.
viewdata
=
JSON
.
stringify
(
this
.
context
);
this
.
viewparam
=
JSON
.
stringify
(
this
.
viewparams
);
}
/**
* 视图数据变化
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
viewDatasChange
(
$event
:
any
){
this
.
$emit
(
'viewpanelDatasChange'
,
$event
);
}
/**
* vue 生命周期
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
destroyed
()
{
this
.
afterDestroy
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof STabExpView_layouttabviewpanel2Base
*/
public
afterDestroy
()
{
if
(
this
.
viewStateEvent
)
{
this
.
viewStateEvent
.
unsubscribe
();
}
}
}
</
script
>
<
style
lang=
'less'
>
@import './stab-exp-view-layouttabviewpanel2-tabviewpanel.less';
</
style
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel-model.ts
0 → 100644
浏览文件 @
ed0752a5
/**
* STabExpView_layouttabviewpanel2 部件模型
*
* @export
* @class STabExpView_layouttabviewpanel2Model
*/
export
default
class
STabExpView_layouttabviewpanel2Model
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanel2Model
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'ibizsample0003name'
,
},
{
name
:
'memo'
,
},
{
name
:
'updatedate'
,
},
{
name
:
'field01'
,
},
{
name
:
'createdate'
,
},
{
name
:
'updateman'
,
},
{
name
:
'ibizsample0003'
,
prop
:
'ibizsample0003id'
,
},
{
name
:
'createman'
,
},
{
name
:
'pibizsample0003name'
,
},
{
name
:
'pibizsample0003id'
,
},
]
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel-service.ts
0 → 100644
浏览文件 @
ed0752a5
import
{
Http
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
/**
* STabExpView_layouttabviewpanel2 部件服务对象
*
* @export
* @class STabExpView_layouttabviewpanel2Service
*/
export
default
class
STabExpView_layouttabviewpanel2Service
extends
ControlService
{
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel.less
0 → 100644
浏览文件 @
ed0752a5
// this is less
.tabviewpanel{
>.view-container {
height: 100%;
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel2-tabviewpanel/stab-exp-view-layouttabviewpanel2-tabviewpanel.vue
0 → 100644
浏览文件 @
ed0752a5
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
STabExpView_layouttabviewpanel2Base
from
'./stab-exp-view-layouttabviewpanel2-tabviewpanel-base.vue'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanel2
extends
STabExpView_layouttabviewpanel2Base
{
}
</
script
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel-base.vue
0 → 100644
浏览文件 @
ed0752a5
<
template
>
<div
class=
'tabviewpanel'
style=
"height:100%;"
v-if =
'isActivied'
>
<ibizsoftware-suit-grid-view9
class=
'viewcontainer2'
:viewdata=
"viewdata"
:viewparam=
"viewparam"
@
viewload=
"viewDatasChange($event)"
:viewDefaultUsage=
"false"
>
</ibizsoftware-suit-grid-view9>
</div>
</
template
>
<
script
lang=
'tsx'
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
,
Model
,
Inject
}
from
'vue-property-decorator'
;
import
{
CreateElement
}
from
'vue'
;
import
{
Subject
,
Subscription
}
from
'rxjs'
;
import
{
ControlInterface
}
from
'@/interface/control'
;
import
{
UIActionTool
,
Util
,
ViewTool
}
from
'@/utils'
;
import
NavDataService
from
'@/service/app/navdata-service'
;
import
AppCenterService
from
"@service/app/app-center-service"
;
import
IBIZSample0003EntityService
from
'@/service/ibizsample0003/ibizsample0003-service'
;
import
STabExpView_layouttabviewpanel3Service
from
'./stab-exp-view-layouttabviewpanel3-tabviewpanel-service'
;
import
IBIZSample0003UIService
from
'@/uiservice/ibizsample0003/ibizsample0003-ui-service'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanel3Base
extends
Vue
implements
ControlInterface
{
/**
* 名称
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel3Base
*/
@
Prop
()
public
name
?:
string
;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof STabExpView_layouttabviewpanel3Base
*/
@
Prop
()
public
viewState
!
:
Subject
<
ViewState
>
;
/**
* 应用上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel3Base
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel3Base
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
viewStateEvent
:
Subscription
|
undefined
;
/**
* 获取部件类型
*
* @returns {string}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
getControlType
():
string
{
return
'TABVIEWPANEL'
}
/**
* 建构部件服务对象
*
* @type {STabExpView_layouttabviewpanel3Service}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
service
:
STabExpView_layouttabviewpanel3Service
=
new
STabExpView_layouttabviewpanel3Service
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {IBIZSample0003Service}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
appEntityService
:
IBIZSample0003EntityService
=
new
IBIZSample0003EntityService
({
$store
:
this
.
$store
});
/**
* 转化数据
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
transformData
(
args
:
any
)
{
let
_this
:
any
=
this
;
if
(
_this
.
service
&&
_this
.
service
.
handleRequestData
instanceof
Function
&&
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)){
return
_this
.
service
.
handleRequestData
(
'transform'
,
_this
.
context
,
args
)[
'data'
];
}
}
/**
* 关闭视图
*
* @param {any} args
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
closeView
(
args
:
any
):
void
{
let
_this
:
any
=
this
;
_this
.
$emit
(
'closeview'
,
[
args
]);
}
/**
* 计数器刷新
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
counterRefresh
(){
const
_this
:
any
=
this
;
if
(
_this
.
counterServiceArray
&&
_this
.
counterServiceArray
.
length
>
0
){
_this
.
counterServiceArray
.
forEach
((
item
:
any
)
=>
{
if
(
item
.
refreshData
&&
item
.
refreshData
instanceof
Function
){
item
.
refreshData
();
}
})
}
}
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
getData
():
any
{
return
null
;
}
/**
* 是否被激活
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
isActivied
:
boolean
=
true
;
/**
* 当前激活数据
*
* @type {boolean}
* @memberof STabExpView_layouttabviewpanel3Base
*/
@
Prop
()
public
activeData
?:
any
;
/**
* 局部上下文
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
localContext
:
any
=
null
;
/**
* 局部视图参数
*
* @type {*}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
localViewParam
:
any
=
null
;
/**
* 传入上下文
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
viewdata
:
string
=
JSON
.
stringify
(
this
.
context
);
/**
* 传入视图参数
*
* @type {string}
* @memberof PickupViewpickupviewpanel
*/
public
viewparam
:
string
=
JSON
.
stringify
(
this
.
viewparams
);
/**
* 视图面板过滤项
*
* @type {string}
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
navfilter
:
string
=
""
;
/**
* vue 生命周期
*
* @returns
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
created
()
{
this
.
afterCreated
();
}
/**
* 执行created后的逻辑
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
afterCreated
(){
this
.
initNavParam
();
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
!
Object
.
is
(
tag
,
this
.
name
))
{
return
;
}
this
.
$forceUpdate
();
this
.
$nextTick
(()
=>
{
this
.
initNavParam
();
});
});
}
}
/**
* 初始化导航参数
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
initNavParam
(){
if
(
!
Object
.
is
(
this
.
navfilter
,
""
)){
Object
.
assign
(
this
.
viewparams
,{[
this
.
navfilter
]:
this
.
context
[
'ibizsample0003'
]})
}
if
(
this
.
localContext
&&
Object
.
keys
(
this
.
localContext
).
length
>
0
){
let
_context
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localContext
);
Object
.
assign
(
this
.
context
,
_context
);
}
if
(
this
.
localViewParam
&&
Object
.
keys
(
this
.
localViewParam
).
length
>
0
){
let
_param
:
any
=
this
.
$util
.
computedNavData
(
this
.
activeData
?
JSON
.
parse
(
this
.
activeData
):{},
this
.
context
,
this
.
viewparams
,
this
.
localViewParam
);
Object
.
assign
(
this
.
viewparams
,
_param
);
}
this
.
viewdata
=
JSON
.
stringify
(
this
.
context
);
this
.
viewparam
=
JSON
.
stringify
(
this
.
viewparams
);
}
/**
* 视图数据变化
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
viewDatasChange
(
$event
:
any
){
this
.
$emit
(
'viewpanelDatasChange'
,
$event
);
}
/**
* vue 生命周期
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
destroyed
()
{
this
.
afterDestroy
();
}
/**
* 执行destroyed后的逻辑
*
* @memberof STabExpView_layouttabviewpanel3Base
*/
public
afterDestroy
()
{
if
(
this
.
viewStateEvent
)
{
this
.
viewStateEvent
.
unsubscribe
();
}
}
}
</
script
>
<
style
lang=
'less'
>
@import './stab-exp-view-layouttabviewpanel3-tabviewpanel.less';
</
style
>
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel-model.ts
0 → 100644
浏览文件 @
ed0752a5
/**
* STabExpView_layouttabviewpanel3 部件模型
*
* @export
* @class STabExpView_layouttabviewpanel3Model
*/
export
default
class
STabExpView_layouttabviewpanel3Model
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof STabExpView_layouttabviewpanel3Model
*/
public
getDataItems
():
any
[]
{
return
[
{
name
:
'ibizsample0003name'
,
},
{
name
:
'memo'
,
},
{
name
:
'updatedate'
,
},
{
name
:
'field01'
,
},
{
name
:
'createdate'
,
},
{
name
:
'updateman'
,
},
{
name
:
'ibizsample0003'
,
prop
:
'ibizsample0003id'
,
},
{
name
:
'createman'
,
},
{
name
:
'pibizsample0003name'
,
},
{
name
:
'pibizsample0003id'
,
},
]
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel-service.ts
0 → 100644
浏览文件 @
ed0752a5
import
{
Http
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
/**
* STabExpView_layouttabviewpanel3 部件服务对象
*
* @export
* @class STabExpView_layouttabviewpanel3Service
*/
export
default
class
STabExpView_layouttabviewpanel3Service
extends
ControlService
{
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel.less
0 → 100644
浏览文件 @
ed0752a5
// this is less
.tabviewpanel{
>.view-container {
height: 100%;
}
}
\ No newline at end of file
app_Web/src/widgets/ibizsample0003/stab-exp-view-layouttabviewpanel3-tabviewpanel/stab-exp-view-layouttabviewpanel3-tabviewpanel.vue
0 → 100644
浏览文件 @
ed0752a5
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
STabExpView_layouttabviewpanel3Base
from
'./stab-exp-view-layouttabviewpanel3-tabviewpanel-base.vue'
;
@
Component
({
components
:
{
}
})
export
default
class
STabExpView_layouttabviewpanel3
extends
STabExpView_layouttabviewpanel3Base
{
}
</
script
>
\ No newline at end of file
demo-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
ed0752a5
...
...
@@ -172,7 +172,7 @@
<!--输出实体[IBIZBOOK]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-
73
-7"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-
84
-7"
>
<createTable
tableName=
"T_IBIZBOOK"
>
<column
name=
"CREATEMAN"
remarks=
""
type=
"VARCHAR(60)"
>
</column>
...
...
@@ -340,7 +340,7 @@
<!--输出实体[IBIZORDER]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizorder-
68
-14"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizorder-
75
-14"
>
<createTable
tableName=
"T_IBIZORDER"
>
<column
name=
"TP"
remarks=
""
type=
"TEXT(1048576)"
>
</column>
...
...
@@ -640,7 +640,7 @@
<!--输出实体[IBIZSAMPLE0003]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0003-
1
-21"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0003-
3
-21"
>
<createTable
tableName=
"T_IBIZSAMPLE0003"
>
<column
name=
"IBIZSAMPLE0003NAME"
remarks=
""
type=
"VARCHAR(200)"
>
</column>
...
...
demo-core/src/main/resources/liquibase/view.xml
浏览文件 @
ed0752a5
...
...
@@ -37,7 +37,7 @@
</createView>
</changeSet>
<!--输出实体[IBIZORDER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-
68
-8"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-
75
-8"
runOnChange=
"true"
>
<createView
fullDefinition=
"false"
replaceIfExists=
"true"
viewName=
"V_IBIZORDER"
>
<![CDATA[ SELECT t1.[AMOUNT], t1.[CREATEDATE], t1.[CREATEMAN], t1.[DETAILNUM], t1.[IBIZCUSTOMERID], t11.[IBIZCUSTOMERNAME], t1.[IBIZORDERID], t1.[IBIZORDERNAME], t1.[MEMO], t1.[ORDERSTATE], t1.[ORDERTIME], t1.[ORDERTYPE], t1.[ORDERUID], t1.[UPDATEDATE], t1.[UPDATEMAN], t1.[WFINSTANCEID], t1.[WFSTATE], t1.[WFSTEP] FROM [T_IBIZORDER] t1 LEFT JOIN T_IBIZCUSTOMER t11 ON t1.IBIZCUSTOMERID = t11.IBIZCUSTOMERID ]]>
</createView>
...
...
@@ -79,7 +79,7 @@
</createView>
</changeSet>
<!--输出实体[IBIZSAMPLE0003]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0003-
1
-15"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0003-
3
-15"
runOnChange=
"true"
>
<createView
fullDefinition=
"false"
replaceIfExists=
"true"
viewName=
"V_IBIZSAMPLE0003"
>
<![CDATA[ SELECT t1.[CREATEDATE], t1.[CREATEMAN], t1.[FIELD01], t1.[IBIZSAMPLE0003ID], t1.[IBIZSAMPLE0003NAME], t1.[MEMO], t1.[PIBIZSAMPLE0003ID], t11.[IBIZSAMPLE0003NAME] AS [PIBIZSAMPLE0003NAME], t1.[UPDATEDATE], t1.[UPDATEMAN] FROM [T_IBIZSAMPLE0003] t1 LEFT JOIN T_IBIZSAMPLE0003 t11 ON t1.PIBIZSAMPLE0003ID = t11.IBIZSAMPLE0003ID ]]>
</createView>
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录