Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-generator
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-generator
提交
e7a77bb7
提交
e7a77bb7
编写于
1月 20, 2022
作者:
WodahsOrez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update: 系统预置界面行为
上级
a607e251
变更
2
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
178 行增加
和
59 行删除
+178
-59
app-sys-action.ts
...p_{{apps}}/src/core/logic/app-ui-action/app-sys-action.ts
+176
-57
{{ctrls@GRID}}-grid.vue.hbs
...ntities}}/{{ctrls@GRID}}-grid/{{ctrls@GRID}}-grid.vue.hbs
+2
-2
未找到文件。
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/logic/app-ui-action/app-sys-action.ts
浏览文件 @
e7a77bb7
import
{
IContext
,
IParam
,
ViewUtil
}
from
"@core"
;
import
{
hasFunction
,
IContext
,
IParam
,
isExist
,
ViewUtil
}
from
'@core'
;
/**
* 界面行为参数对象
*
* @export
* @interface IUIActionParams
*/
export
interface
IUIActionParams
{
/**
* 上下文参数
*/
context
:
IContext
;
/**
* 视图参数
*/
viewParams
:
IParam
;
/**
* 当前激活数据
*/
data
:
IParam
;
/**
* js事件源对象
*/
event
:
MouseEvent
;
/**
* 当前上下文环境引用
*/
actionEnvironment
:
IParam
;
}
/**
* 系统预置界面行为
...
...
@@ -7,66 +36,156 @@ import { IContext, IParam, ViewUtil } from "@core";
* @class AppSysAction
*/
export
class
AppSysAction
{
/**
* 执行预置界面行为
*
* @static
* @param {IParam} uiAction 界面行为对象
* @param {IUIActionParams} params 界面行为参数对象
* @memberof AppSysAction
*/
public
static
async
execute
(
uiAction
:
IParam
,
params
:
IUIActionParams
)
{
const
tag
=
uiAction
.
uIActionTag
;
switch
(
tag
)
{
case
'Edit'
:
this
.
edit
(
params
);
break
;
case
'New'
:
this
.
new
(
params
);
break
;
case
'Save'
:
this
.
save
(
params
);
break
;
case
'SaveRow'
:
this
.
saveRow
(
params
);
break
;
case
'Remove'
:
this
.
remove
(
params
);
break
;
case
'ToggleRowEdit'
:
this
.
toggleRowEdit
(
params
);
break
;
case
'NewRow'
:
this
.
newRow
(
params
);
break
;
default
:
console
.
log
(
`未支持
${
tag
}
`
);
}
}
/**
* 编辑
*
* @static
* @param params 界面行为参数对象
* @return {*}
*/
public
static
edit
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
if
(
!
actionEnvironment
?.
state
?.
viewLogics
?.
openData
?.
openDataViewName
)
{
return
;
}
const
viewName
=
actionEnvironment
?.
state
.
viewLogics
.
openData
.
openDataViewName
;
const
view
=
App
.
getViewInfo
(
viewName
);
if
(
!
view
)
{
return
;
}
ViewUtil
.
openData
(
view
,
params
);
}
/**
* 新建
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
new
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
if
(
!
actionEnvironment
?.
state
?.
viewLogics
?.
newData
?.
newDataViewName
)
{
return
;
}
const
viewName
=
actionEnvironment
?.
state
.
viewLogics
.
newData
.
newDataViewName
;
const
view
=
App
.
getViewInfo
(
viewName
);
if
(
!
view
)
{
return
;
}
ViewUtil
.
newData
(
view
,
params
);
}
/**
* 行编辑
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
toggleRowEdit
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
if
(
isExist
(
actionEnvironment
.
state
.
rowEditState
)){
actionEnvironment
.
state
.
rowEditState
=
!
actionEnvironment
.
state
.
rowEditState
;
}
}
/**
* 新建行
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
newRow
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
// 视图里获取多数据部件
if
(
hasFunction
(
actionEnvironment
.
xDataControl
,
"newRow"
)){
actionEnvironment
.
xDataControl
.
newRow
();
}
else
if
(
isExist
(
actionEnvironment
.
newRow
)){
actionEnvironment
.
newRow
();
}
}
/**
* 执行预置界面行为
*
* @static
* @param {IParam} uiAction 界面行为对象
* @param { context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment:IParam} params { context: 上下文对象, viewParams: 视图参数, data: 当前激活数据, event: 事件源对象, actionEnvironment:操作环境}
* @memberof AppSysAction
*/
public
static
async
execute
(
uiAction
:
IParam
,
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
const
tag
=
uiAction
.
uIActionTag
;
switch
(
tag
)
{
case
"Edit"
:
this
.
Edit
(
params
);
break
;
case
"New"
:
this
.
New
(
params
);
break
;
default
:
console
.
log
(
`未支持
${
tag
}
`
);
}
/**
* 保存
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
save
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
// 视图里获取多数据部件
if
(
hasFunction
(
actionEnvironment
.
xDataControl
,
"save"
)){
actionEnvironment
.
xDataControl
.
save
();
}
else
if
(
isExist
(
actionEnvironment
.
save
)){
actionEnvironment
.
save
();
}
}
/**
* 编辑
*
* @param { context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment: IParam } params
* @return {*}
* @memberof AppSysAction
*/
public
static
Edit
(
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
const
{
actionEnvironment
}
=
params
if
(
!
actionEnvironment
?.
state
?.
viewLogics
?.
openData
?.
openDataViewName
)
{
return
;
}
const
viewName
=
actionEnvironment
?.
state
.
viewLogics
.
openData
.
openDataViewName
;
const
view
=
App
.
getViewInfo
(
viewName
);
if
(
!
view
)
{
return
;
}
ViewUtil
.
openData
(
view
,
params
);
/**
* 保存行
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
saveRow
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
// 视图里获取多数据部件
if
(
hasFunction
(
actionEnvironment
.
xDataControl
,
"save"
)){
actionEnvironment
.
xDataControl
.
save
();
}
else
if
(
isExist
(
actionEnvironment
.
save
)){
actionEnvironment
.
save
();
}
}
/**
* 新建
*
* @param { context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment: IParam } params
* @return {*}
* @memberof AppGlobalActionService
*/
public
static
New
(
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
const
{
actionEnvironment
}
=
params
if
(
!
actionEnvironment
?.
state
?.
viewLogics
?.
newData
?.
newDataViewName
)
{
return
;
}
const
viewName
=
actionEnvironment
?.
state
.
viewLogics
.
newData
.
newDataViewName
;
const
view
=
App
.
getViewInfo
(
viewName
);
if
(
!
view
)
{
return
;
}
ViewUtil
.
newData
(
view
,
params
);
/**
* 删除
*
* @param params 界面行为参数对象
* @return {*}
*/
public
static
remove
(
params
:
IUIActionParams
)
{
const
{
actionEnvironment
}
=
params
;
// 视图里获取多数据部件
if
(
hasFunction
(
actionEnvironment
.
xDataControl
,
"remove"
)){
actionEnvironment
.
xDataControl
.
remove
();
}
else
if
(
isExist
(
actionEnvironment
.
remove
)){
actionEnvironment
.
remove
();
}
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@GRID}}-grid/{{ctrls@GRID}}-grid.vue.hbs
浏览文件 @
e7a77bb7
...
...
@@ -35,11 +35,11 @@ interface CtrlEmit {
const
emit
=
defineEmits
<
CtrlEmit
>
();
// 安装功能模块,提供状态和能力
const
{
state
,
useCustom
,
onEditorEvent
,
onToolbarEvent
}
=
new
GridControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
useCustom
,
onEditorEvent
,
onToolbarEvent
,
newRow
,
remove
,
save
,
load
}
=
new
GridControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
useScrollOption
,
useRowKey
,
useRowClassName
,
useCustomRow
,
useRowSelectionOption
,
onResizeColumn
,
onGridChange
}
=
useCustom
;
// 暴露内部状态及能力
defineExpose
({
state
,
name
:
'
{{
ctrl
.
name
}}
'
});
defineExpose
({
state
,
name
:
'
{{
ctrl
.
name
}}
'
,
newRow
,
remove
,
save
,
load
});
</script>
<template>
<a-table
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录