Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
I
ibizlab-generator
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
ibiz4jteam
ibizlab-generator
提交
3e9e958a
提交
3e9e958a
编写于
1月 05, 2022
作者:
tony001
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update:更新前端结构
上级
dc15f466
变更
65
显示空白字符变更
内嵌
并排
正在显示
65 个修改的文件
包含
1605 行增加
和
1141 行删除
+1605
-1141
PageModel.java
...ore/src/main/java/cn/ibizlab/codegen/model/PageModel.java
+71
-1
viewBaseConfig.hbs
.../templ/r7/@macro/front-end/view/common/viewBaseConfig.hbs
+6
-7
App.vue
...core/src/main/resources/templ/r7/app_{{apps}}/src/App.vue
+3
-10
app-func-config.ts.hbs
...rces/templ/r7/app_{{apps}}/src/app/app-func-config.ts.hbs
+31
-0
app-view-config.ts.hbs
...rces/templ/r7/app_{{apps}}/src/app/app-view-config.ts.hbs
+5
-3
app.ts
...e/src/main/resources/templ/r7/app_{{apps}}/src/app/app.ts
+59
-0
index.ts
...src/main/resources/templ/r7/app_{{apps}}/src/app/index.ts
+1
-0
index.scss
...sources/templ/r7/app_{{apps}}/src/custom/style/index.scss
+0
-1
app-func-config.ts.hbs
...ps}}/src/ibiz-core/helper/app-func/app-func-config.ts.hbs
+0
-31
index.ts
...pl/r7/app_{{apps}}/src/ibiz-core/helper/app-func/index.ts
+0
-2
index.ts
...urces/templ/r7/app_{{apps}}/src/ibiz-core/helper/index.ts
+0
-1
index.ts
...in/resources/templ/r7/app_{{apps}}/src/ibiz-core/index.ts
+2
-2
i-ui-action.ts
...{{apps}}/src/ibiz-core/interface/app-logic/i-ui-action.ts
+0
-21
index.ts
...7/app_{{apps}}/src/ibiz-core/interface/app-logic/index.ts
+0
-1
i-app.ts
...empl/r7/app_{{apps}}/src/ibiz-core/interface/app/i-app.ts
+46
-0
index.ts
...empl/r7/app_{{apps}}/src/ibiz-core/interface/app/index.ts
+1
-0
i-view-detail.ts
..._{{apps}}/src/ibiz-core/interface/common/i-view-detail.ts
+5
-5
index.ts
...es/templ/r7/app_{{apps}}/src/ibiz-core/interface/index.ts
+3
-2
i-app-func-service.ts
...pps}}/src/ibiz-core/interface/logic/i-app-func-service.ts
+20
-0
i-open-view-service.ts
...ps}}/src/ibiz-core/interface/logic/i-open-view-service.ts
+18
-0
index.ts
...pl/r7/app_{{apps}}/src/ibiz-core/interface/logic/index.ts
+2
-0
app-func-service.ts
...{apps}}/src/ibiz-core/logic/app-logic/app-func-service.ts
+10
-12
index.ts
...pl/r7/app_{{apps}}/src/ibiz-core/logic/app-logic/index.ts
+1
-0
app-backend-action.ts
...}/src/ibiz-core/logic/app-ui-action/app-backend-action.ts
+24
-0
app-front-action.ts
...s}}/src/ibiz-core/logic/app-ui-action/app-front-action.ts
+23
-0
app-sys-action.ts
...pps}}/src/ibiz-core/logic/app-ui-action/app-sys-action.ts
+24
-0
app-ui-action.ts
...apps}}/src/ibiz-core/logic/app-ui-action/app-ui-action.ts
+4
-4
index.ts
...7/app_{{apps}}/src/ibiz-core/logic/app-ui-action/index.ts
+1
-0
index.ts
...ources/templ/r7/app_{{apps}}/src/ibiz-core/logic/index.ts
+2
-0
index.ts
.../r7/app_{{apps}}/src/ibiz-core/modules/app-logic/index.ts
+0
-1
app-backend-action.ts
...iz-core/modules/app-logic/ui-action/app-backend-action.ts
+0
-36
app-front-action.ts
...ibiz-core/modules/app-logic/ui-action/app-front-action.ts
+0
-36
app-sys-action.ts
...c/ibiz-core/modules/app-logic/ui-action/app-sys-action.ts
+0
-36
index.ts
...apps}}/src/ibiz-core/modules/app-logic/ui-action/index.ts
+0
-1
app-base.ts
...mpl/r7/app_{{apps}}/src/ibiz-core/modules/app/app-base.ts
+59
-0
index.ts
.../templ/r7/app_{{apps}}/src/ibiz-core/modules/app/index.ts
+1
-0
editor-base.ts
.../app_{{apps}}/src/ibiz-core/modules/editor/editor-base.ts
+4
-5
index.ts
...rces/templ/r7/app_{{apps}}/src/ibiz-core/modules/index.ts
+1
-1
main-view.ts
...apps}}/src/ibiz-core/modules/views/main-view/main-view.ts
+39
-12
view-prop-base.ts
...}/src/ibiz-core/modules/views/view-base/view-prop-base.ts
+2
-2
view-state-base.ts
.../src/ibiz-core/modules/views/view-base/view-state-base.ts
+3
-3
control-prop-base.ts
...iz-core/modules/widgets/control-base/control-prop-base.ts
+3
-3
control-state-base.ts
...z-core/modules/widgets/control-base/control-state-base.ts
+2
-2
grid-control-state.ts
...z-core/modules/widgets/grid-control/grid-control-state.ts
+75
-13
grid-control.ts
...rc/ibiz-core/modules/widgets/grid-control/grid-control.ts
+689
-689
main-control-state.ts
...z-core/modules/widgets/main-control/main-control-state.ts
+0
-7
menu-control.ts
...rc/ibiz-core/modules/widgets/menu-control/menu-control.ts
+1
-2
grid-service.ts
...s}}/src/ibiz-core/service/control-service/grid-service.ts
+6
-6
entity-service.ts
...p_{{apps}}/src/ibiz-core/service/entity/entity-service.ts
+2
-2
index.ts
...ources/templ/r7/app_{{apps}}/src/ibiz-core/utils/index.ts
+2
-3
index.ts
...es/templ/r7/app_{{apps}}/src/ibiz-core/utils/net/index.ts
+1
-0
index.ts
...ces/templ/r7/app_{{apps}}/src/ibiz-core/utils/ui/index.ts
+2
-0
route-util.ts
...empl/r7/app_{{apps}}/src/ibiz-core/utils/ui/route-util.ts
+15
-15
ui-util.ts
...s/templ/r7/app_{{apps}}/src/ibiz-core/utils/ui/ui-util.ts
+96
-0
view-util.ts
...es/templ/r7/app_{{apps}}/src/ibiz-core/utils/view-util.ts
+0
-88
index.d.ts
...e/src/main/resources/templ/r7/app_{{apps}}/src/index.d.ts
+5
-0
{{pages@DEGRIDVIEW}}.vue.hbs
...dules}}/{{pages@DEGRIDVIEW}}/{{pages@DEGRIDVIEW}}.vue.hbs
+1
-1
app.ts
...in/resources/templ/r7/app_{{apps}}/src/service/app/app.ts
+0
-53
index.ts
...main/resources/templ/r7/app_{{apps}}/src/service/index.ts
+0
-2
index.scss
...main/resources/templ/r7/app_{{apps}}/src/style/index.scss
+1
-1
index.scss
...resources/templ/r7/app_{{apps}}/src/style/user/index.scss
+1
-0
app-modal.scss
.../templ/r7/app_{{apps}}/src/utils/app-modal/app-modal.scss
+0
-0
index.ts
...c/main/resources/templ/r7/app_{{apps}}/src/utils/index.ts
+1
-0
open-view-service.ts
.../r7/app_{{apps}}/src/utils/open-view/open-view-service.ts
+5
-6
yarn.lock
...r-core/src/main/resources/templ/r7/app_{{apps}}/yarn.lock
+226
-12
未找到文件。
modules/ibizlab-generator-core/src/main/java/cn/ibizlab/codegen/model/PageModel.java
浏览文件 @
3e9e958a
package
cn
.
ibizlab
.
codegen
.
model
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.experimental.Accessors
;
import
net.ibizsys.model.app.view.IPSAppView
;
import
org.springframework.util.StringUtils
;
import
net.ibizsys.model.control.toolbar.IPSDETBUIActionItem
;
import
net.ibizsys.model.control.toolbar.IPSDEToolbar
;
import
net.ibizsys.model.view.IPSUIAction
;
import
java.util.*
;
...
...
@@ -42,6 +46,67 @@ public class PageModel extends BaseModel{
}
});
}
// 初始化工具栏数据
if
(
appView
.
getPSControls
()
!=
null
)
{
appView
.
getPSControls
().
forEach
(
item
->{
if
(
"TOOLBAR"
.
equals
(
item
.
getControlType
())){
JSONObject
viewToolBar
=
new
JSONObject
();
viewToolBar
.
put
(
"codeName"
,
item
.
getCodeName
());
viewToolBar
.
put
(
"controlType"
,
item
.
getControlType
());
viewToolBar
.
put
(
"logicName"
,
item
.
getLogicName
());
if
(((
IPSDEToolbar
)
item
).
getPSDEToolbarItems
()
!=
null
){
JSONArray
items
=
new
JSONArray
();
((
IPSDEToolbar
)
item
).
getPSDEToolbarItems
().
forEach
(
singleItam
->{
JSONObject
toolbarItem
=
new
JSONObject
();
toolbarItem
.
put
(
"caption"
,
singleItam
.
getCaption
());
if
(
singleItam
.
getCapPSLanguageRes
()
!=
null
&&
singleItam
.
getCapPSLanguageRes
().
getLanResTag
()
!=
null
){
toolbarItem
.
put
(
"capPSLanguageRes"
,
singleItam
.
getCapPSLanguageRes
().
getLanResTag
());
}
toolbarItem
.
put
(
"tooltip"
,
singleItam
.
getTooltip
());
if
(
singleItam
.
getTooltipPSLanguageRes
()
!=
null
&&
singleItam
.
getTooltipPSLanguageRes
().
getLanResTag
()
!=
null
){
toolbarItem
.
put
(
"tooltipPSLanguageRes"
,
singleItam
.
getTooltipPSLanguageRes
().
getLanResTag
());
}
toolbarItem
.
put
(
"itemType"
,
singleItam
.
getItemType
());
toolbarItem
.
put
(
"name"
,
singleItam
.
getName
());
toolbarItem
.
put
(
"showCaption"
,
singleItam
.
isShowCaption
());
toolbarItem
.
put
(
"showIcon"
,
singleItam
.
isShowIcon
());
if
(
singleItam
.
getPSSysImage
()
!=
null
&&
singleItam
.
getPSSysImage
().
getCssClass
()
!=
null
){
toolbarItem
.
put
(
"iconClass"
,
singleItam
.
getPSSysImage
().
getCssClass
());
}
if
(
singleItam
.
getPSSysImage
()
!=
null
&&
singleItam
.
getPSSysImage
().
getImagePath
()
!=
null
){
toolbarItem
.
put
(
"imgPath"
,
singleItam
.
getPSSysImage
().
getImagePath
());
}
if
(
"DEUIACTION"
.
equals
(
singleItam
.
getItemType
())){
IPSDETBUIActionItem
actionItem
=
(
IPSDETBUIActionItem
)
singleItam
;
toolbarItem
.
put
(
"groupExtractMode"
,
actionItem
.
getNoPrivDisplayMode
());
toolbarItem
.
put
(
"noPrivDisplayMode"
,
actionItem
.
getNoPrivDisplayMode
());
toolbarItem
.
put
(
"id"
,
actionItem
.
getPSAppViewUIAction
().
getId
());
toolbarItem
.
put
(
"xDataControlName"
,
actionItem
.
getPSAppViewUIAction
().
getXDataControlName
());
if
(
actionItem
.
getPSAppViewUIAction
().
getPSUIAction
()
!=
null
){
IPSUIAction
UIAction
=
actionItem
.
getPSAppViewUIAction
().
getPSUIAction
();
JSONObject
appUIAction
=
new
JSONObject
();
appUIAction
.
put
(
"caption"
,
UIAction
.
getCaption
());
if
(
UIAction
.
getCapPSLanguageRes
()
!=
null
&&
UIAction
.
getCapPSLanguageRes
().
getLanResTag
()
!=
null
){
appUIAction
.
put
(
"capPSLanguageRes"
,
UIAction
.
getCapPSLanguageRes
().
getLanResTag
());
}
appUIAction
.
put
(
"codeName"
,
UIAction
.
getCodeName
());
appUIAction
.
put
(
"fullCodeName"
,
UIAction
.
getFullCodeName
());
appUIAction
.
put
(
"name"
,
UIAction
.
getName
());
appUIAction
.
put
(
"uIActionMode"
,
UIAction
.
getUIActionMode
());
appUIAction
.
put
(
"uIActionTag"
,
UIAction
.
getUIActionTag
());
appUIAction
.
put
(
"uIActionType"
,
UIAction
.
getUIActionType
());
toolbarItem
.
put
(
"uIAction"
,
appUIAction
);
}
}
items
.
add
(
toolbarItem
);
});
viewToolBar
.
put
(
"items"
,
items
);
}
toolBarItems
.
add
(
viewToolBar
);
}
});
}
}
...
...
@@ -69,5 +134,10 @@ public class PageModel extends BaseModel{
return
ctrlsMap
.
values
();
}
private
Collection
<
JSONObject
>
toolBarItems
=
new
ArrayList
<>();
public
Collection
<
JSONObject
>
getViewToolBarItems
(){
return
toolBarItems
;
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/@macro/front-end/view/common/viewBaseConfig.hbs
浏览文件 @
3e9e958a
...
...
@@ -11,13 +11,12 @@
viewType: '
{{
page
.
viewType
}}
',
viewStyle: '
{{
page
.
viewStyle
}}
',
showCaptionBar: '
{{
page
.
viewStyle
}}
',
xDataControlName:'
{{
page
.
xDataControlName
}}
',
viewToolbarModel: [
{{#
page
.
ctrls
}}
{{#
eq
controlType
"TOOLBAR"
}}
{{#
psDEToolbarItems
}}
{ name:'
{{
name
}}
',caption:'
{{
caption
}}
',groupExtractMode:'
{{
groupExtractMode
}}
',itemType:'
{{
itemType
}}
',noPrivDisplayMode:'
{{
noPrivDisplayMode
}}
',showIcon:
{{
showIcon
}}
,showCaption:
{{
showCaption
}}
,tooltip:'
{{
tooltip
}}
',disabled: false, visible: true,
{{#if
psUIAction
.
psSysImage
}}{{#if
psUIAction
.
psSysImage
.
imagePath
}}
imgPath: "
{{
psUIAction
.
psSysImage
.
imagePath
}}
",
{{/if}}{{#if
psUIAction
.
psSysImage
.
cssClass
}}
iconClass: "
{{
psUIAction
.
psSysImage
.
cssClass
}}
",
{{/if}}{{/if}}
},
{{/
psDEToolbarItems
}}
{{/
eq
}}
{{/
page
.
ctrls
}}
{{#
page
.
viewToolBarItems
}}
{{#
items
}}
{ id:'
{{
id
}}
',name:'
{{
name
}}
',caption:'
{{
caption
}}
',groupExtractMode:'
{{
groupExtractMode
}}
',itemType:'
{{
itemType
}}
',noPrivDisplayMode:'
{{
noPrivDisplayMode
}}
',showIcon:
{{
showIcon
}}
,showCaption:
{{
showCaption
}}
,tooltip:'
{{
tooltip
}}
',disabled: false, visible: true, imgPath: '
{{
imgPath
}}
',iconClass: '
{{
iconClass
}}
',xDataControlName:'
{{
xDataControlName
}}
',
{{#if
uIAction
}}
uIAction:{codeName:'
{{
uIAction
.
codeName
}}
',fullCodeName:'
{{
uIAction
.
fullCodeName
}}
',uIActionMode:'
{{
uIAction
.
uIActionMode
}}
',uIActionTag:'
{{
uIAction
.
uIActionTag
}}
',uIActionType:'
{{
uIAction
.
uIActionType
}}
'}
{{/if}}
},
{{/
items
}}
{{/
page
.
viewToolBarItems
}}
],
{{>
@macro
/
front-end
/
view
/
common
/
controlAction
.
hbs
}}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/App.vue
浏览文件 @
3e9e958a
<
script
setup
lang=
"ts"
>
// This starter template is using Vue 3
<
script
setup
>
SFCs
// Check out https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup
import
{
App
}
from
'@service'
onMounted
(
async
()
=>
{
await
App
.
init
();
// App.openViewService.openView({codeName: 'ExampleEditorEditView'},{context: {},viewParams:{}})
import
{
App
}
from
'./app'
;
onMounted
(()
=>
{
(
window
as
any
).
App
=
App
.
getInstance
();
})
</
script
>
<
template
>
<router-view
/>
</
template
>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/app/app-func-config.ts.hbs
0 → 100644
浏览文件 @
3e9e958a
export const AppFuncConfig = [
{{#
each
app
.
allPSAppFuncs
as
|
func
|
}}
{
name: "
{{
func
.
name
}}
",
funcTag: "
{{
func
.
codeName
}}
",
appFuncType: "
{{
func
.
appFuncType
}}
",
{{#if
(
eq
func
.
appFuncType
'OPENHTMLPAGE'
)
}}
htmlPageUrl: "
{{
func
.
htmlPageUrl
}}
",
{{/if}}
{{#if
(
eq
func
.
appFuncType
'APPVIEW'
)
}}
openMode: "
{{
func
.
openMode
}}
",
viewName: "
{{
func
.
psAppView
.
name
}}
",
viewCodeName: "
{{
func
.
psAppView
.
codeName
}}
",
{{/if}}
navParam: {
{{#if
func
.
psNavigateParams
}}
{{#
each
func
.
psNavigateParams
as
|
param
|
}}
{{
lowerCase
param
.
key
}}
: "
{{#if
param
.
rawValue
}}{{
param
.
value
}}{{else}}
%
{{
lowerCase
param
.
value
}}
%
{{/if}}
",
{{/
each
}}
{{/if}}
},
navContext: {
{{#if
func
.
psNavigateContexts
}}
{{#
each
func
.
psNavigateContexts
as
|
context
|
}}
{{
lowerCase
context
.
key
}}
: "
{{#if
context
.
rawValue
}}{{
context
.
value
}}{{else}}
%
{{
lowerCase
context
.
value
}}
%
{{/if}}
",
{{/
each
}}
{{/if}}
},
},
{{/
each
}}
]
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/
public/assets/json/views.json
.hbs
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/
src/app/app-view-config.ts
.hbs
浏览文件 @
3e9e958a
{
{{#
each
app
.
pages
as
|
appView
|
}}
import { IParam } from "@ibiz-core";
export const AppViewConfig:IParam = {
{{#
each
app
.
pages
as
|
appView
|
}}
"
{{
appView
.
codeName
}}
":{
"name": "
{{
appView
.
name
}}
",
"codeName": "
{{
appView
.
codeName
}}
",
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/app/app.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
OpenViewService
}
from
"@/utils"
;
import
{
AppBase
,
IParam
,
ViewDetail
,
IApp
,
IOpenViewService
,
deepCopy
}
from
"@ibiz-core"
;
import
{
AppFuncConfig
}
from
'./app-func-config'
;
import
{
AppViewConfig
}
from
'./app-view-config'
;
export
class
App
extends
AppBase
implements
IApp
{
/**
* 唯一实例
*
* @private
* @static
* @memberof App
*/
private
static
readonly
instance
=
new
App
();
/**
* 获取唯一实例
*
* @static
* @return {*} {App}
* @memberof App
*/
public
static
getInstance
():
App
{
return
App
.
instance
;
}
/**
* 获取所有应用功能
*
* @return {*} {IParam[]}
* @memberof App
*/
public
getAllFuncs
():
IParam
[]
{
return
AppFuncConfig
;
}
/**
* 获取打开视图服务
*
* @return {*} {IOpenViewService}
* @memberof App
*/
public
getOpenViewService
():
IOpenViewService
{
return
OpenViewService
.
getInstance
();
}
/**
* 获取视图信息
*
* @static
* @param codeName 视图codeName
* @return {*}
*/
public
getViewInfo
(
codeName
:
string
):
ViewDetail
|
undefined
{
return
AppViewConfig
[
codeName
]
?
(
deepCopy
(
AppViewConfig
[
codeName
])
as
ViewDetail
)
:
undefined
;;
}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/app/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
{
App
}
from
'./app'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/custom/style/index.scss
已删除
100644 → 0
浏览文件 @
dc15f466
// todo 用户级样式
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/helper/app-func/app-func-config.ts.hbs
已删除
100644 → 0
浏览文件 @
dc15f466
export const FuncConfig = [
{{#
each
app
.
allPSAppFuncs
as
|
func
|
}}
{
name: "
{{
func
.
name
}}
",
funcTag: "
{{
func
.
codeName
}}
",
appFuncType: "
{{
func
.
appFuncType
}}
",
{{#if
(
eq
func
.
appFuncType
'OPENHTMLPAGE'
)
}}
htmlPageUrl: "
{{
func
.
htmlPageUrl
}}
",
{{/if}}
{{#if
(
eq
func
.
appFuncType
'APPVIEW'
)
}}
openMode: "
{{
func
.
openMode
}}
",
viewName: "
{{
func
.
psAppView
.
name
}}
",
viewCodeName: "
{{
func
.
psAppView
.
codeName
}}
",
{{/if}}
navParam: {
{{#if
func
.
psNavigateParams
}}
{{#
each
func
.
psNavigateParams
as
|
param
|
}}
{{
lowerCase
param
.
key
}}
: "
{{#if
param
.
rawValue
}}{{
param
.
value
}}{{else}}
%
{{
lowerCase
param
.
value
}}
%
{{/if}}
",
{{/
each
}}
{{/if}}
},
navContext: {
{{#if
func
.
psNavigateContexts
}}
{{#
each
func
.
psNavigateContexts
as
|
context
|
}}
{{
lowerCase
context
.
key
}}
: "
{{#if
context
.
rawValue
}}{{
context
.
value
}}{{else}}
%
{{
lowerCase
context
.
value
}}
%
{{/if}}
",
{{/
each
}}
{{/if}}
},
},
{{/
each
}}
]
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/helper/app-func/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./app-func-service'
;
export
*
from
'./app-func-config'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/helper/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./app-func'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/index.ts
浏览文件 @
3e9e958a
export
*
from
'./interface'
;
export
*
from
'./logic'
;
export
*
from
'./modules'
;
export
*
from
'./runtime'
;
export
*
from
'./service'
;
export
*
from
'./utils'
;
\ No newline at end of file
export
*
from
'./helper'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/app-logic/i-ui-action.ts
已删除
100644 → 0
浏览文件 @
dc15f466
/**
* @description 界面行为对象
* @export
* @interface IUIAction
*/
export
interface
IUIAction
{
/**
* 界面行为模式
* @description 值模式 [云实体界面行为类型] {SYS:系统预定义、 FRONT:前台调用、 BACKEND:后台调用、 WFFRONT:工作流前台调用、 WFBACKEND:工作流后台调用 }
* @type {( string | 'SYS' | 'FRONT' | 'BACKEND' | 'WFFRONT' | 'WFBACKEND')}
*/
uIActionMode
:
string
|
'SYS'
|
'FRONT'
|
'BACKEND'
|
'WFFRONT'
|
'WFBACKEND'
;
/**
* 界面行为标记
* @type {string}
*/
uIActionTag
:
string
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/app-logic/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./i-ui-action'
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/app/i-app.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IParam
,
ViewDetail
}
from
"../common"
;
import
{
IAppFuncService
,
IOpenViewService
}
from
"../logic"
;
/**
* 应用接口
*
* @export
* @interface IApp
*/
export
interface
IApp
{
/**
* 获取应用所有功能
*
* @return {*} {IParam[]}
* @memberof IApp
*/
getAllFuncs
():
IParam
[];
/**
* 获取应用功能服务
*
* @return {*} {AppFuncService}
* @memberof IApp
*/
getAppFuncService
():
IAppFuncService
;
/**
* 获取打开视图服务
*
* @return {*} {IParam}
* @memberof IApp
*/
getOpenViewService
():
IOpenViewService
;
/**
* 获取指定视图信息
*
* @param {string} codeName
* @return {*} {(ViewDetail | undefined)}
* @memberof IApp
*/
getViewInfo
(
codeName
:
string
):
ViewDetail
|
undefined
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/app/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
*
from
'./i-app'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/common/i-view-detail.ts
浏览文件 @
3e9e958a
...
...
@@ -7,20 +7,20 @@
export
interface
ViewDetail
{
/**
*
视图
名称
*
代码
名称
*
* @type {string}
* @memberof ViewDetail
*/
n
ame
:
string
;
codeN
ame
:
string
;
/**
*
代码
名称
*
视图
名称
*
* @type {string}
* @memberof ViewDetail
*/
codeName
:
string
;
name
?
:
string
;
/**
* 视图宽度
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/index.ts
浏览文件 @
3e9e958a
export
*
from
'./common'
export
*
from
'./app-logic'
\ No newline at end of file
export
*
from
'./app'
;
export
*
from
'./common'
;
export
*
from
'./logic'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/logic/i-app-func-service.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IContext
,
IParam
}
from
"@ibiz-core"
;
/**
* @description 应用功能服务
* @export
* @interface IAppFuncService
*/
export
interface
IAppFuncService
{
/**
* @description 执行应用功能
* @param {IParam} menu 菜单项
* @param {IParam} context 上下文
* @param {IParam} viewParams 视图参数
* @return {*} {*}
* @memberof IAppFuncService
*/
executeAppFunc
(
menu
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
):
any
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/logic/i-open-view-service.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IParam
,
ViewDetail
}
from
"@ibiz-core"
;
/**
* @description 打开视图服务接口
* @export
* @interface IOpenViewService
*/
export
interface
IOpenViewService
{
/**
* @description 打开视图
* @param {ViewDetail} view 视图对象参数
* @param {IParam} params 打开视图参数
* @return {*} {*}
* @memberof IOpenViewService
*/
openView
(
view
:
ViewDetail
,
params
:
IParam
):
any
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/interface/logic/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
*
from
'./i-app-func-service'
;
export
*
from
'./i-open-view-service'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/
helper/app-fun
c/app-func-service.ts
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/
logic/app-logi
c/app-func-service.ts
浏览文件 @
3e9e958a
import
{
IParam
,
FuncConfig
,
IContext
}
from
"@ibiz-core"
;
import
{
App
}
from
"@service"
;
import
{
IAppFuncService
,
IParam
}
from
"@ibiz-core"
;
export
class
AppFuncService
{
export
class
AppFuncService
implements
IAppFuncService
{
/**
* @description 唯一实例
...
...
@@ -28,8 +27,8 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
executeAppFunc
(
menu
:
IParam
,
context
:
I
Context
,
viewParams
:
IParam
)
{
const
appFunc
=
FuncConfig
.
find
((
func
:
IParam
)
=>
Object
.
is
(
func
.
funcTag
,
menu
.
funcTag
));
executeAppFunc
(
menu
:
IParam
,
context
:
I
Param
,
viewParams
:
IParam
)
{
const
appFunc
=
App
.
getAllFuncs
()
.
find
((
func
:
IParam
)
=>
Object
.
is
(
func
.
funcTag
,
menu
.
funcTag
));
if
(
appFunc
)
{
switch
(
appFunc
.
appFuncType
)
{
case
'APPVIEW'
:
...
...
@@ -57,7 +56,7 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
private
executeCustomFunc
(
appFunc
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
)
{
executeCustomFunc
(
appFunc
:
IParam
,
context
:
IParam
,
viewParams
:
IParam
)
{
console
.
warn
(
`
${
appFunc
.
appFuncType
}
类型应用功能暂未支持`
);
}
...
...
@@ -68,7 +67,7 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
private
executeJavaScript
(
appFunc
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
)
{
executeJavaScript
(
appFunc
:
IParam
,
context
:
IParam
,
viewParams
:
IParam
)
{
console
.
warn
(
`
${
appFunc
.
appFuncType
}
类型应用功能暂未支持`
);
}
...
...
@@ -80,7 +79,7 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
private
executePresetFunc
(
appFunc
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
)
{
executePresetFunc
(
appFunc
:
IParam
,
context
:
IParam
,
viewParams
:
IParam
)
{
console
.
warn
(
`
${
appFunc
.
appFuncType
}
类型应用功能暂未支持`
);
}
...
...
@@ -91,7 +90,7 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
private
openHtmlPage
(
appFunc
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
)
{
openHtmlPage
(
appFunc
:
IParam
,
context
:
IParam
,
viewParams
:
IParam
)
{
window
.
open
(
appFunc
.
htmlPageUrl
,
'_blank'
);
}
...
...
@@ -102,9 +101,8 @@ export class AppFuncService {
* @param {IParam} viewParams 视图参数
* @memberof AppFuncService
*/
private
openAppView
(
appFunc
:
IParam
,
context
:
IContext
,
viewParams
:
IParam
)
{
openAppView
(
appFunc
:
IParam
,
context
:
IParam
,
viewParams
:
IParam
)
{
const
view
=
{
name
:
appFunc
.
viewName
,
codeName
:
appFunc
.
viewCodeName
,
openMode
:
appFunc
.
openMode
,
}
...
...
@@ -112,6 +110,6 @@ export class AppFuncService {
context
:
context
,
viewParams
:
viewParams
,
}
App
.
openViewService
.
openView
(
view
,
params
);
App
.
getOpenViewService
()
.
openView
(
view
,
params
);
}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/app-logic/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
*
from
'./app-func-service'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/app-ui-action/app-backend-action.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IContext
,
IParam
}
from
"@ibiz-core"
;
/**
* 后台界面行为
*
* @export
* @class AppBackendAction
*/
export
class
AppBackendAction
{
/**
* 执行后台界面行为
*
* @static
* @param {IParam} uiAction 界面行为对象
* @param {context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment:IParam} params { context: 上下文对象, viewParams: 视图参数, data: 当前激活数据, event: 事件源对象, actionEnvironment:操作环境}
* @memberof AppBackendAction
*/
public
static
async
execute
(
uiAction
:
IParam
,
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
// TODO 执行后台界面行为
console
.
log
(
uiAction
,
params
);
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/app-ui-action/app-front-action.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IContext
,
IParam
}
from
"@ibiz-core"
;
/**
* 前台界面行为
*
* @export
* @class AppFrontAction
*/
export
class
AppFrontAction
{
/**
* 执行前台界面行为
*
* @static
* @param {IParam} uiAction 界面行为对象
* @param { context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment:IParam} params { context: 上下文对象, viewParams: 视图参数, data: 当前激活数据, event: 事件源对象, actionEnvironment:操作环境}
* @memberof AppBackendAction
*/
public
static
async
execute
(
uiAction
:
IParam
,
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
// TODO 前台界面行为
console
.
log
(
uiAction
,
params
);
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/app-ui-action/app-sys-action.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IContext
,
IParam
}
from
"@ibiz-core"
;
/**
* 系统预置界面行为
*
* @export
* @class AppSysAction
*/
export
class
AppSysAction
{
/**
* 执行预置界面行为
*
* @static
* @param {IParam} uiAction 界面行为对象
* @param { context: IContext, viewParams: IParam, data: IParam, event: MouseEvent, actionEnvironment:IParam} params { context: 上下文对象, viewParams: 视图参数, data: 当前激活数据, event: 事件源对象, actionEnvironment:操作环境}
* @memberof AppBackendAction
*/
public
static
async
execute
(
uiAction
:
IParam
,
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
})
{
// TODO 预置界面行为
console
.
log
(
uiAction
,
params
);
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/
modules/app-logic/
ui-action/app-ui-action.ts
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/
logic/app-
ui-action/app-ui-action.ts
浏览文件 @
3e9e958a
import
{
IContext
,
IParam
}
from
'@ibiz-core'
;
import
{
AppBackendAction
}
from
'./app-backend-action'
;
import
{
AppFrontAction
}
from
'./app-front-action'
;
import
{
IUIAction
}
from
"@ibiz-core"
;
import
{
AppSysAction
}
from
'./app-sys-action'
;
/**
...
...
@@ -14,9 +14,9 @@ export class AppUIAction {
* 执行界面行为
*
* @param uiAction 界面行为信息
* @param params 运行参数
* @param params 运行参数
{ context: 上下文对象, viewParams: 视图参数, data: 当前激活数据, event: 事件源对象, actionEnvironment:操作环境}
*/
public
static
execute
UIAction
(
uiAction
:
IUIAction
,
params
:
any
){
public
static
execute
(
uiAction
:
IParam
,
params
:
{
context
:
IContext
,
viewParams
:
IParam
,
data
:
IParam
,
event
:
MouseEvent
,
actionEnvironment
:
IParam
}
){
if
(
uiAction
.
uIActionMode
==
'FRONT'
){
AppFrontAction
.
execute
(
uiAction
,
params
);
}
else
if
(
uiAction
.
uIActionMode
==
'BACKEND'
){
...
...
@@ -24,7 +24,7 @@ export class AppUIAction {
}
else
if
(
uiAction
.
uIActionMode
==
'SYS'
){
AppSysAction
.
execute
(
uiAction
,
params
);
}
else
{
// TODO 工作流界面行为
console
.
warn
(
"非(前台界面行为、后台界面行为、系统预置界面行为)暂未支持"
);
}
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/app-ui-action/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
*
from
'./app-ui-action'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/logic/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
*
from
'./app-logic'
;
export
*
from
'./app-ui-action'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app-logic/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./ui-action'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app-logic/ui-action/app-backend-action.ts
已删除
100644 → 0
浏览文件 @
dc15f466
import
{
IUIAction
}
from
'@ibiz-core'
;
/**
* 界面行为参数
* @interface UIActionParams
*/
interface
UIActionParams
{
args
:
any
[],
context
:
any
,
params
:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
,
deUIService
?:
any
,
}
export
class
AppBackendAction
{
/**
* 执行界面行为
*
* @param args
* @param context
* @param params
* @param $event
* @param xData
* @param actionContext
* @param srfParentDeName
*
* @memberof AppBackendAction
*/
public
static
async
execute
(
uiAction
:
IUIAction
,
params
:
any
)
{
// TODO 后台调用
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app-logic/ui-action/app-front-action.ts
已删除
100644 → 0
浏览文件 @
dc15f466
import
{
IUIAction
}
from
'@ibiz-core'
;
/**
* 界面行为参数
* @interface UIActionParams
*/
interface
UIActionParams
{
args
:
any
[],
context
:
any
,
params
:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
,
deUIService
?:
any
,
}
export
class
AppFrontAction
{
/**
* 执行界面行为
*
* @param args
* @param context
* @param params
* @param $event
* @param xData
* @param actionContext
* @param srfParentDeName
*
* @memberof AppFrontAction
*/
public
static
async
execute
(
uiAction
:
IUIAction
,
params
:
any
)
{
// TODO 前台调用
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app-logic/ui-action/app-sys-action.ts
已删除
100644 → 0
浏览文件 @
dc15f466
import
{
IUIAction
}
from
'@ibiz-core'
;
/**
* 界面行为参数
* @interface UIActionParams
*/
interface
UIActionParams
{
args
:
any
[],
context
:
any
,
params
:
any
,
$event
?:
any
,
xData
?:
any
,
actionContext
?:
any
,
srfParentDeName
?:
string
,
deUIService
?:
any
,
}
export
class
AppSysAction
{
/**
* 执行界面行为
*
* @param args
* @param context
* @param params
* @param $event
* @param xData
* @param actionContext
* @param srfParentDeName
*
* @memberof AppSysAction
*/
public
static
async
execute
(
uiAction
:
IUIAction
,
params
:
any
)
{
// TODO 系统预置调用
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app-logic/ui-action/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./app-ui-action'
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app/app-base.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
AppFuncService
,
IApp
,
IAppFuncService
,
IOpenViewService
,
ViewDetail
}
from
"@ibiz-core"
;
import
{
IParam
}
from
"@ibiz-core/interface"
;
/**
* 应用基类
*
* @export
* @class AppBase
*/
export
abstract
class
AppBase
implements
IApp
{
/**
* 应用功能服务
*
* @private
* @type {AppFuncService}
* @memberof AppBase
*/
private
appFuncService
:
AppFuncService
=
AppFuncService
.
getInstance
();
/**
* 获取应用功能服务
*
* @return {IAppFuncService}
* @memberof AppBase
*/
public
getAppFuncService
():
IAppFuncService
{
return
this
.
appFuncService
;
}
/**
* 获取打开视图服务
*
* @return {*} {IOpenViewService}
* @memberof AppBase
*/
public
getOpenViewService
():
IOpenViewService
{
throw
new
Error
(
"Method not implemented."
);
}
/**
* 获取所有应用功能
*
* @return {*} {IParam[]}
* @memberof AppBase
*/
public
getAllFuncs
():
IParam
[]
{
return
[];
}
/**
* 获取视图信息
*
* @param codeName 视图codeName
*/
public
getViewInfo
(
codeName
:
string
):
ViewDetail
|
undefined
{
return
undefined
;
}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/app/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
{
AppBase
}
from
'./app-base'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/editor/editor-base.ts
浏览文件 @
3e9e958a
import
{
computedNavData
,
ControlPropsBase
,
ControlStateBase
,
IParam
,
toOneWayRef
,
useContextParams
}
from
'@ibiz-core'
;
import
{
RouteLocationNormalizedLoaded
,
Router
,
useRoute
,
useRouter
}
from
'vue-router'
;
import
{
toRefs
}
from
'vue'
;
import
{
UIUtil
,
IParam
,
useContextParams
}
from
'@ibiz-core'
;
/**
* @description 部件基类
* @export
...
...
@@ -22,11 +21,11 @@ export class EditorBase {
navViewParam
:
viewParams
.
value
,
}
if
(
localContext
&&
Object
.
keys
(
localContext
).
length
>
0
)
{
const
_context
=
computedNavData
(
data
,
navParams
.
navContext
,
navParams
.
navViewParam
,
localContext
);
const
_context
=
UIUtil
.
computedNavData
(
data
,
navParams
.
navContext
,
navParams
.
navViewParam
,
localContext
);
Object
.
assign
(
navParams
.
navContext
,
_context
);
}
if
(
localParam
&&
Object
.
keys
(
localParam
).
length
>
0
)
{
const
_param
=
computedNavData
(
data
,
navParams
.
navContext
,
navParams
.
navViewParam
,
localParam
);
const
_param
=
UIUtil
.
computedNavData
(
data
,
navParams
.
navContext
,
navParams
.
navViewParam
,
localParam
);
Object
.
assign
(
navParams
.
navViewParam
,
_param
);
}
return
navParams
;
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/index.ts
浏览文件 @
3e9e958a
export
*
from
'./common'
export
*
from
'./app'
export
*
from
'./views'
export
*
from
'./widgets'
export
*
from
'./editor'
export
*
from
'./app-logic'
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/views/main-view/main-view.ts
浏览文件 @
3e9e958a
import
{
ViewBase
,
MainViewProps
,
MainViewState
,
IActionParam
}
from
'@ibiz-core'
;
import
{
ViewBase
,
MainViewProps
,
MainViewState
,
IActionParam
,
IParam
,
AppUIAction
}
from
'@ibiz-core'
;
/**
* 实体部件
...
...
@@ -7,17 +7,25 @@ import { ViewBase, MainViewProps, MainViewState, IActionParam } from '@ibiz-core
*/
export
class
MainView
extends
ViewBase
{
/**
*
部件状态
*
视图状态数据
*/
public
declare
viewState
:
MainViewState
;
/**
* 当前视图具有数据能力部件
*
* @type {IParam}
* @memberof MainView
*/
public
declare
xDataControl
:
IParam
;
/**
* 根据props调整设置部件state
* @param props 传入的Props
*/
public
setState
(
props
:
MainViewProps
)
{
super
.
setState
(
props
);
// 只读属性处理:把props的属性的Ref赋给state,以维持响应性。
this
.
xDataControl
=
ref
(
null
);
}
/**
...
...
@@ -25,14 +33,14 @@ export class MainView extends ViewBase {
* @todo
* @param props
*/
public
useOpenData
(
props
:
MainViewProps
)
{}
public
useOpenData
(
props
:
MainViewProps
)
{
}
/**
* 打开新建视图功能模块
* @todo
* @param props
*/
public
useNewData
(
props
:
MainViewProps
)
{}
public
useNewData
(
props
:
MainViewProps
)
{
}
/**
* @description 处理工具栏事件
...
...
@@ -41,7 +49,25 @@ export class MainView extends ViewBase {
*/
public
handleToolbarEvent
(
actionParam
:
IActionParam
)
{
const
{
tag
,
action
,
data
}
=
actionParam
;
//todo
if
(
!
tag
||
!
action
||
!
data
)
{
console
.
warn
(
"工具栏执行参数不足"
);
return
;
}
const
{
xDataControlName
,
uIAction
}
=
data
;
if
(
!
xDataControlName
||
!
uIAction
)
{
console
.
warn
(
"工具栏执行参数不足"
);
return
;
}
// 准备参数
const
inputParam
=
{
context
:
this
.
viewState
.
context
,
viewParams
:
this
.
viewState
.
viewParams
,
data
:
this
.
xDataControl
?.
value
?.
data
,
event
:
data
.
event
,
actionEnvironment
:
this
};
// 执行行为
AppUIAction
.
execute
(
uIAction
,
inputParam
);
}
public
handleCtrlEvent
(
actionParam
:
IActionParam
)
{
...
...
@@ -64,6 +90,7 @@ export class MainView extends ViewBase {
return
{
...
superParams
,
state
:
this
.
viewState
,
xDataControl
:
this
.
xDataControl
,
handleToolbarEvent
:
this
.
handleToolbarEvent
.
bind
(
this
),
handleCtrlEvent
:
this
.
handleCtrlEvent
.
bind
(
this
),
};
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/views/view-base/view-prop-base.ts
浏览文件 @
3e9e958a
import
{
Subject
}
from
"rxjs"
;
import
{
IActionParam
,
IParam
,
IContext
}
from
"@ibiz-core"
;
import
{
IActionParam
,
IParam
}
from
"@ibiz-core"
;
/**
* @description 视图props的基类
...
...
@@ -13,7 +13,7 @@ export interface ViewPropsBase {
* @type {IParam}
* @memberof ViewPropsBase
*/
context
?:
I
Context
;
context
?:
I
Param
;
/**
* @description 视图参数(外部传入)
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/views/view-base/view-state-base.ts
浏览文件 @
3e9e958a
import
{
Subject
}
from
"rxjs"
;
import
{
IActionParam
,
IParam
,
IContext
}
from
'@ibiz-core'
;
import
{
IActionParam
,
IParam
}
from
'@ibiz-core'
;
/**
* @description 视图基类状态
...
...
@@ -24,10 +24,10 @@ export interface ViewStateBase {
/**
* @description 上下文参数
* @type {I
Context
}
* @type {I
Param
}
* @memberof ViewStateBase
*/
context
:
I
Context
;
context
:
I
Param
;
/**
* @description 视图参数
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/control-base/control-prop-base.ts
浏览文件 @
3e9e958a
import
{
Subject
}
from
"rxjs"
;
import
{
IActionParam
,
IParam
,
IContext
}
from
"@ibiz-core"
;
import
{
IActionParam
,
IParam
}
from
"@ibiz-core"
;
/**
* @description 部件props的基类
...
...
@@ -10,10 +10,10 @@ export interface ControlPropsBase {
/**
* @description 上下文参数(外部传入)
* @type {I
Context
}
* @type {I
Param
}
* @memberof ControlPropsBase
*/
context
?:
I
Context
;
context
?:
I
Param
;
/**
* @description 视图参数(外部传入)
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/control-base/control-state-base.ts
浏览文件 @
3e9e958a
import
{
IActionParam
,
IParam
,
IContext
}
from
"@ibiz-core"
;
import
{
IActionParam
,
IParam
}
from
"@ibiz-core"
;
import
{
Subject
}
from
"rxjs"
;
/**
...
...
@@ -27,7 +27,7 @@ export interface ControlStateBase {
* @type {IParam}
* @memberof ControlStateBase
*/
context
:
I
Context
;
context
:
I
Param
;
/**
* @description 视图参数
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/grid-control/grid-control-state.ts
浏览文件 @
3e9e958a
...
...
@@ -13,7 +13,7 @@ export interface GridControlState extends MainControlState {
* @type {IParam[]}
* @memberof GridControlState
*/
data
:
IParam
[];
items
:
IParam
[];
/**
* @description 表格列模型
...
...
@@ -34,7 +34,7 @@ export interface GridControlState extends MainControlState {
* @type {IParam}
* @memberof GridControlState
*/
rules
:
IParam
[]
;
rules
:
IParam
;
/**
* @description 是否多选
...
...
@@ -79,31 +79,93 @@ export interface GridControlState extends MainControlState {
selectFirstDefault
:
boolean
;
/**
* @description
表格聚合
* @type {
IParam
}
* @description
当前页
* @type {
number
}
* @memberof GridControlState
*/
gridAgg
:
IParam
;
current
:
number
;
/**
* @description
表格分组
* @type {
IParam
}
* @description
分页大小
* @type {
number
}
* @memberof GridControlState
*/
gridGroup
:
IParam
;
pageSize
:
number
;
/**
* @description
表格排序
* @type {
IParam
}
* @description
是否启用分页
* @type {
boolean
}
* @memberof GridControlState
*/
gridSort
:
IParam
;
enablePagingBar
:
boolean
;
/**
* @description
表格分页
* @description
数据聚合
* @type {IParam}
* @memberof GridControlState
*/
gridPaging
:
IParam
dataAgg
:
string
[];
/**
* @description 聚合模式
* @type {string}
* @memberof GridControlState
*/
aggMode
:
string
;
/**
* @description 聚合实体
* @type {string}
* @memberof GridControlState
*/
aggEntity
:
string
,
/**
* @description 聚合数据集
* @type {string}
* @memberof GridControlState
*/
aggDataSet
:
string
,
/**
* @description 分组模式
* @type {string}
* @memberof GridControlState
*/
groupMode
:
string
;
/**
* @description 分组属性
* @type {string}
* @memberof GridControlState
*/
groupField
:
string
;
/**
* @description 分组代码表
* @type {*}
* @memberof GridControlState
*/
groupCodeList
:
any
;
/**
* @description 禁用排序
* @type {boolean}
* @memberof GridControlState
*/
noSort
:
boolean
;
/**
* @description 排序方向
* @type {string}
* @memberof GridControlState
*/
minorSortDir
:
string
;
/**
* @description 排序属性
* @type {string}
* @memberof GridControlState
*/
minorSortPSDEF
:
string
;
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/grid-control/grid-control.ts
浏览文件 @
3e9e958a
import
{
createUUID
}
from
'qx-util'
;
import
{
calcActionItemAuthState
,
deepCopy
,
GridControlProps
,
GridControlState
,
IActionParam
,
IParam
,
MainControl
}
from
'@ibiz-core'
;
import
{
UIUtil
,
deepCopy
,
GridControlProps
,
GridControlState
,
IActionParam
,
IParam
,
MainControl
}
from
'@ibiz-core'
;
/**
* @description 表格部件
...
...
@@ -55,7 +55,7 @@ export class GridControl extends MainControl {
public
getActionAuthState
(
rowData
:
IParam
)
{
const
{
UIService
,
uAColumnModel
}
=
this
.
controlState
;
let
tempModel
:
any
=
deepCopy
(
uAColumnModel
);
calcActionItemAuthState
(
rowData
,
tempModel
,
UIService
);
UIUtil
.
calcActionItemAuthState
(
rowData
,
tempModel
,
UIService
);
return
tempModel
;
}
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/main-control/main-control-state.ts
浏览文件 @
3e9e958a
...
...
@@ -35,11 +35,4 @@ export interface MainControlState extends ControlStateBase {
* @memberof MainControlState
*/
UIService
:
IParam
;
/**
* @description 应用实体codeName
* @type {string}
* @memberof MainControlState
*/
appDeCodeName
:
string
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/modules/widgets/menu-control/menu-control.ts
浏览文件 @
3e9e958a
import
{
Ref
}
from
'vue'
;
import
{
MenuControlProps
,
MenuControlState
,
IActionParam
,
ControlBase
,
IParam
,
AppFuncService
,
deepCopy
}
from
'@ibiz-core'
;
import
{
App
}
from
'@service'
;
/**
* @description 菜单部件
...
...
@@ -165,7 +164,7 @@ export class MenuControl extends ControlBase {
*/
public
menuClick
(
item
:
IParam
)
{
const
{
context
,
viewParams
}
=
this
.
controlState
;
App
.
appFuncService
.
executeAppFunc
(
item
,
deepCopy
(
context
),
deepCopy
(
viewParams
));
App
.
getAppFuncService
()
.
executeAppFunc
(
item
,
deepCopy
(
context
),
deepCopy
(
viewParams
));
}
/**
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/service/control-service/grid-service.ts
浏览文件 @
3e9e958a
...
...
@@ -13,7 +13,7 @@ export class GridService<T extends ControlVOBase> extends ControlServiceBase<T>
* @description 加载草稿
* @param {IParam} context 上下文
* @param {IParam} data 行为数据
* @param
\{{ action: string; isLoading?: boolean }
} opts 行为参数
* @param
{ action: string; isLoading?: boolean
} opts 行为参数
* @return {*} {Promise<any>}
* @memberof GridService
*/
...
...
@@ -33,14 +33,14 @@ export class GridService<T extends ControlVOBase> extends ControlServiceBase<T>
* @description 加载数据
* @param {IParam} context 上下文
* @param {IParam} data 行为数据
* @param
\{{ action: string; isLoading?: boolean }
} opts 行为参数
* @param
{ action: string; isLoading?: boolean
} opts 行为参数
* @return {*} {Promise<any>}
* @memberof GridService
*/
public
async
get
(
context
:
IParam
,
data
:
IParam
,
opts
:
{
action
:
string
;
isLoading
?:
boolean
}):
Promise
<
any
>
{
let
_entityService
:
any
=
this
.
entityService
;
const
{
context
:
Context
,
data
:
Data
}
=
this
.
handleRequestData
(
context
,
data
,
opts
);
const
action
=
hasFunction
(
_entityService
,
opts
.
action
)
?
opts
.
action
:
'
FetchDefault
'
;
const
action
=
hasFunction
(
_entityService
,
opts
.
action
)
?
opts
.
action
:
'
GET
'
;
const
response
=
await
_entityService
[
action
](
Context
,
Data
,
opts
.
isLoading
);
//this.setCopynativeData(response.data);
response
.
data
?.
forEach
((
item
:
IParam
)
=>
{
...
...
@@ -53,7 +53,7 @@ export class GridService<T extends ControlVOBase> extends ControlServiceBase<T>
* @description 新建数据
* @param {IParam} context 上下文
* @param {IParam} data 行为数据
* @param
\{{ action: string; isLoading?: boolean }
} opts 行为参数
* @param
{ action: string; isLoading?: boolean
} opts 行为参数
* @return {*} {Promise<any>}
* @memberof GridService
*/
...
...
@@ -70,7 +70,7 @@ export class GridService<T extends ControlVOBase> extends ControlServiceBase<T>
* @description 删除数据
* @param {IParam} context 上下文
* @param {IParam} data 行为数据
* @param
\{{ action: string; isLoading?: boolean }
} opts 行为参数
* @param
{ action: string; isLoading?: boolean
} opts 行为参数
* @return {*} {Promise<any>}
* @memberof GridService
*/
...
...
@@ -87,7 +87,7 @@ export class GridService<T extends ControlVOBase> extends ControlServiceBase<T>
* @description 更新
* @param {*} context 上下文
* @param {*} data 行为数据
* @param
\{{ action: string; isLoading?: boolean }
} opts 行为参数
* @param
{ action: string; isLoading?: boolean
} opts 行为参数
* @return {*} {Promise<any>}
* @memberof GridService
*/
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/service/entity/entity-service.ts
浏览文件 @
3e9e958a
import
{
Http
,
Route
Too
l
}
from
'@ibiz-core'
;
import
{
Http
,
Route
Uti
l
}
from
'@ibiz-core'
;
/**
* 实体服务基类
* @export
...
...
@@ -30,7 +30,7 @@ export class EntityService{
* @param isSelfAppend 是否拼接实体自身的主键值。
*/
protected
buildDeResPath
(
context
:
any
,
isSelfAppend
:
boolean
){
let
deResPath
=
Route
Too
l
.
buildDeResRequestPath
(
context
,
this
.
deResPaths
);
let
deResPath
=
Route
Uti
l
.
buildDeResRequestPath
(
context
,
this
.
deResPaths
);
// 不需要自身的主键值的删除末尾/xxxx
if
(
!
isSelfAppend
){
deResPath
=
deResPath
.
substring
(
0
,
deResPath
.
lastIndexOf
(
"/"
))
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/index.ts
浏览文件 @
3e9e958a
export
*
from
'./util'
;
export
*
from
'./view-util'
;
export
*
from
'./route-tool'
;
export
{
Http
}
from
'./net/http'
;
\ No newline at end of file
export
*
from
'./ui'
;
export
*
from
'./net'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/net/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
{
Http
}
from
'./http'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/ui/index.ts
0 → 100644
浏览文件 @
3e9e958a
export
{
RouteUtil
}
from
'./route-util'
;
export
{
UIUtil
}
from
'./ui-util'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/
route-too
l.ts
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/
ui/route-uti
l.ts
浏览文件 @
3e9e958a
...
...
@@ -5,9 +5,9 @@ import qs from 'qs';
* 路由相关处理逻辑工具类
*
* @export
* @class Route
Too
l
* @class Route
Uti
l
*/
export
class
Route
Too
l
{
export
class
Route
Uti
l
{
/**
* 处理路由路径
...
...
@@ -31,7 +31,7 @@ export class RouteTool {
* @static
* @param {Route} route 路由对象
* @returns {string}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
getIndexRoutePath
(
route
:
any
):
string
{
const
parameter
=
route
.
meta
?.
parameters
?.[
0
]
||
{
pathName
:
"apps"
,
parameterName
:
"app"
};
...
...
@@ -54,7 +54,7 @@ export class RouteTool {
* @param {*} [viewParam={}] 视图上下文
* @param {any[]} deResPaths 关系实体参数对象数组
* @returns {string}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
getDeResRoutePath
(
context
:
any
=
{},
deResPaths
:
any
[]):
string
{
let
routePath
:
string
=
''
;
...
...
@@ -113,7 +113,7 @@ export class RouteTool {
* @param {*} [viewParam={}] 视图上下文
* @param {any[]} deResPaths 关系实体参数对象数组
* @returns {string}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
buildDeResRequestPath
(
context
:
any
=
{},
deResPaths
:
any
[]):
string
{
let
routePath
:
string
=
''
;
...
...
@@ -186,7 +186,7 @@ export class RouteTool {
* @static
* @param {*} params
* @returns {*}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
formatRouteParams
(
params
:
any
,
route
:
any
,
context
:
any
,
viewparams
:
any
):
void
{
Object
.
keys
(
params
).
forEach
((
key
:
string
,
index
:
number
)
=>
{
...
...
@@ -218,7 +218,7 @@ export class RouteTool {
* @private
* @static
* @type {any[]}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
private
static
indexParameters
:
any
[]
=
[];
...
...
@@ -227,7 +227,7 @@ export class RouteTool {
*
* @static
* @param {any[]} parameters
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
setIndexParameters
(
parameters
:
any
[]):
void
{
this
.
indexParameters
=
[...
parameters
];
...
...
@@ -238,7 +238,7 @@ export class RouteTool {
*
* @static
* @returns {any[]}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
getIndexParameters
():
any
[]
{
return
this
.
indexParameters
;
...
...
@@ -249,7 +249,7 @@ export class RouteTool {
*
* @static
* @type {*}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
indexViewParam
:
any
=
{};
...
...
@@ -258,7 +258,7 @@ export class RouteTool {
*
* @static
* @param {*} [viewParam={}]
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
setIndexViewParam
(
viewParam
:
any
=
{}):
void
{
Object
.
assign
(
this
.
indexViewParam
,
viewParam
);
...
...
@@ -269,7 +269,7 @@ export class RouteTool {
*
* @static
* @returns {*}
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
getIndexViewParam
():
any
{
return
this
.
indexViewParam
;
...
...
@@ -282,7 +282,7 @@ export class RouteTool {
* @param {*} [data] 传入数据
* @param {*} [ActionModel] 界面行为模型
* @param {*} [UIService] 界面行为服务
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
calcActionItemAuthState
(
data
:
any
,
ActionModel
:
any
,
UIService
:
any
)
{
let
result
:
any
[]
=
[];
...
...
@@ -334,7 +334,7 @@ export class RouteTool {
* @param {*} [data] 传入数据
* @param {*} [ActionModel] 界面行为模型
* @param {*} [UIService] 界面行为服务
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
calcTreeActionItemAuthState
(
data
:
any
,
ActionModel
:
any
,
UIService
:
any
)
{
let
result
:
any
[]
=
[];
...
...
@@ -384,7 +384,7 @@ export class RouteTool {
* @param {*} [tempContext] 上下文
* @param {*} [data] 传入数据
* @param {*} [redirectAppEntity] 应用实体对象
* @memberof Route
Too
l
* @memberof Route
Uti
l
*/
public
static
async
calcRedirectContext
(
tempContext
:
any
,
data
:
any
,
redirectAppEntity
:
any
)
{
if
(
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/ui/ui-util.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IParam
}
from
"@ibiz-core"
;
/**
* 视图相关处理逻辑工具类
*
* @export
* @class UIUtil
*/
export
class
UIUtil
{
/**
* @description 计算界面行为项权限状态
* @export
* @param {IParam} data 传入数据
* @param {IParam} actionModel 界面行为模型
* @param {*} UIService 界面行为服务
* @return {*}
*/
public
static
calcActionItemAuthState
(
data
:
IParam
,
actionModel
:
IParam
,
UIService
:
any
)
{
const
result
:
any
[]
=
[];
if
(
!
UIService
)
return
;
for
(
const
key
in
actionModel
)
{
if
(
!
actionModel
.
hasOwnProperty
(
key
))
{
return
result
;
}
const
item
=
actionModel
[
key
];
let
dataActionResult
:
any
;
if
(
item
&&
item
[
'dataAccessAction'
])
{
if
(
Object
.
is
(
item
[
'actionTarget'
],
'NONE'
)
||
Object
.
is
(
item
[
'actionTarget'
],
''
))
{
dataActionResult
=
UIService
.
getAllOPPrivs
({},
item
[
'dataAccessAction'
]);
}
else
{
if
(
data
&&
Object
.
keys
(
data
).
length
>
0
)
{
dataActionResult
=
UIService
.
getAllOPPrivs
(
data
,
item
[
'dataAccessAction'
]);
}
}
}
else
{
dataActionResult
=
1
;
}
// 无权限:0;有权限:1
if
(
dataActionResult
===
0
)
{
// 禁用:1;隐藏:2;隐藏且默认隐藏:6
if
(
item
.
getNoPrivDisplayMode
===
1
)
{
item
.
disabled
=
true
;
}
if
(
item
.
getNoPrivDisplayMode
===
2
||
item
.
getNoPrivDisplayMode
===
6
)
{
item
.
visabled
=
false
;
}
else
{
item
.
visabled
=
true
;
}
}
if
(
dataActionResult
===
1
)
{
item
.
visabled
=
true
;
item
.
disabled
=
false
;
}
// 返回权限验证的结果
item
.
dataActionResult
=
dataActionResult
;
result
.
push
(
dataActionResult
);
}
return
result
;
}
/**
* @description 计算导航数据
* 先从当前数据目标计算,然后再从当前上下文计算,最后从当前视图参数计算,没有则为null
* @export
* @param {*} data 当前数据目标
* @param {*} parentContext 当前上下文
* @param {*} parentParam 当前视图参数
* @param {*} params 导航参数
* @return {*}
*/
public
static
computedNavData
(
data
:
any
,
parentContext
:
any
,
parentParam
:
any
,
params
:
any
):
any
{
const
_data
:
any
=
{};
if
(
params
&&
Object
.
keys
(
params
).
length
>
0
)
{
Object
.
keys
(
params
).
forEach
((
name
:
string
)
=>
{
if
(
!
name
)
{
return
;
}
let
value
:
string
|
null
=
params
[
name
];
if
(
value
&&
value
.
toString
().
startsWith
(
'%'
)
&&
value
.
toString
().
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
).
toLowerCase
();
if
(
data
&&
data
.
hasOwnProperty
(
key
))
{
value
=
data
[
key
];
}
else
if
(
parentContext
&&
parentContext
[
key
])
{
value
=
parentContext
[
key
];
}
else
if
(
parentParam
&&
parentParam
[
key
])
{
value
=
parentParam
[
key
];
}
else
{
value
=
null
;
}
}
Object
.
assign
(
_data
,
{
[
name
.
toLowerCase
()]:
value
});
});
}
return
_data
;
}
}
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/ibiz-core/utils/view-util.ts
已删除
100644 → 0
浏览文件 @
dc15f466
import
{
IParam
}
from
"@ibiz-core"
;
/**
* @description 计算界面行为项权限状态
* @export
* @param {IParam} data 传入数据
* @param {IParam} actionModel 界面行为模型
* @param {*} UIService 界面行为服务
* @return {*}
*/
export
function
calcActionItemAuthState
(
data
:
IParam
,
actionModel
:
IParam
,
UIService
:
any
)
{
const
result
:
any
[]
=
[];
if
(
!
UIService
)
return
;
for
(
const
key
in
actionModel
)
{
if
(
!
actionModel
.
hasOwnProperty
(
key
))
{
return
result
;
}
const
item
=
actionModel
[
key
];
let
dataActionResult
:
any
;
if
(
item
&&
item
[
'dataAccessAction'
])
{
if
(
Object
.
is
(
item
[
'actionTarget'
],
'NONE'
)
||
Object
.
is
(
item
[
'actionTarget'
],
''
))
{
dataActionResult
=
UIService
.
getAllOPPrivs
({},
item
[
'dataAccessAction'
]);
}
else
{
if
(
data
&&
Object
.
keys
(
data
).
length
>
0
)
{
dataActionResult
=
UIService
.
getAllOPPrivs
(
data
,
item
[
'dataAccessAction'
]);
}
}
}
else
{
dataActionResult
=
1
;
}
// 无权限:0;有权限:1
if
(
dataActionResult
===
0
)
{
// 禁用:1;隐藏:2;隐藏且默认隐藏:6
if
(
item
.
getNoPrivDisplayMode
===
1
)
{
item
.
disabled
=
true
;
}
if
(
item
.
getNoPrivDisplayMode
===
2
||
item
.
getNoPrivDisplayMode
===
6
)
{
item
.
visabled
=
false
;
}
else
{
item
.
visabled
=
true
;
}
}
if
(
dataActionResult
===
1
)
{
item
.
visabled
=
true
;
item
.
disabled
=
false
;
}
// 返回权限验证的结果
item
.
dataActionResult
=
dataActionResult
;
result
.
push
(
dataActionResult
);
}
return
result
;
}
/**
* @description 计算导航数据
* 先从当前数据目标计算,然后再从当前上下文计算,最后从当前视图参数计算,没有则为null
* @export
* @param {*} data 当前数据目标
* @param {*} parentContext 当前上下文
* @param {*} parentParam 当前视图参数
* @param {*} params 导航参数
* @return {*}
*/
export
function
computedNavData
(
data
:
any
,
parentContext
:
any
,
parentParam
:
any
,
params
:
any
):
any
{
const
_data
:
any
=
{};
if
(
params
&&
Object
.
keys
(
params
).
length
>
0
)
{
Object
.
keys
(
params
).
forEach
((
name
:
string
)
=>
{
if
(
!
name
)
{
return
;
}
let
value
:
string
|
null
=
params
[
name
];
if
(
value
&&
value
.
toString
().
startsWith
(
'%'
)
&&
value
.
toString
().
endsWith
(
'%'
))
{
const
key
=
value
.
substring
(
1
,
value
.
length
-
1
).
toLowerCase
();
if
(
data
&&
data
.
hasOwnProperty
(
key
))
{
value
=
data
[
key
];
}
else
if
(
parentContext
&&
parentContext
[
key
])
{
value
=
parentContext
[
key
];
}
else
if
(
parentParam
&&
parentParam
[
key
])
{
value
=
parentParam
[
key
];
}
else
{
value
=
null
;
}
}
Object
.
assign
(
_data
,
{
[
name
.
toLowerCase
()]:
value
});
});
}
return
_data
;
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/index.d.ts
0 → 100644
浏览文件 @
3e9e958a
import
{
IApp
}
from
"@ibiz-core"
;
declare
global
{
const
App
:
IApp
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/page/{{appModules}}/{{pages@DEGRIDVIEW}}/{{pages@DEGRIDVIEW}}.vue.hbs
浏览文件 @
3e9e958a
...
...
@@ -29,7 +29,7 @@ interface ViewEmit {
const
emit
=
defineEmits
<
ViewEmit
>
();
// 安装功能模块,提供状态和能力方法
const
{
state
,
handleCtrlEvent
}
=
new
GridView
(
ViewConfig
).
moduleInstall
(
props
,
emit
);
const
{
state
,
handleCtrlEvent
,
handleToolbarEvent
}
=
new
GridView
(
ViewConfig
).
moduleInstall
(
props
,
emit
);
</script>
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/service/app/app.ts
已删除
100644 → 0
浏览文件 @
dc15f466
import
{
AppModal
}
from
'@/utils'
;
import
{
Http
,
deepCopy
,
ViewDetail
}
from
'@ibiz-core'
;
import
{
OpenViewService
}
from
'@service'
;
import
{
AppFuncService
}
from
'@ibiz-core'
;
export
class
App
{
/**
* 打开视图服务
* @static
*/
public
static
openViewService
:
OpenViewService
=
OpenViewService
.
getInstance
();
/**
* 应用功能服务
* @static
*/
public
static
appFuncService
:
AppFuncService
=
AppFuncService
.
getInstance
();
/**
* 打开视图服务
* @static
*/
public
static
modalService
:
AppModal
=
AppModal
.
getInstance
();
/**
* 所有视图信息
*
* @static
*/
public
static
allViewInfos
:
any
;
/**
* 获取视图信息
*
* @static
* @param codeName 视图codeName
* @return {*}
*/
public
static
getViewInfo
(
codeName
:
string
):
ViewDetail
|
undefined
{
return
App
.
allViewInfos
[
codeName
]
?
(
deepCopy
(
App
.
allViewInfos
[
codeName
])
as
ViewDetail
)
:
undefined
;
}
/**
* 初始化
*
* @static
*/
public
static
async
init
()
{
const
response
=
await
Http
.
getInstance
().
get
(
'./assets/json/views.json'
)
App
.
allViewInfos
=
response
.
data
;
}
}
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/service/index.ts
已删除
100644 → 0
浏览文件 @
dc15f466
export
*
from
'./open-view/open-view-service'
;
export
*
from
'./app/app'
;
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/index.scss
浏览文件 @
3e9e958a
...
...
@@ -4,4 +4,4 @@
@use
'./views'
;
@use
'./var'
;
@use
'./theme'
;
@use
'.
./custom/style'
@use
'.
/user'
;
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/style/user/index.scss
0 → 100644
浏览文件 @
3e9e958a
// 用户自定义样式
\ No newline at end of file
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/utils/app-modal/app-modal.scss
已删除
100644 → 0
浏览文件 @
dc15f466
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/utils/index.ts
浏览文件 @
3e9e958a
export
{
AppModal
}
from
'./app-modal/app-modal'
;
export
{
OpenViewService
}
from
'./open-view/open-view-service'
;
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/
service
/open-view/open-view-service.ts
→
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/src/
utils
/open-view/open-view-service.ts
浏览文件 @
3e9e958a
import
{
IParam
,
RouteTool
,
ViewDetail
}
from
'@ibiz-core'
;
import
{
App
}
from
'@service'
;
import
{
IContext
,
IOpenViewService
,
IParam
,
RouteUtil
,
ViewDetail
}
from
'@ibiz-core'
;
import
router
from
'@/router'
;
import
{
AppModal
}
from
'@/utils'
;
interface
Params
extends
IParam
{
context
:
any
;
viewParams
:
any
;
context
:
IContext
;
viewParams
:
IParam
;
}
/**
...
...
@@ -14,7 +13,7 @@ interface Params extends IParam {
* @export
* @class OpenViewService
*/
export
class
OpenViewService
{
export
class
OpenViewService
implements
IOpenViewService
{
/**
* 唯一实例
*
...
...
@@ -73,7 +72,7 @@ export class OpenViewService {
// 路由打开视图
if
(
openMode
==
'INDEXVIEWTAB'
||
openMode
==
'POPUPAPP'
)
{
// TODO 视图关系参数处理
const
routePath
=
Route
Too
l
.
buildUpRoutePath
(
view
,
context
,
viewParams
,
router
.
currentRoute
.
value
);
const
routePath
=
Route
Uti
l
.
buildUpRoutePath
(
view
,
context
,
viewParams
,
router
.
currentRoute
.
value
);
if
(
openMode
==
'INDEXVIEWTAB'
)
{
router
.
push
(
routePath
);
}
else
{
...
...
modules/ibizlab-generator-core/src/main/resources/templ/r7/app_{{apps}}/yarn.lock
浏览文件 @
3e9e958a
...
...
@@ -2,6 +2,35 @@
# yarn lockfile v1
"@ant-design/colors@^5.0.0":
version "5.1.1"
resolved "https://registry.yarnpkg.com/@ant-design/colors/-/colors-5.1.1.tgz#800b2186b1e27e66432e67d03ed96af3e21d8940"
integrity sha512-Txy4KpHrp3q4XZdfgOBqLl+lkQIc3tEvHXOimRN1giX1AEC7mGtyrO9p8iRGJ3FLuVMGa2gNEzQyghVymLttKQ==
dependencies:
"@ctrl/tinycolor" "^3.3.1"
"@ant-design/colors@^6.0.0":
version "6.0.0"
resolved "https://registry.yarnpkg.com/@ant-design/colors/-/colors-6.0.0.tgz#9b9366257cffcc47db42b9d0203bb592c13c0298"
integrity sha512-qAZRvPzfdWHtfameEGP2Qvuf838NhergR35o+EuVyB5XvSA98xod5r4utvi4TJ3ywmevm290g9nsCG5MryrdWQ==
dependencies:
"@ctrl/tinycolor" "^3.4.0"
"@ant-design/icons-svg@^4.0.0":
version "4.2.1"
resolved "https://registry.yarnpkg.com/@ant-design/icons-svg/-/icons-svg-4.2.1.tgz#8630da8eb4471a4aabdaed7d1ff6a97dcb2cf05a"
integrity sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==
"@ant-design/icons-vue@^6.0.0", "@ant-design/icons-vue@^6.0.1":
version "6.0.1"
resolved "https://registry.yarnpkg.com/@ant-design/icons-vue/-/icons-vue-6.0.1.tgz#9d804c3c74d2cfaf97cb18e582d3b9400934f5fd"
integrity sha512-HigIgEVV6bbcrz2A92/qDzi/aKWB5EC6b6E1mxMB6aQA7ksiKY+gi4U94TpqyEIIhR23uaDrjufJ+xCZQ+vx6Q==
dependencies:
"@ant-design/colors" "^5.0.0"
"@ant-design/icons-svg" "^4.0.0"
"@types/lodash" "^4.14.165"
lodash "^4.17.15"
"@antfu/utils@^0.3.0":
version "0.3.0"
resolved "https://registry.npmmirror.com/@antfu/utils/download/@antfu/utils-0.3.0.tgz#6306c43b52a883bd8e973e3ed8dd64248418bcc4"
...
...
@@ -19,6 +48,13 @@
resolved "https://registry.npmmirror.com/@babel/parser/download/@babel/parser-7.16.4.tgz#d5f92f57cf2c74ffe9b37981c0e72fee7311372e"
integrity sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==
"@babel/runtime@^7.10.5":
version "7.16.7"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.7.tgz#03ff99f64106588c9c403c6ecb8c3bafbbdff1fa"
integrity sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==
dependencies:
regenerator-runtime "^0.13.4"
"@babel/types@^7.6.1", "@babel/types@^7.9.6":
version "7.16.0"
resolved "https://registry.npmmirror.com/@babel/types/download/@babel/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba"
...
...
@@ -27,6 +63,11 @@
"@babel/helper-validator-identifier" "^7.15.7"
to-fast-properties "^2.0.0"
"@ctrl/tinycolor@^3.3.1", "@ctrl/tinycolor@^3.4.0":
version "3.4.0"
resolved "https://registry.yarnpkg.com/@ctrl/tinycolor/-/tinycolor-3.4.0.tgz#c3c5ae543c897caa9c2a68630bed355be5f9990f"
integrity sha512-JZButFdZ1+/xAfpguQHoabIXkcqRRKpMrWKBkpEZZyxfY9C1DpADFB8PEqGSTeFr135SaTRfKqGKx5xSCLI7ZQ==
"@element-plus/icons-vue@^0.2.2":
version "0.2.4"
resolved "https://registry.npmmirror.com/@element-plus/icons-vue/download/@element-plus/icons-vue-0.2.4.tgz#dadcf72f0cea53dc83b7b7db80e1418716d7b02c"
...
...
@@ -85,6 +126,14 @@
estree-walker "^2.0.1"
picomatch "^2.2.2"
"@simonwep/pickr@~1.8.0":
version "1.8.2"
resolved "https://registry.yarnpkg.com/@simonwep/pickr/-/pickr-1.8.2.tgz#96dc86675940d7cad63d69c22083dd1cbb9797cb"
integrity sha512-/l5w8BIkrpP6n1xsetx9MWPWlU6OblN5YgZZphxan0Tq4BByTCETL6lyIeY8lagalS2Nbt4F2W034KHLIiunKA==
dependencies:
core-js "^3.15.1"
nanopop "^2.1.0"
"@stencil/core@^2.10.0":
version "2.12.0"
resolved "https://registry.npmmirror.com/@stencil/core/download/@stencil/core-2.12.0.tgz#5b12517dd367908026692d3b00fa1aab39638ab9"
...
...
@@ -95,6 +144,11 @@
resolved "https://registry.npmmirror.com/@stencil/store/download/@stencil/store-1.5.0.tgz#5c4e14ed078771bb8ed635867cfa8c3452f15ac4"
integrity sha1-XE4U7QeHcbuO1jWGfPqMNFLxWsQ=
"@types/lodash@^4.14.165":
version "4.14.178"
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.178.tgz#341f6d2247db528d4a13ddbb374bcdc80406f4f8"
integrity sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==
"@types/node@*":
version "17.0.0"
resolved "https://registry.npmmirror.com/@types/node/download/@types/node-17.0.0.tgz#62797cee3b8b497f6547503b2312254d4fe3c2bb"
...
...
@@ -105,6 +159,11 @@
resolved "https://registry.npmmirror.com/@types/node/download/@types/node-16.11.12.tgz#ac7fb693ac587ee182c3780c26eb65546a1a3c10"
integrity sha512-+2Iggwg7PxoO5Kyhvsq9VarmPbIelXP070HMImEpbtGCoyWNINQj4wzjbQCXzdHTRXnqufutJb5KAURZANNBAw==
"@types/qs@^6.9.7":
version "6.9.7"
resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.9.7.tgz#63bb7d067db107cc1e457c303bc25d511febf6cb"
integrity sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==
"@types/ramda@^0.27.60":
version "0.27.60"
resolved "https://registry.npmmirror.com/@types/ramda/download/@types/ramda-0.27.60.tgz#fccfd7bb18cc074b7bcddeb7fcc36871723309a6"
...
...
@@ -225,6 +284,11 @@
"@vue/compiler-dom" "3.2.24"
"@vue/shared" "3.2.24"
"@vue/devtools-api@^6.0.0-beta.18":
version "6.0.0-beta.21.1"
resolved "https://registry.yarnpkg.com/@vue/devtools-api/-/devtools-api-6.0.0-beta.21.1.tgz#f1410f53c42aa67fa3b01ca7bdba891f69d7bc97"
integrity sha512-FqC4s3pm35qGVeXRGOjTsRzlkJjrBLriDS9YXbflHLsfA9FrcKzIyWnLXoNm+/7930E8rRakXuAc2QkC50swAw==
"@vue/reactivity@3.2.24", "@vue/reactivity@^3.2.20":
version "3.2.24"
resolved "https://registry.npmmirror.com/@vue/reactivity/download/@vue/reactivity-3.2.24.tgz#4b24301ff7af0607c49a1e6976a22b4f62eab1a4"
...
...
@@ -293,6 +357,28 @@ acorn@^7.1.1:
resolved "https://registry.npmmirror.com/acorn/download/acorn-7.4.1.tgz?cache=0&sync_timestamp=1637225522161&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Facorn%2Fdownload%2Facorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
integrity sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=
ant-design-vue@^3.0.0-alpha.14:
version "3.0.0-beta.5"
resolved "https://registry.yarnpkg.com/ant-design-vue/-/ant-design-vue-3.0.0-beta.5.tgz#9994ecedc7ad29600d85e73a754199d948869bb1"
integrity sha512-yX+JGkPlzXav56hHCg0aa1LAB9GQEEQ8Xfy0o7tc49zFH2v0Q8ekiWVXsvsiracLZgl7GcLm5HnEPp9tAy0BZQ==
dependencies:
"@ant-design/colors" "^6.0.0"
"@ant-design/icons-vue" "^6.0.0"
"@babel/runtime" "^7.10.5"
"@simonwep/pickr" "~1.8.0"
array-tree-filter "^2.1.0"
async-validator "^4.0.0"
dayjs "^1.10.5"
dom-align "^1.12.1"
dom-scroll-into-view "^2.0.0"
lodash "^4.17.21"
lodash-es "^4.17.15"
resize-observer-polyfill "^1.5.1"
scroll-into-view-if-needed "^2.2.25"
shallow-equal "^1.0.0"
vue-types "^3.0.0"
warning "^4.0.0"
anymatch@~3.1.2:
version "3.1.2"
resolved "https://registry.npmmirror.com/anymatch/download/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716"
...
...
@@ -301,6 +387,11 @@ anymatch@~3.1.2:
normalize-path "^3.0.0"
picomatch "^2.0.4"
array-tree-filter@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/array-tree-filter/-/array-tree-filter-2.1.0.tgz#873ac00fec83749f255ac8dd083814b4f6329190"
integrity sha512-4ROwICNlNw/Hqa9v+rk5h22KjmzB1JGTMVKP2AKJBOCgb0yL0ASf0+YvCcLNNwquOHNX48jkeZIJ3a+oOQqKcw==
asap@~2.0.3:
version "2.0.6"
resolved "https://registry.npmmirror.com/asap/download/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
...
...
@@ -311,10 +402,17 @@ assert-never@^1.2.1:
resolved "https://registry.npmmirror.com/assert-never/download/assert-never-1.2.1.tgz#11f0e363bf146205fb08193b5c7b90f4d1cf44fe"
integrity sha1-EfDjY78UYgX7CBk7XHuQ9NHPRP4=
async-validator@^4.0.7:
async-validator@^4.0.
0, async-validator@^4.0.
7:
version "4.0.7"
resolved "https://registry.npmmirror.com/async-validator/download/async-validator-4.0.7.tgz?cache=0&sync_timestamp=1634530102628&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fasync-validator%2Fdownload%2Fasync-validator-4.0.7.tgz#034a0fd2103a6b2ebf010da75183bec299247afe"
integrity sha1-A0oP0hA6ay6/AQ2nUYO+wpkkev4=
resolved "https://registry.yarnpkg.com/async-validator/-/async-validator-4.0.7.tgz#034a0fd2103a6b2ebf010da75183bec299247afe"
integrity sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ==
axios@^0.24.0:
version "0.24.0"
resolved "https://registry.yarnpkg.com/axios/-/axios-0.24.0.tgz#804e6fa1e4b9c5288501dd9dff56a7a0940d20d6"
integrity sha512-Q6cWsys88HoPgAaFAVUb0WpPk0O8iTeisR9IMqy9G8AbO4NlpVknrnQS03zzF9PGAWgO3cgletO3VjV/P7VztA==
dependencies:
follow-redirects "^1.14.4"
babel-walk@3.0.0-canary-5:
version "3.0.0-canary-5"
...
...
@@ -355,10 +453,10 @@ builtins@^4.0.0:
dependencies:
semver "^7.0.0"
call-bind@^1.0.2:
call-bind@^1.0.
0, call-bind@^1.0.
2:
version "1.0.2"
resolved "https://registry.
npmmirror.com/call-bind/download
/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
integrity sha
1-sdTonmiBGcPJqQOtMKuy9qkZvjw
=
resolved "https://registry.
yarnpkg.com/call-bind/-
/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
integrity sha
512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA=
=
dependencies:
function-bind "^1.1.1"
get-intrinsic "^1.0.2"
...
...
@@ -385,6 +483,11 @@ character-parser@^2.2.0:
optionalDependencies:
fsevents "~2.3.2"
compute-scroll-into-view@^1.0.17:
version "1.0.17"
resolved "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.17.tgz#6a88f18acd9d42e9cf4baa6bec7e0522607ab7ab"
integrity sha512-j4dx+Fb0URmzbwwMUrhqWM2BEWHdFGx+qZ9qqASHRPqvTYdqvWnHg0H1hIbcyLnvgnoNAVMlwkepyqM3DaIFUg==
concat-map@0.0.1:
version "0.0.1"
resolved "https://registry.npmmirror.com/concat-map/download/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
...
...
@@ -398,15 +501,20 @@ constantinople@^4.0.1:
"@babel/parser" "^7.6.0"
"@babel/types" "^7.6.1"
core-js@^3.15.1:
version "3.20.2"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.20.2.tgz#46468d8601eafc8b266bd2dd6bf9dee622779581"
integrity sha512-nuqhq11DcOAbFBV4zCbKeGbKQsUDRqTX0oqx7AttUBuqe3h20ixsE039QHelbL6P4h+9kytVqyEtyZ6gsiwEYw==
csstype@^2.6.8:
version "2.6.19"
resolved "https://registry.npmmirror.com/csstype/download/csstype-2.6.19.tgz?cache=0&sync_timestamp=1637224567041&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcsstype%2Fdownload%2Fcsstype-2.6.19.tgz#feeb5aae89020bb389e1f63669a5ed490e391caa"
integrity sha512-ZVxXaNy28/k3kJg0Fou5MiYpp88j7H9hLZp8PDC3jV0WFjfH5E9xHb56L0W59cPbKbcHXeP4qyT8PrHp8t6LcQ==
dayjs@^1.10.7:
dayjs@^1.10.
5, dayjs@^1.10.
7:
version "1.10.7"
resolved "https://registry.
npmmirror.com/dayjs/download/dayjs-1.10.7.tgz?cache=0&sync_timestamp=1632753723926&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fdayjs%2Fdownload%2F
dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468"
integrity sha
1-LPX5Gt0oEWdIRAhmoKHSbzps5Gg
=
resolved "https://registry.
yarnpkg.com/dayjs/-/
dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468"
integrity sha
512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig=
=
debug@^4.3.2:
version "4.3.3"
...
...
@@ -420,6 +528,16 @@ doctypes@^1.1.0:
resolved "https://registry.npmmirror.com/doctypes/download/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9"
integrity sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=
dom-align@^1.12.1:
version "1.12.2"
resolved "https://registry.yarnpkg.com/dom-align/-/dom-align-1.12.2.tgz#0f8164ebd0c9c21b0c790310493cd855892acd4b"
integrity sha512-pHuazgqrsTFrGU2WLDdXxCFabkdQDx72ddkraZNih1KsMcN5qsRSTR9O4VJRlwTPCPb5COYg3LOfiMHHcPInHg==
dom-scroll-into-view@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/dom-scroll-into-view/-/dom-scroll-into-view-2.0.1.tgz#0decc8522801fd8d3f1c6ba355a74d382c5f989b"
integrity sha512-bvVTQe1lfaUr1oFzZX80ce9KLDlZ3iU+XGNE/bz9HnGdklTieqsbmsLHe+rT2XWqopvL0PckkYqN7ksmm5pe3w==
dom-serializer@^1.0.1:
version "1.3.2"
resolved "https://registry.npmmirror.com/dom-serializer/download/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91"
...
...
@@ -625,6 +743,11 @@ fill-range@^7.0.1:
dependencies:
to-regex-range "^5.0.1"
follow-redirects@^1.14.4:
version "1.14.6"
resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.14.6.tgz#8cfb281bbc035b3c067d6cd975b0f6ade6e855cd"
integrity sha512-fhUl5EwSJbbl8AR+uYL2KQDxLkdSjZGR36xy46AO7cOMTrCMON6Sa28FmAnC2tRTDbd/Uuzz3aJBv7EBN7JH8A==
font-awesome@^4.7.0:
version "4.7.0"
resolved "https://registry.npmmirror.com/font-awesome/download/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133"
...
...
@@ -736,6 +859,11 @@ is-number@^7.0.0:
resolved "https://registry.npmmirror.com/is-number/download/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
integrity sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss=
is-plain-object@3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-3.0.1.tgz#662d92d24c0aa4302407b0d45d21f2251c85f85b"
integrity sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==
is-promise@^2.0.0:
version "2.2.2"
resolved "https://registry.npmmirror.com/is-promise/download/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1"
...
...
@@ -754,6 +882,11 @@ js-stringify@^1.0.2:
resolved "https://registry.npmmirror.com/js-stringify/download/js-stringify-1.0.2.tgz#1736fddfd9724f28a3682adc6230ae7e4e9679db"
integrity sha1-Fzb939lyTyijaCrcYjCufk6Weds=
"js-tokens@^3.0.0 || ^4.0.0":
version "4.0.0"
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
jsonc-parser@^2.3.0:
version "2.3.1"
resolved "https://registry.npmmirror.com/jsonc-parser/download/jsonc-parser-2.3.1.tgz#59549150b133f2efacca48fe9ce1ec0659af2342"
...
...
@@ -779,10 +912,22 @@ local-pkg@^0.4.0:
dependencies:
mlly "^0.2.2"
lodash@^4.17.21:
lodash-es@^4.17.15:
version "4.17.21"
resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee"
integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==
lodash@^4.17.15, lodash@^4.17.21:
version "4.17.21"
resolved "https://registry.npmmirror.com/lodash/download/lodash-4.17.21.tgz?cache=0&sync_timestamp=1632742926913&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Flodash%2Fdownload%2Flodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw=
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
loose-envify@^1.0.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
dependencies:
js-tokens "^3.0.0 || ^4.0.0"
lru-cache@^6.0.0:
version "6.0.0"
...
...
@@ -840,6 +985,11 @@ nanoid@^3.1.30:
resolved "https://registry.npmmirror.com/nanoid/download/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362"
integrity sha1-Y/k8xUjSoRPcXfvGO/oJ4rm2Q2I=
nanopop@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/nanopop/-/nanopop-2.1.0.tgz#23476513cee2405888afd2e8a4b54066b70b9e60"
integrity sha512-jGTwpFRexSH+fxappnGQtN9dspgE2ipa1aOjtR24igG0pv6JCxImIAmrLRHX+zUF5+1wtsFVbKyfP51kIGAVNw==
normalize-path@^3.0.0, normalize-path@~3.0.0:
version "3.0.0"
resolved "https://registry.npmmirror.com/normalize-path/download/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
...
...
@@ -855,6 +1005,11 @@ object-assign@^4.1.1:
resolved "https://registry.npmmirror.com/object-assign/download/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
object-inspect@^1.9.0:
version "1.12.0"
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.0.tgz#6e2c120e868fd1fd18cb4f18c31741d0d6e776f0"
integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
path-parse@^1.0.6:
version "1.0.7"
resolved "https://registry.npmmirror.com/path-parse/download/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
...
...
@@ -989,6 +1144,13 @@ pug@^3.0.2:
pug-runtime "^3.0.1"
pug-strip-comments "^2.0.0"
qs@^6.10.2:
version "6.10.2"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.2.tgz#c1431bea37fc5b24c5bdbafa20f16bdf2a4b9ffe"
integrity sha512-mSIdjzqznWgfd4pMii7sHtaYF8rx8861hBO80SraY5GT0XQibWZWJSid0avzHGkDIZLImux2S5mXO0Hfct2QCw==
dependencies:
side-channel "^1.0.4"
queue-microtask@^1.2.2:
version "1.2.3"
resolved "https://registry.npmmirror.com/queue-microtask/download/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
...
...
@@ -1015,11 +1177,21 @@ readdirp@~3.6.0:
dependencies:
picomatch "^2.2.1"
regenerator-runtime@^0.13.4:
version "0.13.9"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52"
integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==
request-light@^0.5.4:
version "0.5.5"
resolved "https://registry.npmmirror.com/request-light/download/request-light-0.5.5.tgz#254ab0b38a1db2192170b599b05181934e14932b"
integrity sha512-AvjfJuhyT6dYfhtIBF+IpTPQco+Td1QJ6PsIJ5xui110vQ5p9HxHk+m1XJqXazLQT6CxxSx9eNv6R/+fu4bZig==
resize-observer-polyfill@^1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464"
integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==
resolve@^1.15.1, resolve@^1.20.0:
version "1.20.0"
resolved "https://registry.npmmirror.com/resolve/download/resolve-1.20.0.tgz?cache=0&sync_timestamp=1632753712607&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fresolve%2Fdownload%2Fresolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975"
...
...
@@ -1063,6 +1235,13 @@ sass@^1.45.0:
immutable "^4.0.0"
source-map-js ">=0.6.2 <2.0.0"
scroll-into-view-if-needed@^2.2.25:
version "2.2.28"
resolved "https://registry.yarnpkg.com/scroll-into-view-if-needed/-/scroll-into-view-if-needed-2.2.28.tgz#5a15b2f58a52642c88c8eca584644e01703d645a"
integrity sha512-8LuxJSuFVc92+0AdNv4QOxRL4Abeo1DgLnGNkn1XlaujPH/3cCFz3QI60r2VNu4obJJROzgnIUw5TKQkZvZI1w==
dependencies:
compute-scroll-into-view "^1.0.17"
semver@^7.0.0, semver@^7.3.5:
version "7.3.5"
resolved "https://registry.npmmirror.com/semver/download/semver-7.3.5.tgz?cache=0&sync_timestamp=1632753717890&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fsemver%2Fdownload%2Fsemver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
...
...
@@ -1070,6 +1249,20 @@ semver@^7.0.0, semver@^7.3.5:
dependencies:
lru-cache "^6.0.0"
shallow-equal@^1.0.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/shallow-equal/-/shallow-equal-1.2.1.tgz#4c16abfa56043aa20d050324efa68940b0da79da"
integrity sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==
side-channel@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf"
integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
dependencies:
call-bind "^1.0.0"
get-intrinsic "^1.0.2"
object-inspect "^1.9.0"
"source-map-js@>=0.6.2 <2.0.0", source-map-js@^1.0.1:
version "1.0.1"
resolved "https://registry.npmmirror.com/source-map-js/download/source-map-js-1.0.1.tgz#a1741c131e3c77d048252adfa24e23b908670caf"
...
...
@@ -1316,6 +1509,13 @@ vue-global-api@^0.4.1:
eslint-config-vue-global-api "0.4.1"
vue-demi latest
vue-router@^4.0.12:
version "4.0.12"
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-4.0.12.tgz#8dc792cddf5bb1abcc3908f9064136de7e13c460"
integrity sha512-CPXvfqe+mZLB1kBWssssTiWg4EQERyqJZes7USiqfW9B5N2x+nHlnsM1D3b5CaJ6qgCvMmYJnz+G0iWjNCvXrg==
dependencies:
"@vue/devtools-api" "^6.0.0-beta.18"
vue-tsc@^0.28.10:
version "0.28.10"
resolved "https://registry.npmmirror.com/vue-tsc/download/vue-tsc-0.28.10.tgz#2fc0154537bef5004e86002b117758af4b2b066c"
...
...
@@ -1324,6 +1524,13 @@ vue-tsc@^0.28.10:
"@volar/shared" "0.28.10"
vscode-vue-languageservice "0.28.10"
vue-types@^3.0.0:
version "3.0.2"
resolved "https://registry.yarnpkg.com/vue-types/-/vue-types-3.0.2.tgz#ec16e05d412c038262fc1efa4ceb9647e7fb601d"
integrity sha512-IwUC0Aq2zwaXqy74h4WCvFCUtoV0iSWr0snWnE9TnU18S66GAQyqQbRf2qfJtUuiFsBf6qp0MEwdonlwznlcrw==
dependencies:
is-plain-object "3.0.1"
vue@^3.2.23:
version "3.2.24"
resolved "https://registry.npmmirror.com/vue/download/vue-3.2.24.tgz#6de7b01e55740dc37c0a5dbd45e70eed49f95189"
...
...
@@ -1335,6 +1542,13 @@ vue@^3.2.23:
"@vue/server-renderer" "3.2.24"
"@vue/shared" "3.2.24"
warning@^4.0.0:
version "4.0.3"
resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==
dependencies:
loose-envify "^1.0.0"
webpack-virtual-modules@^0.4.3:
version "0.4.3"
resolved "https://registry.npmmirror.com/webpack-virtual-modules/download/webpack-virtual-modules-0.4.3.tgz#cd597c6d51d5a5ecb473eea1983a58fa8a17ded9"
...
...
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录