Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-generator
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-generator
提交
b24eb94b
提交
b24eb94b
编写于
3月 15, 2022
作者:
Mosher
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add:新增导出行为工具栏组件
上级
0014dcc9
变更
3
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
103 行增加
和
2 行删除
+103
-2
app-export-excel.vue
...7/app_{{apps}}/src/components/common/app-export-excel.vue
+97
-0
app-toolbar.vue
...mpl/r7/app_{{apps}}/src/components/common/app-toolbar.vue
+5
-1
{{ctrls@TREEVIEW}}-tree-state.ts.hbs
...trls@TREEVIEW}}-tree/{{ctrls@TREEVIEW}}-tree-state.ts.hbs
+1
-1
未找到文件。
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/common/app-export-excel.vue
0 → 100644
浏览文件 @
b24eb94b
<
template
>
<a-dropdown
:trigger=
"['click']"
class=
"app-export-excel"
overlayClassName=
"app-export-excel__dropdown"
>
<template
#
overlay
>
<a-menu>
<a-menu-item
key=
"1"
@
click=
"exportExcel('maxRowCount', $event)"
>
最大
{{
item
.
caption
}}
1000行
</a-menu-item>
<a-menu-item
key=
"2"
@
click=
"exportExcel('activatedPage', $event)"
>
{{
item
.
caption
}}
当前页
</a-menu-item>
<a-menu-item
key=
"3"
>
<span>
<a-input-number
v-model:value=
"startPage"
@
change=
"onChange('start')"
:min=
"1"
@
click
.
stop
:controls=
"false"
/>
~
<a-input-number
v-model:value=
"endPage"
@
change=
"onChange('end')"
@
click
.
stop
:min=
"1"
:controls=
"false"
/>
<a-button
type=
"text"
@
click=
"exportExcel('custom', $event)"
>
GO
</a-button>
</span>
</a-menu-item>
</a-menu>
</
template
>
<a-button>
<i
v-if=
"item.iconClass"
:class=
"item.iconClass"
></i>
<img
v-if=
"item.imgPath"
:src=
"item.imgPath"
alt=
""
/>
{{ item.caption }}
<DownOutlined
/>
</a-button>
</a-dropdown>
</template>
<
script
setup
lang=
'ts'
>
import
{
deepCopy
,
IParam
}
from
'@core'
;
import
{
DownOutlined
}
from
'@ant-design/icons-vue'
;
// 接口声明
interface
exportExcelProps
{
item
:
any
;
}
interface
exportExcelEmit
{
(
name
:
'exportExcel'
,
value
:
IParam
):
void
;
}
const
emit
=
defineEmits
<
exportExcelEmit
>
();
const
props
=
withDefaults
(
defineProps
<
exportExcelProps
>
(),
{});
// 初始化选择值
const
startPage
=
ref
(
1
);
const
endPage
=
ref
(
10
);
/**
* 导出数据
*
* @param {*} $event
* @param {string} type
* @returns {void}
* @memberof AppExportExcel
*/
const
exportExcel
=
(
type
:
string
,
$event
:
MouseEvent
):
void
=>
{
const
exportParams
:
any
=
{
type
:
type
};
if
(
Object
.
is
(
type
,
'maxRowCount'
))
{
Object
.
assign
(
exportParams
,
{
maxRowCount
:
1000
});
}
else
if
(
Object
.
is
(
type
,
'activatedPage'
))
{
}
else
if
(
Object
.
is
(
type
,
'custom'
))
{
Object
.
assign
(
exportParams
,
{
startPage
:
startPage
.
value
,
endPage
:
endPage
.
value
});
}
emit
(
'exportExcel'
,
Object
.
assign
(
deepCopy
(
props
.
item
),
{
event
:
{
exportParams
:
exportParams
,
event
:
$event
}
}));
};
/**
* 计算自定义导出页数逻辑
*
* @memberof AppExportExcel
*/
const
onChange
=
(
type
:
string
)
=>
{
if
(
type
===
'start'
)
{
if
(
startPage
.
value
>=
endPage
.
value
)
{
startPage
.
value
=
endPage
.
value
-
1
;
}
}
if
(
type
===
'end'
)
{
if
(
endPage
.
value
>=
startPage
.
value
)
{
endPage
.
value
=
startPage
.
value
+
1
;
}
}
}
</
script
>
<
style
lang=
"scss"
>
.app-export-excel
{
font-size
:
var
(
--
app-font-size-md
);
padding
:
4px
12px
;
i
{
padding-right
:
6px
;
}
.anticon.anticon-down
{
margin-left
:
6px
;
}
}
.app-export-excel__dropdown
{
.ant-input-number
{
width
:
50px
;
}
}
</
style
>
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/components/common/app-toolbar.vue
浏览文件 @
b24eb94b
...
...
@@ -56,13 +56,15 @@ const hasCounter = (item: any) => {
<!-- todo 无权限显示模式 -->
<template
v-if=
"hasCounter(item)"
>
<a-badge
:count=
"counterData[item.counterId]"
>
<AppExportExcel
v-if=
"item.uIAction.uIActionTag === 'ExportExcel'"
:item=
"item"
@
exportExcel=
"itemClick"
/>
<a-button
v-else
v-show=
"item.visible"
:class=
"['toolbar-item', item.class]"
:disabled=
"item.disabled"
@
click=
"itemClick(item)"
>
<AppIconText
<AppIconText
:text=
"item.showCaption ? item.caption : undefined"
:iconClass=
"item.showIcon ? item.iconClass : undefined"
:imgPath=
"item.showIcon ? item.imgPath : undefined"
/>
...
...
@@ -70,7 +72,9 @@ const hasCounter = (item: any) => {
</a-badge>
</
template
>
<
template
v-else
>
<AppExportExcel
v-if=
"item.uIAction.uIActionTag === 'ExportExcel'"
:item=
"item"
@
exportExcel=
"itemClick"
/>
<a-button
v-else
v-show=
"item.visible"
:class=
"['toolbar-item', item.class]"
:disabled=
"item.disabled"
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/widgets/{{appEntities}}/{{ctrls@TREEVIEW}}-tree/{{ctrls@TREEVIEW}}-tree-state.ts.hbs
浏览文件 @
b24eb94b
...
...
@@ -65,7 +65,7 @@ export class ControlVO extends ControlVOBase implements TreeControlVO {
enableQuickSearch:
{{
treeNode
.
enableQuickSearch
}}
,
expandFirstOnly:
{{
treeNode
.
expandFirstOnly
}}
,
expanded:
{{
treeNode
.
expanded
}}
,
hasPSDETreeNodeRSs:
{{
treeNode
.
psDETreeNodeRSs
}}
,
hasPSDETreeNodeRSs:
{{
#if
treeNode
.
psDETreeNodeRSs
}}
true
{{else}}{{#if
treeNode
.
hasPSDETreeNodeRSs
}}
true
{{else}}
false
{{/if}}{{/if
}}
,
{{#if
treeNode
.
leafFlagPSAppDEField
}}
leafFlagPSAppDEField: { codeName: '
{{
treeNode
.
leafFlagPSAppDEField
.
codeName
}}
' },
{{/if}}
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录