Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-generator
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-generator
提交
42fcee83
提交
42fcee83
编写于
1月 14, 2022
作者:
sq3536
浏览文件
操作
浏览文件
下载
差异文件
Merge remote-tracking branch 'origin/master'
上级
1a9424de
96f323e3
变更
49
显示空白字符变更
内嵌
并排
正在显示
49 个修改的文件
包含
242 行增加
和
331 行删除
+242
-331
CtrlModel.java
...ore/src/main/java/cn/ibizlab/codegen/model/CtrlModel.java
+9
-0
ModelStorage.java
.../src/main/java/cn/ibizlab/codegen/model/ModelStorage.java
+1
-1
auto-complete.hbs
...urces/templ/r7/@macro/front-end/editors/auto-complete.hbs
+2
-2
checkbox-list.hbs
...urces/templ/r7/@macro/front-end/editors/checkbox-list.hbs
+2
-2
checkbox.hbs
.../resources/templ/r7/@macro/front-end/editors/checkbox.hbs
+2
-2
code.hbs
...main/resources/templ/r7/@macro/front-end/editors/code.hbs
+2
-2
data-picker-view.hbs
...es/templ/r7/@macro/front-end/editors/data-picker-view.hbs
+2
-2
data-picker.hbs
...sources/templ/r7/@macro/front-end/editors/data-picker.hbs
+2
-2
date-picker.hbs
...sources/templ/r7/@macro/front-end/editors/date-picker.hbs
+2
-2
dropdown-list.hbs
...urces/templ/r7/@macro/front-end/editors/dropdown-list.hbs
+2
-2
input-ip.hbs
.../resources/templ/r7/@macro/front-end/editors/input-ip.hbs
+2
-2
input.hbs
...ain/resources/templ/r7/@macro/front-end/editors/input.hbs
+2
-2
list-box.hbs
.../resources/templ/r7/@macro/front-end/editors/list-box.hbs
+2
-2
radio-group.hbs
...sources/templ/r7/@macro/front-end/editors/radio-group.hbs
+2
-2
rating.hbs
...in/resources/templ/r7/@macro/front-end/editors/rating.hbs
+2
-2
raw.hbs
.../main/resources/templ/r7/@macro/front-end/editors/raw.hbs
+2
-2
rich-text.hbs
...resources/templ/r7/@macro/front-end/editors/rich-text.hbs
+2
-2
slider.hbs
...in/resources/templ/r7/@macro/front-end/editors/slider.hbs
+2
-2
stepper.hbs
...n/resources/templ/r7/@macro/front-end/editors/stepper.hbs
+2
-2
switch.hbs
...in/resources/templ/r7/@macro/front-end/editors/switch.hbs
+2
-2
upload.hbs
...in/resources/templ/r7/@macro/front-end/editors/upload.hbs
+2
-2
view-base-config.hbs
...rces/templ/r7/@macro/front-end/views/view-base-config.hbs
+13
-0
form-group-panel.hbs
...@macro/front-end/widgets/form-detail/form-group-panel.hbs
+2
-2
app-code-list-config.ts.hbs
...7/app_{{apps}}/src/app/config/app-code-list-config.ts.hbs
+33
-0
index.ts
...n/resources/templ/r7/app_{{apps}}/src/app/config/index.ts
+2
-1
app-grid-view-layout.vue
...p_{{apps}}/src/components/layout/app-grid-view-layout.vue
+1
-1
app-quick-group.vue
...r7/app_{{apps}}/src/components/render/app-quick-group.vue
+53
-0
main-view.ts
...pp_{{apps}}/src/core/modules/views/main-view/main-view.ts
+4
-4
md-view.ts
...r7/app_{{apps}}/src/core/modules/views/md-view/md-view.ts
+25
-1
form-control.ts
...s}}/src/core/modules/widgets/form-control/form-control.ts
+4
-4
grid-control.ts
...s}}/src/core/modules/widgets/grid-control/grid-control.ts
+4
-4
quick-search-form-control.ts
...ts/quick-search-form-control/quick-search-form-control.ts
+2
-4
search-form-control.ts
...odules/widgets/search-form-control/search-form-control.ts
+4
-4
app-view-base-layout.scss
...s}}/src/style/components/layout/app-view-base-layout.scss
+1
-0
app-quick-group.scss
...{{apps}}/src/style/components/render/app-quick-group.scss
+15
-0
index.scss
...pl/r7/app_{{apps}}/src/style/components/render/index.scss
+2
-1
component.scss
...ources/templ/r7/app_{{apps}}/src/style/var/component.scss
+1
-0
{{pages@DEEDITVIEW}}.vue.hbs
...dules}}/{{pages@DEEDITVIEW}}/{{pages@DEEDITVIEW}}.vue.hbs
+2
-2
{{pages@DEGRIDVIEW}}.vue.hbs
...dules}}/{{pages@DEGRIDVIEW}}/{{pages@DEGRIDVIEW}}.vue.hbs
+11
-6
{{ctrls@FORM}}-form.vue.hbs
...ntities}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form.vue.hbs
+1
-1
{{ctrls@GRID}}-grid.vue.hbs
...ntities}}/{{ctrls@GRID}}-grid/{{ctrls@GRID}}-grid.vue.hbs
+3
-3
{{ctrls@QUICKSEARCHFORM}}-quick-search-form.vue.hbs
...-form/{{ctrls@QUICKSEARCHFORM}}-quick-search-form.vue.hbs
+1
-1
{{ctrls@SEARCHFORM}}-search-form.vue.hbs
...RM}}-search-form/{{ctrls@SEARCHFORM}}-search-form.vue.hbs
+3
-3
{{ctrls@TREEEXPBAR_TREE}}-tree-state.ts.hbs
...R_TREE}}-tree/{{ctrls@TREEEXPBAR_TREE}}-tree-state.ts.hbs
+0
-189
index.ts.hbs
...gets/{{appEntities}}/{{ctrls@TREEVIEW}}-tree/index.ts.hbs
+0
-0
{{ctrls@TREEVIEW}}-tree-state.ts.hbs
...trls@TREEVIEW}}-tree/{{ctrls@TREEVIEW}}-tree-state.ts.hbs
+7
-6
{{ctrls@TREEVIEW}}-tree.vue.hbs
...}/{{ctrls@TREEVIEW}}-tree/{{ctrls@TREEVIEW}}-tree.vue.hbs
+0
-0
index.ts.hbs
.../widgets/{{appEntities}}/{{ctrls@TREE}}-tree/index.ts.hbs
+0
-3
{{ctrls@TREE}}-tree.vue.hbs
...ntities}}/{{ctrls@TREE}}-tree/{{ctrls@TREE}}-tree.vue.hbs
+0
-52
未找到文件。
modules/ibizlab-generator-core/src/main/java/cn/ibizlab/codegen/model/CtrlModel.java
浏览文件 @
42fcee83
...
...
@@ -59,4 +59,13 @@ public class CtrlModel extends BaseModel{
return
(
IPSControl
)
opt
;
}
public
String
getTempFilter
()
{
String
name
=
this
.
getControl
().
getName
();
if
(
"QUICKSEARCHFORM"
.
equals
(
name
.
toUpperCase
()))
{
return
"QUICKSEARCHFORM"
;
}
else
{
return
this
.
getControl
().
getControlType
();
}
}
}
modules/ibizlab-generator-core/src/main/java/cn/ibizlab/codegen/model/ModelStorage.java
浏览文件 @
42fcee83
...
...
@@ -179,7 +179,7 @@ public class ModelStorage {
{
getSystemModel
().
getApps
().
forEach
(
app
->{
app
.
getCtrls
().
forEach
(
item
->{
CliOption
opt
=
newCliOption
(
TemplateFileType
.
ctrl
).
setCliSubType
(
item
.
get
Name
().
toUpperCase
()).
baseData
(
item
,
StringAdvUtils
.
spinalcase
(
item
.
getCodeName
())).
set
(
"apps"
,
app
.
getCodeName
().
toLowerCase
()).
set
(
"appEntities"
,
item
.
getFolder
().
toSpinalCase
());
CliOption
opt
=
newCliOption
(
TemplateFileType
.
ctrl
).
setCliSubType
(
item
.
get
TempFilter
().
toUpperCase
()).
baseData
(
item
,
StringAdvUtils
.
spinalcase
(
item
.
getCodeName
())).
set
(
"apps"
,
app
.
getCodeName
().
toLowerCase
()).
set
(
"appEntities"
,
item
.
getFolder
().
toSpinalCase
());
rt
.
addOption
(
opt
);
});
});
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/auto-complete.hbs
浏览文件 @
42fcee83
...
...
@@ -40,10 +40,10 @@
{{/
eq
}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/checkbox-list.hbs
浏览文件 @
42fcee83
...
...
@@ -22,10 +22,10 @@
:viewParams=
"state.viewParams"
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/checkbox.hbs
浏览文件 @
42fcee83
...
...
@@ -8,10 +8,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/code.hbs
浏览文件 @
42fcee83
...
...
@@ -5,11 +5,11 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
:context=
"state.context"
:viewParams=
"state.viewParams"
/>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/data-picker-view.hbs
浏览文件 @
42fcee83
...
...
@@ -26,10 +26,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/data-picker.hbs
浏览文件 @
42fcee83
...
...
@@ -53,10 +53,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/date-picker.hbs
浏览文件 @
42fcee83
...
...
@@ -47,10 +47,10 @@
{{/
eq
}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/dropdown-list.hbs
浏览文件 @
42fcee83
...
...
@@ -28,11 +28,11 @@
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
:data=
"state.data"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
:data=
"record"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/input-ip.hbs
浏览文件 @
42fcee83
...
...
@@ -8,11 +8,11 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/input.hbs
浏览文件 @
42fcee83
...
...
@@ -38,10 +38,10 @@
{{/
eq
}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/list-box.hbs
浏览文件 @
42fcee83
...
...
@@ -38,10 +38,10 @@
:viewParams=
"state.viewParams"
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/radio-group.hbs
浏览文件 @
42fcee83
...
...
@@ -22,10 +22,10 @@
:viewParams=
"state.viewParams"
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/rating.hbs
浏览文件 @
42fcee83
...
...
@@ -14,10 +14,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/raw.hbs
浏览文件 @
42fcee83
...
...
@@ -12,10 +12,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/rich-text.hbs
浏览文件 @
42fcee83
...
...
@@ -20,11 +20,11 @@
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
:data=
"state.data"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
:data=
"record"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/slider.hbs
浏览文件 @
42fcee83
...
...
@@ -18,10 +18,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/stepper.hbs
浏览文件 @
42fcee83
...
...
@@ -20,10 +20,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/switch.hbs
浏览文件 @
42fcee83
...
...
@@ -11,10 +11,10 @@
{{/if}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/editors/upload.hbs
浏览文件 @
42fcee83
...
...
@@ -31,10 +31,10 @@
{{/
eq
}}
{{#if
(
or
(
eq
ctrlType
'form'
)
(
eq
ctrlType
'panel'
))
}}
:value=
"state.data.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"
handle
EditorEvent"
@
editorEvent=
"
on
EditorEvent"
{{/if}}
{{#
eq
ctrlType
'grid'
}}
:value=
"record.
{{
item
.
psEditor
.
name
}}
"
@
editorEvent=
"($event) =>
handle
EditorEvent(index,$event)"
@
editorEvent=
"($event) =>
on
EditorEvent(index,$event)"
{{/
eq
}}
/>
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/views/view-base-config.hbs
浏览文件 @
42fcee83
...
...
@@ -4,6 +4,19 @@
viewCaption: '
{{
page
.
caption
}}
',
height: '
{{
page
.
height
}}
',
width: '
{{
page
.
width
}}
',
enableQuickGroup:
{{#if
page
.
enableQuickGroup
}}
true
{{else}}
false
{{/if}}
,
{{#if
page
.
quickGroupPSCodeList
}}
quickGroupPSCodeList: {
codeName: '
{{
page
.
quickGroupPSCodeList
.
codeName
}}
',
codeListTag: '
{{
page
.
quickGroupPSCodeList
.
codeListTag
}}
',
codeListType: '
{{
page
.
quickGroupPSCodeList
.
codeListType
}}
',
codeItems: [
{{#
page
.
quickGroupPSCodeList
.
psCodeItems
}}
{codeName: '
{{
codeName
}}
', color: '
{{
color
}}
', data: '
{{
data
}}
', text: '
{{
text
}}
', value: '
{{
value
}}
', iconClass: '
{{
iconcls
}}
', imgPath: '
{{
icon
}}
'},
{{/
page
.
quickGroupPSCodeList
.
psCodeItems
}}
]
},
{{/if}}
appEntityName: '
{{
page
.
appEntity
.
codeName
}}
',
isLoadDefault: true,
keyPSDEField: '
{{
lowerCase
page
.
appEntity
.
codeName
}}
',
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/widgets/form-detail/form-group-panel.hbs
浏览文件 @
42fcee83
...
...
@@ -12,7 +12,7 @@
:titleBarCloseMode=
"
{{
item
.
titleBarCloseMode
}}
"
:showCaption=
"
{{
item
.
showCaption
}}
"
:uIActionGroup=
"state.detailsModel.
{{
item
.
codeName
}}
.uIActionGroup"
@
componentEvent=
"
handle
ComponentEvent"
>
@
componentEvent=
"
on
ComponentEvent"
>
{{#
eq
item
.
psLayout
.
layout
"FLEX"
}}
<div
class=
"app-form-layout-flex"
style=
"
{{#if
item
.
psLayout
.
dir
}}
flex-direction:
{{
item
.
psLayout
.
dir
}}
;
{{/if}}{{#if
item
.
psLayout
.
align
}}
justify-content:
{{
item
.
psLayout
.
align
}}
;
{{/if}}{{#if
item
.
psLayout
.
vAlign
}}
align-items:
{{
item
.
psLayout
.
vAlign
}}
;
{{/if}}
"
>
{{#
each
item
.
psDEFormDetails
as
|
formDetail
|
}}
...
...
@@ -43,7 +43,7 @@
:titleBarCloseMode=
"
{{
item
.
titleBarCloseMode
}}
"
:showCaption=
"
{{
item
.
showCaption
}}
"
:uIActionGroup=
"state.detailsModel.
{{
item
.
codeName
}}
.uIActionGroup"
@
componentEvent=
"
handle
ComponentEvent"
>
@
componentEvent=
"
on
ComponentEvent"
>
{{#
eq
item
.
psLayout
.
layout
"FLEX"
}}
<div
class=
"app-form-layout-flex"
style=
"
{{#if
item
.
psLayout
.
dir
}}
flex-direction:
{{
item
.
psLayout
.
dir
}}
;
{{/if}}{{#if
item
.
psLayout
.
align
}}
justify-content:
{{
item
.
psLayout
.
align
}}
;
{{/if}}{{#if
item
.
psLayout
.
vAlign
}}
align-items:
{{
item
.
psLayout
.
vAlign
}}
;
{{/if}}
"
>
{{#
each
item
.
psDEFormDetails
as
|
formDetail
|
}}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/app/config/app-code-list-config.ts.hbs
0 → 100644
浏览文件 @
42fcee83
import { IParam } from "@core";
export const AppCodeListConfig:IParam = {
{{#
each
app
.
getAllPSAppCodeLists
as
|
appCodeList
|
}}
'
{{
appCodeList
.
getCodeListTag
}}
':{
'name': '
{{
appCodeList
.
getName
}}
',
'codeName': '
{{
appCodeList
.
getCodeName
}}
',
'codeListTag': '
{{
appCodeList
.
getCodeListTag
}}
',
'codeListType': '
{{
appCodeList
.
getCodeListType
}}
',
'isEnableCache':
{{
appCodeList
.
isEnableCache
}}
,
'cacheTimeout':
{{
appCodeList
.
getCacheTimeout
}}
,
{{
~#
if
appCodeList
.
getMinorSortDir
}}
'minorSortDir': '
{{
appCodeList
.
getMinorSortDir
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getMinorSortPSAppDEField
}}
'minorSortPSAppDEField': '
{{
lowerCase
appCodeList
.
getMinorSortPSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getPredefinedType
}}
'predefinedType': '
{{
appCodeList
.
getPredefinedType
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getPSAppDataEntity
}}
'appDataEntity': '
{{
appCodeList
.
getPSAppDataEntity
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getPSAppDEDataSet
}}
'appDEDataSet': '
{{
appCodeList
.
getPSAppDEDataSet
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getTextPSAppDEField
}}
'textPSAppDEField': '
{{
lowerCase
appCodeList
.
getTextPSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getValuePSAppDEField
}}
'valuePSAppDEField': '
{{
lowerCase
appCodeList
.
getValuePSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getPValuePSAppDEField
}}
'pValuePSAppDEField': '
{{
lowerCase
appCodeList
.
getPValuePSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getDisablePSAppDEField
}}
'disablePSAppDEField': '
{{
lowerCase
appCodeList
.
getDisablePSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getIconPathPSAppDEField
}}
'iconPathPSAppDEField': '
{{
lowerCase
appCodeList
.
getIconPathPSAppDEField
.
codeName
}}
',
{{/
if
~
}}
{{
~#
if
appCodeList
.
getIconClsPSAppDEField
}}
'iconClsPSAppDEField': '
{{
lowerCase
appCodeList
.
getIconClsPSAppDEField
.
codeName
}}
',
{{/if}}
'emptyText': '
{{
appCodeList
.
getEmptyText
}}
',
{{#if
appCodeList
.
getPSCodeItems
}}
'items':[
{{#
each
appCodeList
.
getPSCodeItems
as
|
codeItem
|
}}
{'value':
{{#if
appCodeList
.
isCodeItemValueNumber
}}{{
codeItem
.
getValue
}}{{else}}
'
{{
codeItem
.
getValue
}}
'
{{/if}}
, 'text': '
{{
codeItem
.
getText
}}
','codeName': '
{{
codeItem
.
codeName
}}
' }
{{#
unless
@last
}}
,
{{/
unless
}}
{{/
each
}}
]
{{/if}}
}
{{#
unless
@last
}}
,
{{/
unless
}}
{{/
each
}}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/app/config/index.ts
浏览文件 @
42fcee83
export
{
AppFuncConfig
}
from
'./app-func-config'
;
export
{
AppViewConfig
}
from
'./app-view-config'
;
export
{
AppCodeListConfig
}
from
'./app-code-list-config'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/layout/app-grid-view-layout.vue
浏览文件 @
42fcee83
...
...
@@ -11,13 +11,13 @@
<slot
name=
"caption"
/>
</
template
>
<
template
v-slot:header-content
>
<slot
name=
"quickGroupSearch"
/>
<slot
name=
"quickSearch"
/>
</
template
>
<
template
v-slot:header-right
>
<slot
name=
"toolbar"
/>
</
template
>
<
template
v-slot:header-bottom
>
<slot
name=
"quickGroupSearch"
/>
<slot
name=
"quickSearchForm"
/>
<slot
name=
"searchForm"
/>
</
template
>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/render/app-quick-group.vue
0 → 100644
浏览文件 @
42fcee83
<
script
setup
lang=
"ts"
>
import
{
IActionParam
,
IParam
}
from
'@core'
;
import
{
Ref
,
onBeforeMount
}
from
'vue'
;
interface
QuickGroupProps
{
quickGroupModel
:
IParam
;
}
interface
FormGroupEmit
{
(
name
:
'onQuickGroupEvent'
,
value
:
IActionParam
):
void
;
}
const
props
=
withDefaults
(
defineProps
<
QuickGroupProps
>
(),
{});
const
emit
=
defineEmits
<
FormGroupEmit
>
();
const
selectItem
:
Ref
<
IParam
>
=
ref
({});
const
items
:
Ref
<
any
>
=
ref
([]);
const
handleClick
=
(
$event
:
any
)
=>
{
if
((
selectItem
.
value
&&
selectItem
.
value
.
id
===
$event
.
id
)
||
$event
.
children
)
{
return
;
}
selectItem
.
value
=
$event
;
emit
(
'onQuickGroupEvent'
,
{
tag
:
'quickGroup'
,
action
:
"valueChange"
,
data
:
$event
,
});
};
onBeforeMount
(()
=>
{
items
.
value
=
props
.
quickGroupModel
.
codeItems
;
//todo
// let res: any = await this.codeListService.getDataItems({ tag: this.quickGroupCodeList.codeName, type: this.quickGroupCodeList.codeListType, data: this.quickGroupCodeList, context: this.context });
// this.quickGroupModel = this.handleDynamicData(JSON.parse(JSON.stringify(res)));
});
</
script
>
<
template
>
<a-space
class=
"app-quick-group"
:size=
"0"
>
<a-button
class=
"quick-group-item"
v-for=
"(item, index) in items"
:key=
"index"
type=
"text"
@
click=
"() => handleClick(item)"
>
<span
:style=
"
{ color: item.color }">
<AppIconText
v-if=
"!item.children"
:text=
"item.text"
:iconClass=
"item.iconClass"
:imgPath=
"item.imgPath"
/>
<a-dropdown
v-else
>
<AppIconText
:text=
"item.text"
:iconClass=
"item.iconClass"
:imgPath=
"item.imgPath"
/>
<template
#
overlay
>
<a-menu>
<a-menu-item
v-for=
"(childItem,index) in item.children"
>
<AppIconText
:text=
"childItem.text"
:iconClass=
"childItem.iconClass"
:imgPath=
"childItem.imgPath"
/>
</a-menu-item>
</a-menu>
</
template
>
</a-dropdown>
</span>
</a-button>
</a-space>
</template>
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/views/main-view/main-view.ts
浏览文件 @
42fcee83
...
...
@@ -29,7 +29,7 @@ export class MainView extends ViewBase {
* @param {IActionParam} actionParam
* @memberof MainView
*/
public
handle
ToolbarEvent
(
actionParam
:
IActionParam
)
{
public
on
ToolbarEvent
(
actionParam
:
IActionParam
)
{
const
{
tag
,
action
,
data
}
=
actionParam
;
if
(
!
tag
||
!
action
||
!
data
)
{
console
.
warn
(
"工具栏执行参数不足"
);
...
...
@@ -58,7 +58,7 @@ export class MainView extends ViewBase {
* @param {IActionParam} actionParam
* @memberof MainView
*/
public
handle
CtrlEvent
(
actionParam
:
IActionParam
)
{
}
public
on
CtrlEvent
(
actionParam
:
IActionParam
)
{
}
/**
* @description 安装视图所有功能模块的方法
...
...
@@ -70,8 +70,8 @@ export class MainView extends ViewBase {
return
{
...
superParams
,
xDataControl
:
this
.
xDataControl
,
handleToolbarEvent
:
this
.
handle
ToolbarEvent
.
bind
(
this
),
handleCtrlEvent
:
this
.
handle
CtrlEvent
.
bind
(
this
),
onToolbarEvent
:
this
.
on
ToolbarEvent
.
bind
(
this
),
onCtrlEvent
:
this
.
on
CtrlEvent
.
bind
(
this
),
};
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/views/md-view/md-view.ts
浏览文件 @
42fcee83
...
...
@@ -104,6 +104,18 @@ export class MDView extends MainView {
this
.
state
.
isLoadDefault
=
true
;
}
/**
* @description 快速分组查询
* @param {*} [args={}]
* @memberof MDView
*/
public
handleQuickGroupSearch
(
args
:
any
=
{}):
void
{
const
{
viewParams
}
=
this
.
state
;
Object
.
assign
(
viewParams
,{
quickGroup
:
args
})
const
tag
=
this
.
getMDCtrl
().
name
;
this
.
next
({
tag
:
tag
,
action
:
'load'
,
data
:
viewParams
});
}
/**
* 搜索表单搜索
*
...
...
@@ -205,6 +217,17 @@ export class MDView extends MainView {
throw
new
Error
(
'Method not implemented.'
);
}
/**
* @description 处理快速分组事件
* @param {IActionParam} $event
* @memberof MDView
*/
public
onQuickGroupEvent
(
$event
:
IActionParam
)
{
if
(
$event
)
{
this
.
handleQuickGroupSearch
(
$event
);
}
}
/**
* @description 安装视图所有功能模块的方法
*
...
...
@@ -216,7 +239,8 @@ export class MDView extends MainView {
...
superParams
,
xDataControl
:
this
.
xDataControl
,
searchForm
:
this
.
searchForm
,
searchBar
:
this
.
searchBar
searchBar
:
this
.
searchBar
,
onQuickGroupEvent
:
this
.
onQuickGroupEvent
.
bind
(
this
)
};
}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/widgets/form-control/form-control.ts
浏览文件 @
42fcee83
...
...
@@ -605,7 +605,7 @@ export class FormControl extends MainControl {
* @param {IActionParam} actionParam 行为参数
* @memberof FormControl
*/
public
handle
EditorEvent
(
actionParam
:
IActionParam
)
{
public
on
EditorEvent
(
actionParam
:
IActionParam
)
{
const
{
tag
,
action
,
data
}
=
actionParam
;
switch
(
action
)
{
case
'valueChange'
:
...
...
@@ -621,7 +621,7 @@ export class FormControl extends MainControl {
* @param {IActionParam} actionParam 行为参数
* @memberof FormControl
*/
public
handle
ComponentEvent
(
actionParam
:
IActionParam
)
{
public
on
ComponentEvent
(
actionParam
:
IActionParam
)
{
const
{
tag
,
action
,
data
}
=
actionParam
;
switch
(
action
)
{
case
'formGroupAction'
:
...
...
@@ -654,8 +654,8 @@ export class FormControl extends MainControl {
load
:
this
.
useLoad
(),
loadDraft
:
this
.
useLoadDraft
(),
save
:
this
.
useSave
(),
handleEditorEvent
:
this
.
handle
EditorEvent
.
bind
(
this
),
handleComponentEvent
:
this
.
handle
ComponentEvent
.
bind
(
this
),
onEditorEvent
:
this
.
on
EditorEvent
.
bind
(
this
),
onComponentEvent
:
this
.
on
ComponentEvent
.
bind
(
this
),
};
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/widgets/grid-control/grid-control.ts
浏览文件 @
42fcee83
...
...
@@ -91,11 +91,11 @@ export class GridControl extends MDControl {
};
});
// 列拖动
const
handle
ResizeColumn
=
(
width
:
number
,
column
:
IParam
)
=>
{
const
on
ResizeColumn
=
(
width
:
number
,
column
:
IParam
)
=>
{
column
.
width
=
width
;
}
// 处理表格变化(分页,过滤,排序)
const
handle
GridChange
=
(
pagination
:
IParam
,
filters
:
IParam
,
sorter
:
IParam
,
data
:
IParam
)
=>
{
const
on
GridChange
=
(
pagination
:
IParam
,
filters
:
IParam
,
sorter
:
IParam
,
data
:
IParam
)
=>
{
if
(
pagination
)
{
this
.
useLoad
().
load
();
}
...
...
@@ -106,8 +106,8 @@ export class GridControl extends MDControl {
useRowClassName
,
useCustomRow
,
useRowSelectionOption
,
handle
ResizeColumn
,
handle
GridChange
on
ResizeColumn
,
on
GridChange
}
}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/widgets/quick-search-form-control/quick-search-form-control.ts
浏览文件 @
42fcee83
...
...
@@ -19,8 +19,8 @@ export class QuickSearchFormControl extends FormControl {
* @param {IActionParam} actionParam 行为参数
* @memberof FormControl
*/
public
handle
EditorEvent
(
actionParam
:
IActionParam
)
{
super
.
handle
EditorEvent
(
actionParam
);
public
on
EditorEvent
(
actionParam
:
IActionParam
)
{
super
.
on
EditorEvent
(
actionParam
);
this
.
emit
(
"onCtrlEvent"
,
{
tag
:
this
.
state
.
controlName
,
action
:
"selectionChange"
,
...
...
@@ -35,8 +35,6 @@ export class QuickSearchFormControl extends FormControl {
*/
public
moduleInstall
()
{
const
superParams
=
super
.
moduleInstall
();
// 表单行为能力启用
const
{
loadDraft
}
=
this
.
useLoadDraft
();
return
{
...
superParams
,
};
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/core/modules/widgets/search-form-control/search-form-control.ts
浏览文件 @
42fcee83
...
...
@@ -40,7 +40,7 @@ export class SearchFormControl extends FormControl {
* @description 添加历史项
* @memberof SearchFormControl
*/
public
add
HistoryItem
()
{
public
onSave
HistoryItem
()
{
//todo saveModel服务
this
.
state
.
showPopover
=
false
;
}
...
...
@@ -50,7 +50,7 @@ export class SearchFormControl extends FormControl {
* @param {IParam} item
* @memberof SearchFormControl
*/
public
r
emoveHistoryItem
(
item
:
IParam
)
{
public
onR
emoveHistoryItem
(
item
:
IParam
)
{
const
index
=
this
.
state
.
historyItems
.
findIndex
((
_item
:
IParam
)
=>
{
return
item
.
name
==
_item
.
name
&&
item
.
value
==
_item
.
value
;
})
...
...
@@ -80,8 +80,8 @@ export class SearchFormControl extends FormControl {
...
superParams
,
onSearch
:
this
.
onSearch
.
bind
(
this
),
onCancel
:
this
.
onCancel
.
bind
(
this
),
addHistoryItem
:
this
.
add
HistoryItem
.
bind
(
this
),
removeHistoryItem
:
this
.
r
emoveHistoryItem
.
bind
(
this
),
onSaveHistoryItem
:
this
.
onSave
HistoryItem
.
bind
(
this
),
onRemoveHistoryItem
:
this
.
onR
emoveHistoryItem
.
bind
(
this
),
};
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/components/layout/app-view-base-layout.scss
浏览文件 @
42fcee83
...
...
@@ -18,6 +18,7 @@
display
:
flex
;
justify-content
:
space-between
;
height
:
var
(
--
app-view-layout-header-height
);
min-height
:
var
(
--
app-view-layout-header-min-height
);
margin
:
--
app-view-layout-header-padding
;
.app-view__caption
{
white-space
:
nowrap
;
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/components/render/app-quick-group.scss
0 → 100644
浏览文件 @
42fcee83
.app-quick-group
{
.ant-space-item
{
height
:
100%
;
max-height
:
48px
;
.quick-group-item
{
padding
:
0
;
margin
:
0
10px
;
height
:
100%
;
border-bottom
:
2px
solid
var
(
--
app-color-primary
);
&
:hover
.app-icon-text
{
color
:
var
(
--
app-color-primary
);
}
}
}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/components/render/index.scss
浏览文件 @
42fcee83
@use
'./icon-text.scss'
;
@use
'./app-quick-group.scss'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/var/component.scss
浏览文件 @
42fcee83
...
...
@@ -25,6 +25,7 @@
--app-view-layout-body-bg-color
:
var
(
--
app-color-white
);
--app-view-layout-footer-bg-color
:
var
(
--
app-color-white
);
--app-view-layout-header-height
:
auto
;
--app-view-layout-header-min-height
:
48px
;
--app-view-layout-header-border-bottom
:
var
(
--
app-color-border
);
--app-view-caption-font-size
:
var
(
--
app-font-size-lg
)
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/views/{{appModules}}/{{pages@DEEDITVIEW}}/{{pages@DEEDITVIEW}}.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -29,7 +29,7 @@ interface ViewEmit {
const
emit
=
defineEmits
<
ViewEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
form
,
handle
ToolbarEvent
}
=
new
EditView
(
viewState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
form
,
on
ToolbarEvent
}
=
new
EditView
(
viewState
,
props
,
emit
).
moduleInstall
();
</script>
...
...
@@ -51,7 +51,7 @@ const { state, form, handleToolbarEvent } = new EditView(viewState, props, emit)
mode=
"button"
name=
"
{{
lowerCase
codeName
}}
"
:actionModel=
"state.toolbar"
@
onToolbarEvent=
"
handle
ToolbarEvent"
/>
@
onToolbarEvent=
"
on
ToolbarEvent"
/>
</template>
{{/
eq
}}
{{#
eq
controlType
"FORM"
}}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/views/{{appModules}}/{{pages@DEGRIDVIEW}}/{{pages@DEGRIDVIEW}}.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -36,7 +36,7 @@ interface ViewEmit {
const
emit
=
defineEmits
<
ViewEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
grid
,
handleCtrlEvent
,
handleToolbar
Event
}
=
new
GridView
(
viewState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
grid
,
onCtrlEvent
,
onToolbarEvent
,
onQuickGroup
Event
}
=
new
GridView
(
viewState
,
props
,
emit
).
moduleInstall
();
</script>
...
...
@@ -45,6 +45,11 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
<template
v-slot:caption
>
<AppIconText
class=
"app-view__caption"
size=
"large"
:text=
"state.viewCaption"
/>
</template>
{{#if
page
.
enableQuickGroup
}}
<template
v-slot:quickGroupSearch
>
<app-quick-group
:quickGroupModel=
"state.quickGroupPSCodeList"
@
onQuickGroupEvent=
"onQuickGroupEvent"
/>
</template>
{{/if}}
{{#
page
.
ctrls
}}
{{#
eq
controlType
"TOOLBAR"
}}
<template
v-slot:toolbar
>
...
...
@@ -52,7 +57,7 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
mode=
"button"
name=
"
{{
lowerCase
codeName
}}
"
:actionModel=
"state.toolbar"
@
onToolbarEvent=
"
handle
ToolbarEvent"
/>
@
onToolbarEvent=
"
on
ToolbarEvent"
/>
</template>
{{/
eq
}}
{{#if
(
and
(
eq
controlType
"SEARCHFORM"
)
(
eq
name
'searchform'
))
}}
...
...
@@ -67,7 +72,7 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
:viewParams=
"state.viewParams"
:controlAction=
"state.
{{
camelCase
name
}}
.action"
:viewSubject=
"state.viewSubject"
@
onCtrlEvent=
"
handle
CtrlEvent"
@
onCtrlEvent=
"
on
CtrlEvent"
></
{{
codeName
}}
SearchForm>
</template>
<a-button><filter-outlined
/></a-button>
...
...
@@ -81,7 +86,7 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
:viewParams=
"state.viewParams"
:controlAction=
"state.
{{
camelCase
name
}}
.action"
:viewSubject=
"state.viewSubject"
@
onCtrlEvent=
"
handle
CtrlEvent"
@
onCtrlEvent=
"
on
CtrlEvent"
></
{{
codeName
}}
SearchForm>
</template>
{{/if}}
...
...
@@ -93,7 +98,7 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
:viewParams=
"state.viewParams"
:controlAction=
"state.
{{
camelCase
name
}}
.action"
:viewSubject=
"state.viewSubject"
@
onCtrlEvent=
"
handle
CtrlEvent"
@
onCtrlEvent=
"
on
CtrlEvent"
></
{{
codeName
}}
QuickSearchForm>
</template>
{{/if}}
...
...
@@ -107,7 +112,7 @@ const { state, grid, handleCtrlEvent, handleToolbarEvent } = new GridView(viewSt
:viewParams=
"state.viewParams"
:controlAction=
"state.
{{
name
}}
.action"
:viewSubject=
"state.viewSubject"
@
onCtrlEvent=
"
handle
CtrlEvent"
@
onCtrlEvent=
"
on
CtrlEvent"
></
{{
codeName
}}
Grid>
{{/
eq
}}
{{/
page
.
ctrls
}}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -25,7 +25,7 @@ interface CtrlEmit {
const
emit
=
defineEmits
<
CtrlEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
handleEditorEvent
,
handle
ComponentEvent
}
=
new
FormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
onEditorEvent
,
on
ComponentEvent
}
=
new
FormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
// 暴露内部状态及能力
defineExpose
({
state
,
name
:
'
{{
ctrl
.
name
}}
'
});
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@GRID}}-grid/{{ctrls@GRID}}-grid.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -31,7 +31,7 @@ const emit = defineEmits<{(event: 'onCtrlevent', value: IActionParam): void;}>()
// 安装功能模块,提供状态和能力
const
{
state
,
useCustom
}
=
new
GridControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
useScrollOption
,
useRowKey
,
useRowClassName
,
useCustomRow
,
useRowSelectionOption
,
handleResizeColumn
,
handle
GridChange
}
=
useCustom
;
const
{
useScrollOption
,
useRowKey
,
useRowClassName
,
useCustomRow
,
useRowSelectionOption
,
onResizeColumn
,
on
GridChange
}
=
useCustom
;
// 暴露内部状态及能力
defineExpose
({
state
,
name
:
'
{{
ctrl
.
name
}}
'
});
...
...
@@ -51,8 +51,8 @@ defineExpose({ state, name: '{{ctrl.name}}' });
:pagination=
"state.mdCtrlPaging.pagination"
:customRow=
"customRow"
:rowClassName=
"rowClassName"
@
change=
"
handle
GridChange"
@
resizeColumn=
"
handle
ResizeColumn"
@
change=
"
on
GridChange"
@
resizeColumn=
"
on
ResizeColumn"
>
<template
#
emptyText
>
<div
class=
"not-data"
>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@QUICKSEARCHFORM}}-quick-search-form/{{ctrls@QUICKSEARCHFORM}}-quick-search-form.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -26,7 +26,7 @@ interface CtrlEmit {
const
emit
=
defineEmits
<
CtrlEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
handle
EditorEvent
}
=
new
QuickSearchFormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
on
EditorEvent
}
=
new
QuickSearchFormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
</script>
<template>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@SEARCHFORM}}-search-form/{{ctrls@SEARCHFORM}}-search-form.vue.hbs
浏览文件 @
42fcee83
...
...
@@ -26,7 +26,7 @@ interface CtrlEmit {
const
emit
=
defineEmits
<
CtrlEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
handleEditorEvent
,
handleComponentEvent
,
onSearch
,
loadDraft
,
addHistoryItem
,
onCancel
,
r
emoveHistoryItem
}
=
new
SearchFormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
const
{
state
,
onEditorEvent
,
onComponentEvent
,
onSearch
,
loadDraft
,
onSaveHistoryItem
,
onCancel
,
onR
emoveHistoryItem
}
=
new
SearchFormControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
</script>
<template>
...
...
@@ -63,7 +63,7 @@ const { state, handleEditorEvent, handleComponentEvent, onSearch, loadDraft, add
v-model:Value=
"state.selectHistoryItem"
@
change=
"handleChange"
>
<a-select-option
class=
"search-form-history-option"
v-for=
"(item,index) in state.historyItems"
:key=
"index"
:value=
"item.value"
>
\{{item.name}}
<close-outlined
@
click=
"() =>
r
emoveHistoryItem(item)"
/></a-select-option>
<a-select-option
class=
"search-form-history-option"
v-for=
"(item,index) in state.historyItems"
:key=
"index"
:value=
"item.value"
>
\{{item.name}}
<close-outlined
@
click=
"() =>
onR
emoveHistoryItem(item)"
/></a-select-option>
</a-select>
<a-button
class=
'search-button'
@
click=
"onSearch"
type=
"primary"
>
搜索
</a-button>
<a-button
class=
'reset-button'
@
click=
'loadDraft'
>
重置
</a-button>
...
...
@@ -72,7 +72,7 @@ const { state, handleEditorEvent, handleComponentEvent, onSearch, loadDraft, add
<a-input
/>
<div
class=
"search-form-buttons"
>
<a-button
@
click=
"onCancel"
>
取消
</a-button>
<a-button
@
click=
"
add
HistoryItem"
type=
"primary"
>
保存
</a-button>
<a-button
@
click=
"
onSave
HistoryItem"
type=
"primary"
>
保存
</a-button>
</div>
</template>
<a-button><save-outlined
/></a-button>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREEEXPBAR_TREE}}-tree/{{ctrls@TREEEXPBAR_TREE}}-tree-state.ts.hbs
已删除
100644 → 0
浏览文件 @
1a9424de
import { ControlVOBase, TreeControlVO, TreeNodeVO, TreeNodeRSVO, TreeService } from "@core";
import {
{{
pascalCase
ctrl
.
psAppDataEntity
.
codeName
}}
Service } from '@api/
{{
spinalCase
ctrl
.
psAppDataEntity
.
codeName
}}
/
{{
spinalCase
ctrl
.
psAppDataEntity
.
codeName
}}
-service';
export class ControlVO extends ControlVOBase implements TreeControlVO {
get rootVisible(): boolean {
return
{{
ctrl
.
rootVisible
}}
;
}
get treeNodes(): TreeNodeVO[] {
return [
{{#
each
ctrl
.
psDETreeNodes
as
|
treeNode
|
}}
{
allowDrag:
{{
treeNode
.
allowDrag
}}
,
allowDrop:
{{
treeNode
.
allowDrop
}}
,
allowEditText:
{{
treeNode
.
allowEditText
}}
,
allowOrder:
{{
treeNode
.
allowOrder
}}
,
{{#if
treeNode
.
psAppDataEntity
}}
appDataEntity: {
codeName: '
{{
treeNode
.
psAppDataEntity
.
codeName
}}
',
{{#
each
treeNode
.
psAppDataEntity
.
allPSAppDEFields
as
|
field
|
}}
{{#if
field
.
keyField
}}
keyField: '
{{
field
.
codeName
}}
',
{{/if}}
{{#if
field
.
majorField
}}
majorField: '
{{
field
.
majorField
}}
',
{{/if}}
{{/
each
}}
},
{{/if}}
{{#if
treeNode
.
psAppDEDataSet
}}
appDeDataSet: { codeName: '
{{
treeNode
.
psAppDEDataSet
.
codeName
}}
' },
{{/if}}
appendPNodeId:
{{
treeNode
.
appendPNodeId
}}
,
{{#if
treeNode
.
psCodeList
}}
codeList: {
codeName: '
{{
treeNode
.
psCodeList
.
codeName
}}
',
type: '
{{
treeNode
.
psCodeList
.
codeListType
}}
'
},
{{/if}}
counterId: '
{{
treeNode
.
counterId
}}
',
counterMode:
{{
treeNode
.
counterMode
}}
,
{{#if
treeNode
.
psSysCss
}}
cssName: '
{{
treeNode
.
psSysCss
.
cssName
}}
'
{{/if}}
{{#if
treeNode
.
psDETreeNodeDataItems
}}
deTreeNodeDataItems: [
customCode:
{{
dataItem
.
customCode
}}
,
{{#
each
treeNode
.
psDETreeNodeDataItems
as
|
dataItem
|
}}
{{#if
dataItem
.
psAppDEField
}}
fieldCodeName: '
{{
dataItem
.
psAppDEField
.
codeName
}}
',
{{/if}}
name: '
{{
dataItem
.
name
}}
',
scriptCode: `
{{
dataItem
.
scriptCode
}}
`
{{/
each
}}
],
{{/if}}
disableSelect:
{{
treeNode
.
disableSelect
}}
,
enableCheck:
{{
treeNode
.
enableCheck
}}
,
enableQuickSearch:
{{
treeNode
.
enableQuickSearch
}}
,
expandFirstOnly:
{{
treeNode
.
expandFirstOnly
}}
,
expanded:
{{
treeNode
.
expanded
}}
,
hasPSDETreeNodeRSs:
{{
treeNode
.
hasPSDETreeNodeRSs
}}
,
{{#if
treeNode
.
leafFlagPSAppDEField
}}
leafFlagPSAppDEField: { codeName: '
{{
treeNode
.
leafFlagPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNode
.
idPSAppDEField
}}
idPSAppDEField: { codeName: '
{{
treeNode
.
idPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNode
.
iconPSAppDEField
}}
iconPSAppDEField: { codeName: '
{{
treeNode
.
iconPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNode
.
psSysImage
}}
{{#if
treeNode
.
psSysImage
.
cssClass
}}
iconcls: '
{{
treeNode
.
psSysImage
.
cssClass
}}
',
{{else
if
(
treeNode
.
psSysImage
.
imagePath
)
}}
icon: '
{{
treeNode
.
psSysImage
.
imagePath
}}
',
{{/if}}
{{/if}}
id: '
{{
treeNode
.
id
}}
',
navFilter: '
{{
treeNode
.
navFilter
}}
',
{{#if
treeNode
.
psNavigateContexts
}}
navigateContext: {
{{#
each
treeNode
.
psNavigateContexts
as
|
navContext
|
}}
{{
navContext
.
key
}}
: '
{{#if
navContext
.
rawValue
}}{{
navContext
.
value
}}{{else}}
%
{{
navContext
.
value
}}
%
{{/if}}
',
{{/
each
}}
},
{{/if}}
{{#if
treeNode
.
psNavigateParams
}}
navigateParams: {
{{#
each
treeNode
.
psNavigateParams
as
|
navParam
|
}}
{{
navParam
.
key
}}
: '
{{#if
navParam
.
rawValue
}}{{
navParam
.
value
}}{{else}}
%
{{
navParam
.
value
}}
%
{{/if}}
',
{{/
each
}}
},
{{/if}}
{{#if
treeNode
.
navPSAppView
}}
navView: {
viewName: '
{{
treeNode
.
navPSAppView
.
codeName
}}
'
},
{{/if}}
{{#if
treeNode
.
nodeValue
}}
nodeValue: '
{{
treeNode
.
nodeValue
}}
',
{{/if}}
nodeType: '
{{
treeNode
.
nodeType
}}
',
rootNode:
{{
treeNode
.
rootNode
}}
,
selectFirstOnly:
{{
treeNode
.
selectFirstOnly
}}
,
selected:
{{
treeNode
.
selected
}}
,
{{#if
treeNode
.
sortDir
}}
sortDir: '
{{
treeNode
.
sortDir
}}
',
{{/if}}
{{#if
treeNode
.
sortPSAppDEField
}}
sortPSAppDEField: { codeName: '
{{
treeNode
.
sortPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNode
.
textFormat
}}
textFormat: '
{{
treeNode
.
textFormat
}}
',
{{/if}}
{{#if
treeNode
.
textPSAppDEField
}}
textPSAppDEField: { codeName: '
{{
treeNode
.
textPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNode
.
text
}}
text: '
{{
treeNode
.
text
}}
',
{{/if}}
{{#if
treeNode
.
tooltip
}}
tooltip: '
{{
treeNode
.
tooltip
}}
',
{{/if}}
treeNodeType: '
{{
treeNode
.
treeNodeType
}}
',
},
{{/
each
}}
];
}
get treeNodeRSs(): TreeNodeRSVO[] {
return [
{{#
each
ctrl
.
psDETreeNodeRSs
as
|
treeNodeRS
|
}}
{
{{#if
treeNodeRS
.
childPSDETreeNode
}}
childDeTreeNode: {
id: '
{{
treeNodeRS
.
childPSDETreeNode
.
id
}}
'
},
{{/if}}
{{#if
treeNodeRS
.
psNavigateContexts
}}
navigateContext: {
{{#
each
treeNodeRS
.
psNavigateContexts
as
|
navContext
|
}}
{{
navContext
.
key
}}
: '
{{#if
navContext
.
rawValue
}}{{
navContext
.
value
}}{{else}}
%
{{
navContext
.
value
}}
%
{{/if}}
',
{{/
each
}}
},
{{/if}}
{{#if
treeNodeRS
.
psNavigateParams
}}
navigateParams: {
{{#
each
treeNodeRS
.
psNavigateParams
as
|
navParam
|
}}
{{
navParam
.
key
}}
: '
{{#if
navParam
.
rawValue
}}{{
navParam
.
value
}}{{else}}
%
{{
navParam
.
value
}}
%
{{/if}}
',
{{/
each
}}
},
{{/if}}
{{#if
treeNodeRS
.
psDETreeNodeRSParams
}}
params: {
{{#
each
treeNodeRS
.
psDETreeNodeRSParams
as
|
param
|
}}
{{
param
.
key
}}
: { value: '
{{
param
.
value
}}
' }
{{/
each
}}
},
{{/if}}
{{#if
treeNodeRS
.
parentFilter
}}
parentFilter: '
{{
treeNodeRS
.
parentFilter
}}
',
{{/if}}
{{#if
treeNodeRS
.
parentPSDER1N
}}
parentPSDER1N: { codeName: '
{{
treeNodeRS
.
parentPSDER1N
.
codeName
}}
' },
{{/if}}
{{#if
treeNodeRS
.
parentPSAppDEField
}}
parentPSAppDEField: { codeName: '
{{
treeNodeRS
.
parentPSAppDEField
.
codeName
}}
' },
{{/if}}
{{#if
treeNodeRS
.
parentPSDETreeNode
}}
parentPSDETreeNode: { id: '
{{
treeNodeRS
.
parentPSDETreeNode
.
id
}}
' },
{{/if}}
parentValueLevel:
{{#if
treeNodeRS
.
parentValueLevel
}}{{
treeNodeRS
.
parentValueLevel
}}{{else}}
null
{{/if}}
,
searchMode:
{{
treeNodeRS
.
searchMode
}}
},
{{/
each
}}
];
}
}
export const ctrlState = {
controlCodeName: '
{{
ctrl
.
codeName
}}
',
controlName: '
{{
ctrl
.
name
}}
',
controlService: new TreeService
<ControlVO>
(ControlVO, new
{{
pascalCase
ctrl
.
psAppDataEntity
.
codeName
}}
Service() ),
currentselectedNode: {},
data: [],
selectedNodes: []
};
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
EXPBAR_TREE
}}-tree/index.ts.hbs
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
VIEW
}}-tree/index.ts.hbs
浏览文件 @
42fcee83
文件已移动
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
}}-tree/{{ctrls@TREE
}}-tree-state.ts.hbs
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
VIEW}}-tree/{{ctrls@TREEVIEW
}}-tree-state.ts.hbs
浏览文件 @
42fcee83
...
...
@@ -45,13 +45,14 @@ export class ControlVO extends ControlVOBase implements TreeControlVO {
{{/if}}
{{#if
treeNode
.
psDETreeNodeDataItems
}}
deTreeNodeDataItems: [
customCode:
{{
dataItem
.
customCode
}}
,
{{#
each
treeNode
.
psDETreeNodeDataItems
as
|
dataItem
|
}}
{
customCode:
{{
dataItem
.
customCode
}}
,
{{#if
dataItem
.
psAppDEField
}}
fieldCodeName: '
{{
dataItem
.
psAppDEField
.
codeName
}}
',
{{/if}}
name: '
{{
dataItem
.
name
}}
',
scriptCode: `
{{
dataItem
.
scriptCode
}}
`
name: '
{{
dataItem
.
name
}}
'
},
{{/
each
}}
],
{{/if}}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
EXPBAR_TREE}}-tree/{{ctrls@TREEEXPBAR_TREE
}}-tree.vue.hbs
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE
VIEW}}-tree/{{ctrls@TREEVIEW
}}-tree.vue.hbs
浏览文件 @
42fcee83
文件已移动
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE}}-tree/index.ts.hbs
已删除
100644 → 0
浏览文件 @
1a9424de
import
{{
ctrl
.
codeName
}}
Tree from "./
{{
spinalCase
ctrl
.
codeName
}}
-tree.vue";
export {
{{
ctrl
.
codeName
}}
Tree };
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREE}}-tree/{{ctrls@TREE}}-tree.vue.hbs
已删除
100644 → 0
浏览文件 @
1a9424de
<script
setup
lang=
"ts"
>
import
{
Subject
}
from
'rxjs'
;
import
{
IActionParam
,
IParam
,
ControlAction
,
TreeControl
,
IContext
}
from
'@core'
;
import
{
ctrlState
}
from
'./
{{
spinalCase
ctrl
.
codeName
}}
-tree-state'
;
interface
Props
{
context
:
IContext
;
multiple
:
boolean
;
selectedData
:
IParam
[];
selectFirstDefault
:
boolean
;
isBranchAvailable
:
boolean
;
viewParams
?:
IParam
;
controlAction
:
ControlAction
;
showBusyIndicator
?:
boolean
;
viewSubject
:
Subject
<
IActionParam
>
;
}
const
props
=
withDefaults
(
defineProps
<
Props
>
(),
{
viewSubject
:
()
=>
new
Subject
<
IActionParam
>
(),
showBusyIndicator
:
true
,
selectFirstDefault
:
false
,
isBranchAvailable
:
false
})
// emit声明
interface
CtrlEmit
{
(
name
:
"ctrlEvent"
,
value
:
IActionParam
):
void
;
}
const
emit
=
defineEmits
<
CtrlEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
load
,
treeNodeSelect
}
=
new
TreeControl
(
ctrlState
,
props
,
emit
).
moduleInstall
();
// 暴露内部状态及能力
defineExpose
({
state
,
name
:
'
{{
ctrl
.
name
}}
'
});
</script>
// TODO 树节点待支持图标和自定义绘制
<template>
<a-tree
class=
"app-tree
{{#if
ctrl
.
psSysCss
}}
{{
ctrl
.
psSysCss
.
cssName
}}{{/if}}
"
:tree-data=
"state.data"
:load-data=
"load"
:fieldNames=
"{ title: 'text', key: 'id' }"
@
select=
"treeNodeSelect"
>
<template
#
title=
"{ text, id }"
>
<div
class=
"app-tree-node"
>
<span
class=
"tree-node__title"
>
\{{ text }}
</span>
</div>
</template>
</a-tree>
</template>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录