Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-generator
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-generator
提交
5d65ef61
提交
5d65ef61
编写于
12月 31, 2021
作者:
RedPig97
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update: 更新
上级
a1b27ced
变更
11
显示空白字符变更
内嵌
并排
正在显示
11 个修改的文件
包含
122 行增加
和
51 行删除
+122
-51
form-details-model.hbs
...ources/templ/r7/@macro/form-detail/form-details-model.hbs
+30
-19
menu-item.hbs
.../main/resources/templ/r7/@macro/menu-detail/menu-item.hbs
+2
-0
IbizDefaultIndexViewLayout.vue
...ps}}/src/components/layout/IbizDefaultIndexViewLayout.vue
+3
-15
IbizIndexViewBaseLayout.vue
...{apps}}/src/components/layout/IbizIndexViewBaseLayout.vue
+3
-0
IbizViewBaseLayout.vue
...app_{{apps}}/src/components/layout/IbizViewBaseLayout.vue
+12
-2
ibizToolbar.vue
...mpl/r7/app_{{apps}}/src/components/render/ibizToolbar.vue
+4
-3
form-control.ts
...rc/ibiz-core/modules/widgets/form-control/form-control.ts
+33
-1
{{pages@APPINDEXVIEW}}.vue.hbs
...s}}/{{pages@APPINDEXVIEW}}/{{pages@APPINDEXVIEW}}.vue.hbs
+2
-2
index.scss
...resources/templ/r7/app_{{apps}}/src/style/base/index.scss
+19
-1
{{ctrls@FORM}}-form-config.ts.hbs
...s}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form-config.ts.hbs
+8
-8
{{ctrls@FORM}}-form.vue.hbs
...ntities}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form.vue.hbs
+6
-0
未找到文件。
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/form-detail/form-details-model.hbs
浏览文件 @
5d65ef61
{{#
each
items
as
|
formDetail
|
}}
{{#
each
items
as
|
formDetail
|
}}
{
{
caption: '
{{
formDetail
.
caption
}}
',
caption: '
{{
formDetail
.
caption
}}
',
codeName: '
{{
formDetail
.
codeName
}}
',
codeName: '
{{
formDetail
.
codeName
}}
',
name: '
{{
formDetail
.
name
}}
',
name: '
{{
formDetail
.
name
}}
',
{{#if
(
eq
formDetail
.
detailType
"FORMITEM"
)
}}
{{#if
(
eq
formDetail
.
detailType
"FORMITEM"
)
}}
dataType: '
{{
formDetail
.
dataType
}}
',
dataType: '
{{
formDetail
.
dataType
}}
',
detailStyle: '
{{
formDetail
.
detailStyle
}}
',
detailStyle: '
{{
formDetail
.
detailStyle
}}
',
{{#
formDetail
.
resetItemName
}}
resetItemName: '
{{
formDetail
.
resetItemName
}}
',
resetItemName: '
{{
formDetail
.
resetItemName
}}
',
{{/
formDetail
.
resetItemName
}}
{{#
formDetail
.
valueItemName
}}
valueItemName: '
{{
formDetail
.
valueItemName
}}
',
valueItemName: '
{{
formDetail
.
valueItemName
}}
',
{{/
formDetail
.
valueItemName
}}
{{#
each
formDetail
.
psDEFDGroupLogics
as
|
groupLogic
|
}}
{{#
each
formDetail
.
psDEFDGroupLogics
as
|
groupLogic
|
}}
groupOP:
{{
groupLogic
.
groupOP
}}
,
groupLogics: {
relatedDetailNames:
{{
groupLogic
.
relatedDetailNames
}}
,
name: '
{{
groupLogic
.
name
}}
',
logicCat:
{{
groupLogic
.
logicCat
}}
,
groupOP: '
{{
groupLogic
.
groupOP
}}
',
logicType:
{{
groupLogic
.
logicType
}}
,
relatedDetailNames: '
{{
groupLogic
.
relatedDetailNames
}}
',
notMode:
{{
groupLogic
.
notMode
}}
,
logicCat: '
{{
groupLogic
.
logicCat
}}
',
Logics: [],
logicType: '
{{
groupLogic
.
logicType
}}
',
notMode: '
{{
groupLogic
.
notMode
}}
',
Logics: [
{{#
each
groupLogic
.
psDEFDLogics
as
|
logic
|
}}
{condOP: '
{{
logic
.
condOP
}}
',dEFDName: '
{{
logic
.
dEFDName
}}
',logicType: '
{{
logic
.
logicType
}}
',name: '
{{
logic
.
name
}}
',}
{{/
each
}}
],
}
{{/
each
}}
{{/
each
}}
{{/if}}
{{/if}}
},
},
{{#if
formDetail
.
psDEFormDetails
}}
{{#if
formDetail
.
psDEFormDetails
}}
{{>
(
lookup
'FORMDETAILSMODEL'
)
items
=
formDetail
.
psDEFormDetails
}}
{{>
(
lookup
'FORMDETAILSMODEL'
)
items
=
formDetail
.
psDEFormDetails
}}
{{/if}}
{{/if}}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/menu-detail/menu-item.hbs
浏览文件 @
5d65ef61
...
@@ -20,6 +20,8 @@
...
@@ -20,6 +20,8 @@
{{#if
item
.
psSysImage
.
imagePath
}}
{{#if
item
.
psSysImage
.
imagePath
}}
imgPath: "
{{
item
.
psSysImage
.
imagePath
}}
",
imgPath: "
{{
item
.
psSysImage
.
imagePath
}}
",
{{/if}}
{{/if}}
{{else}}
iconClass: "fa fa-cogs",
{{/if}}
{{/if}}
{{#if
item
.
psNavigateContexts
}}
{{#if
item
.
psNavigateContexts
}}
navContext:
{{
item
.
psNavigateContexts
}}
,
navContext:
{{
item
.
psNavigateContexts
}}
,
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/layout/IbizIndexViewLayout.vue
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/layout/Ibiz
Default
IndexViewLayout.vue
浏览文件 @
5d65ef61
...
@@ -17,7 +17,7 @@ const props = withDefaults(defineProps<LayoutProps>(), {
...
@@ -17,7 +17,7 @@ const props = withDefaults(defineProps<LayoutProps>(), {
</
script
>
</
script
>
<
template
>
<
template
>
<IbizIndexViewBaseLayout
:collapsed=
"collapsed
"
>
<IbizIndexViewBaseLayout
class=
"ibiz-default-index-view
"
>
<template
v-slot:header-left
>
<template
v-slot:header-left
>
<slot
name=
"caption"
></slot>
<slot
name=
"caption"
></slot>
</
template
>
</
template
>
...
@@ -38,25 +38,13 @@ const props = withDefaults(defineProps<LayoutProps>(), {
...
@@ -38,25 +38,13 @@ const props = withDefaults(defineProps<LayoutProps>(), {
</a-layout-sider>
</a-layout-sider>
</
template
>
</
template
>
<
template
v-slot:content
>
<
template
v-slot:content
>
<!--
<div
class=
"ibiz-page-tag"
></div>
-->
<slot
name=
"router"
/>
<slot
name=
"router"
/>
</
template
>
</
template
>
</IbizIndexViewBaseLayout>
</IbizIndexViewBaseLayout>
</template>
</template>
<
style
lang=
"scss"
>
<
style
lang=
"scss"
>
.app-index-view
{
.ibiz-default-index-view
{
width
:
100%
;
height
:
100%
;
.ant-layout-header
{
display
:
flex
;
background-color
:
#fff
;
justify-content
:
space-between
;
}
.ant-layout-sider
{
overflow-y
:
auto
;
}
.ant-layout-footer
{
padding
:
0
;
}
}
}
</
style
>
</
style
>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/layout/IbizIndexViewBaseLayout.vue
浏览文件 @
5d65ef61
...
@@ -36,5 +36,8 @@
...
@@ -36,5 +36,8 @@
.ant-layout-sider
{
.ant-layout-sider
{
overflow-y
:
auto
;
overflow-y
:
auto
;
}
}
.ant-layout-footer
{
padding
:
0
;
}
}
}
</
style
>
</
style
>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/layout/IbizViewBaseLayout.vue
浏览文件 @
5d65ef61
...
@@ -28,21 +28,31 @@
...
@@ -28,21 +28,31 @@
<
style
lang=
"scss"
>
<
style
lang=
"scss"
>
.ibiz-view-layout
{
.ibiz-view-layout
{
padding
:
0
24px
24px
;
padding
:
8px
12px
10px
;
display
:
flex
;
flex-direction
:
column
;
.ibiz-view-layout__header
{
.ibiz-view-layout__header
{
flex
:
none
;
flex
:
none
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
padding
:
16px
0
;
background
:
#fff
;
.ibiz-view-layout__header-content
{
.ibiz-view-layout__header-content
{
height
:
48px
;
display
:
flex
;
display
:
flex
;
justify-content
:
space-between
;
justify-content
:
space-between
;
margin
:
0
10px
;
border-bottom
:
1px
solid
#E4E4E4
;
.ibiz-view__caption
{
font-size
:
18px
;
}
}
}
}
}
.ibiz-view-layout__body
{
.ibiz-view-layout__body
{
flex
:
auto
;
flex
:
auto
;
height
:
100%
;
display
:
flex
;
display
:
flex
;
flex-direction
:
column
;
flex-direction
:
column
;
overflow
:
auto
;
}
}
.ibiz-view-footer
{
.ibiz-view-footer
{
flex
:
none
;
flex
:
none
;
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/render/ibizToolbar.vue
浏览文件 @
5d65ef61
...
@@ -35,7 +35,7 @@ const itemClick = (item: IParam) => {
...
@@ -35,7 +35,7 @@ const itemClick = (item: IParam) => {
</
script
>
</
script
>
<
template
>
<
template
>
<div
class=
"toolbar"
>
<div
class=
"toolbar"
>
<a-space
v-if=
"Object.is(mode,'button')"
class=
"toolbar-button"
>
<a-space
v-if=
"Object.is(mode,'button')"
class=
"toolbar-button"
style=
"gap: 4px;"
>
<template
v-for=
"(item, index) in items"
:key=
"index"
>
<template
v-for=
"(item, index) in items"
:key=
"index"
>
<a-tooltip
<a-tooltip
v-if=
"Object.is(item.itemType, 'DEUIACTION')"
v-if=
"Object.is(item.itemType, 'DEUIACTION')"
...
@@ -46,7 +46,6 @@ const itemClick = (item: IParam) => {
...
@@ -46,7 +46,6 @@ const itemClick = (item: IParam) => {
v-show=
"item.visible"
v-show=
"item.visible"
:class=
"['toolbar-item', item.class]"
:class=
"['toolbar-item', item.class]"
:disabled=
"item.disabled"
:disabled=
"item.disabled"
type=
"primary"
@
click=
"itemClick(item)"
@
click=
"itemClick(item)"
>
>
<IbizIconText
<IbizIconText
...
@@ -66,7 +65,6 @@ const itemClick = (item: IParam) => {
...
@@ -66,7 +65,6 @@ const itemClick = (item: IParam) => {
v-show=
"childItem.visible"
v-show=
"childItem.visible"
:class=
"['toolbar-item', item.class]"
:class=
"['toolbar-item', item.class]"
:disabled=
"childItem.disabled"
:disabled=
"childItem.disabled"
type=
"primary"
@
click=
"itemClick(childItem)"
@
click=
"itemClick(childItem)"
>
>
<IbizIconText
<IbizIconText
...
@@ -104,6 +102,8 @@ const itemClick = (item: IParam) => {
...
@@ -104,6 +102,8 @@ const itemClick = (item: IParam) => {
<
style
lang=
'scss'
>
<
style
lang=
'scss'
>
.toolbar
{
.toolbar
{
display
:
flex
;
align-items
:
center
;
.toolbar-link
{
.toolbar-link
{
gap
:
0
!
important
;
gap
:
0
!
important
;
display
:
flex
;
display
:
flex
;
...
@@ -124,6 +124,7 @@ const itemClick = (item: IParam) => {
...
@@ -124,6 +124,7 @@ const itemClick = (item: IParam) => {
}
}
}
}
.toolbar-item
{
.toolbar-item
{
border-radius
:
4px
;
.ibiz-icon-text__icon
{
.ibiz-icon-text__icon
{
vertical-align
:
unset
;
vertical-align
:
unset
;
}
}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/form-control/form-control.ts
浏览文件 @
5d65ef61
...
@@ -40,7 +40,7 @@ export class FormControl extends MainControl {
...
@@ -40,7 +40,7 @@ export class FormControl extends MainControl {
* @memberof FormControl
* @memberof FormControl
*/
*/
public
resetFormData
(
name
:
string
)
{
public
resetFormData
(
name
:
string
)
{
const
formItems
:
any
[]
=
this
.
controlState
.
itemsModel
;
const
formItems
:
any
[]
=
this
.
controlState
.
formDetails
;
if
(
formItems
&&
formItems
.
length
>
0
)
{
if
(
formItems
&&
formItems
.
length
>
0
)
{
for
(
const
item
of
formItems
)
{
for
(
const
item
of
formItems
)
{
if
(
item
.
resetItemName
&&
item
.
resetItemName
==
name
)
{
if
(
item
.
resetItemName
&&
item
.
resetItemName
==
name
)
{
...
@@ -53,6 +53,38 @@ export class FormControl extends MainControl {
...
@@ -53,6 +53,38 @@ export class FormControl extends MainControl {
}
}
}
}
/**
* @description 动态显示逻辑
* @memberof FormControl
*/
public
displayLogic
(
name
:
string
)
{
const
formItems
:
any
[]
=
this
.
controlState
.
formDetails
;
// 表单动态逻辑
// allFormDetails?.forEach((detail: IPSDEFormDetail) => {
// detail.getPSDEFDGroupLogics()?.forEach((logic: IPSDEFDCatGroupLogic) => {
// // todo lxm 缺少getRelatedDetailNames
// let relatedNames = logic.getRelatedDetailNames() || [];
// if (Object.is(name, '') || relatedNames.indexOf(name) != -1) {
// let ret = this.verifyGroupLogic(this.data, logic);
// switch (logic.logicCat) {
// // 动态空输入,不满足则必填
// case 'ITEMBLANK':
// this.detailsModel[detail.name].required = !ret;
// break;
// // 动态启用,满足则启用
// case 'ITEMENABLE':
// this.detailsModel[detail.name].setDisabled(!ret);
// break;
// // 动态显示,满足则显示
// case 'PANELVISIBLE':
// this.detailsModel[detail.name].setVisible(ret);
// break;
// }
// }
// })
// })
}
/**
/**
* 在表单执行某些行为能力后,表单整体数据发生改变后被调用。会依次执行以下逻辑:
* 在表单执行某些行为能力后,表单整体数据发生改变后被调用。会依次执行以下逻辑:
* 1.
* 1.
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/page/{{appModules}}/{{pages@APPINDEXVIEW}}/{{pages@APPINDEXVIEW}}.vue.hbs
浏览文件 @
5d65ef61
...
@@ -38,7 +38,7 @@ const collapsedChange = () => {
...
@@ -38,7 +38,7 @@ const collapsedChange = () => {
</script>
</script>
<template>
<template>
<IbizIndexViewLayout
class=
"ibiz-index-view"
:menuAlign=
"state.menuAlign"
:collapsed=
"collapsed"
>
<Ibiz
Default
IndexViewLayout
class=
"ibiz-index-view"
:menuAlign=
"state.menuAlign"
:collapsed=
"collapsed"
>
<template
#
caption
>
<template
#
caption
>
<div
class=
"index-view-header"
>
<div
class=
"index-view-header"
>
\{{state.viewCaption}}
\{{state.viewCaption}}
...
@@ -66,7 +66,7 @@ const collapsedChange = () => {
...
@@ -66,7 +66,7 @@ const collapsedChange = () => {
<template
#
router
>
<template
#
router
>
<router-view
/>
<router-view
/>
</template>
</template>
</IbizIndexViewLayout>
</Ibiz
Default
IndexViewLayout>
</template>
</template>
<style
lang=
"scss"
>
<style
lang=
"scss"
>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/base/index.scss
浏览文件 @
5d65ef61
...
@@ -8,3 +8,21 @@ body{
...
@@ -8,3 +8,21 @@ body{
}
}
// 滚动条样式
// 滚动条样式
::-webkit-scrollbar
{
background
:
transparent
;
width
:
4px
;
height
:
4px
;
}
::-webkit-scrollbar-thumb
{
border-radius
:
0
;
box-shadow
:
none
;
border
:
0
;
background-color
:
#d6d6d6
;
}
::-webkit-scrollbar-track
{
border-radius
:
0
;
box-shadow
:
none
;
border
:
0
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form-config.ts.hbs
浏览文件 @
5d65ef61
...
@@ -52,7 +52,7 @@ export const CtrlConfig = {
...
@@ -52,7 +52,7 @@ export const CtrlConfig = {
controlName: '
{{
ctrl
.
name
}}
',
controlName: '
{{
ctrl
.
name
}}
',
controlService: new EditFormService
<ControlVO>
(ControlVO, new
{{
pascalCase
ctrl
.
psAppDataEntity
.
codeName
}}
Service() ),
controlService: new EditFormService
<ControlVO>
(ControlVO, new
{{
pascalCase
ctrl
.
psAppDataEntity
.
codeName
}}
Service() ),
data: new ControlVO({}),
data: new ControlVO({}),
itemsModel
: [
formDetails
: [
{{#
each
ctrl
.
psDEFormPages
as
|
FormPage
|
}}
{{#
each
ctrl
.
psDEFormPages
as
|
FormPage
|
}}
{{>
(
lookup
'FORMDETAILSMODEL'
)
items
=
FormPage
.
psDEFormDetails
}}
{{>
(
lookup
'FORMDETAILSMODEL'
)
items
=
FormPage
.
psDEFormDetails
}}
{{/
each
}}
{{/
each
}}
...
@@ -65,13 +65,13 @@ export const CtrlConfig = {
...
@@ -65,13 +65,13 @@ export const CtrlConfig = {
{{#
each
ruleItem
.
psDEFVRGroupCondition
as
|
condition
|
}}
{{#
each
ruleItem
.
psDEFVRGroupCondition
as
|
condition
|
}}
{trigger: ['change', 'blur'],
{trigger: ['change', 'blur'],
validator: (_rule: RuleObject, value: string) => verifyRules(_rule,value,{
validator: (_rule: RuleObject, value: string) => verifyRules(_rule,value,{
{{#
condition
.
condType
}}
type:
{{
condition
.
condType
}}
,
{{/
condition
.
condType
}}
{{#
condition
.
condType
}}
type:
'
{{
condition
.
condType
}}
'
,
{{/
condition
.
condType
}}
{{#
condition
.
name
}}
name:
{{
condition
.
name
}}
,
{{/
condition
.
name
}}
{{#
condition
.
name
}}
name:
'
{{
condition
.
name
}}
'
,
{{/
condition
.
name
}}
{{#
condition
.
maxValue
}}
maxValue:
{{
condition
.
maxValue
}}
,
{{/
condition
.
maxValue
}}
{{#
condition
.
maxValue
}}
maxValue:
'
{{
condition
.
maxValue
}}
'
,
{{/
condition
.
maxValue
}}
{{#
condition
.
minValue
}}
minValue:
{{
condition
.
minValue
}}
,
{{/
condition
.
minValue
}}
{{#
condition
.
minValue
}}
minValue:
'
{{
condition
.
minValue
}}
'
,
{{/
condition
.
minValue
}}
{{#
condition
.
ruleInfo
}}
ruleInfo:
{{
condition
.
ruleInfo
}}
,
{{/
condition
.
ruleInfo
}}
{{#
condition
.
ruleInfo
}}
ruleInfo:
'
{{
condition
.
ruleInfo
}}
'
,
{{/
condition
.
ruleInfo
}}
{{#
condition
.
includeMaxValue
}}
includeMaxValue:
{{
condition
.
includeMaxValue
}}
,
{{/
condition
.
includeMaxValue
}}
{{#
condition
.
includeMaxValue
}}
includeMaxValue:
'
{{
condition
.
includeMaxValue
}}
'
,
{{/
condition
.
includeMaxValue
}}
{{#
condition
.
includeMinValue
}}
includeMinValue:
{{
condition
.
includeMinValue
}}
,
{{/
condition
.
includeMinValue
}}
{{#
condition
.
includeMinValue
}}
includeMinValue:
'
{{
condition
.
includeMinValue
}}
'
,
{{/
condition
.
includeMinValue
}}
}) }
}) }
{{/
each
}}
{{/
each
}}
]
]
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@FORM}}-form/{{ctrls@FORM}}-form.vue.hbs
浏览文件 @
5d65ef61
...
@@ -51,4 +51,10 @@ const { state, handleEditorEvent } = new FormControl(CtrlConfig).moduleInstall(p
...
@@ -51,4 +51,10 @@ const { state, handleEditorEvent } = new FormControl(CtrlConfig).moduleInstall(p
</a-form>
</a-form>
</template>
</template>
<style
lang=
"scss"
>
<style
lang=
"scss"
>
.ibiz-form
{
.ant-card-head
{
padding
:
0
;
margin
:
0
10px
;
}
}
</style>
</style>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录