Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
功
功能演示系统
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
示例
功能演示系统
提交
1e2075ea
提交
1e2075ea
编写于
11月 04, 2022
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ShineKOT 发布系统代码 [后台服务,演示应用]
上级
00f5f7dd
变更
42
显示空白字符变更
内嵌
并排
正在显示
42 个修改的文件
包含
3323 行增加
和
539 行删除
+3323
-539
ibizbookdashboard-view-layout-base.vue
...hboard-view-layout/ibizbookdashboard-view-layout-base.vue
+76
-5
ibizbookinter-func-edit-view-layout-base.vue
...-view-layout/ibizbookinter-func-edit-view-layout-base.vue
+76
-5
ibizbookoption-view-layout-base.vue
...ookoption-view-layout/ibizbookoption-view-layout-base.vue
+76
-5
ibizbooktest-clcalendar-view-base.vue
...est-clcalendar-view/ibizbooktest-clcalendar-view-base.vue
+76
-5
ibizbooktest-cldata-view-base.vue
...bizbooktest-cldata-view/ibizbooktest-cldata-view-base.vue
+76
-5
ibizbooktest-cllist-view-base.vue
...bizbooktest-cllist-view/ibizbooktest-cllist-view-base.vue
+76
-5
ibizbooktest-cltree-view-base.vue
...bizbooktest-cltree-view/ibizbooktest-cltree-view-base.vue
+76
-5
ibizbookusr2-medit-view9-base.vue
...bizbookusr2-medit-view9/ibizbookusr2-medit-view9-base.vue
+246
-29
ibizbookusr2-medit-view9.less
...le/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.less
+2
-7
ibizbookusr2-medit-view9.vue
...ple/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.vue
+2
-0
ibizbookwizard-view-layout-base.vue
...ookwizard-view-layout/ibizbookwizard-view-layout-base.vue
+76
-5
ibizcustomer-media-test-edit-view-base.vue
...test-edit-view/ibizcustomer-media-test-edit-view-base.vue
+76
-5
ibizorder-gantt-view-base.vue
...sample/ibizorder-gantt-view/ibizorder-gantt-view-base.vue
+236
-20
ibizorder-gantt-view.less
...ges/sample/ibizorder-gantt-view/ibizorder-gantt-view.less
+3
-12
ibizorder-sedit-view2-layout-base.vue
...-sedit-view2-layout/ibizorder-sedit-view2-layout-base.vue
+76
-5
ibizorder-sedit-view3-layout-base.vue
...-sedit-view3-layout/ibizorder-sedit-view3-layout-base.vue
+76
-5
ibizorder-sedit-view4-layout-base.vue
...-sedit-view4-layout/ibizorder-sedit-view4-layout-base.vue
+76
-5
ibizorder-test-clchart-view-base.vue
...er-test-clchart-view/ibizorder-test-clchart-view-base.vue
+76
-5
ibizorder-test-cledit-view2-base.vue
...er-test-cledit-view2/ibizorder-test-cledit-view2-base.vue
+76
-5
ibizorder-test-cltree-exp-view-base.vue
...t-cltree-exp-view/ibizorder-test-cltree-exp-view-base.vue
+76
-5
ibizorder-test-custom-layout-panel-grid-exp-view-base.vue
...ibizorder-test-custom-layout-panel-grid-exp-view-base.vue
+76
-5
ibizorder-usr2-grid-view-base.vue
...bizorder-usr2-grid-view/ibizorder-usr2-grid-view-base.vue
+76
-5
ibizsample0003-stab-exp-view-layout-base.vue
...-view-layout/ibizsample0003-stab-exp-view-layout-base.vue
+76
-5
index-base.vue
app_Web/src/pages/sample/index/index-base.vue
+76
-5
app-index-view-base.vue
.../src/pages/ungroup/app-index-view/app-index-view-base.vue
+76
-5
app-login-view-base.vue
.../src/pages/ungroup/app-login-view/app-login-view-base.vue
+76
-5
-searchbar-base.vue
app_Web/src/widgets/ibizbook/-searchbar/-searchbar-base.vue
+525
-0
-searchbar-model.ts
app_Web/src/widgets/ibizbook/-searchbar/-searchbar-model.ts
+21
-0
-searchbar-service.ts
...Web/src/widgets/ibizbook/-searchbar/-searchbar-service.ts
+99
-0
-searchbar.less
app_Web/src/widgets/ibizbook/-searchbar/-searchbar.less
+21
-0
-searchbar.vue
app_Web/src/widgets/ibizbook/-searchbar/-searchbar.vue
+14
-0
default-searchform-base.vue
...s/ibizbook/default-searchform/default-searchform-base.vue
+2
-2
main-form-base.vue
app_Web/src/widgets/ibizbook/main-form/main-form-base.vue
+5
-5
Usr.json
...SSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSGANTTS/Usr.json
+20
-20
.json
...SYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json
+15
-0
TreeTable.json
.../PSAPPDATAENTITIES/IBIZBOOK/PSTREEGRIDICES/TreeTable.json
+8
-8
IBIZBOOKGanttView.json
...temodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKGanttView.json
+20
-20
IBIZBOOKTreeGridExView.json
...el/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKTreeGridExView.json
+8
-8
IBIZBOOKUsr2MEditView9.json
...el/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKUsr2MEditView9.json
+401
-292
IBIZOrderGanttView.json
...emodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZOrderGanttView.json
+70
-2
h2_table.xml
demo-core/src/main/resources/liquibase/h2_table.xml
+5
-5
view.xml
demo-core/src/main/resources/liquibase/view.xml
+4
-4
未找到文件。
app_Web/src/pages/sample/ibizbookdashboard-view-layout/ibizbookdashboard-view-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -248,6 +248,15 @@ export default class IBIZBOOKDashboardView_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKDashboardView_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -261,7 +270,7 @@ export default class IBIZBOOKDashboardView_layoutBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
0
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_scroll1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -345,6 +354,68 @@ export default class IBIZBOOKDashboardView_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKDashboardView_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -352,10 +423,10 @@ export default class IBIZBOOKDashboardView_layoutBase extends Vue {
* @memberof IBIZBOOKDashboardView_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbookinter-func-edit-view-layout/ibizbookinter-func-edit-view-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -325,6 +325,15 @@ export default class IBIZBOOKInterFuncEditView_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKInterFuncEditView_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -342,7 +351,7 @@ export default class IBIZBOOKInterFuncEditView_layoutBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container3'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -430,6 +439,68 @@ export default class IBIZBOOKInterFuncEditView_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKInterFuncEditView_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -437,10 +508,10 @@ export default class IBIZBOOKInterFuncEditView_layoutBase extends Vue {
* @memberof IBIZBOOKInterFuncEditView_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbookoption-view-layout/ibizbookoption-view-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -305,6 +305,15 @@ export default class IBIZBOOKOptionView_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKOptionView_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -324,7 +333,7 @@ export default class IBIZBOOKOptionView_layoutBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'分组标题'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
'FULL'
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'form'
,
'container_grid1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -414,6 +423,68 @@ export default class IBIZBOOKOptionView_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKOptionView_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -421,10 +492,10 @@ export default class IBIZBOOKOptionView_layoutBase extends Vue {
* @memberof IBIZBOOKOptionView_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
if
(
Object
.
is
(
name
,
'button_openview2'
))
{
_this
.
panel_Usr1104773172_button_openview2_click
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
undefined
);
...
...
app_Web/src/pages/sample/ibizbooktest-clcalendar-view/ibizbooktest-clcalendar-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -270,6 +270,15 @@ export default class IBIZBOOKTestCLCalendarViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKTestCLCalendarViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -285,7 +294,7 @@ export default class IBIZBOOKTestCLCalendarViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container2'
,
'container_grid1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -371,6 +380,68 @@ export default class IBIZBOOKTestCLCalendarViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKTestCLCalendarViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -378,10 +449,10 @@ export default class IBIZBOOKTestCLCalendarViewBase extends Vue {
* @memberof IBIZBOOKTestCLCalendarViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbooktest-cldata-view/ibizbooktest-cldata-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -405,6 +405,15 @@ export default class IBIZBOOKTestCLDataViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKTestCLDataViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -425,7 +434,7 @@ export default class IBIZBOOKTestCLDataViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container4'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -516,6 +525,68 @@ export default class IBIZBOOKTestCLDataViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKTestCLDataViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -523,10 +594,10 @@ export default class IBIZBOOKTestCLDataViewBase extends Vue {
* @memberof IBIZBOOKTestCLDataViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbooktest-cllist-view/ibizbooktest-cllist-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -405,6 +405,15 @@ export default class IBIZBOOKTestCLListViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKTestCLListViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -425,7 +434,7 @@ export default class IBIZBOOKTestCLListViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container5'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -516,6 +525,68 @@ export default class IBIZBOOKTestCLListViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKTestCLListViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -523,10 +594,10 @@ export default class IBIZBOOKTestCLListViewBase extends Vue {
* @memberof IBIZBOOKTestCLListViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbooktest-cltree-view/ibizbooktest-cltree-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -271,6 +271,15 @@ export default class IBIZBOOKTestCLTreeViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKTestCLTreeViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -286,7 +295,7 @@ export default class IBIZBOOKTestCLTreeViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container2'
,
'container_grid1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -372,6 +381,68 @@ export default class IBIZBOOKTestCLTreeViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKTestCLTreeViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -379,10 +450,10 @@ export default class IBIZBOOKTestCLTreeViewBase extends Vue {
* @memberof IBIZBOOKTestCLTreeViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9-base.vue
浏览文件 @
1e2075ea
<
template
>
<div
class=
"view-container demeditview9 ibizbookusr2-medit-view9"
>
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizbookusr2meditview9"
></app-studioaction>
<card
class=
'view-card view-no-caption view-no-toolbar'
:disHover=
"true"
:padding=
"0"
:bordered=
"false"
>
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup35'
viewname=
'ibizbookusr2meditview9'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"app-view-layout ibizbookusr2-medit-view9"
style=
"height: '100%'; width: '100%';'display': 'flex'; 'flex-direction': 'column';"
>
<app-standard-container
name=
"page_container"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
container_grid1
>
<app-simpleflex-container
name=
"container_grid1"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
container1
>
<app-simpleflex-container
name=
"container1"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
view_pagecaption
>
<app-preset-caption
name=
"view_pagecaption"
:layoutModelDetails=
"layoutModelDetails"
>
实体多表单编辑视图
</app-preset-caption>
</
template
>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<
template
#
container2
>
<app-standard-container
name=
"container2"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
meditviewpanel
>
<app-ctrl-pos
name=
"meditviewpanel"
:layoutModelDetails=
"layoutModelDetails"
>
<view
_meditviewpanel
:viewState=
"viewState"
:viewparams=
"viewparams"
...
...
@@ -24,10 +33,13 @@
name=
"meditviewpanel"
ref=
'meditviewpanel'
@
closeview=
"closeView($event)"
>
</view
_meditviewpanel
>
</view
_meditviewpanel
>
</app-ctrl-pos>
</
template
>
</app-standard-container>
</template>
</app-standard-container>
</div>
</card>
</div>
</template>
<
script
lang=
'tsx'
>
...
...
@@ -40,6 +52,7 @@ import IBIZBOOKAuthService from '@/authservice/ibizbook/ibizbook-auth-service';
import
IBIZBOOKUIService
from
'@/uiservice/ibizbook/ibizbook-ui-service'
;
import
{
PanelContainerModel
,
PanelRawitemModel
,
PanelFieldModel
,
PanelControlModel
,
PanelButtonModel
,
PanelUserControlModel
,
PanelTabPanelModel
,
PanelTabPageModel
,
PanelCtrlPosModel
}
from
'@/model/panel-detail'
;
@
Component
({
...
...
@@ -209,6 +222,7 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
*/
public
containerModel
:
any
=
{
view_meditviewpanel
:
{
name
:
'meditviewpanel'
,
type
:
'MULTIEDITVIEWPANEL'
},
view_searchbar
:
{
name
:
'searchbar'
,
type
:
'SEARCHBAR'
},
};
/**
...
...
@@ -236,6 +250,209 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
rootLayoutDetailNames
:
string
[]
=
[
'page_container'
];
/**
* 视图布局数据
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutModelDetails
:
any
=
{
view_pagecaption
:
new
PanelFieldModel
({
name
:
'view_pagecaption'
,
caption
:
'页面标题'
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'FIELD'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container1'
,
panel
:
this
,
fieldState
:
'0'
,
predefinedType
:
'VIEW_PAGECAPTION'
,
}),
container1
:
new
PanelContainerModel
({
name
:
'container1'
,
caption
:
'面板容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
12
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container_grid1'
,
panel
:
this
,
details
:[
'view_pagecaption'
]
,
dataRegionType
:
'INHERIT'
}),
container_grid1
:
new
PanelContainerModel
({
name
:
'container_grid1'
,
caption
:
'栅格容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'container1'
]
,
dataRegionType
:
'INHERIT'
}),
meditviewpanel
:
new
PanelCtrlPosModel
({
name
:
'meditviewpanel'
,
caption
:
'多表单面板'
,
isShowCaption
:
true
,
sysCss
:
''
,
itemType
:
'CTRLPOS'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container2'
,
panel
:
this
}),
container2
:
new
PanelContainerModel
({
name
:
'container2'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'meditviewpanel'
]
,
dataRegionType
:
'INHERIT'
}),
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
''
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container2'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutItems
:
any
=
{
view_pagecaption
:{
name
:
'view_pagecaption'
,
caption
:
'页面标题'
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'FIELD'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container1'
,
panel
:
this
,
fieldState
:
'0'
,
},
container1
:{
name
:
'container1'
,
caption
:
'面板容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
12
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container_grid1'
,
panel
:
this
,
details
:[
'view_pagecaption'
]
,
dataRegionType
:
'INHERIT'
},
container_grid1
:{
name
:
'container_grid1'
,
caption
:
'栅格容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'container1'
]
,
dataRegionType
:
'INHERIT'
},
meditviewpanel
:{
name
:
'meditviewpanel'
,
caption
:
'多表单面板'
,
isShowCaption
:
true
,
sysCss
:
''
,
itemType
:
'CTRLPOS'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container2'
,
panel
:
this
},
container2
:{
name
:
'container2'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'meditviewpanel'
]
,
dataRegionType
:
'INHERIT'
},
page_container
:{
name
:
'page_container'
,
caption
:
''
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container2'
]
,
dataRegionType
:
'INHERIT'
}
};
/**
* 初始化布局
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
async
initLayout
()
{
if
(
this
.
rootLayoutDetailNames
.
length
>
0
)
{
this
.
rootLayoutDetailNames
.
forEach
(
async
(
name
:
string
)
=>
{
const
rootLayoutModelDetail
=
this
.
layoutModelDetails
[
name
];
if
(
!
rootLayoutModelDetail
)
{
return
;
}
await
this
.
initLayoutItem
(
rootLayoutModelDetail
);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
async
initLayoutItem
(
layoutModelDetail
:
any
,
index
:
number
=
0
)
{
const
{
name
}
=
layoutModelDetail
;
if
(
!
index
)
{
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
layoutData
[
name
]
=
layoutModelDetail
.
getData
();
}
else
{
const
clonelayoutModelDetail
=
layoutModelDetail
;
clonelayoutModelDetail
.
setIndex
(
index
);
await
clonelayoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
$set
(
this
.
layoutModelDetails
,
`
${
name
}
_
${
index
}
`
,
clonelayoutModelDetail
);
this
.
$set
(
this
.
layoutData
,
`
${
name
}
_
${
index
}
`
,
clonelayoutModelDetail
.
getData
());
}
if
(
layoutModelDetail
&&
layoutModelDetail
.
details
)
{
if
(
layoutModelDetail
.
dataRegionType
===
'MULTIDATA'
)
{
const
multiData
=
layoutModelDetail
.
getData
();
if
(
multiData
&&
multiData
.
length
>
0
)
{
multiData
.
forEach
(
async
(
data
:
any
,
index
:
number
)
=>
{
for
(
const
key
of
layoutModelDetail
.
details
)
{
if
(
this
.
layoutModelDetails
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutModelDetails
[
key
],
index
);
}
}
})
}
}
else
{
for
(
const
key
of
layoutModelDetail
.
details
)
{
if
(
this
.
layoutModelDetails
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutModelDetails
[
key
]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
handleValueChange
(
$event
:
{
name
:
string
,
value
:
any
})
{
if
(
!
$event
||
!
$event
.
name
||
Object
.
is
(
$event
.
name
,
''
)
||
!
this
.
layoutData
.
hasOwnProperty
(
$event
.
name
))
{
return
;
}
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
const
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
);
const
paramJO
:
any
=
{};
const
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.less
浏览文件 @
1e2075ea
.ibizbookusr2-medit-view9{
position: relative;
}
.ibizbookusr2-medit-view9{
.ibizbookusr2-medit-view9 {
display: block;
}
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.vue
浏览文件 @
1e2075ea
...
...
@@ -3,9 +3,11 @@ import { Component } from 'vue-property-decorator';
import
IBIZBOOKUsr2MEditView9Base
from
'./ibizbookusr2-medit-view9-base.vue'
;
import
view_meditviewpanel
from
'@widgets/ibizbook/main-multieditviewpanel/main-multieditviewpanel.vue'
;
import
view_searchbar
from
'@widgets/ibizbook/-searchbar/-searchbar.vue'
;
@
Component
({
components
:
{
view_meditviewpanel
,
view_searchbar
,
},
beforeRouteEnter
:
(
to
:
any
,
from
:
any
,
next
:
any
)
=>
{
next
((
vm
:
any
)
=>
{
...
...
app_Web/src/pages/sample/ibizbookwizard-view-layout/ibizbookwizard-view-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -258,6 +258,15 @@ export default class IBIZBOOKWizardView_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZBOOKWizardView_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -273,7 +282,7 @@ export default class IBIZBOOKWizardView_layoutBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
0
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_scroll1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -359,6 +368,68 @@ export default class IBIZBOOKWizardView_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZBOOKWizardView_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -366,10 +437,10 @@ export default class IBIZBOOKWizardView_layoutBase extends Vue {
* @memberof IBIZBOOKWizardView_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizcustomer-media-test-edit-view/ibizcustomer-media-test-edit-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -375,6 +375,15 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZCustomerMediaTestEditViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -409,7 +418,7 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container3'
,
'container2'
,
'container_singledata1'
,
'container_multidata1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -514,6 +523,68 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZCustomerMediaTestEditViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -521,10 +592,10 @@ export default class IBIZCustomerMediaTestEditViewBase extends Vue {
* @memberof IBIZCustomerMediaTestEditViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-gantt-view/ibizorder-gantt-view-base.vue
浏览文件 @
1e2075ea
<
template
>
<div
class=
"view-container deganttview ibizorder-gantt-view"
>
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizorderganttview"
></app-studioaction>
<card
class=
'view-card view-no-caption view-no-toolbar'
:disHover=
"true"
:padding=
"0"
:bordered=
"false"
>
<div
class=
'view-top-messages'
>
<app-alert-group
position=
'TOP'
:context=
"context"
:viewparam=
"viewparams"
infoGroup=
'VMGroup73'
viewname=
'ibizorderganttview'
></app-alert-group>
</div>
<div
class=
"content-container"
>
<div
class=
"app-view-layout ibizorder-gantt-view"
style=
"height: '100%'; width: '100%'; overflow: 'auto';"
>
<app-standard-container
name=
"page_container"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
container_grid1
>
<app-simpleflex-container
name=
"container_grid1"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
container1
>
<app-simpleflex-container
name=
"container1"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
view_pagecaption
>
<app-preset-caption
name=
"view_pagecaption"
:layoutModelDetails=
"layoutModelDetails"
>
实体甘特视图
</app-preset-caption>
</
template
>
</app-simpleflex-container>
</template>
</app-simpleflex-container>
</template>
<
template
#
container2
>
<app-standard-container
name=
"container2"
:layoutModelDetails=
"layoutModelDetails"
>
<template
#
gantt
>
<app-ctrl-pos
name=
"gantt"
:layoutModelDetails=
"layoutModelDetails"
>
<view
_gantt
:viewState=
"viewState"
:viewparams=
"viewparams"
...
...
@@ -15,10 +24,13 @@
name=
"gantt"
ref=
'gantt'
@
closeview=
"closeView($event)"
>
</view
_gantt
>
</view
_gantt
>
</app-ctrl-pos>
</
template
>
</app-standard-container>
</template>
</app-standard-container>
</div>
</card>
</div>
</template>
<
script
lang=
'tsx'
>
...
...
@@ -31,6 +43,7 @@ import IBIZOrderAuthService from '@/authservice/ibizorder/ibizorder-auth-service
import
IBIZOrderUIService
from
'@/uiservice/ibizorder/ibizorder-ui-service'
;
import
{
PanelContainerModel
,
PanelRawitemModel
,
PanelFieldModel
,
PanelControlModel
,
PanelButtonModel
,
PanelUserControlModel
,
PanelTabPanelModel
,
PanelTabPageModel
,
PanelCtrlPosModel
}
from
'@/model/panel-detail'
;
@
Component
({
...
...
@@ -236,6 +249,209 @@ export default class IBIZOrderGanttViewBase extends Vue {
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
rootLayoutDetailNames
:
string
[]
=
[
'page_container'
];
/**
* 视图布局数据
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
layoutModelDetails
:
any
=
{
view_pagecaption
:
new
PanelFieldModel
({
name
:
'view_pagecaption'
,
caption
:
'页面标题'
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'FIELD'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container1'
,
panel
:
this
,
fieldState
:
'0'
,
predefinedType
:
'VIEW_PAGECAPTION'
,
}),
container1
:
new
PanelContainerModel
({
name
:
'container1'
,
caption
:
'面板容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
12
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container_grid1'
,
panel
:
this
,
details
:[
'view_pagecaption'
]
,
dataRegionType
:
'INHERIT'
}),
container_grid1
:
new
PanelContainerModel
({
name
:
'container_grid1'
,
caption
:
'栅格容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'container1'
]
,
dataRegionType
:
'INHERIT'
}),
gantt
:
new
PanelCtrlPosModel
({
name
:
'gantt'
,
caption
:
'甘特部件'
,
isShowCaption
:
true
,
sysCss
:
''
,
itemType
:
'CTRLPOS'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container2'
,
panel
:
this
}),
container2
:
new
PanelContainerModel
({
name
:
'container2'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'gantt'
]
,
dataRegionType
:
'INHERIT'
}),
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
0
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container2'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
layoutItems
:
any
=
{
view_pagecaption
:{
name
:
'view_pagecaption'
,
caption
:
'页面标题'
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'FIELD'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container1'
,
panel
:
this
,
fieldState
:
'0'
,
},
container1
:{
name
:
'container1'
,
caption
:
'面板容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
12
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container_grid1'
,
panel
:
this
,
details
:[
'view_pagecaption'
]
,
dataRegionType
:
'INHERIT'
},
container_grid1
:{
name
:
'container_grid1'
,
caption
:
'栅格容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'SIMPLEFLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'container1'
]
,
dataRegionType
:
'INHERIT'
},
gantt
:{
name
:
'gantt'
,
caption
:
'甘特部件'
,
isShowCaption
:
true
,
sysCss
:
''
,
itemType
:
'CTRLPOS'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
''
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'container2'
,
panel
:
this
},
container2
:{
name
:
'container2'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
parentName
:
'page_container'
,
panel
:
this
,
details
:[
'gantt'
]
,
dataRegionType
:
'INHERIT'
},
page_container
:{
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
0
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container2'
]
,
dataRegionType
:
'INHERIT'
}
};
/**
* 初始化布局
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
async
initLayout
()
{
if
(
this
.
rootLayoutDetailNames
.
length
>
0
)
{
this
.
rootLayoutDetailNames
.
forEach
(
async
(
name
:
string
)
=>
{
const
rootLayoutModelDetail
=
this
.
layoutModelDetails
[
name
];
if
(
!
rootLayoutModelDetail
)
{
return
;
}
await
this
.
initLayoutItem
(
rootLayoutModelDetail
);
})
}
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
async
initLayoutItem
(
layoutModelDetail
:
any
,
index
:
number
=
0
)
{
const
{
name
}
=
layoutModelDetail
;
if
(
!
index
)
{
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
layoutData
[
name
]
=
layoutModelDetail
.
getData
();
}
else
{
const
clonelayoutModelDetail
=
layoutModelDetail
;
clonelayoutModelDetail
.
setIndex
(
index
);
await
clonelayoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
$set
(
this
.
layoutModelDetails
,
`
${
name
}
_
${
index
}
`
,
clonelayoutModelDetail
);
this
.
$set
(
this
.
layoutData
,
`
${
name
}
_
${
index
}
`
,
clonelayoutModelDetail
.
getData
());
}
if
(
layoutModelDetail
&&
layoutModelDetail
.
details
)
{
if
(
layoutModelDetail
.
dataRegionType
===
'MULTIDATA'
)
{
const
multiData
=
layoutModelDetail
.
getData
();
if
(
multiData
&&
multiData
.
length
>
0
)
{
multiData
.
forEach
(
async
(
data
:
any
,
index
:
number
)
=>
{
for
(
const
key
of
layoutModelDetail
.
details
)
{
if
(
this
.
layoutModelDetails
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutModelDetails
[
key
],
index
);
}
}
})
}
}
else
{
for
(
const
key
of
layoutModelDetail
.
details
)
{
if
(
this
.
layoutModelDetails
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutModelDetails
[
key
]);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
handleValueChange
(
$event
:
{
name
:
string
,
value
:
any
})
{
if
(
!
$event
||
!
$event
.
name
||
Object
.
is
(
$event
.
name
,
''
)
||
!
this
.
layoutData
.
hasOwnProperty
(
$event
.
name
))
{
return
;
}
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZOrderGanttViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
const
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
);
const
paramJO
:
any
=
{};
const
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
/**
...
...
app_Web/src/pages/sample/ibizorder-gantt-view/ibizorder-gantt-view.less
浏览文件 @
1e2075ea
.ibizorder-gantt-view{
position: relative;
}
.ibizorder-gantt-view {
> .view-card > .ivu-card-body > .content-container > .gantt {
overflow: auto;
}
display: block;
}
app_Web/src/pages/sample/ibizorder-sedit-view2-layout/ibizorder-sedit-view2-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -260,6 +260,15 @@ export default class IBIZOrderSEditView2_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderSEditView2_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -269,7 +278,7 @@ export default class IBIZOrderSEditView2_layoutBase extends Vue {
public
layoutModelDetails
:
any
=
{
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -349,6 +358,68 @@ export default class IBIZOrderSEditView2_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderSEditView2_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -356,10 +427,10 @@ export default class IBIZOrderSEditView2_layoutBase extends Vue {
* @memberof IBIZOrderSEditView2_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-sedit-view3-layout/ibizorder-sedit-view3-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -260,6 +260,15 @@ export default class IBIZOrderSEditView3_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderSEditView3_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -269,7 +278,7 @@ export default class IBIZOrderSEditView3_layoutBase extends Vue {
public
layoutModelDetails
:
any
=
{
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -349,6 +358,68 @@ export default class IBIZOrderSEditView3_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderSEditView3_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -356,10 +427,10 @@ export default class IBIZOrderSEditView3_layoutBase extends Vue {
* @memberof IBIZOrderSEditView3_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-sedit-view4-layout/ibizorder-sedit-view4-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -261,6 +261,15 @@ export default class IBIZOrderSEditView4_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderSEditView4_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -270,7 +279,7 @@ export default class IBIZOrderSEditView4_layoutBase extends Vue {
public
layoutModelDetails
:
any
=
{
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -350,6 +359,68 @@ export default class IBIZOrderSEditView4_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderSEditView4_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -357,10 +428,10 @@ export default class IBIZOrderSEditView4_layoutBase extends Vue {
* @memberof IBIZOrderSEditView4_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-test-clchart-view/ibizorder-test-clchart-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -299,6 +299,15 @@ export default class IBIZOrderTestCLChartViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTestCLChartViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -319,7 +328,7 @@ export default class IBIZOrderTestCLChartViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container_5'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -410,6 +419,68 @@ export default class IBIZOrderTestCLChartViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTestCLChartViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -417,10 +488,10 @@ export default class IBIZOrderTestCLChartViewBase extends Vue {
* @memberof IBIZOrderTestCLChartViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-test-cledit-view2/ibizorder-test-cledit-view2-base.vue
浏览文件 @
1e2075ea
...
...
@@ -384,6 +384,15 @@ export default class IBIZOrderTestCLEditView2Base extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTestCLEditView2Base
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -407,7 +416,7 @@ export default class IBIZOrderTestCLEditView2Base extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'page_container2'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -501,6 +510,68 @@ export default class IBIZOrderTestCLEditView2Base extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTestCLEditView2Base
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -508,10 +579,10 @@ export default class IBIZOrderTestCLEditView2Base extends Vue {
* @memberof IBIZOrderTestCLEditView2Base
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-test-cltree-exp-view/ibizorder-test-cltree-exp-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -266,6 +266,15 @@ export default class IBIZOrderTestCLTreeExpViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTestCLTreeExpViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -283,7 +292,7 @@ export default class IBIZOrderTestCLTreeExpViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container2'
,
'container_grid1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -371,6 +380,68 @@ export default class IBIZOrderTestCLTreeExpViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTestCLTreeExpViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -378,10 +449,10 @@ export default class IBIZOrderTestCLTreeExpViewBase extends Vue {
* @memberof IBIZOrderTestCLTreeExpViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-test-custom-layout-panel-grid-exp-view/ibizorder-test-custom-layout-panel-grid-exp-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -268,6 +268,15 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -285,7 +294,7 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container2'
,
'container_scroll1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -373,6 +382,68 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -380,10 +451,10 @@ export default class IBIZOrderTestCustomLayoutPanelGridExpViewBase extends Vue {
* @memberof IBIZOrderTestCustomLayoutPanelGridExpViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizorder-usr2-grid-view/ibizorder-usr2-grid-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -341,6 +341,15 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZOrderUsr2GridViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -360,7 +369,7 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
''
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container4'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -450,6 +459,68 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZOrderUsr2GridViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -457,10 +528,10 @@ export default class IBIZOrderUsr2GridViewBase extends Vue {
* @memberof IBIZOrderUsr2GridViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/ibizsample0003-stab-exp-view-layout/ibizsample0003-stab-exp-view-layout-base.vue
浏览文件 @
1e2075ea
...
...
@@ -270,6 +270,15 @@ export default class IBIZSample0003STabExpView_layoutBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -289,7 +298,7 @@ export default class IBIZSample0003STabExpView_layoutBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
0
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_grid1'
,
'container_scroll1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -379,6 +388,68 @@ export default class IBIZSample0003STabExpView_layoutBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -386,10 +457,10 @@ export default class IBIZSample0003STabExpView_layoutBase extends Vue {
* @memberof IBIZSample0003STabExpView_layoutBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
}
...
...
app_Web/src/pages/sample/index/index-base.vue
浏览文件 @
1e2075ea
...
...
@@ -283,6 +283,15 @@ export default class IndexBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof IndexBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -311,7 +320,7 @@ export default class IndexBase extends Vue {
container_scroll1
:
new
PanelContainerModel
({
name
:
'container_scroll1'
,
caption
:
'滚动条容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'BORDER'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
''
,
vAlign
:
''
},
panel
:
this
,
details
:[
'container_scroll_main1'
,
'container_scroll_left1'
,
'container_scroll_header1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -410,6 +419,68 @@ export default class IndexBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof IndexBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -417,10 +488,10 @@ export default class IndexBase extends Vue {
* @memberof IndexBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
if
(
Object
.
is
(
name
,
'auth_logout1'
))
{
_this
.
panel_Usr1101864241_auth_logout1_click
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
undefined
);
...
...
app_Web/src/pages/ungroup/app-index-view/app-index-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -324,6 +324,15 @@ export default class AppIndexViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof AppIndexViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -353,7 +362,7 @@ export default class AppIndexViewBase extends Vue {
container1
:
new
PanelContainerModel
({
name
:
'container1'
,
caption
:
'容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
0
,
heightMode
:
''
,
layoutWidth
:
0
,
widthMode
:
''
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
''
,
dir
:
'column'
,
vAlign
:
''
},
panel
:
this
,
details
:[
'app_apptitle'
,
'view_pagecaption'
,
'static_label1'
,
'static_text1'
,
'field_text_dynamic'
,
'field_switch'
,
'field_textbox'
,
'field_qrcode'
,
'button_link1'
,
'button_openview'
,
'button_calluilogic1'
,
'button_calluilogic2'
,
'button_calluilogic3'
,
'button_calluilogic5'
,
'button_calluilogic6'
,
'button_calluilogic8'
,
'button_calluilogic9'
,
'button_calluilogic10'
,
'open_yuque'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -453,6 +462,68 @@ export default class AppIndexViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof AppIndexViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -460,10 +531,10 @@ export default class AppIndexViewBase extends Vue {
* @memberof AppIndexViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
if
(
Object
.
is
(
name
,
'button_link1'
))
{
_this
.
panel_Usr1102678360_button_link1_click
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
undefined
);
...
...
app_Web/src/pages/ungroup/app-login-view/app-login-view-base.vue
浏览文件 @
1e2075ea
...
...
@@ -241,6 +241,15 @@ export default class AppLoginViewBase extends Vue {
*/
public
layoutData
:
any
=
{};
/**
* 视图布局部件
*
* @public
* @memberof AppLoginViewBase
*/
public
layoutCtrls
:
any
[]
=
[
];
/**
* 视图布局面板模型对象
*
...
...
@@ -262,7 +271,7 @@ export default class AppLoginViewBase extends Vue {
page_container
:
new
PanelContainerModel
({
name
:
'page_container'
,
caption
:
'图片背景容器'
,
titleBarCloseMode
:
0
,
isShowCaption
:
false
,
sysCss
:
''
,
itemType
:
'CONTAINER'
,
itemStyle
:
'DEFAULT'
,
visible
:
true
,
disabled
:
false
,
layout
:
'FLEX'
,
layoutPos
:
''
,
layoutHeight
:
100
,
heightMode
:
'PERCENTAGE'
,
layoutWidth
:
100
,
widthMode
:
'PERCENTAGE'
,
spacingBottom
:
''
,
spacingLeft
:
''
,
spacingRight
:
''
,
spacingTop
:
''
,
hAlignSelf
:
''
,
vAlignSelf
:
''
,
flexGrow
:
-
1
,
flexParams
:{
align
:
'center'
,
dir
:
'row'
,
vAlign
:
'center'
},
panel
:
this
,
details
:[
'container1'
]
,
dataRegionType
:
'INHERIT'
})
};
/**
/**
* 视图布局面板项模型对象
*
* @public
...
...
@@ -354,6 +363,68 @@ export default class AppLoginViewBase extends Vue {
this
.
layoutData
[
$event
.
name
]
=
$event
.
value
;
}
/**
* 获取按钮行为xData
*
* @public
* @memberof AppLoginViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
null
;
let
xDataControl
:
any
=
null
;
let
curLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
layoutModel
:
any
)
=>
{
if
(
layoutModel
.
name
==
name
)
{
curLayoutModel
=
layoutModel
;
}
})
// 获取数据容器
if
(
curLayoutModel
)
{
const
getDataArea
=
(
cLayoutModel
:
any
):
any
=>
{
let
dataArea
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
// 获取激活部件
if
(
!
xData
&&
this
.
layoutCtrls
.
length
>
0
)
{
const
getActionCtrl
=
(
cLayoutModel
:
any
)
=>
{
let
actionCtrl
=
null
;
let
parentLayoutModel
=
null
;
Object
.
values
(
this
.
layoutModelDetails
).
forEach
((
pLayoutModel
:
any
)
=>
{
if
(
pLayoutModel
.
name
==
cLayoutModel
.
name
)
{
parentLayoutModel
=
pLayoutModel
;
actionCtrl
=
parentLayoutModel
.
details
.
find
((
ctrlName
:
string
)
=>
{
return
this
.
layoutCtrls
.
indexOf
(
ctrlName
)
!==
-
1
;
})
}
})
if
(
!
actionCtrl
&&
parentLayoutModel
)
{
actionCtrl
=
getActionCtrl
(
parentLayoutModel
);
}
return
actionCtrl
;
}
xData
=
getActionCtrl
(
curLayoutModel
);
}
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
...
...
@@ -361,10 +432,10 @@ export default class AppLoginViewBase extends Vue {
* @memberof AppLoginViewBase
*/
public
handleButtonClick
(
name
:
string
,
$event
?:
any
)
{
le
t
datas
:
any
[]
=
[
this
.
layoutData
];
let
xData
:
any
=
null
;
le
t
paramJO
:
any
=
{};
le
t
contextJO
:
any
=
{};
cons
t
datas
:
any
[]
=
[
this
.
layoutData
];
const
xData
:
any
=
this
.
getButtonXData
(
name
)
;
cons
t
paramJO
:
any
=
{};
cons
t
contextJO
:
any
=
{};
const
_this
:
any
=
this
;
if
(
Object
.
is
(
name
,
'auth_loginbutton1'
))
{
_this
.
panel_Usr1102196415_auth_loginbutton1_click
(
datas
,
contextJO
,
paramJO
,
$event
,
xData
,
this
,
undefined
);
...
...
app_Web/src/widgets/ibizbook/-searchbar/-searchbar-base.vue
0 → 100644
浏览文件 @
1e2075ea
<
template
>
<div
class=
"app-searchbar"
>
<div
v-if=
"filterFields.length > 0"
class=
"filter-group"
>
<filter-tree
:datas=
"filterItems"
:fields=
"filterFields"
>
<template
slot-scope=
"
{ data }">
</
template
>
</filter-tree>
</div>
<div
class=
"search-bar-footer"
>
<div
class=
"search-bar-action"
>
<el-select
size=
"small"
v-if=
"historyItems.length > 0"
v-model=
"selectItem"
@
change=
"onFilterChange"
>
<el-option
v-for=
"item in historyItems"
:key=
"item.value"
:label=
"item.name"
:value=
"item.value"
></el-option>
</el-select>
<i-button
type=
"primary"
@
click=
"onSearch"
>
{{ $t('app.searchButton.search') }}
</i-button>
<i-button
@
click=
"onReset"
>
{{ $t('app.searchButton.reset') }}
</i-button>
<Poptip
ref=
"propip"
trigger=
"hover"
placement=
"top-end"
:title=
"$t('app.searchForm.custom')"
:width=
"250"
@
on-popper-show=
"openPoper"
>
<i-button><i
class=
"fa fa-floppy-o"
aria-hidden=
"true"
></i></i-button>
<
template
slot=
"content"
>
<div>
<i-input
v-model=
"saveItemName"
:placeholder=
"$t('app.searchForm.title')"
></i-input>
<div
class=
"save-action"
>
<i-button
@
click=
"onCancel"
>
{{
$t
(
'app.commonWords.cancel'
)
}}
</i-button>
<i-button
type=
"primary"
@
click=
"onOk"
>
{{
$t
(
'app.commonWords.save'
)
}}
</i-button>
</div>
</div>
</
template
>
</Poptip>
</div>
</div>
</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
IBIZBOOKEntityService
from
'@/service/ibizbook/ibizbook-service'
;
import
Service
from
'./-searchbar-service'
;
import
IBIZBOOKUIService
from
'@/uiservice/ibizbook/ibizbook-ui-service'
;
import
FilterTree
from
'@components/filter-tree/filter-tree.vue'
;
import
moment
from
'moment'
;
@
Component
({
components
:
{
FilterTree
,
}
})
export
default
class
Base
extends
Vue
implements
ControlInterface
{
/**
* 名称
*
* @type {string}
* @memberof Base
*/
@
Prop
()
public
name
?:
string
;
/**
* 视图通讯对象
*
* @type {Subject<ViewState>}
* @memberof Base
*/
@
Prop
()
public
viewState
!
:
Subject
<
ViewState
>
;
/**
* 应用上下文
*
* @type {*}
* @memberof Base
*/
@
Prop
()
public
context
!
:
any
;
/**
* 视图参数
*
* @type {*}
* @memberof Base
*/
@
Prop
()
public
viewparams
!
:
any
;
/**
* 视图状态事件
*
* @public
* @type {(Subscription | undefined)}
* @memberof Base
*/
public
viewStateEvent
:
Subscription
|
undefined
;
/**
* 获取部件类型
*
* @returns {string}
* @memberof Base
*/
public
getControlType
():
string
{
return
'SEARCHBAR'
}
/**
* 计数器服务对象集合
*
* @type {Array<*>}
* @memberof Base
*/
public
counterServiceArray
:
Array
<
any
>
=
[];
/**
* 建构部件服务对象
*
* @type {Service}
* @memberof Base
*/
public
service
:
Service
=
new
Service
({
$store
:
this
.
$store
});
/**
* 实体服务对象
*
* @type {IBIZBOOKService}
* @memberof Base
*/
public
appEntityService
:
IBIZBOOKEntityService
=
new
IBIZBOOKEntityService
({
$store
:
this
.
$store
});
/**
* 转化数据
*
* @param {any} args
* @memberof Base
*/
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 Base
*/
public
closeView
(
args
:
any
):
void
{
let
_this
:
any
=
this
;
_this
.
$emit
(
'closeview'
,
[
args
]);
}
/**
* 计数器刷新
*
* @memberof Base
*/
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 {*}
* @memberof Base
*/
get
filterFields
()
{
return
Object
.
values
(
this
.
detailsModel
);
}
/**
* 过滤属性模型集合
*
* @type {*}
* @memberof Base
*/
public
detailsModel
:
any
=
{
};
/**
* 过滤项集合
*
* @type {*}
* @memberof Base
*/
public
filterItems
:
any
[]
=
[];
/**
* 应用实体名称
*
* @type {string}
* @memberof Base
*/
public
appdeName
:
string
=
'IBIZBOOK'
;
/**
* modleId
*
* @type {string}
* @memberof Base
*/
public
modelId
:
string
=
"searchbar_ibizbook_"
;
/**
* 功能服务名称
*
* @type {string}
* @memberof Base
*/
public
utilServiceName
:
string
=
""
;
/**
* 历史记录
*
* @type {string}
* @memberof Base
*/
protected
historyItems
:
any
[]
=
[];
/**
* 选中记录
*
* @type {string}
* @memberof Base
*/
protected
selectItem
:
any
=
null
;
/**
* 存储项名称
*
* @type {string}
* @memberof Base
*/
protected
saveItemName
:
string
=
''
;
/**
* 获取多项数据
*
* @returns {any[]}
* @memberof Base
*/
public
getDatas
():
any
[]
{
return
[];
}
/**
* 获取单项树
*
* @returns {*}
* @memberof Base
*/
public
getData
():
any
{
let
data
:
any
=
{};
if
(
this
.
filterFields
.
length
>
0
)
{
let
filter
:
any
=
this
.
getFilter
();
Object
.
assign
(
data
,
{
filter
:
filter
?
JSON
.
stringify
(
filter
)
:
null
})
}
return
data
;
}
/**
* 获取filter
*
* @return {*}
* @memberof Base
*/
public
getFilter
():
any
{
if
(
this
.
filterItems
.
length
===
0
)
{
return
null
;
}
let
ands
:
any
[]
=
this
.
transformAnd
(
this
.
filterItems
);
this
.
transformResult
(
ands
,
'$and'
);
if
(
ands
.
length
===
0
)
{
return
null
;
}
return
{
'$and'
:
ands
};
}
/**
* 处理结果集
*
* @return {*}
* @memberof Base
*/
public
transformResult
(
datas
:
any
[],
pName
:
string
)
{
let
items
:
any
[]
=
[];
for
(
let
i
=
datas
.
length
-
1
;
i
>=
0
;
i
--
)
{
let
data
:
any
=
datas
[
i
];
let
field
:
string
=
Object
.
is
(
pName
,
'$and'
)
?
'$or'
:
'$and'
;
if
(
data
.
hasOwnProperty
(
field
))
{
items
.
push
(
data
);
datas
.
splice
(
i
,
1
);
this
.
transformResult
(
data
[
field
],
field
);
}
}
if
(
items
.
length
>
0
)
{
let
item
:
any
=
{};
item
[
pName
]
=
items
;
datas
.
push
(
item
);
}
}
/**
* 处理并且逻辑
*
* @return {*}
* @memberof Base
*/
public
transformAnd
(
datas
:
any
[]):
any
{
let
result
:
any
[]
=
[];
datas
.
forEach
((
data
:
any
)
=>
{
let
item
:
any
=
{};
if
(
data
.
field
&&
data
.
mode
)
{
item
[
data
.
field
]
=
{};
let
valField
:
string
=
data
.
editor
?
data
.
editor
:
data
.
field
;
item
[
data
.
field
][
data
.
mode
]
=
(
data
[
valField
]
==
null
?
''
:
data
[
valField
]);
result
.
push
(
item
)
}
else
if
(
Object
.
is
(
data
.
label
,
'$and'
))
{
let
items
:
any
[]
=
this
.
transformAnd
(
data
.
children
);
result
=
[...
result
,
...
items
];
}
else
if
(
Object
.
is
(
data
.
label
,
'$or'
))
{
item
[
data
.
label
]
=
this
.
transformOr
(
data
.
children
);
result
.
push
(
item
)
}
})
return
result
;
}
/**
* 处理或逻辑
*
* @return {*}
* @memberof Base
*/
public
transformOr
(
datas
:
any
[])
{
let
result
:
any
[]
=
[];
datas
.
forEach
((
data
:
any
)
=>
{
let
item
:
any
=
{};
if
(
data
.
field
&&
data
.
mode
)
{
item
[
data
.
field
]
=
{};
let
valField
:
string
=
data
.
editor
?
data
.
editor
:
data
.
field
;
item
[
data
.
field
][
data
.
mode
]
=
(
data
[
valField
]
==
null
?
''
:
data
[
valField
]);
result
.
push
(
item
);
}
else
if
(
Object
.
is
(
data
.
label
,
'$and'
))
{
item
[
data
.
label
]
=
this
.
transformAnd
(
data
.
children
);
result
.
push
(
item
)
}
else
if
(
Object
.
is
(
data
.
label
,
'$or'
))
{
item
[
data
.
label
]
=
this
.
transformOr
(
data
.
children
);
result
.
push
(
item
);
}
})
return
result
;
}
/**
* Vue声明周期(处理组件的输入属性)
*
* @memberof Base
*/
public
created
():
void
{
if
(
this
.
viewState
)
{
this
.
viewStateEvent
=
this
.
viewState
.
subscribe
(({
tag
,
action
,
data
})
=>
{
if
(
Object
.
is
(
'load'
,
action
))
{
this
.
load
(
data
);
}
});
}
}
/**
* 删除过滤项
*
* @return {*}
* @memberof Base
*/
public
onRemove
(
index
:
number
)
{
this
.
filterItems
.
splice
(
index
,
1
);
}
/**
* 搜索
*
* @return {*}
* @memberof Base
*/
public
onSearch
()
{
this
.
$emit
(
'search'
,
this
.
getData
());
}
/**
* 保存
*
* @return {*}
* @memberof Base
*/
public
onSave
(
name
?:
string
)
{
let
time
=
moment
();
this
.
historyItems
.
push
({
name
:
(
name
?
name
:
time
.
format
(
'YYYY-MM-DD HH:mm:ss'
)),
value
:
time
.
unix
().
toString
(),
data
:
JSON
.
parse
(
JSON
.
stringify
(
this
.
filterItems
))
})
this
.
selectItem
=
time
.
unix
().
toString
();
let
param
:
any
=
{};
Object
.
assign
(
param
,
{
model
:
JSON
.
parse
(
JSON
.
stringify
(
this
.
historyItems
)),
appdeName
:
this
.
appdeName
,
modelid
:
this
.
modelId
,
utilServiceName
:
this
.
utilServiceName
,
...
this
.
viewparams
});
let
post
=
this
.
service
.
saveModel
(
this
.
utilServiceName
,
this
.
context
,
param
);
post
.
then
((
response
:
any
)
=>
{
this
.
$emit
(
"save"
,
response
.
data
);
}).
catch
((
response
:
any
)
=>
{
console
.
log
(
response
);
});
}
/**
* 重置
*
* @return {*}
* @memberof Base
*/
public
onReset
()
{
this
.
filterItems
=
[];
}
/**
* 加载
*
* @return {*}
* @memberof Base
*/
public
load
(
data
:
any
)
{
let
param
:
any
=
{};
Object
.
assign
(
param
,
{
appdeName
:
this
.
appdeName
,
modelid
:
this
.
modelId
,
utilServiceName
:
this
.
utilServiceName
,
...
this
.
viewparams
});
let
post
=
this
.
service
.
loadModel
(
this
.
utilServiceName
,
this
.
context
,
param
);
post
.
then
((
response
:
any
)
=>
{
if
(
response
.
status
==
200
)
{
this
.
historyItems
=
response
.
data
;
}
}).
catch
((
response
:
any
)
=>
{
console
.
log
(
response
);
});
}
/**
* 改变过滤条件
*
* @return {*}
* @memberof Base
*/
public
onFilterChange
(
evt
:
any
)
{
let
item
:
any
=
this
.
historyItems
.
find
((
item
:
any
)
=>
Object
.
is
(
evt
,
item
.
value
));
if
(
item
)
{
this
.
filterItems
=
JSON
.
parse
(
JSON
.
stringify
(
item
.
data
));
}
}
/**
* 打开弹框
*
* @return {*}
* @memberof Base
*/
public
openPoper
()
{
this
.
saveItemName
=
''
;
}
/**
* 确定
*
* @return {*}
* @memberof Base
*/
public
onOk
()
{
let
propip
:
any
=
this
.
$refs
.
propip
;
propip
.
handleMouseleave
();
this
.
onSave
(
this
.
saveItemName
);
}
/**
* 取消设置
*
* @return {*}
* @memberof Base
*/
public
onCancel
()
{
let
propip
:
any
=
this
.
$refs
.
propip
;
propip
.
handleMouseleave
();
this
.
onSave
();
}
}
</
script
>
<
style
lang=
'less'
>
@import './-searchbar.less';
</
style
>
\ No newline at end of file
app_Web/src/widgets/ibizbook/-searchbar/-searchbar-model.ts
0 → 100644
浏览文件 @
1e2075ea
/**
* 部件模型
*
* @export
* @class Model
*/
export
default
class
Model
{
/**
* 获取数据项集合
*
* @returns {any[]}
* @memberof SearchbarMode
*/
public
getDataItems
():
any
[]
{
return
[
]
}
}
\ No newline at end of file
app_Web/src/widgets/ibizbook/-searchbar/-searchbar-service.ts
0 → 100644
浏览文件 @
1e2075ea
import
{
Http
,
Util
,
Errorlog
}
from
'@/utils'
;
import
ControlService
from
'@/widgets/control-service'
;
import
IBIZBOOKService
from
'@/service/ibizbook/ibizbook-service'
;
import
Model
from
'./-searchbar-model'
;
import
UtilService
from
'@/utilservice/util-service'
;
/**
* 部件服务对象
*
* @export
* @class Service
*/
export
default
class
Service
extends
ControlService
{
/**
* 图书服务对象
*
* @type {IBIZBOOKService}
* @memberof Service
*/
public
appEntityService
:
IBIZBOOKService
=
new
IBIZBOOKService
();
/**
* 设置从数据模式
*
* @type {boolean}
* @memberof Service
*/
public
setTempMode
(){
this
.
isTempMode
=
false
;
}
/**
* Creates an instance of Service.
*
* @param {*} [opts={}]
* @memberof Service
*/
constructor
(
opts
:
any
=
{})
{
super
(
opts
);
this
.
model
=
new
Model
();
}
/**
* 工具服务对象
*
* @protected
* @type {UtilService}
* @memberof Service
*/
protected
utilService
:
UtilService
=
new
UtilService
();
/**
* 加载数据模型
*
* @param {string} serviceName
* @param {*} context
* @param {*} viewparams
* @memberof Service
*/
public
loadModel
(
serviceName
:
string
,
context
:
any
,
viewparams
:
any
)
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
this
.
utilService
.
getService
(
serviceName
).
then
((
service
:
any
)
=>
{
service
.
loadModelData
(
JSON
.
stringify
(
context
),
viewparams
).
then
((
response
:
any
)
=>
{
resolve
(
response
);
}).
catch
((
response
:
any
)
=>
{
reject
(
response
);
});
}).
catch
((
response
:
any
)
=>
{
reject
(
response
);
});
});
}
/**
* 保存模型
*
* @param {string} serviceName
* @param {*} context
* @param {*} viewparams
* @returns
* @memberof Service
*/
public
saveModel
(
serviceName
:
string
,
context
:
any
,
viewparams
:
any
)
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
this
.
utilService
.
getService
(
serviceName
).
then
((
service
:
any
)
=>
{
service
.
saveModelData
(
JSON
.
stringify
(
context
),
''
,
viewparams
).
then
((
response
:
any
)
=>
{
resolve
(
response
);
}).
catch
((
response
:
any
)
=>
{
reject
(
response
);
});
}).
catch
((
response
:
any
)
=>
{
reject
(
response
);
});
});
}
}
\ No newline at end of file
app_Web/src/widgets/ibizbook/-searchbar/-searchbar.less
0 → 100644
浏览文件 @
1e2075ea
.search-bar-footer {
height: 32px;
margin-bottom: 6px;
.search-bar-action {
float: right;
display: flex;
align-items: center;
> * {
margin-left: 5px;
.save-action {
text-align: right;
margin-top: 10px;
> * {
margin-left: 5px;
}
}
}
}
}
// this is less
app_Web/src/widgets/ibizbook/-searchbar/-searchbar.vue
0 → 100644
浏览文件 @
1e2075ea
<
script
lang=
'tsx'
>
import
{
Component
}
from
'vue-property-decorator'
;
import
Base
from
'./-searchbar-base.vue'
;
@
Component
({
components
:
{
}
})
export
default
class
extends
Base
{
}
</
script
>
\ No newline at end of file
app_Web/src/widgets/ibizbook/default-searchform/default-searchform-base.vue
浏览文件 @
1e2075ea
...
...
@@ -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
:
'IBIZBOOKUsr
9
GridView'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKUsr
8
GridView'
+
(
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
:
'IBIZBOOKUsr
9
GridView'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKUsr
8
GridView'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
app_Web/src/widgets/ibizbook/main-form/main-form-base.vue
浏览文件 @
1e2075ea
...
...
@@ -1800,7 +1800,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
load
(
opt
:
any
=
{}):
void
{
if
(
!
this
.
loadAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView'
+
(
this
.
$t
(
'app.formpage.notconfig.loadaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.loadaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
};
...
...
@@ -1835,7 +1835,7 @@ export default class MainBase extends Vue implements ControlInterface {
*/
public
loadDraft
(
opt
:
any
=
{}):
void
{
if
(
!
this
.
loaddraftAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView'
+
(
this
.
$t
(
'app.formpage.notconfig.loaddraftaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.loaddraftaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
@@ -1897,7 +1897,7 @@ export default class MainBase extends Vue implements ControlInterface {
const
action
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)
?
this
.
updateAction
:
this
.
createAction
;
if
(
!
action
){
let
actionName
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)?
"updateAction"
:
"createAction"
;
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
return
;
}
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
...
...
@@ -2005,7 +2005,7 @@ export default class MainBase extends Vue implements ControlInterface {
const
action
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)
?
this
.
updateAction
:
this
.
createAction
;
if
(
!
action
){
let
actionName
:
any
=
Object
.
is
(
data
.
srfuf
,
'1'
)?
"updateAction"
:
"createAction"
;
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.actionname'
)
as
string
)
});
return
;
}
Object
.
assign
(
arg
,{
viewparams
:
this
.
viewparams
});
...
...
@@ -2082,7 +2082,7 @@ export default class MainBase extends Vue implements ControlInterface {
public
remove
(
opt
:
Array
<
any
>
=
[],
showResultInfo
?:
boolean
):
Promise
<
any
>
{
return
new
Promise
((
resolve
:
any
,
reject
:
any
)
=>
{
if
(
!
this
.
removeAction
){
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView'
+
(
this
.
$t
(
'app.formpage.notconfig.removeaction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZBOOKOptionView
_layout
'
+
(
this
.
$t
(
'app.formpage.notconfig.removeaction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
opt
[
0
];
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSGANTTS/Usr.json
浏览文件 @
1e2075ea
...
...
@@ -11,51 +11,51 @@
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSDETreeColumns"
:
[
{
"caption"
:
"
借出
日期"
,
"codeName"
:
"
lendout
time"
,
"caption"
:
"
归还
日期"
,
"codeName"
:
"
return
time"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
lendout
time"
,
"name"
:
"
lendout
time"
,
"dataItemName"
:
"
return
time"
,
"name"
:
"
return
time"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
作者
"
,
"codeName"
:
"
author
"
,
"caption"
:
"
出版社
"
,
"codeName"
:
"
press
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
author
"
,
"name"
:
"
author
"
,
"dataItemName"
:
"
press
"
,
"name"
:
"
press
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
归还
日期"
,
"codeName"
:
"
return
time"
,
"caption"
:
"
借出
日期"
,
"codeName"
:
"
lendout
time"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
return
time"
,
"name"
:
"
return
time"
,
"dataItemName"
:
"
lendout
time"
,
"name"
:
"
lendout
time"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
图书名称
"
,
"codeName"
:
"
ibizbookname
"
,
"caption"
:
"
作者
"
,
"codeName"
:
"
author
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"dataItemName"
:
"
author
"
,
"name"
:
"
author
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
出版社
"
,
"codeName"
:
"
press
"
,
"caption"
:
"
图书名称
"
,
"codeName"
:
"
ibizbookname
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
press
"
,
"name"
:
"
press
"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json
0 → 100644
浏览文件 @
1e2075ea
{
"controlType"
:
"SEARCHBAR"
,
"dynaModelFilePath"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"quickGroupCount"
:
-1
,
"quickSearchMode"
:
1
,
"quickSearchWidth"
:
0
,
"enableFilter"
:
false
,
"enableGroup"
:
false
,
"enableQuickSearch"
:
true
,
"mobileSearchBar"
:
false
}
\ No newline at end of file
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSTREEGRIDICES/TreeTable.json
浏览文件 @
1e2075ea
...
...
@@ -29,21 +29,21 @@
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书
名称
"
,
"codeName"
:
"
ibizbookname
"
,
"caption"
:
"图书
描述
"
,
"codeName"
:
"
subtext
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"dataItemName"
:
"
subtext
"
,
"name"
:
"
subtext
"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书
描述
"
,
"codeName"
:
"
subtext
"
,
"caption"
:
"图书
名称
"
,
"codeName"
:
"
ibizbookname
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
subtext
"
,
"name"
:
"
subtext
"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKGanttView.json
浏览文件 @
1e2075ea
...
...
@@ -34,51 +34,51 @@
"id"
:
"GANTT"
},
"getPSDETreeColumns"
:
[
{
"caption"
:
"
借出
日期"
,
"codeName"
:
"
lendout
time"
,
"caption"
:
"
归还
日期"
,
"codeName"
:
"
return
time"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
lendout
time"
,
"name"
:
"
lendout
time"
,
"dataItemName"
:
"
return
time"
,
"name"
:
"
return
time"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
作者
"
,
"codeName"
:
"
author
"
,
"caption"
:
"
出版社
"
,
"codeName"
:
"
press
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
author
"
,
"name"
:
"
author
"
,
"dataItemName"
:
"
press
"
,
"name"
:
"
press
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
归还
日期"
,
"codeName"
:
"
return
time"
,
"caption"
:
"
借出
日期"
,
"codeName"
:
"
lendout
time"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
return
time"
,
"name"
:
"
return
time"
,
"dataItemName"
:
"
lendout
time"
,
"name"
:
"
lendout
time"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
图书名称
"
,
"codeName"
:
"
ibizbookname
"
,
"caption"
:
"
作者
"
,
"codeName"
:
"
author
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"dataItemName"
:
"
author
"
,
"name"
:
"
author
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"
出版社
"
,
"codeName"
:
"
press
"
,
"caption"
:
"
图书名称
"
,
"codeName"
:
"
ibizbookname
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
press
"
,
"name"
:
"
press
"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"width"
:
200
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKTreeGridExView.json
浏览文件 @
1e2075ea
...
...
@@ -85,21 +85,21 @@
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书
名称
"
,
"codeName"
:
"
ibizbookname
"
,
"caption"
:
"图书
描述
"
,
"codeName"
:
"
subtext
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"dataItemName"
:
"
subtext
"
,
"name"
:
"
subtext
"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
"enableSort"
:
false
},
{
"caption"
:
"图书
描述
"
,
"codeName"
:
"
subtext
"
,
"caption"
:
"图书
名称
"
,
"codeName"
:
"
ibizbookname
"
,
"columnType"
:
"DEFGRIDCOLUMN"
,
"dataItemName"
:
"
subtext
"
,
"name"
:
"
subtext
"
,
"dataItemName"
:
"
ibizbookname
"
,
"name"
:
"
ibizbookname
"
,
"width"
:
50
,
"widthUnit"
:
"px"
,
"enableExpand"
:
false
,
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKUsr2MEditView9.json
浏览文件 @
1e2075ea
...
...
@@ -11,6 +11,115 @@
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSAppViewMsgGroup"
:
{
"modelref"
:
true
,
"id"
:
"VMGroup35"
},
"getPSDEViewCodeName"
:
"Usr2MEditView9"
,
"getPSDEViewId"
:
"2d6d676ea17c2dc38c5076c3fdd3936d"
,
"getPSViewLayoutPanel"
:
{
"getAllPSPanelFields"
:
[
{
"id"
:
"view_pagecaption"
}
],
"codeName"
:
"Usr1104775982"
,
"controlType"
:
"VIEWLAYOUTPANEL"
,
"layoutMode"
:
"FLEX"
,
"logicName"
:
"Usr2MEditView9DEMEDITVIEW9"
,
"name"
:
"layoutpanel"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlParam"
:
{
},
"getPSLayout"
:
{
"layout"
:
"FLEX"
},
"getRootPSPanelItems"
:
[
{
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"page_container"
,
"getPSLayout"
:
{
"layout"
:
"FLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"栅格容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container_grid1"
,
"getPSLayout"
:
{
"layout"
:
"SIMPLEFLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"面板容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container1"
,
"getPSLayout"
:
{
"layout"
:
"SIMPLEFLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
12
,
"layout"
:
"SIMPLEFLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"页面标题"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"FIELD"
,
"name"
:
"view_pagecaption"
,
"getPSEditor"
:
{
"editorType"
:
"SPAN"
,
"name"
:
"view_pagecaption"
,
"predefinedType"
:
"VIEW_PAGECAPTION"
,
"renderMode"
:
"HEADING1"
,
"enableLinkView"
:
false
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"SIMPLEFLEX"
},
"hidden"
:
false
,
"showCaption"
:
false
}
]
}
]
},
{
"caption"
:
"容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container2"
,
"getPSLayout"
:
{
"layout"
:
"FLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"多表单面板"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CTRLPOS"
,
"name"
:
"meditviewpanel"
,
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"showCaption"
:
true
}
]
}
]
}
],
"layoutBodyOnly"
:
false
,
"layoutPanel"
:
true
,
"useDefaultLayout"
:
false
,
"viewProxyMode"
:
true
,
"modelid"
:
"1101D6F4-479A-440A-AA43-6195EBD7840C"
,
"modeltype"
:
"PSSYSVIEWLAYOUTPANEL"
,
"getPSAppViewLogics"
:
[
{
"logicTrigger"
:
"CUSTOM"
,
"logicType"
:
"SYSUILOGIC"
,
...
...
@@ -35,10 +144,6 @@
"editMode"
:
true
}
}
],
"getPSAppViewMsgGroup"
:
{
"modelref"
:
true
,
"id"
:
"VMGroup35"
},
"getPSControls"
:
[
{
"aggMode"
:
"NONE"
,
"codeName"
:
"Main"
,
...
...
@@ -320,22 +425,25 @@
"name"
:
"meditviewpanel"
,
"modelid"
:
"6cd11a010cbbb4d2bad5e1aad7e8020a"
,
"modeltype"
:
"PSDEGRID"
}
],
"getPSDEViewCodeName"
:
"Usr2MEditView9"
,
"getPSDEViewId"
:
"2d6d676ea17c2dc38c5076c3fdd3936d"
,
"getPSViewLayoutPanel"
:
{
"codeName"
:
"Layoutpanel"
,
"controlStyle"
:
"APPDEMEDITVIEW9"
,
"controlType"
:
"VIEWLAYOUTPANEL"
,
"name"
:
"layoutpanel"
,
},
{
"controlType"
:
"SEARCHBAR"
,
"dynaModelFilePath"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK/PSSEARCHBARS/.json"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.json"
},
"getPSControlParam"
:
{
},
"layoutBodyOnly"
:
true
,
"layoutPanel"
:
true
,
"useDefaultLayout"
:
true
"getPSControlParam"
:
{
"id"
:
"searchbar"
},
"quickGroupCount"
:
-1
,
"quickSearchMode"
:
1
,
"quickSearchWidth"
:
0
,
"enableFilter"
:
false
,
"enableGroup"
:
false
,
"enableQuickSearch"
:
true
,
"mobileSearchBar"
:
false
,
"name"
:
"searchbar"
}
]
},
"title"
:
"实体多表单编辑视图"
,
"getTitlePSLanguageRes"
:
{
...
...
@@ -344,8 +452,9 @@
"viewStyle"
:
"DEFAULT"
,
"viewType"
:
"DEMEDITVIEW9"
,
"enableDP"
:
true
,
"enableFilter"
:
fals
e
,
"enableFilter"
:
tru
e
,
"enableQuickSearch"
:
true
,
"enableSearch"
:
true
,
"showCaptionBar"
:
false
,
"modelid"
:
"36bc83bf45e2fbb5a963ad751cb9a13f"
,
"modeltype"
:
"PSAPPDEVIEW"
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZOrderGanttView.json
浏览文件 @
1e2075ea
...
...
@@ -300,18 +300,86 @@
"getPSDEViewCodeName"
:
"GanttView"
,
"getPSDEViewId"
:
"c3ddd155476e8daf26399772541b4789"
,
"getPSViewLayoutPanel"
:
{
"getAllPSPanelFields"
:
[
{
"id"
:
"view_pagecaption"
}
],
"codeName"
:
"Layoutpanel"
,
"controlStyle"
:
"APPDEGANTTVIEW"
,
"controlType"
:
"VIEWLAYOUTPANEL"
,
"layoutMode"
:
"TABLE_24COL"
,
"logicName"
:
"甘特视图"
,
"name"
:
"layoutpanel"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZOrder.json"
},
"getPSControlParam"
:
{
},
"getPSLayout"
:
{
"columnCount"
:
24
,
"layout"
:
"TABLE_24COL"
},
"getRootPSPanelItems"
:
[
{
"caption"
:
"容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"page_container"
,
"getPSLayout"
:
{
"layout"
:
"FLEX"
},
"getPSLayoutPos"
:
{
"colMD"
:
24
,
"layout"
:
"TABLE_24COL"
},
"getPSPanelItems"
:
[
{
"caption"
:
"栅格容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container_grid1"
,
"getPSLayout"
:
{
"layout"
:
"SIMPLEFLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"面板容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container1"
,
"getPSLayout"
:
{
"layout"
:
"SIMPLEFLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
12
,
"layout"
:
"SIMPLEFLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"页面标题"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"FIELD"
,
"name"
:
"view_pagecaption"
,
"getPSEditor"
:
{
"editorType"
:
"SPAN"
,
"name"
:
"view_pagecaption"
,
"predefinedType"
:
"VIEW_PAGECAPTION"
,
"renderMode"
:
"HEADING1"
,
"enableLinkView"
:
false
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"SIMPLEFLEX"
},
"hidden"
:
false
,
"showCaption"
:
false
}
]
}
]
}
]
}
],
"layoutBodyOnly"
:
true
,
"layoutPanel"
:
true
,
"useDefaultLayout"
:
true
"useDefaultLayout"
:
false
,
"modelid"
:
"3CF2CD83-FDEC-40C2-9FE7-AC4494127B7D"
,
"modeltype"
:
"PSSYSVIEWLAYOUTPANEL"
},
"title"
:
"实体甘特视图"
,
"viewStyle"
:
"DEFAULT"
,
...
...
demo-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
1e2075ea
...
...
@@ -172,7 +172,7 @@
<!--输出实体[IBIZBOOK]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-1
34
-7"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-1
40
-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-1
29
-14"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizorder-1
42
-14"
>
<createTable
tableName=
"T_IBIZORDER"
>
<column
name=
"TP"
remarks=
""
type=
"TEXT(1048576)"
>
</column>
...
...
@@ -986,7 +986,7 @@
<!--输出实体[IBIZSAMPLE0014]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0014-
1
-32"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0014-
2
-32"
>
<createTable
tableName=
"T_IBIZSAMPLE0014"
>
<column
name=
"IBIZSAMPLE0014NAME"
remarks=
""
type=
"VARCHAR(200)"
>
</column>
...
...
@@ -1010,7 +1010,7 @@
<!--输出实体[IBIZSAMPLE0015]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0015-
1
-33"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0015-
2
-33"
>
<createTable
tableName=
"T_IBIZSAMPLE0015"
>
<column
name=
"CREATEDATE"
remarks=
""
type=
"DATETIME"
>
</column>
...
...
@@ -1034,7 +1034,7 @@
<!--输出实体[IBIZSAMPLE0016]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0016-
1
-34"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0016-
3
-34"
>
<createTable
tableName=
"T_IBIZSAMPLE0016"
>
<column
name=
"CREATEMAN"
remarks=
""
type=
"VARCHAR(60)"
>
</column>
...
...
demo-core/src/main/resources/liquibase/view.xml
浏览文件 @
1e2075ea
...
...
@@ -37,7 +37,7 @@
</createView>
</changeSet>
<!--输出实体[IBIZORDER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-1
29
-8"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-1
42
-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>
...
...
@@ -145,19 +145,19 @@
</createView>
</changeSet>
<!--输出实体[IBIZSAMPLE0014]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0014-
1
-26"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0014-
2
-26"
runOnChange=
"true"
>
<createView
fullDefinition=
"false"
replaceIfExists=
"true"
viewName=
"V_IBIZSAMPLE0014"
>
<![CDATA[ SELECT t1.[CREATEDATE], t1.[CREATEMAN], t1.[IBIZSAMPLE0014ID], t1.[IBIZSAMPLE0014NAME], t1.[SN], t1.[UPDATEDATE], t1.[UPDATEMAN] FROM [T_IBIZSAMPLE0014] t1 ]]>
</createView>
</changeSet>
<!--输出实体[IBIZSAMPLE0015]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0015-
1
-27"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0015-
2
-27"
runOnChange=
"true"
>
<createView
fullDefinition=
"false"
replaceIfExists=
"true"
viewName=
"V_IBIZSAMPLE0015"
>
<![CDATA[ SELECT t1.[CONTENT], t1.[CREATEDATE], t1.[CREATEMAN], t1.[IBIZSAMPLE0015ID], t1.[IBIZSAMPLE0015NAME], t1.[SN], t1.[UPDATEDATE], t1.[UPDATEMAN] FROM [T_IBIZSAMPLE0015] t1 ]]>
</createView>
</changeSet>
<!--输出实体[IBIZSAMPLE0016]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0016-
1
-28"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizsample0016-
3
-28"
runOnChange=
"true"
>
<createView
fullDefinition=
"false"
replaceIfExists=
"true"
viewName=
"V_IBIZSAMPLE0016"
>
<![CDATA[ SELECT t1.[CREATEDATE], t1.[CREATEMAN], t1.[IBIZSAMPLE0014ID], t21.[IBIZSAMPLE0014NAME], t1.[IBIZSAMPLE0015ID], t11.[IBIZSAMPLE0015NAME], t1.[IBIZSAMPLE0016ID], t1.[IBIZSAMPLE0016NAME], t1.[UPDATEDATE], t1.[UPDATEMAN] FROM [T_IBIZSAMPLE0016] t1 LEFT JOIN T_IBIZSAMPLE0015 t11 ON t1.IBIZSAMPLE0015ID = t11.IBIZSAMPLE0015ID LEFT JOIN T_IBIZSAMPLE0014 t21 ON t1.IBIZSAMPLE0014ID = t21.IBIZSAMPLE0014ID ]]>
</createView>
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录