Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
功
功能演示系统
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
示例
功能演示系统
提交
ddac090e
提交
ddac090e
编写于
11月 04, 2022
作者:
ibizdev
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Mosher 发布系统代码 [后台服务,演示应用]
上级
e3750ee1
变更
15
隐藏空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
594 行增加
和
322 行删除
+594
-322
ibizbookcustom-view-base.vue
...s/sample/ibizbookcustom-view/ibizbookcustom-view-base.vue
+188
-16
ibizbookcustom-view.less
...pages/sample/ibizbookcustom-view/ibizbookcustom-view.less
+3
-6
ibizbookusr2-medit-view9-base.vue
...bizbookusr2-medit-view9/ibizbookusr2-medit-view9-base.vue
+34
-231
ibizbookusr2-medit-view9.less
...le/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.less
+7
-2
ibizbookusr2-medit-view9.vue
...ple/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.vue
+0
-2
ibizsample0021-wfdyna-action-view-base.vue
...na-action-view/ibizsample0021-wfdyna-action-view-base.vue
+230
-36
ibizsample0021-wfdyna-action-view.less
...wfdyna-action-view/ibizsample0021-wfdyna-action-view.less
+3
-6
grid-view-load-ui-logic-base.ts
...b/src/uiservice/ibizorder/grid-view-load-ui-logic-base.ts
+5
-5
open-yu-que-ui-logic-base.ts
app_Web/src/uiservice/ibizorder/open-yu-que-ui-logic-base.ts
+3
-3
default-searchform-base.vue
...zappeditor/default-searchform/default-searchform-base.vue
+2
-2
usr4-dataview-model.ts
...src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
+0
-5
IBIZBOOKCustomView.json
...emodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKCustomView.json
+22
-2
IBIZSample0021WFDynaActionView.json
...APPS/Web/PSAPPDEVIEWS/IBIZSample0021WFDynaActionView.json
+93
-2
h2_table.xml
demo-core/src/main/resources/liquibase/h2_table.xml
+3
-3
view.xml
demo-core/src/main/resources/liquibase/view.xml
+1
-1
未找到文件。
app_Web/src/pages/sample/ibizbookcustom-view/ibizbookcustom-view-base.vue
浏览文件 @
ddac090e
<
template
>
<div
class=
"view-container decustomview ibizbookcustom-view"
>
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizbookcustomview"
></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=
'VMGroup85'
viewname=
'ibizbookcustomview'
></app-alert-group>
</div>
<div
class=
"content-container"
>
</div>
</card>
</div>
<div
v-if=
"!isLayoutLoadding"
class=
"app-view-layout ibizbookcustom-view"
:style=
"
{height: '100%', width: '100%', overflow: 'auto'}">
<app-standard-container
name=
"page_container"
:layoutModelDetails=
"layoutModelDetails"
>
</app-standard-container>
</div>
</
template
>
<
script
lang=
'tsx'
>
...
...
@@ -22,6 +15,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
({
...
...
@@ -213,6 +207,181 @@ export default class IBIZBOOKCustomViewBase extends Vue {
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
rootLayoutDetailNames
:
string
[]
=
[
'page_container'
];
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
layoutItems
:
any
=
{
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
:[]
,
dataRegionType
:
'INHERIT'
}
};
/**
* 视图布局是否加载
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
isLayoutLoadding
:
boolean
=
true
;
/**
* 视图布局数据
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
layoutData
:
any
=
{};
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
layoutModelDetails
:
any
=
{};
/**
* 初始化布局
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
async
initLayout
()
{
if
(
this
.
rootLayoutDetailNames
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
rootLayoutDetailNames
.
length
;
i
++
)
{
const
name
=
this
.
rootLayoutDetailNames
[
i
];
const
rootItem
=
this
.
layoutItems
[
name
];
if
(
!
rootItem
)
{
return
;
}
await
this
.
initLayoutItem
(
rootItem
);
}
}
return
true
;
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
public
async
initLayoutItem
(
layoutModelItem
:
any
,
index
:
number
=
0
)
{
const
{
name
}
=
layoutModelItem
;
const
layoutModelDetail
=
Util
.
getLayoutItemInstance
(
layoutModelItem
);
if
(
!
index
)
{
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
layoutData
[
name
]
=
layoutModelDetail
.
getData
();
this
.
$set
(
this
.
layoutData
,
name
,
layoutModelDetail
.
getData
());
this
.
$set
(
this
.
layoutModelDetails
,
name
,
layoutModelDetail
);
}
else
{
layoutModelDetail
.
setIndex
(
index
);
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
$set
(
this
.
layoutModelDetails
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
);
this
.
$set
(
this
.
layoutData
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
.
getData
());
}
if
(
layoutModelDetail
&&
layoutModelDetail
.
details
)
{
if
(
layoutModelDetail
.
dataRegionType
===
'MULTIDATA'
)
{
const
multiData
=
layoutModelDetail
.
getData
();
if
(
multiData
&&
multiData
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
multiData
.
length
;
i
++
)
{
for
(
let
j
=
0
;
j
<
layoutModelDetail
.
details
.
length
;
j
++
)
{
const
key
=
layoutModelDetail
.
details
[
j
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
i
);
}
}
}
}
}
else
{
for
(
let
i
=
0
;
i
<
layoutModelDetail
.
details
.
length
;
i
++
)
{
const
key
=
layoutModelDetail
.
details
[
i
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
index
);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
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 IBIZBOOKCustomViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
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
.
parentName
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZBOOKCustomViewBase
*/
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
;
}
/**
...
...
@@ -531,11 +700,14 @@ export default class IBIZBOOKCustomViewBase extends Vue {
*/
public
afterMounted
(){
const
_this
:
any
=
this
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
_this
.
initLayout
().
then
((
result
:
any
)
=>
{
_this
.
isLayoutLoadding
=
false
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
})
}
...
...
app_Web/src/pages/sample/ibizbookcustom-view/ibizbookcustom-view.less
浏览文件 @
ddac090e
.ibizbookcustom-view{
position: relative;
}
.ibizbookcustom-view {
display: block;
}
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9-base.vue
浏览文件 @
ddac090e
<
template
>
<div
v-if=
"!isLayoutLoadding"
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"
:context=
"context"
:showBusyIndicator=
"true"
:saveRefView=
"saveRefView"
@
viewdatadirty=
"onViewDataDirty"
@
drdatasaved=
"onDRDataSaved"
updateAction=
""
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
""
createAction=
""
fetchAction=
"FetchDefault"
name=
"meditviewpanel"
ref=
'meditviewpanel'
@
closeview=
"closeView($event)"
>
</view
_meditviewpanel
>
</app-ctrl-pos>
</
template
>
</app-standard-container>
</template>
</app-standard-container>
</div>
<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"
>
<view
_meditviewpanel
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:showBusyIndicator=
"true"
:saveRefView=
"saveRefView"
@
viewdatadirty=
"onViewDataDirty"
@
drdatasaved=
"onDRDataSaved"
updateAction=
""
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
""
createAction=
""
fetchAction=
"FetchDefault"
name=
"meditviewpanel"
ref=
'meditviewpanel'
@
closeview=
"closeView($event)"
>
</view
_meditviewpanel
>
</div>
</card>
</div>
</
template
>
<
script
lang=
'tsx'
>
...
...
@@ -52,7 +40,6 @@ 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
({
...
...
@@ -222,7 +209,6 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
*/
public
containerModel
:
any
=
{
view_meditviewpanel
:
{
name
:
'meditviewpanel'
,
type
:
'MULTIEDITVIEWPANEL'
},
view_searchbar
:
{
name
:
'searchbar'
,
type
:
'SEARCHBAR'
},
};
/**
...
...
@@ -250,186 +236,6 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
rootLayoutDetailNames
:
string
[]
=
[
'page_container'
];
/**
* 视图布局面板项模型对象
*
* @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
isLayoutLoadding
:
boolean
=
true
;
/**
* 视图布局数据
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutData
:
any
=
{};
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
layoutModelDetails
:
any
=
{};
/**
* 初始化布局
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
async
initLayout
()
{
if
(
this
.
rootLayoutDetailNames
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
rootLayoutDetailNames
.
length
;
i
++
)
{
const
name
=
this
.
rootLayoutDetailNames
[
i
];
const
rootItem
=
this
.
layoutItems
[
name
];
if
(
!
rootItem
)
{
return
;
}
await
this
.
initLayoutItem
(
rootItem
);
}
}
return
true
;
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZBOOKUsr2MEditView9Base
*/
public
async
initLayoutItem
(
layoutModelItem
:
any
,
index
:
number
=
0
)
{
const
{
name
}
=
layoutModelItem
;
const
layoutModelDetail
=
Util
.
getLayoutItemInstance
(
layoutModelItem
);
if
(
!
index
)
{
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
layoutData
[
name
]
=
layoutModelDetail
.
getData
();
this
.
$set
(
this
.
layoutData
,
name
,
layoutModelDetail
.
getData
());
this
.
$set
(
this
.
layoutModelDetails
,
name
,
layoutModelDetail
);
}
else
{
layoutModelDetail
.
setIndex
(
index
);
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
$set
(
this
.
layoutModelDetails
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
);
this
.
$set
(
this
.
layoutData
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
.
getData
());
}
if
(
layoutModelDetail
&&
layoutModelDetail
.
details
)
{
if
(
layoutModelDetail
.
dataRegionType
===
'MULTIDATA'
)
{
const
multiData
=
layoutModelDetail
.
getData
();
if
(
multiData
&&
multiData
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
multiData
.
length
;
i
++
)
{
for
(
let
j
=
0
;
j
<
layoutModelDetail
.
details
.
length
;
j
++
)
{
const
key
=
layoutModelDetail
.
details
[
j
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
i
);
}
}
}
}
}
else
{
for
(
let
i
=
0
;
i
<
layoutModelDetail
.
details
.
length
;
i
++
)
{
const
key
=
layoutModelDetail
.
details
[
i
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
index
);
}
}
}
}
}
/**
* 处理值改变
*
* @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
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
.
parentName
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
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
;
}
...
...
@@ -749,13 +555,11 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
*/
public
afterMounted
(){
const
_this
:
any
=
this
;
_this
.
initLayout
().
then
((
result
:
any
)
=>
{
_this
.
isLayoutLoadding
=
false
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
if
(
this
.
formDruipart
){
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
if
(
this
.
formDruipart
){
this
.
formDruipart
.
subscribe
((
res
)
=>
{
if
(
Object
.
is
(
res
.
action
,
'save'
)){
this
.
viewState
.
next
({
tag
:
'meditviewpanel'
,
action
:
'save'
,
data
:
this
.
viewparams
});
...
...
@@ -771,7 +575,6 @@ export default class IBIZBOOKUsr2MEditView9Base extends Vue {
this
.
viewState
.
next
({
tag
:
'meditviewpanel'
,
action
:
'load'
,
data
:
this
.
viewparams
});
}
})
}
...
...
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.less
浏览文件 @
ddac090e
.ibizbookusr2-medit-view9 {
display: block;
.ibizbookusr2-medit-view9{
position: relative;
}
.ibizbookusr2-medit-view9{
display: block;
}
app_Web/src/pages/sample/ibizbookusr2-medit-view9/ibizbookusr2-medit-view9.vue
浏览文件 @
ddac090e
...
...
@@ -3,11 +3,9 @@ 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/ibizsample0021-wfdyna-action-view/ibizsample0021-wfdyna-action-view-base.vue
浏览文件 @
ddac090e
<
template
>
<div
class=
"view-container dewfdynaactionview ibizsample0021-wfdyna-action-view"
>
<app-studioaction
:viewTitle=
"$t(model.srfCaption)"
viewName=
"ibizsample0021wfdynaactionview"
></app-studioaction>
<card
class=
'view-card view-no-caption view-no-toolbar'
:disHover=
"true"
:padding=
"0"
:bordered=
"false"
>
<div
class=
"content-container"
>
<component
:is=
"activeForm.name"
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:autosave=
"false"
:viewtag=
"viewtag"
:showBusyIndicator=
"activeForm.showBusyIndicator"
:updateAction=
"activeForm.updateAction"
:removeAction=
"activeForm.removeAction"
:loaddraftAction=
"activeForm.loaddraftAction"
:loadAction=
"activeForm.loadAction"
:createAction=
"activeForm.createAction"
:WFSubmitAction=
"activeForm.WFSubmitAction"
:WFStartAction=
"activeForm.WFStartAction"
name=
"form"
ref=
'form'
>
</component>
<div
v-if=
"!isLayoutLoadding"
class=
"app-view-layout ibizsample0021-wfdyna-action-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
#
form
>
<app-ctrl-pos
name=
"form"
:layoutModelDetails=
"layoutModelDetails"
>
<view
_form
:viewState=
"viewState"
:viewparams=
"viewparams"
:context=
"context"
:autosave=
"false"
:viewtag=
"viewtag"
:showBusyIndicator=
"true"
updateAction=
"Update"
removeAction=
"Remove"
loaddraftAction=
"GetDraft"
loadAction=
"Get"
createAction=
"Create"
WFSubmitAction=
""
WFStartAction=
""
style=
''
name=
"form"
ref=
'form'
@
closeview=
"closeView($event)"
>
</view
_form
>
</app-ctrl-pos>
</
template
>
</app-standard-container>
</template>
</app-standard-container>
</div>
<card
dis-hover
:bordered=
"false"
class=
'footer'
>
<row
style=
" text-align: right "
>
<i-button
type=
'primary'
@
click=
"onClickOk"
>
{{
$t
(
"app.commonWords.ok"
)
}}
</i-button>
<i-button
@
click=
"onClickCancel"
>
{{
$t
(
"app.commonWords.cancel"
)
}}
</i-button>
</row>
</card>
</card>
</div>
</template>
<
script
lang=
'tsx'
>
...
...
@@ -43,6 +53,7 @@ import IBIZSample0021AuthService from '@/authservice/ibizsample0021/ibizsample00
import
IBIZSample0021UIService
from
'@/uiservice/ibizsample0021/ibizsample0021-ui-service'
;
import
{
PanelContainerModel
,
PanelRawitemModel
,
PanelFieldModel
,
PanelControlModel
,
PanelButtonModel
,
PanelUserControlModel
,
PanelTabPanelModel
,
PanelTabPageModel
,
PanelCtrlPosModel
}
from
'@/model/panel-detail'
;
@
Component
({
...
...
@@ -255,6 +266,186 @@ export default class IBIZSample0021WFDynaActionViewBase extends Vue {
*/
public
viewState
:
Subject
<
ViewState
>
=
new
Subject
();
/**
* 视图布局顶级成员名称
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
public
rootLayoutDetailNames
:
string
[]
=
[
'page_container'
];
/**
* 视图布局面板项模型对象
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
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'
},
form
:{
name
:
'form'
,
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
:[
'form'
]
,
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 IBIZSample0021WFDynaActionViewBase
*/
public
isLayoutLoadding
:
boolean
=
true
;
/**
* 视图布局数据
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
public
layoutData
:
any
=
{};
/**
* 视图布局面板模型对象
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
public
layoutModelDetails
:
any
=
{};
/**
* 初始化布局
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
public
async
initLayout
()
{
if
(
this
.
rootLayoutDetailNames
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
this
.
rootLayoutDetailNames
.
length
;
i
++
)
{
const
name
=
this
.
rootLayoutDetailNames
[
i
];
const
rootItem
=
this
.
layoutItems
[
name
];
if
(
!
rootItem
)
{
return
;
}
await
this
.
initLayoutItem
(
rootItem
);
}
}
return
true
;
}
/**
* 初始化布局项
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
public
async
initLayoutItem
(
layoutModelItem
:
any
,
index
:
number
=
0
)
{
const
{
name
}
=
layoutModelItem
;
const
layoutModelDetail
=
Util
.
getLayoutItemInstance
(
layoutModelItem
);
if
(
!
index
)
{
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
layoutData
[
name
]
=
layoutModelDetail
.
getData
();
this
.
$set
(
this
.
layoutData
,
name
,
layoutModelDetail
.
getData
());
this
.
$set
(
this
.
layoutModelDetails
,
name
,
layoutModelDetail
);
}
else
{
layoutModelDetail
.
setIndex
(
index
);
await
layoutModelDetail
.
load
(
this
.
context
,
this
.
viewparams
);
this
.
$set
(
this
.
layoutModelDetails
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
);
this
.
$set
(
this
.
layoutData
,
`
${
name
}
_
${
index
}
`
,
layoutModelDetail
.
getData
());
}
if
(
layoutModelDetail
&&
layoutModelDetail
.
details
)
{
if
(
layoutModelDetail
.
dataRegionType
===
'MULTIDATA'
)
{
const
multiData
=
layoutModelDetail
.
getData
();
if
(
multiData
&&
multiData
.
length
>
0
)
{
for
(
let
i
=
0
;
i
<
multiData
.
length
;
i
++
)
{
for
(
let
j
=
0
;
j
<
layoutModelDetail
.
details
.
length
;
j
++
)
{
const
key
=
layoutModelDetail
.
details
[
j
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
i
);
}
}
}
}
}
else
{
for
(
let
i
=
0
;
i
<
layoutModelDetail
.
details
.
length
;
i
++
)
{
const
key
=
layoutModelDetail
.
details
[
i
];
if
(
this
.
layoutItems
[
key
])
{
await
this
.
initLayoutItem
(
this
.
layoutItems
[
key
],
index
);
}
}
}
}
}
/**
* 处理值改变
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
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 IBIZSample0021WFDynaActionViewBase
*/
public
getButtonXData
(
name
:
string
):
any
{
let
xData
=
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
.
parentName
)
{
parentLayoutModel
=
pLayoutModel
;
if
(
parentLayoutModel
.
dataRegionType
==
'SINGLEDATA'
||
parentLayoutModel
.
dataRegionType
==
'MULTIDATA'
)
{
dataArea
=
parentLayoutModel
;
}
}
})
if
(
!
dataArea
&&
parentLayoutModel
)
{
dataArea
=
getDataArea
(
parentLayoutModel
);
}
return
dataArea
;
}
xData
=
getDataArea
(
curLayoutModel
);
}
// 获取当前视图
if
(
!
xData
)
{
xData
=
this
;
}
return
xData
;
}
/**
* 处理按钮点击
*
* @public
* @memberof IBIZSample0021WFDynaActionViewBase
*/
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
;
}
/**
...
...
@@ -573,12 +764,15 @@ export default class IBIZSample0021WFDynaActionViewBase extends Vue {
*/
public
afterMounted
(){
const
_this
:
any
=
this
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
this
.
viewState
.
next
({
tag
:
"form"
,
action
:
"autoload"
,
data
:
{
srfkey
:
this
.
context
.
ibizsample0021
}
});
_this
.
initLayout
().
then
((
result
:
any
)
=>
{
_this
.
isLayoutLoadding
=
false
;
_this
.
engineInit
();
if
(
_this
.
loadModel
&&
_this
.
loadModel
instanceof
Function
)
{
_this
.
loadModel
();
}
this
.
viewState
.
next
({
tag
:
"form"
,
action
:
"autoload"
,
data
:
{
srfkey
:
this
.
context
.
ibizsample0021
}
});
})
}
...
...
app_Web/src/pages/sample/ibizsample0021-wfdyna-action-view/ibizsample0021-wfdyna-action-view.less
浏览文件 @
ddac090e
.ibizsample0021-wfdyna-action-view{
position: relative;
}
.ibizsample0021-wfdyna-action-view {
display: block;
}
app_Web/src/uiservice/ibizorder/grid-view-load-ui-logic-base.ts
浏览文件 @
ddac090e
...
...
@@ -79,11 +79,11 @@ export default class GridViewLoadUILogicBase {
protected
logicNodes
:
ILogicNode
[]
=
[
{
codeName
:
'Begin'
,
name
:
'开始'
,
logicNodeType
:
'BEGIN'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'BINDPARAM1'
,
}
]
}
{
codeName
:
'BINDPARAM1'
,
name
:
'绑定当前搜索表单'
,
logicNodeType
:
'BINDPARAM'
,
dstParam
:
'searchForm'
,
srcParam
:
'view'
,
srcFieldName
:
'searchForm'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'VIEWCTRLINVOKE1'
,
}
]
}
{
codeName
:
'VIEWCTRLINVOKE1'
,
name
:
'视图部件调用'
,
logicNodeType
:
'VIEWCTRLINVOKE'
,
dstParam
:
'viewParam'
,
srcParam
:
'searchForm'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'VIEWCTRLINVOKE2'
,
}
]
}
{
codeName
:
'END1'
,
name
:
'结束'
,
logicNodeType
:
'END'
,
returnType
:
'NONEVALUE'
,
returnRawValue
:
''
,
}
{
codeName
:
'VIEWCTRLINVOKE2'
,
name
:
'视图部件调用'
,
logicNodeType
:
'VIEWCTRLINVOKE'
,
dstParam
:
'viewParam'
,
srcParam
:
'grid'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'END1'
,
}
]
}
{
codeName
:
'Begin'
,
name
:
'开始'
,
logicNodeType
:
'BEGIN'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'BINDPARAM1'
,
}
]
}
,
{
codeName
:
'BINDPARAM1'
,
name
:
'绑定当前搜索表单'
,
logicNodeType
:
'BINDPARAM'
,
dstParam
:
'searchForm'
,
srcParam
:
'view'
,
srcFieldName
:
'searchForm'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'VIEWCTRLINVOKE1'
,
}
]
}
,
{
codeName
:
'VIEWCTRLINVOKE1'
,
name
:
'视图部件调用'
,
logicNodeType
:
'VIEWCTRLINVOKE'
,
dstParam
:
'viewParam'
,
srcParam
:
'searchForm'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'VIEWCTRLINVOKE2'
,
}
]
}
,
{
codeName
:
'END1'
,
name
:
'结束'
,
logicNodeType
:
'END'
,
returnType
:
'NONEVALUE'
,
returnRawValue
:
''
,
}
,
{
codeName
:
'VIEWCTRLINVOKE2'
,
name
:
'视图部件调用'
,
logicNodeType
:
'VIEWCTRLINVOKE'
,
dstParam
:
'viewParam'
,
srcParam
:
'grid'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'END1'
,
}
]
}
,
];
public
beforeExecute
(
args
:
any
,
context
:
any
=
{},
params
:
any
=
{},
...
...
app_Web/src/uiservice/ibizorder/open-yu-que-ui-logic-base.ts
浏览文件 @
ddac090e
...
...
@@ -35,9 +35,9 @@ export default class OpenYuQueUILogicBase {
protected
logicNodes
:
ILogicNode
[]
=
[
{
codeName
:
'Begin'
,
name
:
'开始'
,
logicNodeType
:
'BEGIN'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'DEUIACTION1'
,
}
]
}
{
codeName
:
'END1'
,
name
:
'结束'
,
logicNodeType
:
'END'
,
returnType
:
'NONEVALUE'
,
returnRawValue
:
''
,
}
{
codeName
:
'DEUIACTION1'
,
name
:
'界面行为'
,
logicNodeType
:
'DEUIACTION'
,
dstParam
:
'Default'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'END1'
,
}
]
}
{
codeName
:
'Begin'
,
name
:
'开始'
,
logicNodeType
:
'BEGIN'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'DEUIACTION1'
,
}
]
}
,
{
codeName
:
'END1'
,
name
:
'结束'
,
logicNodeType
:
'END'
,
returnType
:
'NONEVALUE'
,
returnRawValue
:
''
,
}
,
{
codeName
:
'DEUIACTION1'
,
name
:
'界面行为'
,
logicNodeType
:
'DEUIACTION'
,
dstParam
:
'Default'
,
logicLinks
:
[
{
name
:
'连接名称'
,
dstLogicNode
:
'END1'
,
}
]
}
,
];
public
beforeExecute
(
args
:
any
,
context
:
any
=
{},
params
:
any
=
{},
...
...
app_Web/src/widgets/ibizappeditor/default-searchform/default-searchform-base.vue
浏览文件 @
ddac090e
...
...
@@ -590,7 +590,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
:
'IBIZAPPEDITOR
List
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZAPPEDITOR
Grid
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loadAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
};
...
...
@@ -626,7 +626,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
:
'IBIZAPPEDITOR
List
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
this
.
$Notice
.
error
({
title
:
(
this
.
$t
(
'app.commonWords.wrong'
)
as
string
),
desc
:
'IBIZAPPEDITOR
Grid
View'
+
(
this
.
$t
(
'app.searchForm.notConfig.loaddraftAction'
)
as
string
)
});
return
;
}
const
arg
:
any
=
{
...
opt
}
;
...
...
app_Web/src/widgets/ibizbook/usr4-dataview/usr4-dataview-model.ts
浏览文件 @
ddac090e
...
...
@@ -69,11 +69,6 @@ export default class Usr4Model {
prop
:
'n_ibizbookname_like'
,
dataType
:
'QUERYPARAM'
},
{
name
:
'n_price_gtandeq'
,
prop
:
'n_price_gtandeq'
,
dataType
:
'QUERYPARAM'
},
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZBOOKCustomView.json
浏览文件 @
ddac090e
...
...
@@ -19,17 +19,37 @@
"getPSDEViewId"
:
"621af848e45cfa22f4e35363132223de"
,
"getPSViewLayoutPanel"
:
{
"codeName"
:
"Layoutpanel"
,
"controlStyle"
:
"APPDECUSTOMVIEW"
,
"controlType"
:
"VIEWLAYOUTPANEL"
,
"layoutMode"
:
"TABLE_24COL"
,
"logicName"
:
"自定义视图"
,
"name"
:
"layoutpanel"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZBOOK.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"
}
}
],
"layoutBodyOnly"
:
true
,
"layoutPanel"
:
true
,
"useDefaultLayout"
:
true
"useDefaultLayout"
:
false
,
"modelid"
:
"01998BC8-AF5A-46BD-BA0A-4E87605B3F52"
,
"modeltype"
:
"PSSYSVIEWLAYOUTPANEL"
},
"title"
:
"实体自定义视图"
,
"getTitlePSLanguageRes"
:
{
...
...
demo-boot/src/main/resources/static/remotemodel/PSSYSAPPS/Web/PSAPPDEVIEWS/IBIZSample0021WFDynaActionView.json
浏览文件 @
ddac090e
...
...
@@ -796,18 +796,109 @@
"getPSDEViewCodeName"
:
"WFDynaActionView"
,
"getPSDEViewId"
:
"19a3720def6d047565e10cc1c13ad528"
,
"getPSViewLayoutPanel"
:
{
"getAllPSPanelFields"
:
[
{
"id"
:
"view_pagecaption"
}
],
"codeName"
:
"Layoutpanel"
,
"controlStyle"
:
"APPDEWFDYNAACTIONVIEW"
,
"controlType"
:
"VIEWLAYOUTPANEL"
,
"layoutMode"
:
"TABLE_24COL"
,
"logicName"
:
"工作流动态操作视图"
,
"name"
:
"layoutpanel"
,
"getPSAppDataEntity"
:
{
"modelref"
:
true
,
"path"
:
"PSSYSAPPS/Web/PSAPPDATAENTITIES/IBIZSample0021.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
}
]
}
]
},
{
"caption"
:
"容器"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CONTAINER"
,
"name"
:
"container2"
,
"getPSLayout"
:
{
"layout"
:
"FLEX"
},
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"getPSPanelItems"
:
[
{
"caption"
:
"表单部件"
,
"itemStyle"
:
"DEFAULT"
,
"itemType"
:
"CTRLPOS"
,
"name"
:
"form"
,
"getPSLayoutPos"
:
{
"grow"
:
-1
,
"layout"
:
"FLEX"
},
"showCaption"
:
true
}
]
}
]
}
],
"layoutBodyOnly"
:
true
,
"layoutPanel"
:
true
,
"useDefaultLayout"
:
true
"useDefaultLayout"
:
false
,
"modelid"
:
"097A58CF-B640-4092-B2A4-75A59BE2E1D3"
,
"modeltype"
:
"PSSYSVIEWLAYOUTPANEL"
},
"title"
:
"订单工作流动态操作视图"
,
"viewStyle"
:
"DEFAULT"
,
...
...
demo-core/src/main/resources/liquibase/h2_table.xml
浏览文件 @
ddac090e
...
...
@@ -172,7 +172,7 @@
<!--输出实体[IBIZBOOK]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-15
2
-7"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizbook-15
6
-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
78
-14"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizorder-1
80
-14"
>
<createTable
tableName=
"T_IBIZORDER"
>
<column
name=
"TP"
remarks=
""
type=
"TEXT(1048576)"
>
</column>
...
...
@@ -1160,7 +1160,7 @@
<!--输出实体[IBIZSAMPLE0021]数据结构 -->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0021-2
1
-39"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"tab-ibizsample0021-2
7
-39"
>
<createTable
tableName=
"T_IBIZSAMPLE0021"
>
<column
name=
"IBIZSAMPLE0021ID"
remarks=
""
type=
"VARCHAR(100)"
>
<constraints
primaryKey=
"true"
primaryKeyName=
"PK_IBIZSAMPLE0021_IBIZSAMPLE00"
/>
...
...
demo-core/src/main/resources/liquibase/view.xml
浏览文件 @
ddac090e
...
...
@@ -37,7 +37,7 @@
</createView>
</changeSet>
<!--输出实体[IBIZORDER]视图结构信息 runOnChange="true" 当视图发生变更时,通过liquibase强刷prod的视图,实现视图的同步-->
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-1
78
-8"
runOnChange=
"true"
>
<changeSet
author=
"a_LAB01_df847bdfd"
id=
"view-ibizorder-1
80
-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>
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录